4/28/2025

TI 4D FMCW Radar 이해 와 용어

1. 4D Radar Image Radar 구조 

  • Radar 시장분석 과 TI Radar 자료분석
Radar 시장분석 과 각 Chip 사의 Radar 확인 

  • TI Radar 개발 IDE 와 Tool 정리 
TI의 IDE 구성과 각 Tool 및 관련 사항들 정리 


아래의 내용은 일단 Radar를 직접적으로 개발을 해보지 못했기 때문에, 각 TI 문서를 보고 이해한 수준이라 틀린 부분이 많이 있을 수 있다. 
이전에 블로그 이 글을 올려다가 내린 글이나, TI Academy에서 거의 다 확인 가능하니 다시 올린다

  • FMCW(Frequency Modulated Continuous Wave)
FM기반의 Chirp(Ramp)들 을 지속적으로 TX 와 반사된 RX를 차이를 측정하는 기술이다. 
SIMO or MIMO 통해서 얻고자 하는 4D image Data들은 다음과 같다. 

  • 4D Image Radar 구성 
  1. Range(거리) :  쉽게 1개 Chirp으로 파악 가능
  2. Doppler(Velocity,속도)  : 여러개 Chirp 기반으로 파악 가능 
  3. Angle-Azimuth(좌/우,수평) :  다중 RX의 Phase  좌/우 물체위치 파악 
  4. Angle-Elevation(상/하,수직) : 다중 RX의 Phase  상/하 물체위치 파악 
4D Image Radar, 3차원 공간에 더불어 각 속도(Velocity) 하나 더 추가된 구조이다.


  • TI Radar Academy
TI에서 공식으로 Radar 교육하는 자료이며, Radar 의 H/W 부터 S/W 까지 다양하게 세부적으로 교육한다.  

Fundamentals of mmWave Radar Sensors
Radar  기본이며, 이전에 이 부분을 Blog에 다루었으나, 삭제 했으며, 아래의 TI 사이트에서 참고하면, 쉽게 Radar에 대해 이해 할 수 있을 것 같다. 
이외 TI에서 PDF 와 영상도 제공한다. 

Radar Terminology
Radar 관련 용어지만, TI에서 만 사용하는 용어도 있으며, 알면 좋을 거 같아 링크 

mmWave Production Testing Overview
mmWave TEST 방법으로 주로 저가(Low Cost) Chamber 구성 과 SNR 정보 파악 가능  
  https://www.ti.com/lit/an/spracx7/spracx7.pdf


  • TI mmWave  Radar sensors 제품군 
TI에서 제공하는 Radar Sensor의 제품군으로 크게 아래 와 같이 2 가지로 나뉘어진다.
  1. Automotive mmWave radar sensors
  2. Industrial mmWave radar sensors



1.1 Chirp 의 구성 과 디자인 

FMCW에서 Chirp은 일반적으로 FM 기반으로 Ramp 신호 기반으로 생겼으며, 이외에도 상승과 하강 조합 삼각파도 가능한 것 같다. 


  • Chirp 의 구성 
FM기반으로 보통 아래와 같이 Design 하지만, TI 문서를 보면 삼각으로도 Deging 도 하는 것 같다.
  1. Chirp Cycle Time : 1 Chirp 마다 전체 Cycle Time 
  2. Inter Frame Time :  한번 Chirp 몇 개 구성한 후, 이 간격의 Idle Time 이라고 생각
  3. Sweep Bandwith :  FM End 주파수 - FM Start주파수 
  4. ADC Sampling:  IF Frequecy Sampling  ADC 이용하므로, 각 12bit or 16bit , 그 이상 확인 
  5. Slope  : Chirp 의 기울기이므로 기울기 변화에 따라  거래 해상도 , SNR 변화 
    1. Slope :  Sweep Bandwith / Chirp Duration 
https://www.ti.com/lit/an/swra553a/swra553a.pdf



  • TI AWR2234 Spec 확인 
  1. Sweep Bandwith: 5GHz
  2. 76GHz ~ 81GHz 

https://www.ti.com/lit/ds/symlink/awr2243.pdf



  
1.2  Range Max (Maximum Range) 

TI의 글을 읽고, 간단히 계산을 해보자. 
IF Max는 ADC Sampling 에 따라 다르며, 상위 각 Chip에서 확인해야 함 

https://www.ti.com/lit/an/swra553a/swra553a.pdf

상위의 Range Max 값을 대충 구해보도록 하자 

  • Range Max 
