Pulse width modulation frequency variation to accommodate sensors operating in synchronous mode

By adjusting the sampling points and predicting the trigger time, the sensor system adapts to changes in PWM frequency, solving the problem of nondeterministic triggering in synchronous mode and achieving accurate and timely data transmission when the frequency changes.

CN115993792BActive Publication Date: 2025-10-24INFINEON TECHNOLOGIES AG
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211268977.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-10-18
Filing Date
2022-10-17
Publication Date
2025-10-24
Estimated Expiration
2042-10-17

AI Technical Summary

Technical Problem

In sensor systems, PWM frequency variations in synchronous mode lead to nondeterministic triggering behavior, affecting sensor system performance, and may even cause sensor data loss, especially in high PWM frequency applications.

Method used

The sensor system adapts to PWM frequency changes by adjusting sampling points and predicting trigger times, and ensures that sensor data is ready for transmission immediately upon receiving a trigger by using a delay wait time counter and wait time compensation information, thereby reducing latency and jitter.

Benefits of technology

It effectively reduces sensor data loss, improves the synchronous operation performance of the sensor system, and ensures the accuracy and timeliness of data transmission when the PWM frequency changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115993792B_ABST
    Figure CN115993792B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure generally relate to pulse width modulation frequency variation for sensors operating in a synchronous mode. In some implementations, a sensor can determine a latency wait time value associated with an amount of time from completion of a set of sensor tasks to an actual receipt time of a trigger for selectively transmitting or sampling sensor data. The sensor can calculate a deviation of the latency wait time value from a target latency wait time. The sensor can transmit a data frame including an indication associated with the deviation of the latency wait time value from the target latency wait time.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present disclosure generally relate to pulse width modulation frequency variation for sensors operating in a synchronous mode. BACKGROUND

[0002] In some sensor systems, one or more sensors can be configured for synchronous operation. Generally, while operating in a synchronous mode, a sensor is to predict a time point at which a trigger from an electronic control unit (ECU) is received and perform a set of sensor tasks based on the prediction such that sensor data for transmission is ready at the time point at which the trigger is received. SUMMARY

[0003] In some implementations, a sensor includes one or more components to determine a time interval between a time of receipt of a first trigger for selectively transmitting or sampling first sensor data and a time of receipt of a second trigger for selectively transmitting or sampling second sensor data; determine a predicted time of receipt of a third trigger for selectively transmitting or sampling third sensor data based on the time interval; initiate a set of sensor tasks based on the predicted time of receipt of the third trigger, the set of sensor tasks initiated to cause the third sensor data to be ready for transmission at the predicted time of receipt of the third trigger; receive the third trigger; determine a latency wait time value associated with an amount of time from completion of the set of sensor tasks to an actual time of receipt of the third trigger; calculate a deviation of the latency wait time value from a target latency wait time; and transmit a data frame including an indication associated with the deviation of the latency wait time value from the target latency wait time.

[0004] In some implementations, a sensor includes a sensor algorithm component; and an interface implementation component including an internal trigger generator to monitor a counter value and trigger the sensor algorithm component to perform a set of sensor tasks based on determining that the counter value is greater than or equal to an internal trigger level value; a trigger detector to receive a trigger for selectively transmitting or sampling sensor data and forward the trigger to a trigger level calculator and a protocol encoder; a protocol encoder to transmit a data frame based at least in part on receiving the trigger; and a trigger level calculator to determine an adjusted internal trigger level value and provide the adjusted internal trigger level value to the internal trigger generator.

[0005] In some implementations, a method includes determining, by a sensor, a latency wait time value associated with an amount of time from completion of a set of sensor tasks to an actual time of receipt of a trigger for selectively transmitting or sampling sensor data; calculating, by the sensor, a deviation of the latency wait time value from a target latency wait time; and transmitting, by the sensor, a data frame including an indication associated with the deviation of the latency wait time value from the target latency wait time.

[0006] In some implementations, a method includes transmitting a first plurality of triggers to a sensor operating in a synchronous mode, where a time interval between triggers in the first plurality of triggers is a first period corresponding to a first frequency; transmitting a second plurality of triggers to the sensor operating in the synchronous mode, where a time interval between triggers in the second plurality of triggers is a second period corresponding to one-half of a second frequency, where the second frequency is higher than the first frequency; and transmitting a third plurality of triggers to the sensor operating in the synchronous mode, where a time interval between triggers in the third plurality of triggers is a third period corresponding to the second frequency. BRIEF DESCRIPTION OF DRAWINGS

[0007] Figure 1 is a diagram of an example sensor system in which the techniques and apparatuses described herein can be implemented;

[0008] Figure 2 and Figure 3 is a diagram associated with operation of a sensor in a synchronous mode, as described herein;

[0009] Figure 4 is a timing diagram and corresponding timeline associated with use of a delay latency counter (DLC) and comparison of a DLC value to a DLC target, as described herein;

[0010] Figure 5 is a schematic diagram illustrating an example implementation of a sensor capable of operating in a synchronous mode as described in connection with Figure 4 ;

[0011] Figure 6 and Figure 7 is a diagram illustrating an example associated with adjustment of a sampling point based on a DLC value and a DLC target, as described herein;

[0012] Figure 8 is a diagram illustrating an example of adapting to a change in a pulse width modulation (PWM) frequency based on a configurable sample adjustment time, as described herein;

[0013] Figure 9 is a schematic diagram illustrating an example implementation of a sensor capable of performing operations associated with maintaining a reference time value associated with a time point at which a trigger is predicted to be received from an ECU, as described herein;

[0014] Figure 10 is a diagram illustrating Figure 9 an example of an interface implementation component of a sensor as shown in

[0015] Figure 11 is a diagram illustrating an example of timing and signal flow of a sensor in a case where a time interval between triggers from an ECU is constant over a period of time;

[0016] Figure 12 is a diagram illustrating an example of timing and signal flow associated with operation of a sensor in the case where the ECU reduces the PWM frequency;

[0017] Figure 13 is a diagram illustrating an example of timing and signal flow associated with operation of a sensor in the case where the ECU increases the PWM frequency;

[0018] Figure 14 is a diagram illustrating an example of timing and signal flow associated with operation of a sensor in the case where the ECU temporarily increases the PWM frequency to twice the target frequency; and

[0019] Figure 15 and Figure 16 is a flowchart of an example process associated with operation of a sensor described herein. DETAILED DESCRIPTION

