RangeProcDSP(使用DSP进行range测量)
Top Level Design
RangeProcDSP有3个处理阶段:
- 通过EDMA通道中的数据引入ADC数据
- 利用DSPlib/mmwavelib进行FFT处理
- 通过数据输出EDMA通道将FFT结果传输到radar cube
下图显示了rangeProcDSP的顶层设计
Data Interface Parameter Range
以下是支持的ADCBuf和radarCube的接口配置:
ADCBuf Data Interface
Radar Cube Data Interface
Data Input
RangeProcDSP DPU通过EDMA通道中的数据以ping/pong交替顺序传输ADCBuf数据到FFT输入出暂存缓冲区—adcDataIn
Data Output
RangeProcDSP DPU传输FFT的结果是通过数据输出EDMA通道以ping/pong交替的顺序将暂存缓冲区(fftOut1D)传输到radar cube
Data Processing
Range FFT处理是通过使用DSPlib和mmwavelib API完成的。FFT输入数据存储在输入暂存缓冲区中—adcDataIn,其输出数据存储在输出暂存缓冲区—fftOut1D
如下图所示,对于每个chirp事件,都会调用DPU_RangeProcDSP_process来处理ADCBuf缓冲区中的数据。如果下一帧的硬件资源或数据接口发生改变,则可以在下一帧开始之前调用DPU_RangeProcDSP_config。
在下一帧开始之前,可以在帧间时间更新DC信号移除配置
Antenna coupling signature removal
此功能通过配置DPU_RangeProc_CalibDcRangeSigCfg来控制。配置可以通过API DPU_RangeProcDSP_config发送到rangeProc DPU
也可以在运行时通过控制命令DPU_RangeProcDSP_Cmd_dcRangeCfg更新配置
直流信号的校准和补偿式在fftOut1D数据缓冲器上对每个chirp进行的
Use Cases
General Information
本节描述了几种不同Tx天线数量的内部实现情况。
无论Tx天线的数量是多少,range FFT需要2个输入EDMA通道和2个输出EDMA通道才能以ping/pong方式进行工作。Ping输入通道将数据引入本地存储器"adcDataIn"d的Ping区域,pong通道将数据引入到pong区域。
在FFT之后,对于2个Tx天线,将本地存储器中的ping结果"fftout1D"复制到radar cube的TX1区域。Pong结果被复制到radar cube中的TX2区域
对于3Tx天线,ping总是处理奇数的chirp数据,pong总数处理偶数chirp数据。距离FFT结果将以以下格式复制到radar cube中
Non-Interleaved RX channel data(1 or 2 TX Antenna) -> DPIF_RADARCUBE_FORMAT_1
这个用例是带有1个或2个TX天线的配置使用的格式是DPIF_RADARCUBE_FORMAT_1(图中显示的是2TX天线)
Non-Interleaved RX channel data(3 TX Antenna) -> DPIF_RADARCUBE_FORMAT_1
这个用例是带有3个TX天线的配置使用的格式是DPIF_RADARCUBE_FORMAT_1
参考文献:
- mmWave SDK Module Documentation