1st Rmax = (IFmax * c ) / 2xS

   IFmax =  2e7, 20MHz                 -> 상위 TI AWR2243 Spec 참고 
   c = 3×10⁸,3e8 m/s (빛의 속도)   -> 전파/빛 속도 
   Slope  =  TR Chirp 의 Slope 
   Slope  =  Sweep Bandwith / Chirp Duration

대충 계산하면, 다음 과 같을 것이다.

  • Range Max based on SNR 
좀 더 세부적으로 계산한다면, 상위의 공식을 사용하는데, 
공식을 보면, RF를 TX(PA) 와 RX(LNA) 기반으로 구의 표면적으로 구성해서 작성을 한 것 같다. 
세부적인 것은 아래에서 알아 보도록 하자 

  • Range Max based on SNR -> 보정(Calibration) 
문제는 주파수가 높아지면, 높아질수록, 전파 직진성이 높아지므로, 완전히 구의 표면적처럼 방사 하지 않게 되므로, 
상위에도 오류 와 보정이 있을 것 같으며,이를 각 보정 방법을 알아야 할 것 같다. 
흔히 Beamforming 이라고 도 불린다. 


1.2.1 Range Max based on SNR 공식 

  • TX(PA)의 기반의 생각 
Non-directional Power Density (TX)
PA (송신 Amp) 기반으로 생각을 해보면 될 것 같으며, 아래 그림처럼 구의 면적으로 생각하면된다.
다만 방향이 없다. 

Su = Ps * 4πR²
  1. Ps: 송신 전력
  2. G: 송신 안테나 이득
  3. 4πR²: 구의 표면적
https://www.radartutorial.eu/01.basics/The%20Radar%20Range%20Equation.en.html

방향성 과 Anthena 를 생각해서 상위 기반으로 다시 수정해하자 
Power Density =  Sg  = Ps * G / (4πR²)
  1. Ps: 송신 전력
  2. G: 송신 안테나 이득
  3. 4πR²: 구의 표면적

https://www.radartutorial.eu/01.basics/The%20Radar%20Range%20Equation.en.html

전부 캡쳐 할 수 없어 간단히 상위 링크 기반으로 간단히 중요 포인트만 이해하고, 아래와 같이 정리되어지는 것 같다. 

  • RX(LNA) 기반으로 생각
RX에서 생각하면, 신호가 반사(Refrect)되어서 오니, 이를 반영하고, TX 와 RX의 Cross 영역을 생각하고,

Pr = Reflected Power = Power Density × σ = (Ps * G * σ) / (4πR1²)

Pr = reflected power [W]
σ = radar cross section [m²]
R1 = range, distance antenna - aim [m]

Se = Power at RX = (Reflected Power * G * λ²) / (4πR2²)

Se = power density at receiving place
Pr = reflected power [W]
R2 = range aim - receiving antenna [m]

상위처럼 4πR²: 구의 표면적이 이렇게 2번 들어간다.

이곳에 다시 Anthenna 면적 과 Gain 부분을 적용을 하면, 아래와 같은 최종 공식이 나오는 것 같다.

  • 상위 TI 공식과 비교 
아래 공식을 보면, 얼추 상위의 TI의 Manaul  설명한 공식이 대충 비슷하게 나오는 것 같다.  
자세한 것은 나도 더 알아봐야겠지만, 일단 이해하기 위해서 포인트 만 집고 넘어가자.  

https://www.radartutorial.eu/01.basics/The%20Radar%20Range%20Equation.en.html


  • 이외 기타 사항 
TX(PA)를 높아지면, Range Max는 증가는 되지만, SNR부분도 같이 증가하므로, 
현재 생각으로는, 특정 거리 이상이 되면, 이를 SNR 수정하여, Noise로 해서 필터하는 방법도 될 것 으로 추측되어진다. 
일단 추후 시간이 되면, 자세한 내용들은 추후 TI Calibration을 별도로 알아 보도록 하겠다.


1.3 Range Resolution 

  • Range Resolution 
ΔR = c / (2 * B)

     c = 3×10⁸,3e8 m/s (빛의 속도)
     B = Sweepbandwidth of FMCW chirp  

상위에서 중요한 것은 B 즉, Chirp의 Bandwith이지, Radar RF Center 주파수가 아니다.
이유는 FMCW의 최종 받는 IF의 값은 주파수는 TX와 RX 차이를 나타내기 때문에 주파수 가 낮다. 
아무리 주파수가 높다고 하더라고, IF의 주파수 대역은 낮다. 

https://www.ti.com/lit/an/swra553a/swra553a.pdf


Range Resolution 관련 참조 