[0020] The following detailed description of example implementations refers to the accompanying drawings. Like or similar elements in different drawings can be identified by the same or similar reference numerals.

[0021] In some sensor systems, one or more sensors can be configured for operation in a mode in which the sensor performs a set of sensor tasks based on receiving a trigger. This mode is referred to as an on-demand mode. Typically, when operating in the on-demand mode, the sensor performs a set of sensor tasks, such as sampling a sensor signal, calculating sensor data based on the sampling of the sensor signal, transmitting the sensor data, etc., in response to receiving a trigger (e.g., a request for sensor data) received from an electronic control unit (ECU) of the sensor system. One drawback of the on-demand mode is that the delay between the trigger transmitted by the ECU and the sensor data received by the ECU in response to the trigger can be too long (e.g., because the ECU must wait for the internal processing time of the sensor in addition to the bus transmission time before receiving the sensor data), and this delay can be further affected by significant jitter (e.g., because the ECU trigger frequency is different from the internal processing frequency of the sensor). This delay and jitter in the on-demand mode is unacceptable in certain applications, such as applications using a pulse width modulation (PWM) frequency above 20 kilohertz (kHz), because sensor data values are lost during operation.

[0022] To reduce such latency in a sensor system, one or more sensors can be configured to operate in a synchronous mode. Generally, while operating in the synchronous mode, the sensors predict a time point at which a trigger from the ECU is received, and perform a set of sensor tasks (e.g., cause the sensors to pre-process sensor data) based on the prediction, such that the sensor data is ready at the time point at which the trigger is received. Thus, the prediction allows the sensor data to be immediately transmitted to the ECU upon receiving the trigger (i.e., without the latency caused by internal sensor processing time as in the on-demand mode). However, operating effectively in the synchronous mode is predicated on the ECU transmitting a deterministic trigger (e.g., to allow the sensors to accurately predict the time point of receipt of the trigger), and the jitter of the predicted time point is minimal to avoid additional errors caused by the jitter.

[0023] In some applications, as part of a strategy for controlling a sensor system, the ECU of the sensor system can change the PWM frequency. Notably, when the sensors operate in the on-demand mode, the change in PWM frequency does not affect the performance of the sensor system. However, the change in PWM frequency causes non-deterministic triggering behavior of the sensor system, and thus degrades the performance of the sensor system when one or more sensors operate in the synchronous mode.

[0024] Some implementations described herein provide techniques and apparatuses for accommodating changes in PWM frequency in a sensor system that includes one or more sensors operating in a synchronous mode.

[0025] In some implementations, as described herein, a sensor operating in the synchronous mode can be able to adjust a sampling point (e.g., a time point at which a sensor signal is sampled) to account for changes in PWM frequency. For example, in some implementations, the sampling point can be incrementally adjusted (e.g., in configurable increments, within a configurable window, etc.) to accommodate changes in PWM frequency, allowing the sensor to accommodate changes in PWM frequency without losing sensor data values. Further, in some implementations, the sensor can determine and transmit latency compensation information (e.g., an indication of a delay time between completion of a set of sensor tasks and receipt of a trigger from the ECU, information indicating a deviation from an expected sampling point, etc.), allowing the ECU to compensate for latency without any additional jitter.

[0026] In some implementations, as described herein, a sensor operating in a synchronous mode can be capable of configuring a prediction of a trigger point (e.g., a point in time at which a trigger is received from an ECU). In some implementations, the prediction of the trigger point can be configured to account for changes in PWM frequency. For example, in some implementations, a sensor can measure an amount of time between successive triggers received by the sensor. Here, upon receiving a given trigger, the sensor can adjust a reference time associated with predicting receipt of a trigger from the ECU. In some implementations, repeated or continuous updating of the reference time enables the sensor to adapt to changes in PWM frequency while maintaining synchronization during operation in the synchronous mode.

[0027] In some implementations, as described herein, an ECU can be configured to temporarily increase a PWM frequency above a target PWM frequency, after which the ECU can decrease the PWM frequency to the target PWM frequency. In some implementations, the temporary over-increase in PWM frequency can prevent a sensor operating in a synchronous mode from losing sensor data values that would otherwise be lost by increasing directly to the target PWM frequency. Additional details regarding the above implementations are provided below.

[0028] Figure 1 is a diagram of an example sensor system 100 in which the techniques and apparatuses described herein can be implemented. As shown, the sensor system 100 can include one or more sensors 105 (e.g., sensors 105-1 through 105-N (N > 1)) connected to an ECU 120 via a sensor interface bus 135 (referred to herein as bus 135). Figure 1

[0029] The sensor 105 includes a housing associated with one or more components of a sensor for measuring one or more characteristics (e.g., a speed of an object, a position of an object, a rotational angle of an object, a pressure amount, a temperature, an amount of current, etc.). As shown, the sensor 105 includes a sensing device 110 and a transceiver (Tx / Rx) 115. In some implementations, the sensor 105 is remote from the ECU 120 and thus connected to the ECU 120 via the bus 135 (e.g., via a wired connection). Additionally or alternatively, the sensor 105 can be a local sensor (e.g., such that the sensor 105 is connected to the ECU 120 via a short connection, integrated on the same chip as the ECU 120, etc.). In some implementations, the sensor 105 is capable of operating in a synchronous mode of operation, as described herein.

[0030] ​The sensing device 110 includes an apparatus capable of performing sensing functions (e.g., sampling a sensor signal, computing sensor data, or otherwise determining sensor data based on sampling of a sensor signal, etc.). In some implementations, the sensing device 110 is capable of performing operations associated with accommodating changes in PWM frequency during operation in a synchronous mode, as described herein. In some implementations, the sensing device 110 can include one or more sensing elements, an analog-to-digital converter (ADC), a digital signal processor (DSP), a memory component (e.g., a non-volatile memory), a digital interface, and / or one or more other components capable of performing sensing functions and / or capable of implementing operations described herein.

[0031] The transceiver 115 includes a component via which an apparatus (e.g., the sensor 105, the ECU 120) can transmit and receive information. For example, the transceiver 115 can include a differential line transceiver or a similar type of apparatus. In some implementations, the transceiver 115 includes a transmission (Tx) component that allows the sensor 105 to transmit information (e.g., sensor data, information related to sensor data, latency compensation information, diagnostic information, etc.) to the ECU 120 via the bus 135, and a reception (Rx) component that allows the sensor 105 to receive information (e.g., a trigger signal, a read command, etc.) from the ECU 120 via the bus 135. In some implementations, the transceiver 115 can include a line driver for enabling the Tx component to transmit information or the Rx component to receive information at a given time. In some implementations, the sensor 105 can not include the transceiver 115. For example, the sensor 105 can not include the transceiver 115 when the sensor 105 is a local sensor and / or when a length of a connection between the sensor 105 and the ECU 120 is relatively short (e.g., as compared to applications in which the sensor 105 is a remote sensor).

