UG-1828
Initial Calibrations API Programming
The ADRV9001 ARM in the device is tasked with scheduling/performing initial calibrations to optimize the performance of the device
prior to device operation. Initial calibrations is performed using the top-level API function adi_adrv9001_cals_InitCals_Run( ).
The initial calibration performed is based on the initial calibration configuration defined by the following data structure:
typedef struct adi_adrv9001_InitCals
{
uint32_t sysInitCalMask;
uint32_t chanInitCalMask[ADI_ADRV9001_MAX_RX_ONLY];
adi_adrv9001_InitCalMode_e calMode;
} adi_adrv9001_InitCals_t
In this structure, sysInitCalMask is the initial calibration mask for system calibrations, chanInitCalMask[] is an array containing
calibration bit mask for channel related initial calibrations (chanInitCalMask[0] is the mask for Rx1/Tx1 channels and
chanInitCalMask[1] is the mask for Rx2/Tx2 channels ) and calMode specifies the mode to run the desired initial calibration algorithms.
The following enumerator type defines all the initial calibrations:
typedef enum adi_adrv9001_InitCalibrations
{
ADI_ADRV9001_INIT_CAL_TX_QEC
ADI_ADRV9001_INIT_CAL_TX_LO_LEAKAGE
ADI_ADRV9001_INIT_CAL_TX_LB_PD
ADI_ADRV9001_INIT_CAL_TX_DCC
ADI_ADRV9001_INIT_CAL_TX_BBAF
ADI_ADRV9001_INIT_CAL_TX_BBAF_GD
ADI_ADRV9001_INIT_CAL_TX_ATTEN_DELAY
ADI_ADRV9001_INIT_CAL_TX_DAC
ADI_ADRV9001_INIT_CAL_TX_PATH_DELAY
ADI_ADRV9001_INIT_CAL_RX_HPADC_RC
ADI_ADRV9001_INIT_CAL_RX_HPADC_FLASH
ADI_ADRV9001_INIT_CAL_RX_HPADC_DAC
ADI_ADRV9001_INIT_CAL_RX_DCC
ADI_ADRV9001_INIT_CAL_RX_LPADC
ADI_ADRV9001_INIT_CAL_RX_TIA_CUTOFF
ADI_ADRV9001_INIT_CAL_RX_GROUP_DELAY
ADI_ADRV9001_INIT_CAL_RX_QEC_TCAL
ADI_ADRV9001_INIT_CAL_RX_QEC_FIC
ADI_ADRV9001_INIT_CAL_RX_QEC_ILB_LO_DELAY
ADI_ADRV9001_INIT_CAL_RX_RF_DC_OFFSET
ADI_ADRV9001_INIT_CAL_RX_GAIN_PATH_DELAY
ADI_ADRV9001_INIT_CAL_PLL
ADI_ADRV9001_INIT_CAL_AUX_PLL
ADI_ADRV9001_INIT_CAL_TX_ALL
ADI_ADRV9001_INIT_CAL_RX_ALL
ADI_ADRV9001_INIT_CAL_RX_TX_ALL
ADI_ADRV9001_INIT_CAL_SYSTEM_ALL
} adi_adrv9001_InitCalibrations_e
= 0x00000001,
= 0x00000002,
= 0x00000004,
= 0x00000008,
= 0x00000010,
= 0x00000020,
= 0x00000040,
= 0x00000080,
= 0x00000100,
= 0x00000200,
= 0x00000400,
= 0x00000800,
= 0x00001000,
= 0x00002000,
= 0x00004000,
= 0x00008000,
= 0x00010000,
= 0x00020000,
= 0x00040000,
= 0x00080000,
= 0x00100000,
= 0x00200000,
= 0x00400000,
= 0x000001FF,
= 0x001FFE00,
= 0x001FFFFF,
= 0x00600000,
Rev. PrA | Page 108 of 253
Preliminary Technical Data
Need help?
Do you have a question about the ADRV9001 and is the answer not in the manual?