Range Max 와 Range Resolution 
글을 읽어보면, FFT는 1 / T로 Saw 즉 Chirp의 길이에 의해 결정되는 듯 하다 

  • Range Resolution  실제로 계산을 해보도록 하자. 
B = Sweepbandwidth of FMCW chirp  

SweepBandwith가 5/4/3GHz 일 때,

Range Resolution   
    1. ΔR = 3e8 / (2 * 5e9) = 0.03 m
    2. ΔR = 3e8 / (2 * 4e9) = 0.0375 m
    3. ΔR = 3e8 / (2 * 3e9) = 0.05 m  

즉, 나중에 다시 설명하겠지만, Range FFT SIZE 와 중요하다  


2. 각 TI Radar 비교 및 분석 방법 


  • The Number of Sample for Chirp 결정 
Range Max / Range Resolution = Range Sample 수 가 나온다. 
  1. The Number of Sample for Chirp : Range Sample 결정 
  2. Range Sample 값 기반으로 1st FFT 인 Range FFT Size 결정 
  3. Number of Chirps : 2nd FFT Size (Doppler-FFT) 결정  
  4. IF ADC 의 성능 확인 (12bit/14bit) (ADC 중앙값 확인)


  • TI Radar 기반으로 비교 
  1. Max unambiguous Range : Range Max 보다는 작은 값    
  2. Number of Samples per chirp :  Range Max/ Range Resolution
  3. Number of Chirps : 2nd FFT Size
  4. Range FFT Size: 1st FFT Size  
  5. Ramp Slope : Sweep Bandwith / Chirp Duration 
https://www.ti.com/lit/an/swra553a/swra553a.pdf



2.1 Radar 의 Range FFT Size 와 Sample 비교 

Range FFT Size 결정은 의외로 간단한 것 같으며, 아래로 정해지는 것 같다. 
  1. Range Max   ->  상위 1.2 참조 
  2. Range Resolution -> 상위 1.3 참조 
Sample = Range Max / Range Resolution  (상위참조)

Sample 의 갯수 정해지면, 이에 맞춰서 Range FFT Size를 정해지는 듯 하다. 
상위 도표 기반으로 각 Radar 이제 계산하고 비교해보자. 
   
  • LRR 의 Number of Samples per Chirp 비교 
  1. Range-Resolution = 3e8 / (2 * (3e8))  =  0.50 meter
  2. Range-Max         = 225  <- (상위 Max unambiguous range , 250로 하면 동일) 
  3. Sample = Range Max / Range Resolution = 450  (500 과 거의 비슷)
  4. Range FFT Size = 512   (2의 지수이니, 512)
 
  • MRR 의 Number of Samples per Chirp 비교 
  1. Range-Resolution = 3e8 / (2 * (5.4e8))  =  0.28 meter
  2. Range-Max         = 125  <- (상위 Max unambiguous range, 140로 하면 동일)
  3. Sample = Range Max / Range Resolution = 450 (500 과 거의 비슷)
  4. Range FFT Size = 512   

  • SRR 의 Number of Samples per Chirp 비교 
  1. Range-Resolution = 3e8 / (2 * (7.5e8))  =  0.20 meter
  2. Range-Max         = 45   <- (상위 Max unambiguous range, 50로 하면 동일)
  3. Sample = Range Max / Range Resolution = 225 (250과 거의 비슷)
  4. Range FFT Size = 256

  • USRR 의 Number of Samples per Chirp 비교 
  1. Range-Resolution = 3e8 / (2 * (1.5e9))  =  0.10 meter
  2. Range-Max         = 22.5   <- (상위 Max unambiguous range, 25로 하면 동일)
  3. Sample = Range Max / Range Resolution = 225 (250과 거의 비슷)
  4. Range FFT Size = 256

상위 도표에서 각 찾아서 보도록 하자 


3. FMCW 의 FFT 구성 

FMCW Radar이며, 관련해서는 TI Academy에서 세부적으로 설명을 해주고 있다.

  • TI FMCW 의 FFT 순서구성 
TI Manual or TinyML을 보면 다음과 같은 순서로 진행 
  1. Range Resolution(FFT): TX 와 RX 1 Chirp을 이용하여 거리를 측정 
  2. Velocity Resolution(FFT): Range에 각 변화, 여러 Chirp를 이용하여 속도 측정 
  3. Angle Resolution(FFT): TI에서는 Angle resolution (spatial resolution)이라고 함 
    1. 상위 MIMO문서참조 

  • Motion and Presence Detection OOB Demo