[0032] The bus 135 includes a sensor interface bus for communicating information between one or more sensors 105 and the ECU 120. In some implementations, the bus 135 can include a connection (e.g., including one or more wires and a connector) via which the sensor 105 is connected to the ECU 120. In some implementations, the bus 135 can include a set of connections, each associated with one or more sensors 105 connected to the ECU 120 (e.g., when multiple sensors 105 are connected to the ECU 120 via one or more buses 115). In some implementations, a given connection can be capable of communicating signals from the ECU 120 to the sensor 105 and from the sensor 105 to the ECU 120 (e.g., via the same wire or via different wires).

[0033] ECU 120 includes one or more devices associated with controlling one or more electrical systems and / or electrical subsystems based on sensor data provided by sensors 105. As shown, ECU 120 can include a transceiver 125 and a controller (pC) 130. In some implementations, controller 130 can be capable of calibrating, controlling, regulating, etc. one or more electrical systems and / or electrical subsystems based on sensor data transmitted by sensors 105. For example, in some implementations, controller 130 can include an electronic / engine control module (ECM), a powertrain control module (PCM), a transmission control module (TCM), a brake control module (BCM or EBCM), a central control module (CCM), a central timing module (CTM), a general electronic module (GEM), a body control module (BCM), a suspension control module (SCM), or other electrical system or electrical subsystem of a vehicle. In some implementations, controller 130 can be capable of selecting, changing, or otherwise controlling a PWM frequency associated with acquiring sensor data from one or more sensors 105 for controlling one or more electrical systems and / or electrical subsystems.

[0034] Transceiver 125 can be similar to transceiver 115 and can include components via which devices (e.g., sensors 105, ECU 120) can transmit and receive information. In some implementations, transceiver 125 includes a Tx component that allows ECU 120 to transmit information (e.g., trigger signals) to sensors 105 via bus 135, and a Rx component that allows ECU 120 to receive information (e.g., sensor data, diagnostic information, etc.) from sensors 105 via bus 135. In certain implementations, transceiver 125 can include a line driver for enabling the Tx component to transmit information or the Rx component to receive information at a given time.

[0035] Provided Figure 1 The number and arrangement of devices shown is Figure 1 There can be additional devices and / or components, fewer devices and / or components, different devices and / or components, or differently arranged devices and / or components than those shown, in various implementations. For example, in some implementations, sensor system 100 can include multiple sensors 105, each connected to ECU 120 via one or more associated buses 115. Moreover, Figure 1 Two or more devices and / or components shown can be implemented within a single device and / or component, or Figure 1 A single device and / or single component shown can be implemented as multiple, distributed devices and / or components. Additionally or alternatively, Figure 1 A set of devices and / or components (e.g., one or more devices and / or components) shown can perform one or more functions described as being performed by another set of devices and / or components.Figure 1 One or more functions performed by another group of devices and / or components.

[0036] Figure 2 and Figure 3 is a diagram associated with the operation of the sensor 105 in the synchronous mode. In the synchronous operation mode, as Figure 2 As shown in example 200 of , for a given period, the sensor 105 initiates a set of sensor tasks (e.g., sensor signal sampling and sensor data calculation) such that the sensor data is ready for transmission at the time the sensor 105 receives a trigger (e.g., such that the sensor data is ready at the time the read command is received in a request from the ECU 120 on the bus 135). As described above, the synchronous operating mode reduces the latency associated with the reception of sensor data by the ECU 120 and, in addition, improves the utilization of the bus 135 (e.g., when multiple sensors 105 are connected to the bus 135, or if multiple registers of one or more sensors 105 must be read within a given time frame). In some implementations, as described above and as Figure 2 As shown, the sensor 105 in synchronous mode is configured to anticipate receipt of a trigger and, therefore, anticipate a point in time at which the set of sensor tasks is to be initiated, such that the sensor data is ready for transmission at the point in time when the trigger is received by the sensor 105. In some implementations, the sensor 105 may transmit information indicating the status of the timing control loop (e.g., an indication of whether synchronization of the sensor 105 is maintained) in a data frame including the sensor data.

[0037] Figure 3 FIG. 3 is a flow chart 300 illustrating the operation of the sensor 105 to initiate operation in the synchronous mode. Figure 3 As shown, upon startup (e.g., when the sensor system 100 is powered on), the sensor 105 enters the on-demand mode of operation. In some implementations, the on-demand mode can be configured as the default mode of operation for the sensor 105. Here, if the synchronous mode is selected in the communication configuration register of the sensor 105, the sensor 105 can initiate a sequence for starting operation in the synchronous mode based on a first trigger received from the ECU 120 (e.g., when the ECU 120 broadcasts the first trigger to a specified address, such as address 0x00, on the bus 135). Based on receiving the first trigger, the sensor 105 with the synchronous mode enabled initiates time interval measurement and operation in the pre-synchronization mode, as shown. Figure 3As shown, the sensor 105 can be configured to transmit the latest sensor data available on the sensor 105 in response to the first trigger as well as an indication that the sensor 105 is out of sync (e.g., by indicating the out-of-sync condition in a status register). The second trigger broadcast by the ECU 120 (e.g., to a designated address) enables the sensor 105 to measure the time interval between the first trigger and the second trigger. This time interval can then be used by the sensor 105 to predict the point in time at which the sensor 105 will receive the third trigger, and the sensor 105 can accordingly begin operating in the synchronized mode. In some implementations, if the sensor 105 experiences a synchronization failure, the sensor 105 can return to the on-demand operating mode and repeat the above steps in order to return to the synchronized operating mode.

[0038] As described above, a sensor 105 can be configured to operate in one of two operating modes: an on-demand operating mode and a synchronized operating mode. In the on-demand operating mode, the sensor 105 can be configured to transmit sensor data in response to a request from an ECU 120. In the synchronized operating mode, the sensor 105 can be configured to transmit sensor data in response to a trigger from the ECU 120. Figure 2 and Figure 3 As an example. Other examples can differ with respect to the specific details of the Figure 2 and Figure 3 described with respect to the above-described examples.

