Technical Document Summary: Analogue Front End (AFE) for Digital Radio CMX983
Overview: The CMX983 is an Analogue Front End (AFE) integrated circuit designed for digital radios, particularly Software Defined Radios (SDR). It acts as a bridge between the radio's RF section and the Digital Signal
Processor (DSP), performing essential DSP-intensive functions and providing dual-channel analogue-to-digital and digital-to-analogue conversion. The device supports low power operation with 3.3V and 1.8V supplies and is housed in a compact 64-pin VQFN package.
Key Features:- Rx Channel: Includes two 16-bit Sigma-Delta A/D converters and programmable channel filters.
- Tx Channel: Features two 14-bit Sigma-Delta D/A converters and programmable channel filters.
- RF Support: Equipped with two 2.1GHz fractional-N synthesizers.
- Auxiliary Functions: Offers a 10-bit A/D converter with 10 inputs, five analogue comparators, and 10-bit D/A converters driving 9 outputs.
- DSP Interface: Includes C-BUS control and configuration port and a fast serial interface for Rx/Tx data.
- Operation Modes: Supports both duplex and half-duplex operations.
- Compatibility: Directly connects to CMX998 Cartesian Loop Transmitter and CMX994 Direct Conversion Receiver.
Applications:- Software Defined Radio (SDR)
- Satellite Communication
- Wireless Data Terminals
- Digital PMR/LMR Radio (TETRA, DMR, PDT)
Technical Specifications:- Power Supply: Operates on 3.3V and 1.8V supplies, with PLL charge pumps operable up to 5V for low noise.
- Package: Available in a 64-lead VQFN package.
Functional Description: The CMX983 performs critical DSP functions with low power consumption, reducing overall system power usage. It processes differential analogue baseband I/Q signals, converting them to digital, decimating, and filtering them through programmable FIR channel filters to facilitate host DSP processing.
Block Diagram and Components: The block diagram illustrates the integration of auxiliary DACs, PLLs, bias generators, and serial ports, highlighting the device's comprehensive functionality in managing both Rx and Tx channels.
Performance and Configuration:- Performance Specifications: Detailed in Section 15, including absolute maximum ratings, operating limits, and characteristics.
- Configuration: Utilizes C-BUS for configuration and control, with detailed register maps and operational guidelines provided.
Transmit Path: The CMX983 processes digital I/Q data streams by up-sampling, interpolating, and converting them to analogue format for external up-conversion and transmission. It supports fractional-N RF synthesizers with external VCOs up to 2.1GHz, offering improved noise performance and agility.
RF Synthesizers: The synthesizers allow for 16-bit or 24-bit operation, providing fine frequency resolution. They include a fast-lock feature to minimize lock time during channel switching and indicate lock achievement.
Auxiliary Functions: The device includes an auxiliary ADC with multiplexed inputs and several DACs for control and measurement functions like AFC, AGC, and RSSI. It features programmable thresholds and auto-ramping for transmitter
power amplifier control.
Clocking and Compatibility: The CMX983 can be clocked from various sources and is compatible with CML’s CMX994 and CMX998, providing a complete RF-to-digitized baseband solution. It supports channel bandwidths up to 25kHz, suitable for satellite communication and professional radio systems.
Pin and Signal List: The document includes a comprehensive pin and signal list, detailing the function and type of each pin, such as power connections, inputs, and outputs for various channels and auxiliary components.
External Components: Recommendations for external components are provided to ensure optimal noise performance and signal integrity. This includes specific resistor and capacitor values for power supply decoupling and anti-alias filtering.
C-BUS Interface: The C-BUS interface facilitates data transfer between the CMX983 and a host processor. It supports data-streaming operations to maximize bandwidth and includes a detailed register map for configuration and control.
Conclusion: The CMX983 offers a high level of configurability and integration, making it suitable for a wide range of radio communication applications. Its design supports seamless connectivity with other RF components, ensuring a compact and efficient solution.
Receive Channel: The Rx channel involves signal routing through ADCs and programmable gain amplifiers. It includes calibration features and requires external anti-alias filters. The RX_INPUT register controls signal routing, gain settings, and overflow status.
Input Overflow Circuit: The input overflow circuit uses separate running average filters for modulator output bitstreams (channels A and B) with selectable window widths of 32 or 64 bits. The filter output is monitored against a threshold, and overflow is flagged in the RX_STATUS register if exceeded.
Receive Channel Filters: The CMX983 features two main channel filters, each with a series of processing stages: sinc filter, bit selector, phase vernier, downsamplers, and FIR filter. These stages are programmable and work together to process the ADC data before transmission to the host processor.
Sinc Filter: The sinc filter attenuates quantization noise and unwanted signals. It can be configured with 3 to 6 cascaded stages, each up to 64 in length. The filter's transfer function is designed to minimize in-band energy in aliased signals.
FIR Filter: The FIR filter attenuates out-of-band signals and compensates for droop caused by the sinc filter. It operates with 20-bit data samples and 16-bit coefficients, configurable with up to 128 taps.
Configuration Registers: Several C-BUS registers (RX_CON0, RX_CON1, RX_CON2, RX_CON3, RX_VERNIER, RX_BITSEL1, RX_BITSEL2, RX_COEFF0-3, RX_ADDR) are used to configure the receive channels. These registers control aspects such as ADC clock division, sinc filter configuration, FIR filter settings, and phase adjustments.
Key Parameters and Recommendations:- The sinc filter length should match the first downsample rate to optimize performance.
- FIR filter coefficients must be loaded correctly, with attention to the internal address pointer.
- Configuration changes should be made with the Rx enable bits cleared to ensure proper initialization.
Transmit Channel Configuration: The CMX983 features two Tx channels, each capable of upsampling data twice. Data processing includes upsampling, FIR interpolation filtering, bit selection, and sigma-delta modulation. The document details the configuration of these processes through various registers.
TX_CON0 Register: This 8-bit write register configures the DAC clock divide and selects the bandwidth cutoff for the reconstruction filter's switched capacitor section.
TX_CON1 Register: This 16-bit write register sets the second upsample rate, enables bypassing of the first stage, and configures the interpolation filter length and first upsample rate.
TX_CON2 Register: This 16-bit write register configures bit selection, digital and analogue enablement, and FIR coefficient selection for Tx channels A and B.
TX_GAIN Register: This 16-bit write register sets the output gain for Tx channels A and B, with options for clamping and muting.
TX_COEFF Registers: These registers allow loading of FIR coefficient values for Tx channels A and B. Coefficients must be scrambled before loading, and data-streaming operation is supported to increase loading rates.
Upsample Ratio and Coefficient Loading: The first upsample ratio is set to 5 with a filter length of 60. Coefficients C0 to C59 are loaded in a specific sequence to ensure proper data processing. The internal address pointer must be initialized before loading coefficients into RAMs, using the TX_ADDR register.
TX_ADDR Register: This 8-bit write register initializes the Tx coefficient address pointer, which determines the address for data writing during C-BUS operations. The pointer auto-increments after each 16-bit coefficient is written.
TX_STATUS Register: This 8-bit read register provides status information for channels A and B, including overflow, buffer underrun, and idle states. Specific bits indicate the status of each channel, and reading the register clears certain status bits.
TX_ST_ENAB Register: This 8-bit write register enables Tx status bits. If a status bit is high in both TX_ST_ENAB and TX_STATUS, the corresponding status bit in the STATUS register is set.
Serial Ports:- Rx Serial Port: Data from Rx channels A and B are output through a PCM serial port. The RXCLK is derived from the system clock, and data is transmitted MSB first. Configuration is done via RXPORT_CON0 and RXPORT_CON1 registers.
- Tx Serial Port: Data for Tx channels A and B are input through a PCM serial port. The TXCLK is derived from the system clock, and data is transmitted MSB first. Configuration is done via TXPORT_CON0 and TXPORT_CON1 registers.
Fractional-N Frequency Synthesizers: The CMX983 includes two 2.1 GHz fractional-N frequency synthesizers, which use sigma-delta modulation for high reference frequency and low phase noise. They offer fast locking mechanisms and programmable lock detectors. Configuration is managed through several C-BUS registers, including PLL1_CON, PLL2_CON, and PLL1_LOCKDET.
Key Parameters and Recommendations:- Ensure proper initialization of address pointers before loading coefficients.
- Monitor TX_STATUS for overflow and underrun conditions.
- Configure serial ports according to the required data transmission settings.
- Utilize the fast lock mode for rapid frequency transitions in synthesizers.
PLL Components: The document provides detailed technical specifications and configuration instructions for the PLL (Phase-Locked Loop) components in the CMX983 Analogue Front End for Digital Radio. It includes information on lock detection, fastlock, bleed current, and divider settings.
Lock Detection: The PLL1[2]_LOCKDET register controls the lock detection mode. Setting bit 14 to 1 enables the analogue lock detector, while setting it to 0 enables the digital lock detector. Bit 13 is used to reset the lock detector, clearing the lock status bits.
Analogue Configuration: When the analogue lock detector is active, bits 7-4 control the discharge rate of the lock detector capacitor, affecting the time for the lock signal to go inactive. Bits 3-0 control the charge rate, determining the time for the lock signal to become active.
Digital Configuration: When the digital lock detector is active, bits 12-11 define the loss-of-lock window, and bits 10-8 define the lock window. Bits 7-5 set the loss-of-lock threshold, and bits 4-0 set the lock threshold.
Fastlock Configuration: The PLL1[2]_FLCK register enables fastlock mode, which reduces lock time by adjusting the charge pump current and using a fastlock timer. The fastlock timer is controlled by coarse and fine divide settings.
Bleed Current Configuration: The PLL1[2]_BLEED register allows for the addition of a bleed current to the charge pump output, which can help reduce spurious products. The bleed current is adjustable through coarse and fine settings.
Divider Settings: The PLL1[2]_RDIV and PLL1[2]_IDIV registers set the reference and main divider values, respectively. The PLL1[2]_FDIV0 and PLL1[2]_FDIV1 registers control the fractional divide value in fractional-N mode.
Status Monitoring: The PLL1[2]_STATUS register provides lock status information, indicating whether the PLL is in lock or out of lock. It can be configured to trigger interrupts based on lock status changes.
Register Loading Order: The document specifies the order in which registers should be loaded to ensure proper operation of the PLL synthesizer. This includes initial configuration and subsequent updates in both integer-N and fractional-N modes.
Programming Examples: Two examples are provided to illustrate the configuration of PLL1 in 16-bit fractional mode and PLL2 in 24-bit fractional mode, detailing the calculation of divider values and register settings.
Auxiliary ADCs, DACs, and Comparators: The document provides technical specifications and operational guidelines for the CMX983 Analogue Front End (AFE) for Digital Radio, focusing on the configuration and functionality of auxiliary ADCs, DACs, and comparators.
AUXADC_PWRUP Register:- Power-up Enable: Set bit 15 to 1 to enable the power-up delay timer. Bits 14-11 are reserved and should be set to 0.
- Timer Configuration: Bits 10-8 configure the coarse divide, and bits 7-0 configure the fine divide for the power-up delay, determining the cycles of AuxADCClk before conversion begins.
AUXADC_CON Register:- Input Configuration: Bits 13 and 12 allow alternative input connections for ADC inputs 7 and 6, respectively.
- Converter Enable: Bits 11 and 10 enable single-ended converters for Q and I channels.
- Sample/Hold Power: Bit 9 controls automatic power down of sample/hold circuits between conversions.
- Convert Mode: Bit 8 sets single or continuous convert mode.
- Channel Enable: Bits 7-0 enable specific channels for conversion.
AUXADC_THR Registers:- Threshold Configuration: Each register holds two threshold values for comparison with ADC results. The comparison logic determines if the ADC result is within or outside the specified range.
AUXADC_STAT Register:- Threshold Flags: Bits 7-0 indicate if ADC results are within the programmed threshold range. Flags are cleared upon reading the register.
AUXADC_DATA Registers:- Data Storage: Each register holds the 10-bit result of the last conversion for the associated channel.
Auxiliary Comparators:- Configuration: Five comparator channels can be individually enabled, with programmable threshold voltages and optional output inversion.
- Registers: AUXCMP_CON0-4 configure each comparator, while AUXCMP_STAT holds threshold flags.
Auxiliary DACs:- Functionality: Nine 10-bit DACs provide outputs proportional to the analogue supply voltage. DAC0 includes a ramping feature for controlling RF transmitter power.
- Configuration: AUXDAC_CLK and AUXDAC_RAMD registers configure ramp timing and DAC RAM values.
DAC RAM Loading and Operation: The 64-word DAC RAM can be loaded in ascending order by writing data to a specific C-BUS location, with the internal address pointer automatically incrementing after each write. Data-streaming is supported to increase loading rates. The address pointer must be initialized to address 0 by writing to register AUXDAC_RAMA. Writes are disabled if the DAC0 select bit is set to 1.
Register Details:- AUXDAC_RAMA ($84): 8-bit write register to set the DAC RAM address pointer, which increments automatically after each 16-bit write.
- AUXDAC_UP ($85): Command to read DAC RAM contents in ascending order and apply to DAC0.
- AUXDAC_DOWN ($86): Command to read DAC RAM contents in descending order and apply to DAC0.
- AUXDAC_CYCLE ($87): Command for continuous cycling between ramp up and down operations, controlled by AUXDAC_CLK register.
- AUXDAC_RST ($88): Command to terminate any active ramp operation and reset the DAC RAM pointer to 0.
- AUXDAC_DATA0-8 ($89-$91): 16-bit write registers for DAC data, with specific bits controlling DAC enable, ramp reverse, ramp hold, and DAC0 select.
Performance Specifications:- Absolute Maximum Ratings: Specifies voltage and current limits to prevent device damage.
- Operating Limits: Defines voltage ranges and temperature limits for correct operation.
- Operating Characteristics: Details power supply currents, digital interface parameters, and AC parameters for various operational modes.
Example Data: Figure 29 provides an example of Aux DAC RAM contents for a raised cosine ramp profile, showing hexadecimal values for each address from 0 to 63.
Recommendations: It is recommended to follow a specific power-up sequence for the 1.8V supplies and the RESETN pin to ensure proper initialization of the analogue circuits.
Specifications: The document specifies timing requirements for digital radio components, including TXD or TXFS hold time from TXCLK low, which is 20 ns. Test conditions are detailed with Test Load A and B configurations, including resistor and capacitor values.
Timing Diagrams: Figures 30 to 32 illustrate AC test loads for digital outputs and serial port timings, highlighting critical timing parameters such as tCSE, tCK, tCH, tCL, and others for signal integrity.
Performance Characteristics: Figures 33 to 44 present performance graphs for ADC and DAC, including SINAD and SFDR versus input levels, and PLL output spectra and lock times. Key parameters include input levels, charge pump current, and loop filter configurations.
Handling Precautions: The document advises on electro-static discharge precautions and notes that CML Microsystems does not assume responsibility for circuit use. Product specifications may change without notice.
Packaging: Figure 45 provides the mechanical outline for the 64-lead VQFN package, with the order part number CMX983Q1.