주로 Motion/Presence 와 Gesture Recognition Demo 의 API 와 Antenna 설계 부터 API 흐름 
나중에 시간이 되면 다시 보도록 하자 


3.1 Range Resolution 과 FFT

IF ADC 의 Sample의 수를 정하고, 이를 정하는 것이 될 것 같다.
일단, ADC의 성능 12/14/16 bit 등 정확히 아는 것이 중요 할 것이며, IF는 주파수 높지가 않아서, ADC의 경우, 그렇게 높게 사용하지는 않는 것으로 생각되어진다.
(ADC 성능에 따라, 나중에 중앙값도 구해야 한다)

  • 1st FFT  (FFT SIze/ FFT Number)
  1. Range FFT : 주로 Range , 즉 거리 측정을 위해서 파악하는 FFT 
  2. FFT SIZE :  Sample 의 수에 정해짐           
  3. FFT Number : Chirp 의 수 에 의해 정해짐     -> FFT 하는 횟수 

  • 1st FFT  (Input/Output)
  1. Input : Radar IF ADC 값 
  2. Output : 1st FFT (1D FFT)  
    1. Magnitude Peak 값 기반 으로 Range 위치 파악 
    2. Range Resolution 에 적용하여 이를 파악 

  • 1st FFT Example 
  1. Range Max : 10m 
  2. Range Resolution: 0.05m (기본 Unit)
  3. Sample 수  : 200   ->  Range Max/Range Resolution
  4. FFT SIZE    : 256    

  • Calibration 의 개인적 생각 
FFT Range Bin : 기본 Unit 은 0.05m 이지만, 이를 보정을 해야 한다고 생각을 한다. 
보정을 하는 이유는 다음과 같다고 생각함 
  1. Range Max 불확실성 (SNR?) ->  Range Max 확실성, 즉 일정 거리 이후는 Noise 처리? or CFAR 처리?
  2. Sample 수 와 FFT SIZE 의 괴리율  -> 상위에서 구한  Sample 과 Range FFT Size 오차 보정 


3.2 Velocity Resolution 과 FFT


1st FFT 값들을 Chirp 의 갯수 만큼 모은 다음, 이를 각 Range 별로 FFT를 하여 Doppler Frequcy 파악하여 , Velocity를 얻어냄 

  • 2nd FFT
  1. Doppler FFT:  주로 Velocity 파악하기 위해서 진행하는 FFT 
  2. FFT SIZE:  Chirp의 수 정해짐
  3. FFT Number: Sample 의 수 에 정해짐   -> FFT 하는 횟수 

  • 2nd FFT
  1. Input : 1st FFT
  2. Output : 2nd FFT (2D FFT)

상위에서 각 Chirp 의 다시 FFT를 해서 Doppler Frequency 를 파악 가능하다.
아래의 설명을 보면, RDM (Range Doppler Map) 이라고 하는 것 같으며, Heat Map을 주로 이용한다고 한다.

TI mmWaveTool에서 기본으로 지원이 가능한 것 같으며, 나중에 사용할 기회가 있다면 사용해 보도록 하겠다. 

  • Range-Doppler Map 
상위의 결과로 나온 2D FFT기반으로 생각을 해보면, 아래와 같을 것 같다.
  1. Range Bin 의 갯수:    Range FFT Size  결정  (상위에서 참조)
  2. Doppler Bin 의 갯수: Doppler FFT Size 결정 

실제 Data 의 구성 

                    Doppler Bin0  Doppler Bin1  Doppler Bin2  
Range Bin 0      움직임 0        움직임 1         움직임 2
Rnage Bin 1
Rnage Bin 2
Rnage Bin 3
.....






  • mmWave Tool 
3.5 Range-DopplerHeatmap.
https://www.ti.com/lit/ug/swru529c/swru529c.pdf


Sweep Bandwith 4GHz
300,000,000m / 8,000,000,000 = 0.0375m 약 4cm


3.3 Angular Resolution 과 FFT 

완벽히는 이해는 못했지만, 개념만 이해한 상태로 아래와 같이 간단히 이해한 부분들을 정리한다. 
추후 시간이 되면,  세부적으로 Cascade 기반의  TI 문서 보도록 하겠다.  

  • 영상 이해 목적(Spartial Frequency)
Y값 변화율? 공간주파수? 즉, 주파수 개념을 시간에 적용하는 게 아니라, 공간(공간 변화값?)에 적용하는 개념이며, 이를 영상과 Mapping도 가능하다 
YUV의 이해 
이전에 대충 써 놓은 것이라 틀릴 수 도 있으며, 대충 이해하자.
Y값 Luminance , UV 값 Chrominance

  • NTSC 와 YUV (영상 방송)
