Range in FMCW Radar
| 1 | Continuously transmit a chirp signal with linearly varying frequency. | |
| 2 | A frequency difference appears between the transmitted signal and the received echo from the target. | |
| 3 | Measure this frequency difference(beat frequency) via Range FFT and convert it to distance. |

1. Signal Flow and Processing

one target

multi-target

2. Range Formula
Range Measurement (Range FFT) can be performed with a single chirp.
Distance is calculated from the beat frequency between the transmitted and received chirp
| Range | ![]() |
f_b Measured Value
kr peak BIN index, Nr FFT size, Fs ADC Sampling rate c Speed of light B_RF Chirp Bandwidth Tc Chirp Time S Chirp Slope |
|
| Resolution | ![]() |
Chirp bandwidth limit the resolution between 2 objects. c Speed of light B_RF Chirp Bandwidth |
|
| Max Range Limit | ![]() |
Baseband signal bandwidth limits the measurable max range. B_BB ADC input baseband signal bandwidth S Chirp Slope |
3. Example Report of Radar Sensor SoC
The data output is MSB first and the Range FFT data type is signed integer.
| 구분 | 필드명 | Dword | Bit Range | 설명 | |
| Header | Fixed Pattern | Dword 0 | [31:24] | 1010 1010 | |
| Header | Reserved | Dword 0 | [23] | 0 | |
| Header | Fixed Pattern | Dword 0 | [22:20] | 11 | |
| Header | FFT_chirp_index | Dword 0 | [19:11] | Frame 내 chirp 순번 (0부터 시작) | |
| Header | CFG_FFT_TX_MAX | Dword 0 | [10:0] | FFT 출력 포인트 수 m + 1 | |
| Data | FFT_real_data[0] | Dword 1 | [31:16] | Range FFT real part (signed) | |
| Data | FFT_imag_data[0] | Dword 1 | [15:0] | Range FFT imaginary part (signed) | |
| Data | FFT_real_data[1] | Dword 2 | [31:16] | Range FFT real part (signed) | |
| Data | FFT_imag_data[1] | Dword 2 | [15:0] | Range FFT imaginary part (signed) | |
| Data | FFT_real_data[n] | Dword … | [31:16] | Range FFT real part (signed) | |
| Data | FFT_imag_data[n] | Dword … | [15:0] | Range FFT imaginary part (signed) | |
| Data | FFT_real_data[m-1] | Dword m | [31:16] | Range FFT real part (signed) | |
| Data | FFT_imag_data[m-1] | Dword m | [15:0] | Range FFT imaginary part (signed) | |
| Tail | Check_sum | Dword m+1 | [31:16] | 해당 chirp의 데이터 합 (low 16bit sum 결과) | |
| Tail | FFT_FRAME_INDEX | Dword m+1 | [15:12] | Frame counter (0부터 시작) | |
| Tail | Reserved | Dword m+1 | [11:10] | 0 | |
| Tail | CFG_MSG | Dword m+1 | [9:8] | User defined bits | |
| Tail | Fixed Pattern | Dword m+1 | [7:0] | 0101 0101 |



