SWRA754 april   2023 AWRL6432 , IWRL6432

 

  1.   Trademarks
  2. 1Power Management Framework
  3. 2Hardware Design Options for Low Power
  4. 3Chirp Design Optimizations for Low Power
  5. 4Reducing Power in the Interframe Idle and Deep Sleep States
  6. 5Measuring Power
  7. 6References
  8. 7Revision History

Chirp Design Optimizations for Low Power

Active mode, and specifically the act of chirping during active mode, draws the most power of all the different states the xWRL6432 may enter. Chirping draws the most power because it turns on high power RF amplifiers for transmitting and receiving radar waves. Therefore, users may reduce the overall power consumption by reducing the amount of time spent chirping and/or by reducing the amount of power drawn while chirping. A non-exhaustive list of the most efficient ways to design a reduce power during chirping can be seen below.

Power Reduction Technique

Performance Impact

Increase the time between framesHigher latency

Decrease the time spent in Interchirp Idle and Interburst Idle

Larger maximum velocity. Coarser velocity resolution

Decrease the chirping time

Reduced range, seen more noticeably at the edges of the Field of View

Reduce the number of transmitters / receiversReduced angular resolution.

Reduced range, seen more noticeably at the edges of the Field of View

Reduce the transmit powerReduced range, seen more noticeably at the edges of the Field of View
A number of these techniques involve modifying a configuration file, so a modified configuration file from MMWAVE-L-SDK version 05.01.00.04 is shown below and referenced for convenience. Different MMWAVE-L-SDK versions may name or order the parameters discussed differently, but the fundamental concepts should not change between versions of the SDK. Additionally, detailed explanations of each of the parameters can be found in [2], which is located in the docs/ folder of the MMWAVE-L-SDK.
Note:

The mmWave Sensing Estimator Tool found online provides an intuitive interface for users to calculate chirp parameters and estimate power consumption.

% ***************************************************************
% MotionDetect:  Chirp configuration and Processing chain are 
% designed to detect moving objects, including estimation of 
% range, velocity and angle of the objects.  It is typically 
% useful for detecting, localizing and tracking objects in 
% indoor or outdoor settings.
% ***************************************************************
channelCfg 7 3 0
chirpComnCfg 8 0 0 256 4 28 0
chirpTimingCfg 6 63 0 75 60
frameCfg 2 0 200 64 1000 0
guiMonitor 2 1 0 0 0 1
sigProcChainCfg 16 8 1 0 4 4
cfarCfg 2 8 4 3 0 12.0 0 0.5 0 1 1 1
aoaFovCfg -60 60 -40 40
rangeSelCfg 0.1 12.0
clutterRemoval 1
compRangeBiasAndRxChanPhase 0.0 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000 1.00000 0.00000 -1.00000 0.00000
adcDataSource 0 C:/ti/mmwave_lp_sdk/examples/datapath/common/testBench/major_motion/adc_data_0001_CtestAdc6Ant.bin
adcLogging 0
lowPowerCfg 1
factoryCalibCfg 1 0 40 3 0x1ff000
mpdBoundaryBox 1 -1.5 1.5 0 3.8
sensorStart 0 0 0 0

Technique 1 - Increase the time between frames

Description

Taking more time in between frames allows the device to spend a greater proportion of its time in the Interframe Idle mode, and specifically, in the Deep Sleep state. Since the Interframe Idle / Deep Sleep state is the lowest power level of the device, increasing the amount of time the device spends in Deep Sleep reduces the overall power consumption by reducing the impact of the power drawn from the higher-power modes, such as Active, Interchirp Idle and Interburst Idle. This brings the average power closer to the power drawn in Interframe Idle / Deep Sleep. The three equations below describe this mathematically.

Equation 1. PowerAverage= PowerInterframe Idle×TimeInterframe Idle+PowerInterburst Idle×TimeInterburst Idle+PowerInterchirp Idle×TimeInterchirp Idle+PowerActive ×TimeActive÷TimeInterframe Idle+TimeInterburst Idle+TimeInterchirp Idle+TimeActive
Equation 2. PowerInterframe Idle <PowerInterburst Idle, PowerInterchirp Idle, PowerActive 
Equation 3. As TimeInterframe Idle >>>,  PowerAveragePowerInterframe Idle

Configuration File Location

ParameterCommand Line Argument NameCommand Line Argument PositionUnits
framePeriodicityframeCfg5Milliseconds
Performance Impact

Increasing the time between frames increases latency and potentially tracking performance. Tracking fast moving objects may not be feasible with a large time between frames.

Example