간단히 생각을 해보면, NTSC의 경우, Y값만 전송하면 흑백 TV이며, 이에 색상을 넣기 위해서 I/Q 시그널 기반으로 색상 정보를 넣는다.
I/Q 시그널 생각하지 말고, Y 값 기반으로 , 영상의 윤곽을 추출하여 이를 상위 Angle-FFT와 Mapping 가능할 것이다. 

  • Angle-FFT 이해 와 영상 Fusion (Spartial Resolution)
영상 기반으로 DSP 사용할 경우, 주로 언급되어지는 것이 공간 주파수 (Spartial Frequency)이다.
주파수(시간기반)가 아닌, 공간 주파수는 공간 즉 각 픽셀 사이 거리를 시간으로 변경해서 사용하는 기술이다.
영상 DSP 관련 부분을 한번 보고 오면 대충 이해는 가능할 것 같다.
간단히  정리해서 말해 시간-주파수는 시간 기반이지만, 공간-주파수는 공간 기반이다.
즉 시간 대신에 공간의 거리로 나누어 사용하면 된다. 

Angle-FFT (Azimuth and Elevation FFT) 다 동일한 말 인 것으로 보이며, 즉 공간(Spartial) 주파수 개념으로 위치를 파악하는데 사용하는 것 같다.

상위에 언급했듯이, 주파수 개념을 시간에 적용하는게 아니라, 공간(공간 변화값?)에 적용하는 개념이다.
Angle의 공간(Sparitial) 즉, Phase 차이를 영상의 Y 값 변화율과 얼 추 Matching될 듯하다. 
상위링크에서 영상처리의 Y 값 변화율을 보면 대충은 이해를 할 듯하다. 
Angle-FFT(Spartial)개념으로, 지금까지 이해한 것으로 보면, Input 아래와 같이 Phase 정보를 선택해서 넣으면 될 것 같다. 

  • Angle-FFT 순서 위치 
 개인적으로 위치는 목적에 따라 변경될 수 있다고 생각하며, Range 전에도 해도 될 듯하다.
  1. Angle-Azimuth :  Anthena Array 에 따라 FFT 사용
  2. Angle-Elevation:  Anthena Array 에 따라 FFT 사용 

  •  Angle-FFT 위치에따른 것  
  1. Range-FFT(1D) 한 후,   각 Peak 주파수  Phase(물체 위치)  
  2. Doppler-FFT(2D) 한 후, 각 Peak 주파수 Phase (속도위치)

간단히 설명하면, Phase를 이용하여, Range-FFT 물체 위치(Postion) or Dopper-FFT,물체 속도 위치(Velocity)를 방향 파악하는 것 같음  

  • Angle-FFT 는 TDM-MIMO
처음 1D FFT 후에도 사용할 줄 알았는데, 2D FFT 후 사용하는 것으로 보인다. 

  • Angle-FFT 관련내용
Angle-FFT 관련 부분들은 자료들은 너무 좋으니 링크만 (Radar Cube)

  • TI mmWave Tool 
3.6 Range-AzimuthHeatmap


4. Radar Cube 와 세부적인 TI DSP 흐름 파악    

전체적인 Radar 처리 구조를 보고 싶다면, 아래의 TI 문서를 보면 될 듯 하다. 
이외에도 문서는 많으며, 각 문서를 찾아 세부적으로 보면 될 듯 하다.

  • Introduction to the DSP 
TI DSP(HWA)기반으로 Radar를 어떻게 처리하는지 설명하고 있으므로, 나에게 있어 중요한 문서이며 시간이 더 된다면 그 때 세부적으로 더 보겠다. 


물론, 상위 내용을 좀 더 알고 싶다면, 
  1. TI의 DSP와 같이 사용하는 EDMA(이거 하나만도 복잡함?) 
  2. TI Radar CFAR(Constant False Alram Rate) 알고리즘 개념
다 알아야 할 듯 하다.  
상위 Pipe 구조의 Chaining 도 아마 다 EDMA 기반으로 했을 것 같다. 

  • traffic and intersection monitoring using millimeter wave sensors
ITS에서 실제로 사용하는 구조를 설명 


4.1 기타 링크 및 참조 

  • MIMO와 Virtual Array 
추후에 시간이 되면 이 부분은 별도로 설명하겠다 

  • AXIS Camera and Radar (Spartial Frequency and Radar Fusion)
카메라 업체인 AXIS의 Radar 와 Camear Fusion의 링크들