[0039] In some implementations, as described above, the sensor 105 can measure the time interval between triggers received from the ECU 120 and can predict the timing of the next trigger in association with operating in the synchronized mode. In some implementations, the sensor 105 can be configured with a delay latency counter (DLC) that is used to measure the amount of time between the completion time of a set of sensor tasks (e.g., the time at which sensor data is ready for transmission) and the receipt time of the next trigger (e.g., the next synchronization command, the next read command, etc.). Figure 4 A timing diagram 400 and a corresponding timeline 450 associated with the use of a DLC and the comparison of a DLC value to a DLC target are depicted. In some implementations, the DLC can be used in association with adjusting the prediction of the point in time at which the sensor 105 will receive the upcoming trigger. In some implementations, as Figure 4 As shown, the sensor 105 begins the DLC at the completion of the set of sensor tasks. As further indicated in Figure 4 In some implementations, the sensor 105 can stop the DLC upon receipt of the next trigger (e.g., upon receipt of a request from the ECU 120), as further indicated in

[0040] In some implementations, the sensor 105 compares the value of the DLC at the time of receipt of the next trigger to a high DLC threshold (e.g., a maximum allowed DLC value). Here, if the value of the DLC is greater than or equal to the high DLC threshold, which indicates that the receipt of the trigger is some (configurable) amount of time later than predicted, the sensor 105 can determine that the sensor data is due. In this case, the sensor 105 can transmit a data frame that includes the sensor data and an indication that the sensor data is due. Similarly, in some implementations, the sensor 105 compares the value of the DLC at the time of receipt of the next trigger to a low DLC threshold (e.g., a minimum allowed DLC value). Here, if the value of the DLC is less than or equal to the low DLC threshold, which indicates that the time of receipt of the trigger before the sensor is some (configurable) amount of time earlier than predicted, or even before the sensor data is ready to be transmitted, the sensor 105 can transmit a data frame that does not include the sensor data, or alternatively, can transmit a data frame that includes old sensor data and an indication that the sensor data is not ready.

[0041] Further, in some implementations, based on receipt of the next trigger, the sensor 105 calculates a deviation of the actual delay latency (e.g., indicated by the value of the DLC at the time of receipt of the next trigger) from the target delay latency (e.g., the DLC target). In some implementations, the sensor 105 transmits an indication of the deviation from the target delay latency (referred to as latency compensation information) to the ECU 120 along with the sensor data. In some implementations, the latency compensation information can be carried in one or more bits of a data frame designated for advanced latency compensation (ALC) information. In this way, the ECU 120 can receive the sensor data and the latency compensation information and, as a result, can compensate for unexpected delay latency associated with the sensor data. In some implementations, the sensor 105 can indicate a data frame transmitted by the sensor 105 as due if the value of the DLC is greater than or equal to the DLC high threshold (e.g., when the time of receipt of the next trigger is later than expected) or less than or equal to the DLC low threshold (e.g., when the sensor data is not ready at the time of receipt of the next trigger). Figure 5 is shown to be capable of operating in the synchronization mode of operation described in connection with Figure 4 A schematic diagram of an example implementation 500 of a sensor 105 described as being capable of operating in the synchronization mode of operation described in connection with

[0042] As described above, the sensor 105 is provided with a target delay latency (e.g., the DLC target) that is based on a target delay latency value (e.g., the target delay latency value) and a target delay latency adjustment value (e.g., the target delay latency adjustment value). In some implementations, the target delay latency adjustment value is based on a target delay latency adjustment value (e.g., the target delay latency adjustment value) and a target delay latency adjustment adjustment value (e.g., the target delay latency adjustment adjustment value). In some implementations, the target delay latency adjustment adjustment value is based on a target delay latency adjustment adjustment value (e.g., the target delay latency adjustment adjustment value) and a target delay latency adjustment adjustment adjustment value (e.g., the target delay latency adjustment adjustment adjustment value). In some implementations, the target delay latency adjustment adjustment adjustment value is based on a target delay latency adjustment adjustment adjustment value (e.g., the target delay latency adjustment adjustment adjustment value) and a target delay latency adjustment adjustment adjustment adjustment value (e.g., the target delay latency adjustment adjustment adjustment adjustment value). Figure 4 and Figure 5 are provided as examples. Other examples can differ from what is described with respect to the Figure 4 and Figure 5 described.

[0043] In some implementations, the sensor 105 can compare the DLC value at the time of receipt of the trigger with the DLC target for receiving the trigger from the ECU 120. In some implementations, depending on the result of a given comparison, the sampling time of the next cycle (e.g., the time at which the sensor 105 samples the sensor signal) can be adjusted (e.g., by a configurable amount). In some implementations, adjusting the sampling time in this manner enables the sensor 105 to adapt to clock drift or expected changes in PWM frequency while avoiding loss of synchronization.

[0044] As described above, the DLC value indicates the amount of time between the completion of the set of sensor tasks (e.g., starting from the time when the calculation of the sensor data is completed) and the receipt of the next trigger from the ECU 120. Ideally, the time of receipt of the next trigger coincides with the DLC target, as described above. However, due to jitter effects, the time when the trigger is received may deviate from the DLC target. In some implementations, the sensor 105 may indicate the deviation of the DLC value from the DLC target (e.g., a positive deviation or a negative deviation) in latency compensation information (e.g., via ALC information carried in one or more bits) that is transmitted in the data frame carrying the sensor data. In some implementations, the sensor 105 may adjust the sampling point (e.g., the point in time at which the sensor 105 samples the sensor signal in a given cycle) based on the deviation of the DLC value from the DLC target. Figure 6 and Figure 7 are diagrams illustrating examples 600 and 700 associated with adjustment of sampling points based on a DLC value and a DLC target, respectively.