In the below example, the frame periodicity is set to 1000, meaning that a new frame starts every 1000 milliseconds.

frameCfg 2 0 200 64 1000 0

Technique 2 - Decrease the time spent in Interchirp Idle and Interburst Idle

Description

Decreasing the time spent in Interchirp Idle and Interburst Idle can increase the amount of time spent in Interframe Idle mode. Although the radar device goes into low power states in between chirps and bursts, the Interframe Idle / Deep Sleep mode that the radar can go into in between frames will draw much less power. Therefore, spending more time in the deep sleep mode and less time in Interchirp Idle and Interburst Idle decreases power overall.

Configuration File Location

Parameter Command Line Argument Name Command Line Argument Position Units
burstPeriodicity frameCfg 3 Microseconds
chirpIdleTime chirpTimingCfg 1 Microseconds
chirpRampEndTime chirpComnCfg 6 Microseconds
numOfChirpsInBurst frameCfg

1

None

Performance Impact

Decreasing the amount of time between chirps is strongly recommended if the chirps use different transmitters. In the Time Division Multiplexing (TDM) and Binary Phase Modulation (BPM) schemes discussed in greater detail in [3], effective angle calculation assumes that both transmitters transmit at approximately the same time. In reality though, they transmit one at a time. By reducing the amount of time between chirps that use different transmitters, the error created by this assumption is reduced.

However, decreasing the time between bursts will affect the range of velocities that the radar device can detect and discern between(1). This is because velocity is measured through differences in the radar returns on the same transmitter/receiver pair. With bursts happening faster in succession, the minimum velocity that the radar can detect will shrink. Small movements may still be detected through the minor motion mode, which looks across frames for points, but the velocity of these minor motion points may not be possible to accurately estimate.

Note:

The Interburst Idle and Interchirp Idle times must meet the minimum requirements discussed in Section 1. To detect faster velocities and reduce the power consumption lower than the bursting scheme allows, users may consider using a single burst per frame, and multiple chirps per burst, eliminating the minimum 95 µsec Interburst Idle requirement.

Example

In the below example, the Burst Periodicity is 200 µsec, the Chirp Idle Time is 6 µsec, the Number of Chirps in a Burst is 2, and the Chirp Ramp End Time is 28 µsec. So, the Interchirp Idle time is 6 µsec and the Interburst Idle time is 132 µsec.

Equation 4. I n t e r b u r s t   I d l e   T i m e = B u r s t   P e r i o d i c i t y - N u m b e r   o f   C h i r p s   i n   B u r s t × C h i r p   I d l e   T i m e + C h i r p   R a m p   E n d   T i m e
chirpComnCfg 8 0 0 256 4 28 0
chirpTimingCfg 6 63 0 75 60
frameCfg 2 0 200 64 1000 0

Technique 3 - Decrease the Chirping Time

Description

Decreasing the chirp time reduces power by forcing the device to spend less time chirping. Efficient chirp design would ensure that all samples are taken quickly and that very little time is spent chirping before and after the samples are being taken. The sequence of events that happen before, during, and after a chirp are explained below. The total amount of time the device spends chirping is known as the Ramp End Time, and is calculated by the following.

Equation 5. Ramp End Time = ADC Start Time + Chirp Time + Excess Time

GUID-20230227-SS0I-8WRF-FWTW-PTRF2F96FT75-low.svgFigure 3-1 Sequence of Events in a Chirp.

The procedure for setting an appropriate Ramp End Time is as follows:

1. Compute the Chirp Time, which is the time needed to collect all the ADC samples.

Equation 6. Chirp Time = Sampling Rate × Number of Samples

2. Set an appropriate ADC Start Time. Typical values are around 5 µsec. Shorter ADC start times may result in less linear chirping slopes.

Note:

The ADC start time is dictated by the ADC Skip Samples and the sampling rate. The minimum recommended ADC Skip Sample Number is max(24, 3 µs x Sampling Rate in MHz).

3. As per [2], use at least 7 samples of Ramp xEcess Time for the short filter (dfeFirSel = 1) and 10 samples of ramp excess time for the long filter (dfeFirSel = 0).

4. Set the Ramp Time equal to the sum of the Chirp Time, ADC Start Time and Ramp Excess Time.
Equation 7. Ramp Time = Chirp Time + ADC Start Time + Ramp Excess Time

Reducing the ramp time requires minimizing all three of its components. The ADC Start Time and Ramp Excess Time may be set to their minimum allowed values without affecting the range and velocity measurements. Sampling more quickly allows the Chirp Time to be reduced too. But, if the number of chirps and the frequency slope remain constant, reducing the chirp time would result in lower bandwidth and coarser range bin sizes (although with the benefit of increased maximum range). Valid Bandwidth (B) and Range Resolution are calculated as shown below, where c is equal to the speed of light (3E8 m/s)

