在4片級聯(lián)參考設(shè)計板上進行發(fā)射天線的連續(xù)波測試
作者:Chris Meng
?
毫米波用戶需要通過測試連續(xù)波來確認TI毫米波芯片發(fā)射射頻信號的頻率的準確性。用戶對聯(lián)參考設(shè)計板上進行發(fā)射天線的連續(xù)波測試有不同的測試要求。下面介紹三種不同測試場景的測試流程。
測試條件:
- 硬件平臺: MMWCAS-RF-EVM (revE)/MMWCAS-DSP-EVM
- PC軟件: mmwave studio 3.00.00.14
- AWR2243 ES1.1的固件補丁: mmwave_dfp_02_02_03_01
- 頻譜分析儀
測試場景一
1. 測試要求:對級聯(lián)板上每個AWR2243所有3根發(fā)射天線同時發(fā)射連續(xù)波的測試。
2. 測試流程:
- 先在mmwave studio里運行下面的腳本進行所有4片AWR2243的參數(shù)配置。\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Configuration_ContStream.lua (測試腳本已經(jīng)包含在mmwave studio里)
- 然后運行下面的腳本。這個腳本會先使能芯片Slave 3的連續(xù)波發(fā)射,然后使能Slave2, Slave1,Master芯片。接著停止所有芯片的信號發(fā)射。最后保存相關(guān)ADC數(shù)據(jù)到SSD硬盤上,傳送給PC。\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Capture_ContStream.lua(測試腳本已經(jīng)包含在mmwave studio里)
- 通過頻譜儀抓取和觀測芯片的發(fā)射信號。
測試場景二
1. 測試要求:對級聯(lián)板的AWR2243 主芯片(master)的單發(fā)射天線進行連續(xù)波的測試。
2. 測試流程:
以主芯片的TX0天線為例 (RadarDevice1)
a. 配置主芯片。
在mmwave studio里運行下面的腳本:
Cascade_Configuration_ContStream_master_example.lua (具體內(nèi)容見附錄)
運行腳本后的mmwave studio界面信息如下:
b. 發(fā)射連續(xù)波。
運行下面的腳本:\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Capture_ContStream.lua(測試腳本已經(jīng)包含在mmwave studio里)
c. 通過頻譜儀抓取和觀測芯片的發(fā)射信號。
測試場景三
1. 測試要求:對級聯(lián)板的AWR2243 從芯片(slave)的單發(fā)射天線進行連續(xù)波的測試。
2. 測試流程:
以slave2芯片的TX1天線為例 (RadarDevice3)
a. 配置從芯片。
在mmwave studio里運行下面的腳本:Cascade_Configuration_ContStream_slave_example.lua(具體內(nèi)容見附錄)
運行腳本后的mmwave studio界面信息如下:
b. 發(fā)射連續(xù)波。
運行下面的腳本:\mmwave_studio_03_00_00_14\mmWaveStudio\Scripts\Cascade\Cascade_Capture_ContStream.lua(測試腳本已經(jīng)包含在mmwave studio里)
c. 通過頻譜儀抓取和觀測芯片的發(fā)射信號。
注意事項:
如果改變了AWR2243的ChanNAdcConfig_mult 參數(shù)(相對于上一次配置),用戶必須對板子進行斷電,再上電的操作。
常見問題:
1. 問題:如何使能、不使能主芯片或者是從芯片里的不同發(fā)射天線TX?
答案::用戶需要修改配置參數(shù)的LUA腳本里ar1.ChanNAdcConfig_mult 函數(shù)的Tx0En/Tx1En/Tx2En 參數(shù)。關(guān)于這個函數(shù)的更多信息見下。對于Tx0En/Tx1En/Tx2En, 1表示使能,0表示不使能。
Int32 ar1.ChanNAdcConfig_mult(UInt16 RadarDeviceId,?UInt16 Tx0En, UInt16 Tx1En, UInt16 Tx2En,?UInt16 Rx0En, UInt16 Rx1En, UInt16 Rx2En, UInt32 Rx3En, Int32 BitsVal, UInt32 FmtVal, UInt32 IQSwap, UInt16 CasCadeMode) -? Static device config API which defines configure both the Transmiter and Reciever channels of Radar device and also ADC data format output
_I_ UInt16???? RadarDeviceId????? - Radar Device Id
_I_ UInt16???? Tx0En???? - Tx0 channel
_I_ UInt16???? Tx1En???? - Tx1 channel
_I_ UInt16???? Tx2En???? - Tx2 channel
_I_ UInt16???? Rx0En???? - Rx0 channel
_I_ UInt16???? Rx1En???? - Rx1 channnel
_I_ UInt16???? Rx2En???? - Rx2 channel
_I_ UInt32???? Rx3En???? - Rx3 channel[b15:0] + (CascadePinOutCfg[b31:16] b16:ClkOutMasterDis, b17:SynOutMasterDis, b18:ClkOutSlaveEna, b19:SynOutSlaveEna, b20:IntLOMasterEna, b21:OSCClkOutMasterDis, b22:INTFRCMasterEna)
_I_ Int32??????? BitsVal??? - Number of ADC bits
_I_ UInt32???? FmtVal??? - ADC output format[b15:0] + FullScaleReductionFactor[b31:16]
_I_ UInt32???? IQSwap?? - ADC Mode
_I_ UInt16???? CasCadeMode????? - CascadeMode(Single Chip: 0x0000, MultiChip Master:0x0001, MultiChip Slave:0x0002)
2. 問題:如何使能或者關(guān)閉級聯(lián)板上不同的從芯片?
答案:用戶需要修改配置參數(shù)的LUA里RadarDevice的設(shè)置。RadarDevice里dev1是主芯片,dev2、dev3、dev4是從芯片。
例如: RadarDevice??????? =??? {1, 0, 1, 0}?????? -- {dev1, dev2, dev3, dev4}, 1: Enable, 0: Disable
3. 問題:如何改變連續(xù)波的頻率?
答案:用戶需要修改配置參數(shù)的LUA里ar1.ContStrConfig_mult函數(shù)的startFreqConst參數(shù)值。
Int32 ar1.ContStrConfig_mult(UInt16 RadarDeviceId, Double?startFreqConst,?UInt16 digOutSampleRate, Char rxGain, Char hpfCornerFreq1, Char hpfCornerFreq2, UInt32 tx0OutPowerBackoffCode, UInt32 tx1OutPowerBackoffCode, UInt32 tx2OutPowerBackoffCode, UInt16 tx0PhaseShifter, UInt16 tx1PhaseShifter, UInt32 tx2PhaseShifter) - Continuous Streming Configuration API defines Configuration of the data path to transfer the captured ADC samples continuously without missing any sample to external Device(host)
_I_ UInt16???? RadarDeviceId????? - Radar Device Id
_I_ Double????startFreqConst????? - Start Frequency for each profile of chirp in GHz
_I_ UInt16???? digOutSampleRate?????????????? - ADC sampling rate for each profile in ksps
_I_ Char???????? rxGain??? - Rx gain for each profile in dB
_I_ Char???????? hpfCornerFreq1?? - HPF1 corner frequency for each profile in KHz
_I_ Char???????? hpfCornerFreq2?? - HPF2 corner frequency for each profile in KHz
_I_ UInt32???? tx0OutPowerBackoffCode - How much the trasmit power should be reduced from Max in Tx0 Channel
_I_ UInt32???? tx1OutPowerBackoffCode - How much the trasmit power should be reduced from Max in Tx1 Channel
_I_ UInt32???? tx2OutPowerBackoffCode - How much the trasmit power should be reduced from Max in Tx2 Channel
_I_ UInt16???? tx0PhaseShifter??? - The additional phase shift to be introduced on Tx0 Channel
_I_ UInt16???? tx1PhaseShifter??? - The additional phase shift to be introduced on Tx1 Channel
_I_ UInt32???? tx2PhaseShifter??? - The additional phase shift to be introduced on Tx2 Channel(b0:15) + ForceSelect(b16) + VCOSelecct(b17))
附錄:
?