[0045] In some implementations, such as Figure 6 and Figure 7 As shown, the sensor 105 can be configured with a defined sample adjustment range (e.g., adjust with +Sample adjust The range between Figure 6 and Figure 7 Sample adjustment value (Sample adjust In some implementations, the sample adjustment value may be configured on the sensor 105. In operation, if the sensor 105 determines that the DLC value is outside the sample adjustment range (i.e., the deviation of the DLC value from the DLC target meets the sample adjustment threshold), the sensor 105 may adjust the sampling point of the next cycle by a specific amount, such amount of time corresponding to the configured sample adjustment value.

[0046] In some implementations, if the DLC value is greater than or equal to the DLC high threshold or less than or equal to the DLC low threshold, the data frame is considered to be expired and the sensor 105 can perform a resynchronization (e.g., in the next three cycles). In some implementations, the resolution of the ALC (e.g., DLCprotoMask), the maximum value of the sample adjustment value, the DLC target, and / or the DLC high threshold are configurable, and thus, can be configured according to the requirements in a given application.

[0047] Figure 6 An example associated with a relatively large deviation of the adjusted and compensated DLC value from the DLC target is shown. Figure 7 An example associated with a relatively small deviation of the adjusted and compensated DLC value from the DLC target is shown.

[0048] As described above, providing Figure 6 and Figure 7 are provided as examples. Other examples can differ from what is described with respect to the Figure 6 and Figure 7 described.

[0049] In some implementations, the ECU 120 can change the PWM frequency during operation of the sensor 105 in the synchronized mode, as described above. In some implementations, the sensor 105 can accommodate the change in PWM frequency without losing synchronization. In some implementations, the sample adjustment time at which the sensor 105 can accommodate the change in frequency is configurable. In some implementations, the sample adjustment time is in a range of, for example, from 150 nanoseconds (ns) to 2.4 microseconds (ps).

[0050] In some implementations, as the timing of the trigger changes (e.g., the difference between the DLC value and the DLC target) is greater than the sample adjustment time, the sample point associated with the next cycle is changed based on the sample adjustment time to support the change in PWM frequency. This process can repeat until the desired frequency is reached. In some implementations, the speed at which the adjustment can be implemented depends on the sample adjustment time.

[0051] Figure 8 is a diagram showing an example 800 of accommodating a change in PWM frequency based on a configurable sample adjustment time. In the example 800, the PWM frequency is to change from 10 kilohertz (kHz) (corresponding to a period T PWM of 100 ps) to 12 kHz (corresponding to a period T PWM of 83.3 ps). In the example shown in Figure 8 the sample adjustment time At is 2.4 ps. As Figure 8As shown, the sensor 105 can accommodate a frequency change from 10 kHz to 12 kHz in 8 cycles, which corresponds to an absolute time of 732.8 ps. Notably, the ALC value in this example should encompass the maximum PWM jitter (e.g., ±300 ns), and the DLC protocol mask should be set to a value that brings the most benefit to the prediction calculations in the ECU 120.

[0052] As described above, providing Figure 8 is provided by way of example. Other examples can differ from what is described Figure 8 without departing from the spirit of the disclosure.

[0053] In some implementations, as described above, the sensor 105 can predict a time point at which a next trigger will be received based on a measured amount of time between time points at which two received triggers were received. In some implementations, the sensor 105 can repeatedly perform such measurements in order to continuously update a time point for initiating execution of a set of sensor tasks. For example, the sensor 105 can maintain a reference time value based on a measured time interval between triggers, and can utilize the reference time value in association with predicting when the sensor 105 will receive a next trigger.

[0054] Figure 9 is a schematic diagram illustrating an example implementation of a sensor 105 that is capable of performing operations associated with maintaining a reference time value associated with predicting a time point at which a trigger will be received from an ECU 120. As Figure 9 shown, the sensor 105 can include an interface implementation component 902 and a sensor algorithm component 904. As shown, the interface implementation component 902 can be connected (e.g., via relevant circuitry, such as a Schmitt trigger, a pad driver, etc.) to input / output pins of the sensor 105 in order to be capable of communicating with the ECU 120. As further shown, the interface implementation component 902 can also be connected to the sensor algorithm component 904 by at least an internal trigger line and a sensor data interface (e.g., associated with transmitting a data value Di).

[0055] As described above, providing Figure 9 is provided by way of example. Other examples can differ from what is described Figure 9 without departing from the spirit of the disclosure.

[0056] Figure 10 is a diagram illustrating an example of an interface implementation component 902. As Figure 10 shown, the interface implementation component 902 can include a trigger detector 1002, a trigger level calculator 1004, a protocol encoder 1006, a counter 1008, and an internal trigger generator 1010.

[0057] In example operation, the trigger detector 1002 detects a trigger received from the ECU 120 and forwards an indication that a trigger was detected (eg, an external trigger signal) to the trigger level calculator 1004 and the protocol encoder 1006 .

[0058] In some implementations, upon receiving an external trigger signal from the trigger detector 1002, the trigger level calculator 1004 retrieves the counter value from the counter 1008 and resets the counter 1008. Next, the trigger level calculator 1004 can compare the counter value to a reference time value (e.g., via the trigger level calculator 1004). Here, if the difference between the counter value and the reference time value satisfies a threshold (e.g., the absolute value of the difference is greater than or equal to the threshold), the trigger level calculator 1004 can signal to the protocol encoder 1006 that the difference between the counter value and the reference time value satisfies the threshold (i.e., the trigger was received "off target"). In some implementations, the trigger level calculator 1004 subtracts a DLC target value (e.g., stored or otherwise accessed by the trigger level calculator 1004) from the counter value and stores the result of the subtraction as an internal trigger level value (trg). In some implementations, the DLC target value corresponds to the amount of time required for the sensor algorithm component 904 to perform a set of sensor tasks (e.g., plus a margin time to accommodate, for example, jitter). In some implementations, the trigger level calculator 1004 provides the internal trigger level value to the internal trigger generator 1010. Notably, the counter 1008 starts counting from 0 and should be of sufficient size so that the maximum specified external trigger period can be supported without overflow.

[0059] In some implementations, such as Figure 10 As shown, the internal trigger generator 1010 also monitors the counter value from the counter 1008. Here, when the count value of the counter 1008 is greater than or equal to the internal trigger level value stored on the internal trigger generator 1010 (e.g., the internal trigger level value received earlier from the trigger level calculator 1004), the internal trigger generator 1010 triggers the sensor algorithm component 904 (e.g., via an internal trigger signal). Upon receiving the internal trigger signal from the internal trigger generator 1010, the sensor algorithm component 904 calculates the sensor data (Di). In some implementations, for example, the calculation of the sensor data may include triggering an analog-to-digital conversion, retrieving data from an ADC, a filter, or a register, compensating for non-idealities of the sensor or ADC (e.g., offset, amplitude, phase, orthogonality compensation, etc.), calculating a correlation value (e.g., angular or linear position via, for example, an arctan function call, a CORDIC evaluation, etc.), or compensating for non-idealities of the correlation value (e.g., using a lookup table), etc.

[0060] In some implementations, upon receiving an indication that a trigger from ECU 120 is detected, protocol encoder 1006 prepares a data frame and transmits it to ECU 120. Here, if no valid sensor data value Di is received from sensor algorithm 904, the lack of sensor data is indicated in the data frame (e.g., using a value such as "nd"). In the case where sensor data value Di is "off-target," as indicated by trigger level calculator 1004 in the manner described above, this information is indicated in the data frame (e.g., indicating a warning that the sensor data is delayed and different from the nominal case).

[0061] As described above, providing Figure 10 is an example. Other examples can differ with respect to Figure 10 the details described with respect to the example implementation.

[0062] Figure 11 is a diagram illustrating an example 1100 of timing and signal flow associated with operation of sensor 105 in the case where the time interval between triggers from ECU 120 is constant over a period of time.

[0063] In some implementations, if the rate at which ECU 120 transmits and sensor 105 receives triggers is constant, the reference time value remains constant over time, and no updates are needed. However, as described above, the rate at which ECU 120 transmits and sensor 105 receives triggers can vary (e.g., due to a change in PWM frequency or due to a change in the clock reference of the sensor). In some implementations, sensor 105 is able to maintain synchronization even when the rate at which ECU 120 transmits and sensor 105 receives triggers varies.

[0064] As described above, providing Figure 11 is an example. Other examples can differ with respect to Figure 11 the details described with respect to the example implementation.

[0065] One case in which the trigger rate varies is when ECU 120 reduces the PWM frequency. Figure 12 is a diagram illustrating an example 1200 of timing and signal flow associated with operation of sensor 105 in the case where ECU 120 reduces the PWM frequency. In Figure 12 the example illustrated, ECU 120 reduces the PWM frequency from fs A to fs B , such that the request period increases from period Ts A (Ts A = 1 / fs A ) to period Ts B (Ts B = 1 / fs B). As further shown, and in accordance with the above regarding Figure 9 and Figure 10 the value of the counter 1008 reaches a first internal trigger level value trg A , the sensor algorithm 904 computes sensor data D2. The internal trigger level value trg A is determined when the period between triggers is a period Ts A . As Figure 12 shown, as a result of the PWM frequency reduction, the sensor data D2 is not synchronized with the next received trigger, there is a certain delay. In some implementations, the sensor 105 can include an indication in the data frame that the received trigger is off target (indicated by the "!" in Figure 12 ). Further, the sensor 105 can indicate the delay in the data frame to, for example, enable the ECU 120 to perform latency compensation as described above. In the case where the PWM frequency reduction is initiated by the ECU, the ECU is aware of the additional delay (i.e., the delay difference from the target value). The additional delay is the difference in the trigger period before and after the PWM frequency change. Thus, even if the sensor does not explicitly transmit an indication of the delay difference from the target value, the ECU is able to compensate for the latency. Further as shown, after the period associated with the sensor data D2, the sensor 105 updates the reference distance value based on the corresponding period Ts B , and the internal trigger level value is updated such that the internal trigger level value trg B is used to trigger the sensor algorithm 904. In this way, synchronization with the trigger pulses of the ECU 120 can be restored, and the next item of sensor data D3 will be on time.

[0066] As described above, the provision Figure 12 of the PWM frequency reduction is provided as an example. Other examples can differ from those described with regard to Figure 12 .

[0067] Another case of a change in the trigger rate is an increase in the PWM frequency by the ECU 120. Figure 13 is a diagram of an example 1300 showing the timing and signal flow associated with the operation of the sensor 105 in the case where the ECU 120 increases the PWM frequency. In Figure 13 the example shown, the ECU 120 increases the PWM frequency from fs A to fs B , such that the request period is reduced from a period Ts A (Ts A = 1 / fs A ) to a period Ts B (Ts B = 1 / fs B). As further shown, and in accordance with the above regarding 9 and Figure 10 the operations described, when the value of the counter 1008 reaches a first internal trigger level value trg A , the sensor algorithm 904 computes sensor data D2. The internal trigger level value trg A is determined at a time period between triggers is a time period Ts A . As Figure 13 shown, as a result of the increase in the PWM frequency, the sensor data D2 is not ready for transmission when the next trigger is received from the ECU 120. In some implementations, the sensor 105 can transmit an indication in the data frame that the sensor data is not ready and the data frame does not include the sensor data (indicated by “nd!” in Figure 13 . Further as shown, after the period associated with the sensor data D2, the sensor 105 updates the reference distance value based on the corresponding time period Ts B , and the internal trigger level value is updated such that the internal trigger level value trg B is used to trigger the sensor algorithm 904. In this way, synchronization with the trigger pulses of the ECU 120 can be restored, and the next item of sensor data D3 will be on time.

[0068] As noted above, the provision Figure 13 is provided as an example. Other examples can differ from the example described with respect to Figure 13 .

[0069] Notably, in the example 1300, the ECU 120 “misses” one sensor data value due to the increase in the PWM frequency. In certain applications, it is undesirable to miss a sensor data value. For example, in an electrically powered primary drive of a vehicle, the PWM frequency is increased at acceleration (i.e., when high torque is generated). In this case, it is undesirable to miss a sensor data value because doing so would reduce energy efficiency. Thus, in some implementations, the ECU 120 can be configured to prevent a sensor data value from being missed due to an increase in the PWM frequency.

[0070] In some implementations, rather than increasing the PWM frequency from the current PWM frequency to the target PWM frequency (which results in a sensor data being missed), the ECU 120 can temporarily increase the PWM frequency to twice the target PWM frequency for two triggers, after which the ECU 120 can decrease the PWM frequency to the target PWM frequency. In this way, the sensor 105 can transmit and the ECU 120 can receive the sensor data values that the ECU 120 needs (i.e., such that no sensor data values are missed).

[0071] Figure 14is a diagram showing an example 1400 of timing and signal flow associated with the operation of the sensor 105 when the ECU 120 temporarily increases the PWM frequency to twice the target frequency. Figure 14 In the example shown, the ECU 120 changes the PWM frequency from fs to fs during operation of the sensor 105 in the synchronous mode. A Add to fs B , so that the time interval between triggers is from period Ts A (Ts A =1 / fs A ) is reduced to the period Ts B (Ts B =1 / fs B ).like Figure 14 As shown, the ECU 120 does not change the PWM frequency from PWM frequency fs A Directly change to PWM frequency fs B , which would result in a loss of sensor data values ​​(as shown in example 1300), but instead the ECU 120 temporarily changes the PWM frequency to twice the target frequency (e.g., to 2*fs B , so that the period between triggers is the period Ts B / 2). Here, the sensor 105 cannot provide the time Ts corresponding to the next trigger (eg, after the PWM frequency increases). B / 2 received trigger) because the sensor data is not ready. As further shown, the sensor 105 is based on the corresponding period 2*Ts B The reference distance value is updated, and the internal trigger level value is updated so that the internal trigger level value trg C For triggering the sensor algorithm 904. Here, the ECU 120 expects to receive a "data not ready" warning in response to the first trigger after the PWM frequency is increased, and may discard the data frame accordingly (e.g., because the ECU 120 is not ready at time Ts after the PWM frequency is increased). B / 2 does not require sensor data value). Since the sensor 105 adapts to the internal trigger level value, the sensor 105 is at the time 2*Ts after the PWM frequency is increased. B / 2 expects another trigger and accordingly prepares and transmits sensor data D2.

[0072] Next, after the ECU 120 transmits the second trigger (eg, time 2*Ts after the PWM frequency is increased) B / 2), ECU 120 reduces the PWM frequency to the target frequency fs B (For example, the interval between time triggers is the period 1 / Ts B ). Here, since the PWM frequency is 2*fsB decreased to fs B The next sensor data value D3 transmitted by the sensor 105 will show an increased latency (e.g., because the set of sensor tasks is based on an internal trigger level value trg C triggered). However, this latency can be indicated and compensated for as described above for the case of the ECU 120 decreasing the PWM frequency. After the period associated with the sensor data D3, the sensor 105 updates the reference distance value based on the corresponding time period Ts B the internal trigger level value is updated such that the internal trigger level value trg B the sensor algorithm 904 is triggered. In this way, synchronization of the trigger pulses with the ECU 120 can be restored, and the next item of sensor data D4 will be on time.