Equation 8. B = ADC Sampling Time × Frequency Slope
Equation 9. Range Resolution =  c2B

This strategy of increasing the sampling rate is illustrated with Chirp 2 below, which has all the same parameters as Chirp 1, but samples more rapidly, resulting in a coarser range resolution. However, the active time may be reduced without reducing the bandwidth if the device increases both the sampling rate and the slope of the chirp by the same factor, as illustrated by Chirp 3 below. By collecting the same data over the same bandwidth at a faster rate, the device can spend less time chirping and more time in lower power modes, decreasing overall power draw.

Note:

Chirps 1-3 are meant to illustrate tradeoffs, not to advertise best performance.

Chirp 1 (Slower Sample Rate)

Chirp 2 (Faster Sample Rate)

Chirp 3 (Faster Sample Rate, Larger Frequency Slope)

ADC Sampling Frequency

1.25 MHz

2.5 MHz

2.5 MHz

Number of ADC Samples

32

32

32

Chirp Time

25.6 µsec

12.8 µsec

12.8 µsec

Frequency Slope50 MHz/µsec50 MHz/µsec

100 MHz/µsec

Effective Bandwidth

1280 MHz

640 Mhz

1280 MHz

Range Resolution

0.117 m

0.234 m

0.117 m

Maximum Range

1.5 m

3 m

1.5 m

GUID-20230224-SS0I-Q1M5-HDVB-4HTVS73GJL4T-low.svg

Configuration File Location

ParameterCommand Line Argument NameCommand Line Argument PositionUnits
digOutputSampRate (ADC Sampling Rate)chirpComnCfg1Decimator Value. Sampling Rate is set by 100 MHz/digOutputSampRate
chirpRfFreqSlopechirpTimingCfg4MHz/microsecond
chirpRampEndTimechirpComnCfg6Microseconds
chirpADCSkipSampleschirpTimingCfg2Number of Samples
Performance Impact

Decreasing the chirp time will decrease the maximum range at which people and objects can be detected by the radar. See the radar range equation in [4] for more information.

Example

chirpTimingCfg 20 63 0 30 60
chirpComnCfg 8 0 0 256 4 70 0
In the above configuration sample, obtain the sampling rate by dividing 100 MHz by the digOutputSampRate, which is set to 20, yielding 5 MHz.

Equation 10. Sampling Rate = 100 MHzdigOutputSampRate = 100 MHz20 = 5 MHz
The number of ADC Skip Samples is set to 63, meaning that sampling will only start after 12.6 µsec

Equation 11. Sample Starting Time = 63 Samples5 MHz = 12.6 μsec

12.6 µsec is more than enough time for the chirp ramp slope to become reliably linear. Reduce it to 5 µsec to save power. This results in 25 samples, which is acceptably above the minimum value of 24, yielding the following configuration file.

Equation 12. 5 μsec ×5 MHz = 25 samples
chirpTimingCfg 20 25 0 30 60
chirpComnCfg 8 0 0 256 4 70 0

Now the ADC Start Time is 5 microseconds.

The Chirping Time is equal to the number of samples divided by the sampling rate.

Equation 13. Chirping Time = 256 Samples5 MHz = 51.2 μsec

Since the dfeFirSel is equal to 0, it is recommended to take 10 samples of ramp end time (2 µsec) as per the instructions in [2]

Equation 14. 10 samples × 15 MHz = 2 μsec

Overall, this chirp requires 51.2 (Chirping Time) + 5 (ADC Start Time) + 2 (Ramp Excess Time) = 58.2 µsec. So, the ramp end time may be reduced from 70 µsec to 59 µsec, saving 11 µsec of time in the high power chirping state.

chirpTimingCfg 20 25 0 30 60
chirpComnCfg 8 0 0 256 4 59 0
Now that the chirp has been optimized to reduce time spent chirping before and after sampling ADC data, we can begin to reduce the time spent collecting data. Currently, the chirp's valid bandwidth can be computed as follows:

Equation 15. B =Frequency Slope ×Chirp Time = 30MHz μsec×51.2  μsec = 1536 MHz

This chirp's active time could be decreased by increasing the chirpRfFreqSlope and the sampling rate by the same factor of 2. So the Sampling Rate becomes 10 MHz (which corresponds to a digOutputSampRate of 10) and the Chirp Frequency Slope chirpRfFreqSlope becomes 60.

