EasyManua.ls Logo

Analog Devices ADRV9002

Analog Devices ADRV9002
277 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Preliminary Technical Data UG-1828
Rev. PrB | Page 169 of 277
Regarding to each standard at above, Table 73 lists the usage suggestion of each modules in the Frequency Deviation Output mode.
Table 73. Suggestion of rxnbdem Usages in the Frequency Deviation Output Mode
FM, 12.5kHz FM, 20kHz FM, 25kHz P25 I, 12.5kHz
DMR,
12.5kHz
Input Sampling Clock 24 kHz or 48 kHz 48 kHz 24 kHz or 48 kHz
Signal FIFO Optional
CFC/DDC Enable for manual control
Rx Prog. FIR Enabled for channel filtering with 2 sets of FIR profiles
Freq. Discriminator Enabled with D = 1
NB Prog. FIR Low-pass filtering for smoothing the output FD signal Pulse Shaping
Resampler Disable Enable for manual control
Contact an Analog Devices Application Engineer for the specific filter profiles of Rx Programmable FIR and NB Programmable FIR.
In summary, in the frequency deviation output mode, the rxnbdem can provide more important resources as followed:
A 2k-depth FIFO,
A spur-free carrier frequency offset correction,
A profile-switchable channel filter,
An accurate digital frequency discriminator,
A low-pass filter or a pulse shaping filter for the frequency deviation, and
A precise frequency deviation resampler.
All above resources can be manually enabled and controlled by the BBIC.
API PROGRAMMING
Configuration for blocks in rxnbdem subsystem is profile related on so far, all relative blocks are enabled or bypassed in profile by
selecting Rx “IQ” mode or “Frequency Deviation” mode, more user configurable capability will be added in later software release.
Carrier Frequency Corrector API Programming
The API function adi_adrv9001_Rx_FrequencyCorrection_Set() is provided to set CFC frequency word, as mentioned earlier, the
frequency correction word should be in the range of min (±20k,20% of sample rate) (will change the limitation in later software). And
the frequency correct operation can take effect immediately or at the start of next available frame by set the parameter “immediate” to
“Ture” or “False”.
Rx Programmable FIR Filter API Programming
Profile predefined Rx PFIR coefficients (customized Rx PFIR coefficients will be supported in the later software release) are atomically
loaded during chip initialization, there is no need for baseband processor to call any PFIR coefficients loading API function.
The configuration structure adi_adrv9001_PfirWbNbBuffer_t is defined as the following for the programming FIR filter coefficients.
typedef struct adi_adrv9001_PfirWbNbBuffer
{
uint8_t numCoeff; /* number of coefficients */
adi_adrv9001_PfirSymmetric_e symmetricSel; /* symmetric selection */
adi_adrv9001_PfirNumTaps_e tapsSel; /* taps selection */
adi_adrv9001_PfirGain_e gainSel; /* gain selection */
int32_t coefficients[ADI_ADRV9001_WB_NB_PFIR_COEFS_MAX_SIZE]; /* coefficients */
} adi_adrv9001_PfirWbNbBuffer_t;
Baseband processor can prepare new FPIR coefficients in one or more adi_adrv9001_PfirWbNbBuffer_t instances and call the API
function adi_adrv9001_arm_NextPfir_Set() in “PRIMED” or “RF_ENABLED” state to load each required instance into ADRV9001
hardware. Multiple PFIRs using the same coefficients can be loaded in a single call. However, note that the old coefficients remain in
effect until adi_adrv9001_arm_Profile_Switch() is called.
The API function adi_adrv9001_arm_NextRxChannelFilter_Set() calls adi_adrv9001_arm_NextPfir_Set() once or twice as needed to
update channel filter coefficients for Rx1, Rx2, or both. Either PFIR pointer may be NULL to prevent modifying the corresponding PFIR
but it is an error if both PFIR pointers are NULL.

Table of Contents

Related product manuals