[0073] As described above, a sensor 105 is provided Figure 14 as an example. Other examples can differ with respect to the Figure 14 described.

[0074] Figure 15 is a flow diagram of an example process 1500 associated with operation of a sensor described herein. In some implementations, one or more of the process blocks of Figure 15 may be performed by a sensor (e.g., the sensor 105).

[0075] As shown in Figure 15 the process 1500 can include determining a delay latency value associated with an amount of time from completion of a set of sensor tasks to an actual receipt time of a trigger for selectively transmitting or sampling sensor data (block 1510). For example, a sensor can determine a delay latency value associated with an amount of time from completion of a set of sensor tasks to an actual receipt time of a trigger for selectively transmitting or sampling sensor data. For example, in some implementations, the trigger can cause the sensor to transmit previously sampled sensor data (e.g., on a bus). As another example, in some implementations, the trigger can cause the sensor to sample sensor data.

[0076] As further shown in Figure 15 the process 1500 can include calculating a deviation of the delay latency value from a target delay latency (block 1520). For example, as described above, a sensor can calculate a deviation of the delay latency value from a target delay latency.

[0077] As further shown in Figure 15As further shown, process 1500 can include transmitting a data frame including an indication associated with a deviation of the latency wait time value from a target latency wait time (block 1530). For example, the sensor can transmit a data frame including an indication associated with a deviation of the latency wait time value from a target latency wait time, as described above.