chirpTimingCfg 10 25 0 60 60
chirpComnCfg 8 0 0 256 4 54 0

Now that the sampling rate is equal to 100/10 = 10 MHz, the number of ADC Skip Samples should be increased to 50 to keep the ADC Start Time at a constant 5 µsec.

chirpTimingCfg 10 50 0 60 60
chirpComnCfg 8 0 0 256 4 54 0

But, the chirping time is now equal to 25.6 µsec. So the sum of the ADC Start Time and the Chirp Time is now equal to 30.6 µsec. Allocating 10 more samples for the Ramp Excess Time requires 1 µsec, yielding a minimum of 31.6 µsec for the Ramp End Time. So, the Ramp end time can be set to 32 µsec, a 54% reduction in the chirping time from the original 70 µsec.

chirpTimingCfg 10 50 0 60 60
chirpComnCfg 8 0 0 256 4 32 0

Technique 4 - Reduce the number of transmitters/receivers

Description

Reducing the number of transmitters or receivers will decrease the amount of power drawn in active mode. Decreasing the number of transmitters and receivers reduces the amount of power needed to supply the transmitter and receiver circuitry for any particular chirp. If the device is using TDM (see [3]) to use multiple transmit antennas, decreasing the number of transmitters will also decrease the amount of time the device spends chirping, thereby reducing power. The transmitters draw more power than receivers, so TI advises reducing the number of transmitters before reducing the number of receivers.

Configuration File Location

ParameterCommand Line Argument NameCommand Line Argument PositionUnits
rxChCtrlBitMaskchannelCfg1Bit-mask indicating which receivers are on/off.
txChCtrlBitMaskchannelCfg2Bit-mask indicating which receivers are on/off.

Performance Impact

Reducing the number of transmit/receive channels will directly reduce the angular resolution of the radar device. The angular resolution of the radar, defined as the minimum spacing needed to distinguish between two objects in the same range bin, is 2 / N radians, where N is the number of transmit/receive channels in that angle (azimuth vs elevation). For example, the IWRL6432BOOST Evaluation Board has 4 channels in the azimuth and 2 channels in the elevation. So in the azimuth it has 2 / 4 radians = 28.6 degrees of angular resolution, and in the elevation it has 2/2 = 1 radian = 57 degrees of angular resolution. Removing a transmitter will decrease the number of available channels from 6 to 3, which will decrease the angular resolution in the azimuth and/or the elevation, depending on the antenna layout selected.

GUID-20230221-SS0I-KWS8-JZH8-PPRZH986S5P2-low.svgFigure 3-2 IWRL6432BOOST Virtual Antenna Layout.

Additionally, removing a transmit/receive pair will diminish the SNR of the measurement, reducing the maximum range at which the radar can detect a given target. More transmit/receive channels increase the accuracy of a given burst by giving more observations of the same burst.

Example

rxChCtrlBitMask can be set to values between 0-7. When converted to binary, the number set is which receivers are powered on (indicated by a 1) and which are powered off (indicated by a 0). In the below example, the value 6 = 0b110 powers on the second and third receivers, while powering off the first receiver.

TxChCtrlBitMask can be set to values between and 0-3. In the same procedure as the rxChCtrlBitMask, when converted to binary, the number set is which transmitters are powered on (indicated by a 1) and which are powered off (indicated by a 0). In the below example, the value 3 = 0b11 powers on both transmitters.

channelCfg 6 3 0

Technique 5 - Reduce the transmit power

Description

One of the simplest ways to reduce power consumption during a chirp is by decreasing the amount of power broadcast out of the radar device. Users may set a TX Backoff power, which is the amount by which to decrease the power by from the maximum of 11 dBm of conducted output power.

Equation 16. Total Output Power=Maximum Output Power-TX Backoff Value

Configuration File Location

ParameterCommand Line Argument NameCommand Line Argument PositionUnits
txBackofffactoryCalibCfg4dB

Performance Impact

Decreasing the amount of output power may diminish the maximum range of the device. The amount of power broadcast by the device will determine the amount of power available for the device to receive. Once the amount of received power falls to the device's noise floor, the device will no longer be able to accurately detect targets. Decreases in output power can be compensated by equivalent decreases in the CFAR threshold scale to a certain extent, but not indefinitely. Once the CFAR threshold scale becomes too low, false positive detections will overshadow the true detections.

Example

In the below example, since the fourth value of the factoryCalibCfg line is set to 3, the total output power will be equal to 11-3 = 8 dBm.

factoryCalibCfg 1 0 40 3 0x1ff000

This assumes that burst mode is being used rather than normal mode. Both are described in detail in [2]