|
发表于 2007-1-26 00:08:41
|
显示全部楼层
<DIV class=quote><B>以下是引用<I>piao201314</I>在2007-1-25 9:20:28的发言:</B>
这个我也清楚,TX IQ的校准就是DC Offset的校正,它是为了为了消除直流偏置,通常将DC Offset 向量化,可分为I Offset 和Q Offset,分别表示两个向量方向上的偏置,在校正的时候分别对I/Q Offset 进行校正。
但我不是很清楚的地方就是它是怎么一个算法,就象AFC时它会有频偏这个概念,TX IQ又是怎么一个过程呢?MTK的。
还有IP2又是怎样的呢?
<P align=right><FONT color=red>+1 RD币</FONT></P></DIV>
先贴个mtk的建议算法
1. Command Agilent 8960 or R&S CMU 200 to set band as PHASE_ERROR_BAND, BCCH carrier as
PHASE_ERROR_ARFCN, PCL as PHASE_ERROR_PCL, and TSC (training sequence code) as TSC. And read
BB TX parameter from NVRAM.
2. Command target to do baseband auto calibration by calling META_DLL API META_Rf_BBTXAutoCal().
3. Get BB TX parameter from target register by calling META_DLL API META_Rf_GetBBTxCfg2() and then save
BB TX parameter to structure rf_bb_tx_cfg2_req.
4. Command target to send normal burst by calling META_DLL API META_Rf_NB_TX().
5.Fetch RMS phase error from Agilent 8960 or R&S CMU 200.
6.If RMS phase error reading at step 5 is less than PHASE_ERROR_RMS_ERROR, phase error pre-check pass,
phase error calibration procedure is finish. Otherwise, go to step 7 to start OffsetI calibration.
7.Set begin_Offset_I = -32, end_Offset_I = 31.
8.Set cal_OffI1= (begin_Offset_I + (begin_Offset_IQ+end_Offset_I)/2)/2, and set rf_bb_tx_cfg2_req.
TxOffsetI=cal_OffI1.
9.Set BB TX parameter saved in structure rf_bb_tx_cfg2_req to target register by calling META_DLL
META_Rf_SetBBTxCfg2().
10.Command target to send normal burst by calling META_DLL API META_Rf_NB_TX().
11. Fetch RMS phase error from Agilent 8960 or R&S CMU 200 and save RMS phase error as RMSErr1.
12. Set cal_OffI2 = (end_Offset_I + (begin_Offset_IQ+end_Offset_I)/2)/2. and set rf_bb_tx_cfg2_req.
TxOffsetI=cal_OffI2.
13. Repeat step9~11, and saved RMS phase error as RMSErr2.
14. If abs(RMSErr1)< abs(RMSErr2), and abs(RMSErr1) < minRMSErr, set minOffI= cal_OffI1, minRMSErr=
abs(RMSErr1).
15. If abs(RMSErr1)< abs(RMSErr2), Set end_Offset_I = (begin_Offset_I+end_Offset_I)/2.
16. If abs(RMSErr1)>= abs(RMSErr2) and abs(RMSErr2) < minRMSErr, set minOffI= cal_OffI2, minRMSErr=
abs(RMSErr2).
17. If abs(RMSErr1)>= abs(RMSErr2), Set begin_Offset_I = (begin_Offset_I+end_Offset_I)/2 + 1.
18. Repeat step 8~17 until the following condition occurred, minRMSErr=0, cal_OffI1>=cal_OffI2.
19. Repeat step 7~18 to do OffsetQ calibration.
20. Command target to send normal burst by calling META_DLL API META_Rf_NB_TX().
21. Fetch RMS phase error from Agilent 8960 or R&S CMU 200 and save RMS phase error as RMSErrCheck.
22. If RMSErrCheck<=PHASE_ERROR_RMS_ERROR, set rf_bb_tx_cfg2_req.bbtx_isCalibrated=191, phase
error check pass. Otherwise, set set rf_bb_tx_cfg2_req.bbtx_isCalibrated=0.
实际factory里的不是这个,要更复杂一些,牵涉到一些信号的建模。
IP2一般是针对direct down mixing架构的TC所特有的项,意义是消除LO self-mixing 所带来的直流偏置[br]<p align=right><font color=red>+1 RD币</font></p>[br]<p align=right><font color=red>+5 RD币</font></p> |
|