[0078] Process 1500 can include additional implementations, such as any single implementation or any combination of implementations described below and / or in connection with one or more other processes described elsewhere herein.

[0079] In a first implementation, process 1500 includes adjusting a time of initiation of the set of sensor tasks based on determining that the deviation satisfies a threshold.

[0080] In a second implementation, alone or in combination with the first implementation, the timing is adjusted to accommodate a change in a PWM frequency associated with operation of the sensor.

[0081] In a third implementation, alone or in combination with any of the first and second implementations, process 1500 includes determining that the latency wait time value satisfies a latency wait time high threshold, and transmitting the data frame includes transmitting an indication to indicate that sensor data is ready.

[0082] In a fourth implementation, alone or in combination with any of the first through third implementations, process 1500 includes determining that the latency wait time value satisfies a latency wait time low threshold, and transmitting the data frame includes transmitting an indication to indicate that sensor data is not ready.

[0083] In a fifth implementation, alone or in combination with any of the first through fourth implementations, the indication associated with a deviation of the latency wait time value from a target latency wait time includes latency compensation information to be used to compensate for the deviation.

[0084] Although Figure 15 Example blocks of process 1500 are shown, but in some implementations, process 1500 can include more blocks than those depicted, fewer blocks, different blocks, or differently arranged blocks than those shown in Figure 15 than those depicted in process 1500. Additionally or alternatively, two or more of the blocks of process 1500 can be performed in parallel.

[0085] Figure 16 is a flow diagram of an example process 1600 associated with accommodating changes in a pulse width modulation frequency of a sensor operating in a synchronous mode. In some implementations, Figure 16 One or more of the process blocks of process 1600 are performed by an ECU (e.g., ECU 120).

[0086] As Figure 16As shown, process 1600 can include transmitting a first plurality of triggers to a sensor operating in a synchronous mode, where a time interval between triggers in the first plurality of triggers is a first period corresponding to a first frequency (block 1610). For example, the ECU can transmit a first plurality of triggers to a sensor operating in a synchronous mode (e.g., sensor 105), where a time interval between triggers in the first plurality of triggers is a first period corresponding to a first frequency, as described above.

[0087] As further shown in Figure 16 As further shown in

[0088] As further shown in Figure 16 As further shown in

[0089] Process 1600 can include additional implementations, such as any single implementation or any combination of implementations described below and / or in connection with one or more other processes described elsewhere herein.

[0090] Although Figure 16 The example blocks of process 1600 are illustrated in a particular order, but in some implementations, process 1600 includes more blocks, fewer blocks, different blocks, or differently arranged blocks than those depicted in Figure 16 Additionally or alternatively, two or more blocks of process 1600 can be performed in parallel.

[0091] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit implementations to the precise form disclosed. Modifications and variations can be possible in light of the above disclosure or from practicing the implementations as disclosed.

[0092] As used herein, the term "component" is intended to be broadly interpreted as hardware, firmware, and / or a combination of hardware and software. Obviously, the systems and / or methods described herein can be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit the implementation. Therefore, the operation and behavior of the systems and / or methods are described herein without reference to specific software code - it should be understood that software and hardware can be designed to implement the systems and / or methods based on the description herein.

[0093] As used herein, satisfying a threshold may refer to a value or its corresponding absolute value being greater than a threshold, greater than or equal to a threshold, less than a threshold, less than or equal to a threshold, equal to a threshold, not equal to a threshold, etc., depending on the context.

[0094] Although specific feature combinations are described in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of the various implementations. In fact, many of these features can be combined in ways that are not specifically described in the claims and / or disclosed in the specification. Although each dependent claim listed below can be directly dependent on one claim, the disclosure of the various implementations includes the combination of each dependent claim with every other claim in the claim set. As used herein, a phrase referring to "at least one" of a list of items refers to any combination of these items, including single members. For example, "at least one of a, b, or c" is intended to cover a, b, c, ab, ac, bc, and abc, as well as any combination with multiple identical items.

[0095] No element, act or instruction used herein should be construed as critical or essential unless explicitly described as such. Also, as used herein, the articles “a” and “an” are intended to include one or more items, and can be used interchangeably with “one or more.” Furthermore, as used herein, the article “the” is intended to include one or more items unless otherwise clearly indicated; e.g., when preceding the term “only one” or “one and only one.” Also, as used herein, the term “set” is intended to include one or more items (e.g., related items, unrelated items, or a combination of related and unrelated items), and can be used interchangeably with “one or more.” Where only one item is intended, the phrase “only one” or similar language is used. Also, as used herein, the terms “has,” “have,” “having,” or the like are intended to be open-ended terms. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. Also, as used herein, the term “or” is intended to mean “and / or” unless expressly stated otherwise (e.g., in the context of “either / or” or “one or the other but not both”).

Claims

1. A sensor comprising: one or more components to: determine a time interval between a receipt time of a first trigger for selectively transmitting or sampling first sensor data and a receipt time of a second trigger for selectively transmitting or sampling second sensor data; determine a predicted receipt time of a third trigger for selectively transmitting or sampling third sensor data based on the time interval; initiate a set of sensor tasks based on the predicted receipt time of the third trigger, the set of sensor tasks initiated to cause the third sensor data to be ready for transmission at the predicted receipt time of the third trigger; receive the third trigger; determine a latency wait time value associated with an amount of time from completion of the set of sensor tasks to an actual receipt time of the third trigger; calculate a deviation of the latency wait time value from a target latency wait time; and transmit a data frame comprising an indication associated with the deviation of the latency wait time value from the target latency wait time, wherein the one or more components are further to: determine that the deviation of the latency wait time value from the target latency wait time satisfies a sample adjustment threshold, and based on determining that the deviation satisfies the sample adjustment threshold, adjust a sampling time point associated with a next initiation of the set of sensor tasks, wherein the sampling time point is adjusted in association with an increase or decrease in an adaptive pulse width modulation (PWM) frequency associated with operation of the sensor.

2. The sensor of claim 1, wherein the one or more components are further to: determine that the latency wait time value satisfies a latency wait time high threshold, and wherein the one or more components, in transmitting the data frame, are to: transmit the third sensor data, and transmit an indication to indicate that the third sensor data is due.

3. The sensor of claim 1, wherein the one or more components are further to: determine that the latency wait time value satisfies a latency wait time low threshold, and wherein the one or more components, in transmitting the data frame, are to: transmit an indication to indicate that the third sensor data is not ready.

4. The sensor of claim 1, wherein the indication associated with the deviation of the latency wait time value from the target latency wait time comprises latency compensation information to be used to compensate for the deviation.

5. A sensor comprising: a sensor algorithm component; and an interface implementation component comprising: an internal trigger generator to: monitor a counter value, and based on determining that the counter value is greater than or equal to an internal trigger level value, trigger the sensor algorithm component to execute a set of sensor tasks; a trigger detector to: receive a trigger for selectively transmitting or sampling sensor data, and forward the trigger to a trigger level calculator and a protocol encoder; the protocol encoder to transmit a data frame based at least in part on receiving the trigger; and the trigger level calculator to: determine an adjusted internal trigger level value, and determine a target latency wait time value based on the adjusted internal trigger level value. providing the adjusted internal trigger level value to the internal trigger generator, wherein the internal trigger level value is adjusted in association with an increase or decrease in an adaptive pulse width modulation (PWM) frequency associated with operation of the sensor.

6. The sensor of claim 5, wherein the trigger level calculator is further to: determine that a difference between a counter value at receipt of the trigger and a reference time value satisfies a threshold, and provide an indication that the difference between the counter value at receipt of the trigger and the reference time value satisfies the threshold.

7. The sensor of claim 5, wherein the trigger level calculator is to, in determining the adjusted internal trigger level: obtain a counter value at receipt of the trigger, calculate the adjusted internal trigger level value based on subtracting a target latency from the counter value at receipt of the trigger.

8. The sensor of claim 5, wherein the data frame includes an indication of missing sensor data when no sensor data associated with the trigger is received from the sensor algorithm component.

9. The sensor of claim 5, wherein the data frame includes an indication that sensor data included in the data frame is due when a difference between a counter value at receipt of the trigger and a reference time value satisfies a threshold.

10. A method comprising: determining, by a sensor, a latency value associated with an amount of time from completion of a set of sensor tasks to actual receipt of a trigger for selectively transmitting or sampling sensor data; calculating, by the sensor, a deviation of the latency value from a target latency; and transmitting, by the sensor, a data frame including an indication associated with the deviation of the latency value from the target latency, wherein the method further comprises adjusting initiation timing of the set of sensor tasks based on determining that the deviation satisfies a threshold, and wherein the timing is adjusted in association with a change in an adaptive pulse width modulation (PWM) frequency associated with operation of the sensor.

11. The method of claim 10, further comprising: determining that the latency value satisfies a latency high threshold, and wherein transmitting the data frame comprises: transmitting an indication to indicate that the sensor data is due.

12. The method of claim 10, further comprising: determining that the latency value satisfies a latency low threshold, and wherein transmitting the data frame comprises transmitting an indication to indicate that the sensor data is not ready.

13. The method of claim 10, wherein the indication associated with the deviation of the latency value from the target latency includes latency compensation information to be used to compensate for the deviation.

Citation Information

Patent Citations

  • Synchronization mechanism for high speed sensor interface

    CN108289003A