CMLMICRO CMX990Q1

CMX990
CML Microcircuits
COMMUNICATION SEMICONDUCTORS
GMSK Packet Data Modem
and RF Transceiver
D/990/1 April 2004
Advance Information
Features
Applications
• Single Chip RF Transceiver and GMSK Modem
• Narrowband Data Over Radio
• IF, RF, Control and Synthesizer Stages
• Mobitex Data Terminals
• Selectable Bt = 0.3 or 0.5
• 400MHz to 1GHz Radio Data Systems
• Full Mobitex Compatibility
• Radio Modems
• Packet and Freeformat (Raw) Data
• Wireless Telemetry
• Versatile Data Rates: 4kbps to 16kbps
• SCADA Terminals
• Simple Parallel Interfacing
• Suitable for EN 300 113 and FCC
• Low-Power, Low Profile, Low-Cost BOM
CFR 47 Part 90 Applications
• Flexible System Clocks
1.
Brief Description
A single-chip GMSK packet-data modem and RF transceiver, the CMX990 provides the majority of
circuits and functions, including host µC interfaces, to implement a full-feature ‘wireless modem’
subsystem. The CMX990 can operate in RF ranges of 400MHz to 1GHz at data rates of 4 to 16 kbps
and is fully Mobitex compatible.
 2004 CML Microsystems Plc
GMSK Packet Data Modem and RF Transceiver
CMX990
With a minimum of external components and circuits, this half-duplex device provides on-chip: a flexible,
formattable GMSK packet and freeformat modem, a dual operation synthesiser fed from an external
source, IF and RF stages for both Rx and Tx modes, and auxiliary ADCs and DACs for system control
and monitoring.
This versatile GMSK modem is programmable to both packet and freeformat data operations via an
efficient task-oriented Rx and Tx format and command structure, which is combined with data
scrambling, interleaving and FEC and CRC capabilities. Rx data acquisition, extraction and tracking
abilities, allied with Rx data quality feedback, allow the CMX990 to operate seamlessly in varying signal
environments.
IF and RF functions in the Tx path handle all the required signal mixing and up-conversion to produce
the FM modulation for the final external PA circuitry. In the Rx path these circuits provide initial
selectivity and rejection characteristics and mix down the inputs to provide baseband signals for the
modem.
Comprehensive internal and external system control and monitoring is provided by the 8-bit host
interface registers and the on-chip ADCs and DACs. Requiring a power supply input in the range 3.0 to
3.6 Volts, the CMX990 can be used in wireless products designed to comply with such standards as EN
300 113 and FCC CFR 47 Part 90. Operating over a temperature range of -40°C to +85°C, the CMX990
consolidates the core radio modem functions to enable a new generation of small, narrow-band wireless
data modems. The CMX990 comes in a 64-pin low profile VQFN package.
 2004 CML Microsystems Plc
2
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
CONTENTS
Section
Page
1.
Brief Description.................................................................................. 1
2.
Block Diagram ..................................................................................... 4
3.
Signal List ............................................................................................ 5
4.
External Components.......................................................................... 8
4.1
Processor Interface................................................................. 9
4.2
Synthesiser and TCXO ......................................................... 10
4.3
Transmit ................................................................................ 11
4.4
Receive .................................................................................. 12
4.5
Power Supply Decoupling and Layout ................................ 13
5
General Description........................................................................... 15
5.1
Baseband Modem ................................................................. 15
5.1.1 Description of Blocks............................................... 15
5.1.2 Modem - µC Interaction ............................................ 17
5.1.3 Data Formats............................................................. 18
5.1.4 Programmer’s View of the Modem .......................... 20
5.1.5 CRC, FEC, Interleaving and Scrambling Details..... 37
5.1.6 Application Notes ..................................................... 40
5.2
µC Interface ........................................................................... 44
5.2.1 Memory Map and Interface....................................... 44
5.2.2 Power-on and Reset ................................................. 45
5.2.3 Clock Control............................................................ 46
5.2.4 Status Registers ....................................................... 47
5.2.5 Write Only Registers ................................................ 48
5.2.6 Read Only Registers................................................. 52
5.3
Auxiliary DAC and ADC......................................................... 54
5.4
Synthesiser............................................................................ 57
5.5
RF and IF ............................................................................... 59
5.5.1 Receiver Section....................................................... 59
5.5.2 Transmitter Section.................................................. 60
5.5.3 Alternative Receiver Architecture ............................ 60
6.
Application Notes .............................................................................. 62
6.1
General .................................................................................. 62
6.2
Transmitter ............................................................................ 62
6.3
Receiver................................................................................. 64
6.4
Variable Bt ............................................................................. 69
7.
Performance Specification................................................................ 71
7.1
Electrical Performance.......................................................... 71
7.2
Packaging.............................................................................. 77
It is always recommended that you check for the latest product datasheet version from the
Datasheets page of the CML website: [www.cmlmicro.com].
Note:
This product is in development: Changes and additions will be made to this specification.
Items marked TBD or left blank will be included in later issues.
Information in this data sheet should not be relied upon for final product design.
 2004 CML Microsystems Plc
3
D/990/1
GMSK Packet Data Modem and RF Transceiver
2.
CMX990
Block Diagram
Figure 1 Block Diagram
 2004 CML Microsystems Plc
4
D/990/1
GMSK Packet Data Modem and RF Transceiver
3.
CMX990
Signal List
Package
Q1
Pin No.
Name
Type
1
PA-CNTL
O/P
DAC0 output to control PA power.
2
TX FB
I/P
Tx feedback input signal.
3
TXIF2
BI
Offset loop filter connection.
5
TXIF1
BI
Offset loop filter connection.
7
TXPLL
O/P
Tx Phase Detector output.
8
RF IN A
I/P
RF input A for received signal.
9
RF IN B
I/P
RF input B for received signal.
11
IF OUT
O/P
Output to the external IF filter.
14
LNA ON
O/P
Digital output to turn on external LNA block.
16
IF IN
I/P
Input from the external IF filter.
43
DAC3
O/P
Spare D/A output.
44
DAC2
O/P
Spare D/A output.
45
ADC5
I/P
Spare A/D input.
46
ADC4
I/P
Spare A/D input.
47
OP2T
O/P
Uncommitted op-amp 2 output, internally
connected to ADC3.
48
OP2N
I/P
Uncommitted op-amp 2 negative input.
49
OP2P
I/P
Uncommitted op-amp 2 positive input.
50
OP1T
O/P
Uncommitted op-amp 1 output, internally
connected to ADC2.
51
OP1N
I/P
Uncommitted op-amp 1 negative input.
52
OP1P
I/P
Uncommitted op-amp 1 positive input.
53
REFCLK
I/P
Master clock input from external TCXO.
54
TCXO-CNTL
O/P
DAC1 output to control TCXO.
55
TCXO-TEMP
I/P
A/D input to measure TCXO temperature,
internally connected to ADC1.
56
LOCLKN
I/P
Inverted input from the RF Oscillator circuit.
57
LOCLK
I/P
Input from the RF Oscillator circuit.
59
MAINPLL
O/P
Main PLL output, connect to external filter.
61
AUXPLL
O/P
Aux PLL output, connect to external filter.
63
IFCLK
I/P
Input from the IF Oscillator circuit.
64
PA-TEMP
I/P
A/D input to measure PA temperature, internally
connected to ADC0.
Signal
 2004 CML Microsystems Plc
Description
5
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Package
Q1
Pin No.
Name
Type
17
A5
I/P
18
A4
I/P
"
19
A3
I/P
"
20
A2
I/P
"
21
A1
I/P
"
22
A0
I/P
"
29
RDN
I/P
Read. An active low logic level input used to
control the reading of data from the modem into
the controlling µC.
30
WRN
I/P
Write. An active low logic level input used to
control the writing of data into the modem from
the controlling µC.
31
CSN
I/P
Chip Select. An active low logic level input
used to enable a data read or write operation.
32
IRQN
O/P
A ‘wire-ORable’ output for connection to the
host Interrupt Request input. This output has a
low impedance pull down to VSS when active
and is high impedance when inactive. An
external pullup resistor is required.
34
D7
BI
35
D6
BI
"
36
D5
BI
"
37
D4
BI
"
38
D3
BI
"
39
D2
BI
"
40
D1
BI
"
41
D0
BI
"
Signal
 2004 CML Microsystems Plc
Description
Register address select logic inputs.
Tri-state µC interface data line.
6
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Package
Q1
Pin No.
Name
Type
4
VDD Tx
Power
Power supply to Tx IF and RF circuits.
6
VSS Tx
Power
Return for VDD Tx, good decoupling required.
10
VDD Rx1
Power
Power supply to Rx RF circuits.
12
VSS Rx1
Power
Return for VDD Rx1, good decoupling required.
13
VSS Rx2
Power
Return for VDD Rx2, good decoupling required.
15
VDD Rx2
Power
Power supply to Rx IF circuits.
23
VDD Dig
Power
Power supply to base band digital circuits.
24
VDD Ana
Power
Power supply to aux ADC, DAC, OP1/2 circuits.
25
VBIAS
O/P
Output of internal bias generator, decouple to
VSS Ana.
26
VSS Ana
Power
Return for VDD Ana, good decoupling required.
27
VSS Dig
Power
Return for VDD Dig, good decoupling required.
28
VSS H
Power
Return for VDD H, good decoupling required.
33
VDD H
Power
Power supply to host interface and 2.5V
regulator circuit.
42
V-CONT
O/P
Control signal for external regulating transistor.
58
VSS Synth
Power
Return for VDD Synth, good decoupling required.
60
VDD VCO
Power
Power supply to the VCO charge pump,
decouple to VSS H.
62
VDD Synth
Power
Power supply to synthesiser circuits.
Notes:
I/P
O/P
BI
T/S
NC
Signal
=
=
=
=
=
 2004 CML Microsystems Plc
Description
Input
Output
Bidirectional
3-state Output
No Connection
7
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.
CMX990
External Components
SYNTHESISER
Vdd Rx2
IF IN
52
51
50
49
48
2
47
3
46
4
45
5
44
6
43
7
42
8
41
CMX990
9
40
10
39
11
38
12
37
13
36
14
35
15
34
16
33
17
18
19
20
21
22
23
24
25
26
28
29
30
31
ADC4
ADC5
DAC2
Spare Aux
ADC & DAC
DAC3
V-CONT
D0
D1
D2
D3
D4
Host
Interface
D5
D6
D7
Vdd H
32
IRQN
CSN
WRN
RDN
Vss H
Vss Dig
Vss Ana
Vbias
Vdd Ana
Vdd Dig
A0
A1
A2
A3
A4
A5
Host Interface
27
OP2T
LNA ON
53
OP2N
Vss RX2
54
OP2P
Rx RF
Vss Rx1
55
OP1T
IF OUT
56
OP1N
Vdd Rx1
57
OP1P
RF IN B
58
REFCLK
RF IN A
59
TCXO-CNTL
TXPLL
60
TCXO-TEMP
Vss Tx
61
LOCLKN
TXIF1
62
LOCLK
Vdd Tx
63
Vss SYNTH
TXIF2
64
MAINPLL
Tx RF
1
Vdd VCO
TX FB
AUXPLL
PA-CNTL
Vdd SYNTH
IFCLK
PA-TEMP
OP-AMP & Aux ADC interface
Host Interface
Figure 2 CMX990 Pin Overview
 2004 CML Microsystems Plc
8
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.1
CMX990
Processor Interface
Figure 3 Recommended External Configuration - Processor Interface
 2004 CML Microsystems Plc
9
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.2
CMX990
Synthesiser and TCXO
The CMX990 synthesiser section provides two independent synthesisers. The PLLs implement a Type II
loop with a phase / frequency phase detector providing an output of a charge pump current. Various
types of loop filter can be used and should be optimised for VCO gain of a particular design. Figure 4
gives typical configuration and values.
Figure 4 Recommended External Components - Synthesiser and TCXO
C4
C92
C93
C99
C100
C101
C113
Notes:
1
2
3
1 nF
1 nF
1 nF
27 nF
27 nF
680 nF
1 nF
C114
C116
T2
R79
R80
R87
R91
U1
1 nF
150 nF
TCM4-25
2.7 kΩ
1.2 kΩ
39 kΩ
1.5 kΩ
See notes
Resistors ±2%, capacitors ±5% unless otherwise stated.
For optimum lock time / phase noise it is recommended C113 and C116 use a low piezo type such as PPS
film; optimum performance is not guaranteed with X7R or Y5V types.
U1 Should be a VCTCXO or TCXO depending on application requirements. A typical device is the
Golledge GTXO-81. The CMX990 has a high impedance input suitable for use with oscillators with clipped
sine wave output. An external DC blocking capacitor (as shown, C4) is required.
 2004 CML Microsystems Plc
10
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.3
CMX990
Transmit
The CMX990 transmitter uses an offset phase-locked loop to accurately modulate RF signals. Details
are contained in subsequent sections of this document. The components used around the CMX990 will
depend on application requirements however a typical configuration is shown in Figure 5.
Figure 5 Recommended External Components - Transmit
Notes:
1
2
3
4
C51
C86
C87
C89
6.8 pF
15 nF
TBD nF
68 nF
L5
270 nH
R62
R63
R64
R68
R69
R71
18 Ω
270 Ω
270 Ω
47 Ω
10 Ω
36 Ω
Resistors ±2%, capacitors ±5% unless otherwise stated.
The coupler may be a packaged type (e.g. 0869CP14A090) or printed on the PCB; alternatively a sample
of the output can be obtained with a resistive or capacitive tap.
Tx loop filter components need to be optimised for selected VCO.
Components between TXIF1 and TXIF2 act as a resonant load to the mixer. They should be matched to
the selected IF frequency whilst attenuating its odd harmonics. The Q of this filter can be controlled by
changing the ratio of C51 to L5 whilst the centre frequency can be maintained by keeping the product of
C51 and L5 a constant. A higher value of C51 will give a higher Q. The Q should not be so high as to
prevent accommodation of the natural frequency range of the VCO. The values shown are approximate for
an IF of 90MHz. Approximate values for an IF of 45MHz are 18pF and 560nH.
 2004 CML Microsystems Plc
11
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.4
CMX990
Receive
The receiver relies on external LNA, filtering and T/R switch; details can be found in the following
sections. The 1st mixer in the CMX990 has a differential input. To ensure optimum performance a balun
is required when driving from typical LNAs or filters. The balun may be a transformer type, which is
implemented using LC networks. Suitable matching components around the balun, selected for the
desired operating frequency, provide matching to 50Ω. Figure 6 shows a typical configuration for 800 840MHz operation.
Figure 6 Recommended External Components - Receive
C18
C21
C25
C41
C46
C47
C48
Notes:
1
2
5 pF
1 nF
5 pF
1 nF
10 nF
15 pF
5.6 pF
L2
L17
T1
R29
R36
RXX
RYY
F1
1.2 µH
15 nH
2.7 kΩ
330 Ω
39 kΩ
100 Ω
100 Ω
45G7B1
Resistors ±2%, capacitors ±5% unless otherwise stated.
F1 is a 4 pole crystal filter with a ±3.5kHz pass-band, implemented as a matched pair. The recommended
part is from Golledge, however other parts may be equally suitable although matching arrangements will
vary. When selecting and matching a crystal filter care should be taken to ensure a flat pass-band.
 2004 CML Microsystems Plc
12
D/990/1
GMSK Packet Data Modem and RF Transceiver
4.5
CMX990
Power Supply Decoupling and Layout
The CMX990 has dual supply voltages: a 3.3V supply is required for the PLLs and charge pump circuits
and for the digital I/O pads, and a 2.5V supply (with separate decoupling) is required for the RF sections
(Rx1, Rx2, Tx) as well as the baseband analogue and digital circuits.
The 3.3V supply must be provided by an external regulator circuit. The 2.5V supply may be provided by
an external regulator, or alternatively may be derived from the 3.3V supply using an off-chip low dropout
transistor in conjunction with the on-chip control circuit (enabled by register PowerUp1 bit 5) - an example
of this arrangement is shown in Figure 7. Whichever method is used to generate the 2.5V supply, the
2.5V regulator may be turned off while the CMX990 is quiescent in order to save power. The CMX990
will then allow the supply to drop to 2.0V, at which point it will be clamped by a separate on-chip
micropower regulator. This is done so that the data in the on-chip registers and memories is not lost.
The main 2.5V regulator circuit must be powered up again and allowed to settle before any RF or
analogue circuitry, or the clock to the internal logic, is enabled. In other words, PowerUp1 (bits 7-6 and
4-0) and PowerUp2 (bits 7-4 and 0) must not be set high until the main 2.5V supply has been reestablished.
The circuit shown in Figure 7 is an example, and will require that the 3.3V supply is regulated to within +/5%. This is necessary to ensure that the PNP transistor shown (TR3) does not enter saturation, taking
worst case ambient conditions and bandgap / component tolerances into account.
VDD Ana
(24)
Bandgap
Reference
CMX990
(33) VDD H
-
3.3V Supply
Low power
2V reg
+
R126
(23) VDD Dig
TR3
-
High Power 2.5V reg
Control Circuit
R125
2.5V Supply
(42) Vcont
+
(Pin number)
C158
Enable
Figure 7 Voltage Regulator Connections
C158
TR3
100 µF
PMBT4403
R125
R126
330 Ω
47 kΩ
Resistors ±5%, capacitors and inductors ±20% unless otherwise stated.
 2004 CML Microsystems Plc
13
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
L6
VDD H
3.3V
L5
VDD VCO
L4
VDD DIG
L3
VDD Synth
2.5V
L2
VDD Plane for RX2 & ANA
L1
VDD Plane for RX1 & TX
C7
C6
C5
C4
C3
C2
GND
GND for: VSS DIG
VSS H
GND Plane for: VSS RX1
VSS RX2
VSS Synth
VSS ANA
Figure 8 Power Supply Connections and De-coupling
C2
C3
C4
C5
C6
C7
10 nF
10 nF
10 nF
10 nF
10 nF
10 nF
L1
L2
L3
L4
L5
L6
TBA
TBA
TBA
TBA
TBA
TBA
Resistors ±5%, capacitors and inductors ±20% unless otherwise stated.
Layout Recommendations
To achieve good noise performance, decoupling of VBIAS and all supplies is very important as is
protection of the receive path from extraneous in-band signals. It is recommended that the printed circuit
board is laid out with a ground plane in the CMX990 area to provide a low impedance connection
between the VSS pins and all VDD and VBIAS decoupling capacitors. As shown in Figure 8 the ground for
VSS digital signals should be kept separate from that used for analogue / RF signals. The digital ground
should be routed back to a suitable star point.
The CMX990 package has a copper area connected to ground under the main body of the IC. This pad
should be connected to analogue ground. It will be noted that caution should be exercised over placing
any tracks underneath the CMX990. Further any vias other than ground should be avoided under the
device unless manufacturers can guarantee that the exposed ground pad on the CMX990 will not cause
shorts while a good electrical contact is maintained between the device and ground.
Apart from these recommendations normal RF layout practices should apply such as keeping tracks as
short as possible, equal track lengths on differential inputs, care with coupling between tracks etc.
 2004 CML Microsystems Plc
14
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.
CMX990
General Description
The CMX990 comprises a baseband modem and an associated RF section to provide the air-interface to
the required Mobitex standard. Device control and status is transferred via a set of memory mapped
registers. The following paragraphs provide a description of operation of each of the sections that make
up the device.
The CMX990 is composed of 5 main sections:
5.1
Baseband modem
5.2
µC interface
5.3
Auxiliary ADC and DAC
5.4
Synthesiser
5.5
RF and IF
Each of the above will be described in its own section below:
5.1
Baseband Modem
This section has been designed to be compliant with the appropriate sections of the "Mobitex
Interface Specification" including Short Block Frame formatting for the extended battery saving
protocol. References to ‘data blocks’ in this section apply to both the normal (18 byte) Data
Block and the smaller (4 byte) Short Data Block.
The function of this section is further divided into Receive and Transmit sections that operate
in half duplex.
In transmit mode the data is encoded according to the Mobitex standard. This includes the
calculation and appending of a Cyclic Redundancy Checksum (CRC) and Forward Error
Correction (FEC), and Interleaving to reduce the effects of noise. The subsequent NRZ data
stream is then filtered digitally and the resulting digital data processed to produce an I and Q
signal as the baseband form of the required FM signal. These are converted to analogue
signals via D-A converters and passed to the RF section for subsequent transmission.
In receive mode, the analogue I and Q representations, at baseband, of the FM signal from the
RF section are converted to digital signals via A-D converters. These signals are digitally
filtered to suppress the adjacent channels and demodulated digitally. The resulting signal is
then filtered, to optimise the signal to noise performance, before slicing to resolve into a digital
bit stream. Mobitex specified error correction and de-interleaving is applied and the resulting
data is presented for transfer to an external processor.
5.1.1
Description of Blocks
Status and Data Quality Registers
8-bit registers which the µC can read to determine the status of the modem and the received
data quality.
Command, Mode and Control Registers
The values written by the µC to these 8-bit registers control the operation of the modem.
Data Buffer
An 18-byte buffer used to hold receive or transmit data to or from the µC.
 2004 CML Microsystems Plc
15
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Frame Assembly / Disassembly
Each of these blocks consists of 4 circuits which generate (in transmit mode) or check (in
receive mode) the bits of both short and normal Mobitex data blocks.
CRC Generator/Checker
A circuit which generates (in transmit) or checks (in receive) the CRC bits, which are included
in transmitted Mobitex data blocks so that the receive modem can detect transmission errors.
FEC Generator/Checker
In transmit mode this circuit calculates and adds the FEC (4 bits) to each byte presented to it.
In receive mode the FEC information is used to correct most transmission errors that have
occurred in Mobitex data blocks or in the Frame Head control bytes.
Interleave/De-interleave Buffer
This circuit interleaves data bits within a data block before transmission and de-interleaves the
received data block so that the FEC system is best able to handle short noise bursts or signal
fades.
Scramble/De-scramble
This block may be optionally used to scramble/de-scramble the transmitted and received data
blocks. It does this by modulating the data with a 511-bit pseudorandom sequence, as
described in section 5.1.5.4. Scrambling improves the transmitted spectrum, especially when
repetitive sequences are to be transmitted.
Frame Sync Detect
This circuit, which is only active in receive mode, is used to look for the user specified 16-bit
Frame Synchronisation pattern which is transmitted to mark the start of every frame.
Tx Modulator and Low Pass Filter
The filter is used in transmit mode and is a low pass transitional Gaussian filter having a 3dB
loss at 0.3 or 0.5 times the bit rate (BT=0.3 or 0.5). See figure 9. This filter eliminates the high
frequency components which would otherwise cause interference into adjacent radio channels.
The unmodulated baseband ‘eye’ diagrams of the transmitted signal is shown in Figure 10.
The Tx Modulator converts the baseband signal into an I and Q form which is passed to the Tx
IF stage.
Figure 9 Typical Tx Baseband Filter Response
 2004 CML Microsystems Plc
16
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 10 Baseband Transmitter Signal Eye Diagrams
Rx Low Pass Filter
This filter is a low pass transitional Gaussian filter having a 3dB loss at 0.56 times the bit rate
(BT=0.56). It is used to reject HF noise to improve the BER.
Level Track and DPLL
These circuits, which operate only in receive mode, extract a bit rate clock from the received
signal and measure the received signal amplitude and dc offset. This information is then used
to extract the received bits and also to provide an input to the received Data Quality measuring
circuit.
5.1.2
Modem - µC Interaction
In general, data is transmitted over air in the form of messages, or ‘Frames’, consisting of a
‘Frame Head’ optionally followed by one or more formatted data blocks. The Frame Head
includes a Frame Synchronisation pattern designed to allow the receiving modem to identify
the start of a frame. The following data blocks are constructed from the ‘raw’ data using a
combination of CRC (Cyclic Redundancy Checksum) generation, Forward Error Correction
coding, Interleaving and Scrambling. Details of the message formats handled by this modem
are given in section 5.3.
To reduce the processing load on the host µC, this modem has been designed to perform as
much as possible of the computationally intensive work involved in Frame formatting and deformatting and (when in receive mode) in searching for and synchronising onto the Frame
Head. In normal operation the modem will only require servicing by the µC once per received
or transmitted data block.
Thus, to transmit a block, the host µC has only to load the unformatted (raw) binary data into
the modem's data buffer then instruct the modem to format and transmit that data. The
modem will then calculate and add the CRC bits as required, encode the result with Forward
Error Correction coding, interleave then scramble the bits before transmission.
In receive mode, the modem can be instructed to assemble a block’s worth of received bits,
de-scramble and de-interleave the bits, check and correct them (using the FEC coding) and
check the resulting CRC before placing the received binary data into the Data Buffer for the µC
to read.
The modem can also handle the transmission and reception of unformatted data, to allow the
transmission of special Bit and Frame Synchronisation sequences or test patterns.
 2004 CML Microsystems Plc
17
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.3
CMX990
Data Formats
Raw data
If required the user may transmit and receive raw data. This is transferred between the host
and device a byte (8 bits) at a time.
Note that it is important to have established frame synchronisation before receiving data to
enable the receiving device to decode synchronously. The user may add error detection and
correction by way of algorithms performed on the host device.
General Purpose Formats
In a proprietary system the user may employ the data elements provided by this device to
construct a custom, over-air data structure.
For example, 16 bits of bit sync + 2 bytes of frame sync + 4 bytes of receiver and sender
address + n data blocks would be sent as:
TQB (bit and frame sync) + TQB (addresses) + (n x TDB) + TSB
And received as:
SFS + RSB + RSB + RSB + RSB + (n x RDB)
Mobitex Frame Structure
The Mobitex format for transmitted data is in the form of a Frame Head immediately followed
by either 1 Short Data Block or a number of Data Blocks (0 to 32).
The Frame Head consists of 7 bytes:
2 bytes of bit sync:
1100110011001100 from base,
0011001100110011 from mobile
bits are transmitted from left to right
2 bytes of frame sync:
System specific.
2 bytes of control data.
1 byte of FEC code, 4 bits for each of the control bytes:
bits 7-4 (leftmost) operate on the first control byte.
bits 3-0 (rightmost) operate on the second control byte.
Each byte in the Frame Head is transmitted bit 7 (MSB) first to bit 0 (LSB) last.
The normal and short data blocks consist of:
18 bytes of data (Data Block)
OR
4 bytes of data (Short Data Block).
2 bytes of CRC calculated from the data bytes.
4 bits of FEC code for each of the data and CRC bytes
The resulting data block bits are interleaved and scrambled before transmission.
 2004 CML Microsystems Plc
18
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 11 shows how the over air signal is built up from Frame Sync and Bit Sync patterns,
Control bytes and Data Blocks.
The binary data transferred between the modem and the host µC is that shown enclosed by the
thick dashed rectangles near the top of the diagram.
Figure 11 Mobitex Over Air Signal Format
 2004 CML Microsystems Plc
19
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.4
CMX990
Programmer’s View of the Modem
The modem appears to the programmer as a series of 8-bit read and write registers, individual
registers being selected by the A0 to A5 address pins. Most of the baseband control for
formatting or decoding the data is controlled by the following registers:
Address
$00
$01
$02
$03
5.1.4.1
Write to Modem
Data Buffer
Command Register
Control Register
Mode Register
Read from Modem
Data Buffer
Status 1 Register
Data Quality Register
Status 2 Register
Data Buffer
This is an 18-byte read/write buffer which is used to transfer data (as opposed to command,
status, mode, data quality and control information) between the modem and the host µC.
It appears to the µC as a single 8-bit register; the modem ensuring that sequential µC reads or
writes to the buffer are routed to the correct locations within the buffer.
The µC should only access this buffer 2 µs after the Status Register BFREE (Buffer Free) bit is
set to ‘1’.
The buffer should only be written to while in Tx mode and read from while in Rx mode (except
when loading Frame Sync detection bytes while in Rx mode).
5.1.4.2
Command Register
Writing to this register tells the modem to perform a specific action or actions, depending on
the setting of the TASK and acquire bits. The enable packet detect bit is used to indicate the
presence of data signals in the receive path.
Command Register
Bit:
$01
Write
7
6
5
4
Acquire
Bit Clock
Acquire
I Q Offset
Acquire
AFC
Enable
packet
detect
3
2
1
0
Task Control
When it has no action to perform (but is not ‘powersaved’), the modem will be in an ‘idle’ state.
If the modem is in transmit mode the input to the Tx filter will be connected to a mid level. In
receive mode the modem will continue to measure the received data quality and extract bits
from the received signal, supplying them to the de-interleave buffer, but will otherwise ignore
the received data.
Command Register B7: Acquire Bit Clock
This bit has no effect in transmit mode.
In receive mode, whenever a byte with the Acquire Bit Clock set to ‘1’ is written to the
Command Register, and TASK is not set to RESET, it initiates an automatic sequence
designed to achieve bit timing synchronisation with the received signal as quickly as possible.
This involves setting the Phase Locked Loop of the received bit timing extraction circuits to its
widest bandwidth, then gradually reducing the bandwidth as timing synchronisation is achieved,
until it reaches the 'normal' value set by the PLL Control bits of the Control Register.
Setting this bit to ‘0’ (or changing it from ‘1’ to ‘0’) has no effect, however note that the
acquisition sequence will be re-started every time that a byte written to the Command Register
has the Acquire Bit Clock bit set to ‘1’. Details of the acquisition sequence are in section
5.1.4.3.
 2004 CML Microsystems Plc
20
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
The Acquire Bit Clock will normally be set to '1' up to 12 bits before an SFS (Search for Frame
Sync) or SFH (Search for Frame Head) task, however it may also be used independently to reestablish clock synchronisation quickly after a long fade. Alternatively, a SFS or SFH task may
be written to the Command Register with the Acquire Bit Clock bit set to ‘0’ if it is known that
clock synchronisation does not need to be re-established. Details of the acquisition sequence
are in section 5.1.4.3.
Command Register B6: Acquire I Q Offset
This bit has no effect in transmit mode.
In receive mode, when this bit is changed from a '0' to a '1' it initiates an automatic sequence
designed to compensate the gross dc offset of the received I and Q signal. This sequence
involves temporarily disabling the RF input and setting the analogue offset measurement
circuits to compensate for the resulting I and Q dc offset. Once this has been completed the
RF input will be reasserted and remaining I and Q offsets will be measured and compensated
depending on the setting of bits 4 and 5 of the Control Register ($02).
Changing this bit from ‘1’ to ‘0’ will terminate acquisition and the ‘normal’ value set by bits 4
and 5 of the Control Register ($02) will be carried out.
The Acquire I Q Offset bit will normally be set after changing or reacquiring a channel (e.g.
after powering up from a sleep condition). This would normally be done so the acquisition
sequence was completed before an SFS or SFH task is initiated. Alternatively, a SFS or SFH
task may be written to the Command Register without previously setting the Acquire I Q Offset
bit to ‘1’ if it is known that there is no need to re-establish the received signal offsets, e.g. when
receiving another message on the same channel in quick succession. Details of the acquisition
sequence are in section 5.1.4.3.
The error rate is highest immediately after an Acquire Bit Clock and Acquire I Q Offset
sequence is triggered and rapidly reduces to its static value soon after. These erroneous bits
could incorrectly trigger the frame sync detection circuits and so it is suggested that a SFH or
SFS task is set 12 bits after setting the Acquire Bit Clock sequence and when the Acquire I Q
Offset has completed.
Command Register B5: Acquire AFC
This bit has no effect in transmit mode.
In receive mode, when this bit is changed from a '0' to a '1' it initiates an automatic sequence
designed to measure and compensate for small differences in the carrier frequencies of the
transmitter and receiver. If the TCXO frequency is too far out the dc offset in the demodulated
signal will become excessive and limit the decode performance of the device. In these cases
the host must adjust the TCXO frequency via the on chip DAC based on the value read from
the Frequency Offset register ($04).
In Mobitex systems the carrier frequencies of basestations are very accurate compared to the
permitted tolerances of mobile units. Therefore once a mobile unit has set up it's local TCXO
frequency it should be suitable for transmitting or receiving with any basestation. The Slow
tracking mode should be sufficient to track any variations caused by environmental changes.
Details of the acquisition sequence are in section 5.1.4.3.
Command Register B4: Enable packet detect
This bit has no effect in transmit mode.
In receive mode if this bit is set to '1' the device will monitor the demodulated waveform for
signals likely to be valid data. The likely presence of valid data will be reported via bit 0 of
Status Register 1. This information can assist in the timing of setting a SFS or SFH task. Note
 2004 CML Microsystems Plc
21
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
that some noise signals may appear in the baseband as valid data, the RSSI signal should be
used to confirm that the received signal is suitable before relying on this signal.
It is recommended that this bit is only set to ‘1’ when searching for the start of a packet. Once
a frame sync has been detected this bit should be set to ‘0’ until the start of a new packet
needs to be found.
Command Register B3, B2, B1, B0: Task
Operations such as transmitting a data block are treated by the modem as ‘tasks’ and are
initiated when the µC writes a byte to the Command Register with the TASK bits set to one of
the data handling commands (marked BOLD in the table below).
Mobitex modem tasks:
B3 B2 B1 B0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
1
1
1
1
0
0
1
0
0
1
1
0
0
1
1
0
1
0
0
1
0
1
0
1
0
1
1
1
0
Receive Mode
NULL
SFH
R3H
RDB
SFS
RSB
LFSB
RESET
SFHZ
RSD
SFSZ
Search for Frame Head
Read 3 byte Frame Head
Read Data Block
Search for Frame Sync
Read Single Byte
Load Frame Sync Bytes
Cancel any current action
SFH with zero errors
Read Short Data Block
SFS with zero errors
Transmit Mode
NULL
T7H
TDB
TQB
TSB
TSO
RESET
TSD
Transmit 7 byte Frame Head
Reserved
Transmit Data Block
Transmit 4 Bytes
Transmit Single Byte
Transmit Scrambler Output
Cancel any current action
Reserved
Transmit Short Data Block
Reserved
Note: All other bit patterns are reserved.
Bold text indicates a ‘data handling command’
The µC should not write a data handling command to the Command Register or write to or read
from the Data Buffer when the BFREE (Buffer Free) bit of the Status 1 Register is ‘0’.
Different tasks apply in receive and transmit modes. Detailed timings for the various tasks are
given in Figures 14 and 15.
Transmit Operation
When the modem is in transmit mode, all data handling commands other than TSO instruct the
modem to transmit data from the Data Buffer, formatting it as required. For these tasks the µC
should wait until the BFREE (Buffer Free) bit of the Status 1 Register is ‘1’, before writing the
data to the Data Buffer. If more than 1 byte needs to be written to the Data Buffer, byte
number 0 of the block should be written first. The host should then write the desired task to the
Command Register.
Once the byte containing the desired task has been written to the Command Register, the
modem will:
Set the BFREE (Buffer Free) bit of the Status 1 Register to ‘0’.
Take the data from the Data Buffer as quickly as it can - transferring it to the Interleave
Buffer for eventual transmission. This operation will start immediately if the modem is
‘idle’ (i.e. not transmitting data from a previous task), otherwise it will be delayed until
there is sufficient room in the Interleave Buffer.
Once all of the data has been transferred from the Data Buffer the modem will set the
BFREE and IRQ bits of the Status 1 Register to ‘1’, (causing the chip IRQN output to go
low if the IRQ Enable bit of the Mode Register has been set to ‘1’) to tell the µC that it
may write new data and the next task to the modem.
 2004 CML Microsystems Plc
22
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
In this way the µC can write a task and the associated data to the modem while the modem is
still transmitting the data from the previous task. See Figure 12.
Figure 12 The Transmit Process
 2004 CML Microsystems Plc
23
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Receive Operation
When the modem is in receive mode, the µC should wait until the BFREE bit of the Status 1
Register is ‘1’, then write the desired task to the Command Register.
Once the byte containing the desired task has been written to the Command Register, the
modem will:
Set the BFREE bit of the Status Register to ‘0’.
Wait until enough received bits are in the De-interleave Buffer.
Decode them as needed, and transfer any resulting data to the Data Buffer.
Then the modem will set the BFREE and IRQ bits of Status 1 Register to ‘1’, (causing the
IRQN output to go low if the IRQ Enable bit of the Mode Register has been set to ‘1’) to
tell the µC that it may read from the Data Buffer and write the next task to the modem. If
more than 1 byte is contained in the Data Buffer, byte number ‘0’ of the data will be read
first.
In this way the µC can read data and write a new task to the modem while the received bits
needed for this new task are being stored in the De-interleave Buffer. See Figure 13.
The above is not true for loading the Frame Sync detection bytes (LFSB): the bytes to be
compared with the incoming data must be loaded prior to the task bits being written.
Figure 13 The Receive Process
 2004 CML Microsystems Plc
24
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Task Descriptions:
NULL - No effect
This task is provided so the acquisition commands can be issued without loading a new task.
SFH - Search for Frame Head
Causes the modem to search the received signal for a Frame Head. The Frame Head will
consist of a 16-bit Frame Sync followed by control data (see Figure 11 - Mobitex Over Air
Signal). The search will continue until a Frame Head has been found, or until the RESET task is
loaded.
The search is carried out by first attempting to match the incoming bits against the previously
programmed (task LFSB) 16-bit Frame Sync pattern (allowing up to any one bit (of 16) in error).
When a match has been found, the modem will read the next 3 received bytes as Frame Head
bytes, these bytes will be checked, and corrected if necessary, using the FEC bits. The two
Frame Head Data bytes are then placed into the Data Buffer.
The BFREE and IRQ bits of the Status 1 Register will then be set to a logic ‘1’ to indicate that the
µC may read the 2 Frame Head Data bytes from the Data Buffer and write the next task to the
Command Register. If the FEC indicates uncorrectable errors the modem will set the CRCFEC
bit in the Status 1 Register to a logic ‘1’. The MOBAN bit (Mobile or Base) in the Status 1
Register will be set according to the polarity of the 3 bits preceding the Frame Sync pattern.
R3H - Read 3-byte Frame Head
This task, which would normally follow an SFS task, will place the next 3 bytes directly into the
Data Buffer. It also causes the modem to check the 3 bytes as Frame Head control data bytes
and will set the CRCFEC bit to a logic ‘1’ (high) only if the FEC bits indicate uncorrectable errors.
Note: This task will not correct any errors and, due to the Mobitex FEC specification, will not
detect all possible uncorrectable error patterns. The BFREE and IRQ bits of the Status 1
Register will be set to ‘1’ when the task is complete to indicate that the µC may read the data
from the Data Buffer and write the next task to the modem's Command Register.
The CRCFEC bit in the Status 1 Register will be set according to the validity of the received FEC
bits.
RDB - Read Data Block
This task causes the modem to read the next 240 bits as a Mobitex Data Block.
It will de-scramble and de-interleave the bits, FEC correct and CRC check the resulting 18 data
bytes and place them into the Data Buffer, setting the BFREE and IRQ bits of the Status 1
Register to ‘1’ when the task is complete to indicate that the µC may read the data from the Data
Buffer and write the next task to the modem’s Command Register. The CRCFEC bit will be set
according to the outcome of the CRC check.
Note: in receive mode the CRC checksum circuits are initialised on completion of any task other
than NULL.
SFS - Search for Frame Sync
This task, which is intended for special test and channel monitoring purposes, performs the first
part only of a SFH task. It causes the modem to search the received signal for a 16-bit sequence
which matches the Frame Synchronisation pattern with up to any 1 bit in error.
When a match is found the modem will set the BFREE and IRQ bits of the Status 1 Register to
‘1’ and update the MOBAN bit. The µC may then write the next task to the Command Register.
 2004 CML Microsystems Plc
25
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
RSB - Read Single Byte
This task causes the modem to read the next 8 bits and translate them directly (without deinterleaving or FEC) to a single byte which is placed into the Data Buffer (B7 will represent the
earliest bit received). The BFREE and IRQ bits of the Status 1 Register will then be set to ‘1’ to
indicate that the µC may read the data byte from the Data Buffer and write the next task to the
Command Register.
This task is intended for special tests and channel monitoring - perhaps preceded by an SFS
task.
LFSB - Load Frame Sync Bytes
This task takes 2 bytes from the Data Buffer and updates the Frame Sync detect bytes. The
MSB of byte ‘0’ is compared to the first bit of a received Frame Sync pattern and the LSB of byte
‘1’ is compared to the last bit of a received Frame Sync pattern. This task does not enable
Frame Sync detection.
Unlike other Rx tasks, the data buffer must be loaded before the task is issued and the task must
only be issued ‘between’ received messages, i.e. before the first task for receiving a message
and after the last data is read out of the data buffer.
Once the modem has read the Frame Sync bytes from the Data Buffer, the BFREE and IRQ bits
of the Status 1 Register will be set to ‘1’, indicating to the µC that it may write the next task to the
modem.
SFHZ - Search for Frame Head with Zero Errors
This performs the same task as SFH task but allowing no bits to be in error over the 16-bit Frame
Sync pattern.
RSD - Read Short Data Block
This task causes the modem to read the next 72 bits as a Mobitex Short Data Block.
It will de-scramble and de-interleave the bits, FEC correct and CRC check the resulting 4 data
bytes and place them into the Data Buffer, setting the BFREE and IRQ bits of the Status 1
Register to ‘1’ when the task is complete to indicate that the µC may read the data from the Data
Buffer and write the next task to the modem’s Command Register. The CRCFEC bit will be set
according to the outcome of the CRC check.
Note: in receive mode the CRC checksum circuits are initialised on completion of any task other
than NULL.
SFSZ - Search for Frame Sync with Zero Errors
This performs the same task as SFS task but allowing no bits to be in error over the 16-bit Frame
Sync pattern.
T7H - Transmit 7-byte Frame Head
This task takes 6 bytes of data from the Data Buffer, calculates and appends 8 bits of FEC from
bytes ‘4’ and ‘5’ then transmits the result as a complete Mobitex Frame Head.
Bytes ‘0’ and ‘1’ form the bit sync pattern, bytes ‘2’ and ‘3’ form the frame sync pattern and bytes
‘4’ and ‘5’ are the frame head control bytes. Bit 7 of byte ‘0’ of the Data Buffer is sent first, bit 0
of the FEC byte last.
Once the modem has read the data bytes from the Data Buffer, the BFREE and IRQ bits of the
Status 1 Register will be set to ‘1’, indicating to the µC that it may write the next task and its data
to the modem.
 2004 CML Microsystems Plc
26
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
TQB - Transmit 4 Bytes
This task takes 4 bytes of data from the Data Buffer and transmits them, bit 7 first.
Once the modem has read the data bytes from the Data Buffer, the BFREE and IRQ bits of the
Status 1 Register will be set to ‘1’, indicating to the µC that it may write the next task and its data
to the modem.
TDB - Transmit Data Block
This task takes 18 bytes of data from the Data Buffer, calculates and applies a 16-bit CRC and
forms the FEC for the 18 data bytes and the CRC. This data is then interleaved and passed
through the scrambler, if enabled, before being transmitted as a Mobitex Data Block.
Once the modem has read the data bytes from the Data Buffer, the BFREE and IRQ bits of the
Status Register will be set to ‘1’, indicating to the µC that it may write the next task and its data to
the modem.
Note: In transmit mode the CRC checksum circuit is initialised on completion of any task other
than NULL.
TSB - Transmit Single Byte
This task takes a byte from the Data Buffer and transmits the 8 bits, bit 7 first.
Once the modem has read the data byte from the Data Buffer, the BFREE and IRQ bits of the
Status 1 Register will be set to ‘1’, indicating to the µC that it may write the next task and its data
to the modem.
TSO - Transmit Scrambler Output
This task, intended for channel set-up, enables the scrambler and transmits its output.
When the modem has started the task the Status 1 Register bits will not change and hence these
will not raise an IRQ. The µC may write the next task and its data to the modem at any time and
the scrambler output will stop when the new task has produced its first data.
TSD - Transmit Short Data Block
This task takes 4 bytes of data from the Data Buffer, calculates and applies a 16-bit CRC and
forms the FEC for the 4 data bytes and the CRC. This data is then interleaved and passed
through the scrambler, if enabled, before being transmitted as a Mobitex Data Block.
Once the modem has read the data bytes from the Data Buffer, the BFREE and IRQ bits of the
Status 1 Register will be set to ‘1’, indicating to the µC that it may write the next task and its data
to the modem.
Note: In transmit mode the CRC checksum circuit is initialised on completion of any task other
than NULL.
RESET - Stop any current action
This task takes effect immediately, and terminates any current task the modem may be
performing and sets the BFREE bit of the Status 1 Register to ‘1’, without setting the IRQ bit. It
should be used when VDD is applied to set the modem into a known state.
Note that due to delays in the internal circuitry, it will take approximately 3 bit times for any
change to become apparent at the transmitter output.
 2004 CML Microsystems Plc
27
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Task Timings
The device should not write to the Command Register whenever the Enable Baseband bit is
changed from ‘0’ to ‘1’ and for at least 2 bit times after the following:
Changing the Tx/Rx bit.
Resetting or after power is applied to the device.
This is to ensure that the internal operation of the device is initialised correctly for the new task.
Note that this only applies to the Command Register, the other registers may be accessed as
normal.
Figure 14 Transmit Mode Timing Diagram
t1
t2
Time from writing first task (modem in ‘idle’
state) to application of first transmit bit to Tx
Low Pass filter
Time from application of first bit of
task to Tx Low Pass filter until BFREE
goes to a logic ‘1’ (high)
t3
Time to transmit all bits of task
t4
Max time allowed from BFREE going to a
logic ‘1’ (high) for next task (and data) to
be written to modem
 2004 CML Microsystems Plc
28
Task
Typical time
(bit-times)
Any
1
T7H
TQB
TDB
TSB
TSD
T7H
TQB
TDB
TSB
TSD
T7H
TQB
TDB
TSB
TSD
36
24
20
1
6
56
32
240
8
72
18
6
218
6
64
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 15 Receive Mode Timing Diagram
Task
t3
Time to receive all bits of task
t6
Maximum time between first bit of task
entering de-interleave circuit and task
being written to modem
t7
Time from last bit of task entering de-interleave
circuit to BFREE going to a logic ‘1’ (high)
 2004 CML Microsystems Plc
29
SFH
R3H
RDB
RSB
RSD
SFH
R3H
RDB
RSB
RSD
Any
Typical time
(bit-times)
56
24
240
8
72
14
18
218
6
64
1
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Tx and Rx Low Pass Filter Delay
The previous task timing figures are based on the signal at the input to the RF sections (in
transmit mode) or the input to the de-interleave buffer (in receive mode). There is an
additional delay of about 2 bit times in both transmit and receive modes due to the Tx/Rx
filtering and RF circuitry, as illustrated in the figure below.
Figure 16 Low Pass Filter Delay
5.1.4.3
Control Register
This 8-bit write only register controls the response times of the receive clock extraction and
signal level measurement circuits.
Control Register
Bit:
7
$02
6
AGC Control
Write
5
4
IQ Offset Control
3
2
Frequency tracking (AFC)
Control
1
0
PLL Control
The modem needs to make accurate measurements of the received signal level, dc offset and
frequency offset and bit timing to achieve reasonable error rates. Accurate measurements,
especially in the presence of noise, are best made by averaging over a relatively long time.
However, in most cases the modem will be used to receive isolated messages from a distant
transmitter and may be turned on for a very short time before the message starts. Also, the
received baseband signal out of the radio's frequency discriminator will have a dc offset due to
small differences between the receiver and transmitter reference oscillators and hence their
‘carrier’ frequencies.
To cater for this situation acquire bits 7 to 5 are provided in the Command register ($01) which,
when triggered, cause the modem to follow an automatic sequence designed to perform these
measurements as quickly as possible. After these acquisition sequences have completed the
circuits return to the mode as set in this register.
 2004 CML Microsystems Plc
30
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Control Register B7, B6: AGC Control
These two bits have no effect in transmit mode.
In receive mode these bits set the response of the AGC circuit. The 'Run' and 'Max Gain and
Run' settings allow the circuit to acquire and track incoming signals.
B7
0
0
1
1
B6
0
1
0
1
Setting
Max Gain and Hold
Hold*
Run
Max Gain and Run
Action
AGC set to maximum gain and held
AGC gain not updated by internal circuit
AGC tracks input signal
AGC set to maximum gain and tracks input signal
* Host may override AGC setting by writing to $19 only when this setting is selected.
Control Register B5, B4: I/Q Offset Control
These two bits have no effect in transmit mode.
In receive mode, these set the ‘normal’ response of the I/Q offset measuring circuits. The
offset control is in two sections, an analogue 'coarse' setting and a digital 'fine' setting. The
host may read and directly overwrite the coarse setting via registers $18 and $19. The coarse
and fine settings will be overridden by the Acquire I Q Offset command (bit 6 of Command
register) which will go through a sequence of:
Reset
Run with Coarse Tracking for 12 bits to correct gross I/Q offset error
Run with Fine Tracking for 640 bits to adjust for remaining I/Q offsets
Revert to normal setting (hold / fine / coarse)
B5
0
0
1
1
B4
0
1
0
1
Setting
Reset and Hold
Hold*
Fine Tracking*
Coarse Tracking
Action
I/Q offset tracking reset and held
I/Q offset tracking held at current setting
I/Q fine offset tracking
I/Q coarse offset tracking
* Host may override Coarse I/Q Offset by writing to registers $18 and $19 only when these settings are
selected and bit 6 of Command register is = '0'.
Control Register B3, B2: Frequency tracking (AFC) Control
These two bits have no effect in transmit mode.
In receive mode, they set the ‘normal’ response of the frequency tracking circuits. This setting
will be temporarily overridden by the Acquire AFC command (bit 5 of Command register) which
will go through a sequence of:
Reset
Run with Fast Tracking for 96 bits to correct frequency offset error
Run with Slow Tracking for 750 bits to follow any further frequency offsets
Revert to normal setting (hold / slow / fast)
B3
0
0
1
1
B2
0
1
0
1
Setting
Reset and Hold
Hold
Slow Tracking
Fast Tracking
Action
Frequency tracking reset and held
Frequency tracking held at current setting
Frequency slow tracking
Frequency fast tracking
For Mobitex systems, and most general purpose applications using the modem, these bits
should normally be set to Slow Tracking after the host has activated the automatic sequence.
 2004 CML Microsystems Plc
31
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
The Fast setting allows the modem to respond quickly without µC intervention - although at the
cost of reduced Bit Error Rate versus Signal to Noise performance.
Note that the AFC measuring system requires ‘00’ and ‘11’ bit pairs to be received at
reasonably frequent intervals. The AFC tracking will eventually fail if ‘1’ or ‘0’ is transmitted
continuously.
Control Register B1, B0: PLL Control
These two bits have no effect in transmit mode.
In receive mode, they set the ‘normal’ bandwidth of the Rx clock extraction Phase Locked Loop
circuit. This setting will be temporarily overridden by the Acquire Bit Clock command (bit 7 of
Command register) which will go through a sequence depending if a frame sync is being
searched for (SFH or SFS task is started within 14 bits):
Frame sync search:
Wide setting until Frame Sync is detected
30 bits of medium setting
Revert to normal setting
B1
0
0
1
1
B0
0
1
0
1
PLL Bandwidth
Hold
Narrow
Medium
Wide
No frame sync search:
16 bits of wide setting
30 bits of medium setting
Revert to normal setting
Suggested use
Signal fades
< ± 20ppm bit rate error systems
Wide bit rate error or long preamble acquisition
Quick acquisition
The ‘hold’ setting is intended for use during signal fades, otherwise the minimum bandwidth
consistent with the transmit and receive modem bit rate tolerances should be chosen.
The wide and medium bandwidth settings allow the modem to respond rapidly to fresh
messages and recover rapidly after a fade without µC intervention - although at the cost of
reduced Bit Error Rate versus Signal to Noise performance.
Note that the clock extraction circuits work by detecting the timing of edges, i.e. a change from
‘0’ to ‘1’ or ‘1’ to ‘0’. The clock extraction will eventually fail if ‘1’ or ‘0’ is transmitted
continuously
 2004 CML Microsystems Plc
32
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
5.1.4.4 Mode Register
The contents of this 8-bit write only register control the basic operating modes of the modem:
Mode Register
Bit:
$03
Write
7
6
5
4
3
2
1
0
IRQ
Enable
INVBit
TxRxN
SCREn
En PLL
Lock IRQ
Enable DQ
IRQ
Enable
Main ADC
Enable
Main DAC
Mode Register B7: IRQ Enable - IRQN Output Enable
When this bit is set to ‘1’ the IRQN chip output pin is pulled low (to Vss) whenever the IRQ bit of
the Status Register is a ‘1’.
Mode Register B6: INVBIT - Invert Bits
This bit controls inversion of transmitted and received data. This allows for frequency inversions
in the RF chain and has the effect of swapping I and Q paths in both transmitter and receiver.
Mode Register B5: TXRXN - Tx/Rx Mode
Setting this bit to ‘1’ puts the modem into Transmit mode, clearing it to ‘0’ puts the modem into
Receive mode. When changing from Rx to Tx there must be a 2-bit pause before setting a new
task to allow the filter to stabilise. (See also Baseband Enable bit).
Note that changing between receive and transmit modes will cancel any current task. Note also
that this bit does not enable Tx or Rx sections of the CMX990 which must be enabled by
separate control bits.
Mode Register B4: SCREN - Scramble Enable
The scrambler only takes effect during the transmission or reception of a Mobitex Data Block,
Short Data Block and during a TSO task. Setting this bit to ‘1’ enables scrambling, clearing it to
‘0’ disables scrambling.
The scrambler is only operative, if enabled by this control bit, during TSO, RDB, RSD, TSD or
TDB, it is held in a reset state at all other times.
This bit should not be changed while the modem is decoding or transmitting a Mobitex Data
Block.
Mode Register B3: En PLL Lock IRQ - Enable Phase Lock Loop lost IRQ
Setting this bit to ‘1’ causes the IRQ bit of the Status 1 Register to be set to ‘1’ whenever The PLL
Lock lost bit is set to 1. (The Phase Lock lost bit of Status 2 Register will also be set to ‘1’ at the
same time.)
Mode Register B2: Enable DQ IRQ - Enable Data Quality IRQ
In receive mode, setting this bit to ‘1’ causes the IRQ bit of the Status 1 Register to be set to ‘1’
whenever a new Data Quality reading is ready. (The DQRDY bit of the Status 1 Register will
also be set to ‘1’ at the same time.)
In transmit mode this bit has no effect.
Mode Register B1 - 0: Enable Main ADC / Enable Main DAC
When the respective bit is set to ‘1’ the main ADC and DAC are enabled, power may be saved by
setting these bits to ‘0’ when the ADC or DAC are not needed. Bit ‘0’ would normally only be set
to ‘1’ when bit 5 is set to ‘1’. Bit ‘1’ would normally only be set to ‘1’ when bit 5 is set to ‘0’.
 2004 CML Microsystems Plc
33
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.4.5
CMX990
Status 1 Register
This register may be read by the µC to determine the current state of the modem.
Status 1 Register
Bit:
$01
Read
7
6
5
4
3
2
1
0
IRQ
BFREE
IBEMPTY
DIBOVF
CRCFEC
DQRDY
MoBaN
Packet
Detect
Status 1 Register, B7: IRQ - Interrupt Request
This bit is set to ‘1’ by:
The Status 1 Register BFREE bit going from ‘0’ to ‘1’, unless this is caused by a
RESET task or by a change to the Mode Register Enable Baseband or TXRXN
bits.
or
The Status 1 Register IBEMPTY bit going from ‘0’ to ‘1’, unless this is caused by
a RESET task or by changing the Mode Register Enable Baseband or TXRXN
bits.
or
The Status 1 Register DQRDY bit going from ‘0’ to ‘1’ (If DQEN = ‘1' ).
or
The Status 1 Register DIBOVF bit going from ‘0’ to ‘1’.
or
The Status 1 Register Packet Detect bit going from ‘0’ to ‘1’ if the Enable Packet
Detect bit is set in the Command Register.
or
The Status 2 Register bits 7, 3, 2, 1 or 0 going from ‘0’ to ‘1’.
The host must read Status 1 Register first after detecting or looking for an interrupt condition.
The IRQ bit is cleared to ‘0’ immediately after a read of the Status Register that caused the
interrupt. In the case where 1 or more bits in Status 2 Register cause an interrupt the IRQ bit is
only cleared after reading Status 2 Register.
If the IRQEN bit of the Mode Register is ‘1’, then the chip IRQN output will be pulled low (to
Vss) whenever the IRQ bit is ‘1’.
Status 1 Register, B6: BFREE - Data Buffer Free
This bit reflects the availability of the Data Buffer and is cleared to ‘0’ whenever a task other
than NULL, RESET or TSO is written to the Command Register.
In transmit mode, the BFREE bit will be set to ‘1’ (also setting the Status 1 Register IRQ bit to
‘1’) when the modem is ready for the µC to write new data to the Data Buffer and the next task
to the Command Register.
In receive mode, the BFREE bit is set to ‘1’ (also setting the Status 1 Register IRQ bit to ‘1’) by
the modem when it has completed a task and any data associated with that task has been
placed into the Data Buffer. The µC may then read that data and write the next task to the
Command Register.
The BFREE bit is also set to ‘1’, but without setting the IRQ bit, by a RESET task or when the
Mode Register Enable Baseband or TXRXN bits are changed.
Status 1 Register, B5: IBEMPTY - Interleave Buffer Empty
In transmit mode, this bit will be set to ‘1’, also setting the IRQ bit, when less than two bits
remain in the Interleave Buffer. Any transmit task written to the modem after this bit goes to ‘1’
will be too late to avoid a gap in the transmit output signal.
The bit is also set to ‘1’ by a RESET task or by a change of the Mode Register TXRXN or
Enable Baseband bits, but in these cases the IRQ bit will not be set.
 2004 CML Microsystems Plc
34
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
The bit is cleared to ‘0’ by writing a task other than NULL, RESET or TSO to the Command
Register.
Note: When the modem is in transmit mode and the Interleave Buffer is empty, a mid-level
voltage (VBIAS) will be applied to the Tx low pass filter.
In receive mode this bit will be ‘0’.
Status 1 Register, B4: DIBOVF - De-Interleave Buffer Overflow
In receive mode this bit will be set to ‘1’ (also setting the IRQ bit) when a task is written to the
Command Register too late to allow continuous reception.
The bit is cleared to ‘0’ by reading the Status 1 Register or by writing a RESET task to the
Command Register or by changing the Enable Baseband or TXRXN bits of the Mode Register.
In transmit mode this bit will be ‘0’.
Status 1 Register, B3: CRCFEC - CRC or FEC Error
In receive mode this bit will be updated at the end of a Mobitex Data Block task, after checking
the CRC, and at the end of receiving Frame Head control bytes, after checking the FEC. A ‘0’
indicates that the CRC was received correctly or the FEC did not find uncorrectable errors, a ‘1’
indicates that errors are present.
The bit is only cleared to ‘0’ by a RESET task or by changing the Enable Baseband or TXRXN
bits of the Mode Register.
In transmit mode this bit will be ‘0’.
Status 1 Register, B2: DQRDY - Data Quality Reading Ready
In receive mode, this bit is set to ‘1’ whenever a Data Quality reading has been completed.
The bit is cleared to '0' after reading the Data Quality Register.
Immediately after a RESET task, or a change in the Enable Baseband or TXRXN bits to ‘0’, the
DQRDY bit may be set and generate an interrupt. The value in the Data Quality Register will
not be valid in this case.
Status 1 Register, B1: MOBAN - Mobile or Base Bit Sync Received
In receive mode this bit is updated at the end of the SFS and SFH tasks. This bit is set to ‘1’
whenever the 3 bits immediately preceding a detected Frame sync are ‘011’ (received left to
right), with up to any one bit in error. The bit is set to ‘0’ if the bit pattern is ‘100’, again with up
to any one bit in error. Thus, if this bit is set to ‘1’ then the received message is likely to have
originated from a Mobile and if it is set to ‘0’ from a Base Station.
In transmit mode this bit is a logic ‘0’.
Status Register 1, B0: Packet Detect
This bit indicates the status of the Packet Detect circuit and will be set to '0' when a packet is
not present, as described in the description for Command Register bit B4.
In transmit mode this bit will be ‘0’.
 2004 CML Microsystems Plc
35
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.4.6
CMX990
Data Quality Register
Data Quality Register $02
Bit:
7
6
Read
5
4
3
2
1
0
Data Quality Reading (0-255)
This is intended to indicate the quality of the receive signal during a Mobitex Data Block or 30
single bytes. In receive mode, the modem measures the ‘quality’ of the received signal by
comparing the actual received zero crossing time against an internally generated time. This
value is averaged over 240 bits and at the end of the measurement the Data Quality Register
and the DQRDY bit in the Status 1 Register is updated. Note: An interrupt will only occur at
this time if the Enable DQ IRQ bit = ‘1’.
To provide synchronisation with Data Blocks, and hence ensure the Data Quality Register is
updated in preparation to be read when the RDB task finishes, the measurement process is
reset at the end of tasks SFH, SFS, RDB and R3H.
In transmit mode all bits of the Data Quality Register will be ‘0’.
Figure 17 shows how the value (0-240) read from the Data Quality Register varies with
received signal to noise ratio.
Figure 17 Typical Data Quality Reading (after 240 bits) vs baseband S/N
(noise in bit rate bandwidth)
 2004 CML Microsystems Plc
36
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
5.1.5
CRC, FEC, Interleaving and Scrambling Information:
5.1.5.1
CRC
This is a 16-bit CRC code used in both the Mobitex Data Block and Short Data Block. In
transmit it is calculated by the modem from the data block bytes using the following generator
polynomial:
g(x) = x16 + x12 + x5 + 1
i.e.
CRC - CCITT X.25.
This code detects all (single) error bursts of up to 16 bits in length and about 99.998% of all
other error patterns.
The CRC register is initialised to all ‘1s’ and the CRC is calculated octet by octet starting with
the least significant bit of ‘byte 0’. The CRC calculated is bit-wise inverted and appended to the
data bytes with the most significant bit transmitted earliest.
In receive mode, a 16-bit CRC code is generated from the data bytes of each Mobitex Data
Block or Short Data Block as above and the bit-wise inverted value is compared with the
received CRC bytes. If a mis-match is present, then an error has been detected.
 2004 CML Microsystems Plc
37
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.5.2
CMX990
FEC
In transmit mode, during T7H, TSD and TDB, the modem generates a 4-bit Forward Error Correction
code for each coded byte. The FEC is defined by the following H matrix:
7______0
3___0
11101100
1000
H = 11010011
0100
10111010
0010
01110101
0001
Generation of the FEC consists of logically ANDing the byte to be transmitted with bits 7 to 0 of each row
of the H matrix. Even parity is generated for each of the 4 results and these 4 parity bits, in the positions
indicated by the last 4 columns of the H matrix, form the FEC code.
In checking the FEC, the received 12-bit word is logically ANDed with each row of the H matrix (earliest
bit received compared with the first column). Again even parity is generated for the 4 resulting words and
these parity bits form a 4-bit nibble. If this nibble is all zero then no errors have been detected. Other
results ‘point’ to the bit in error or indicate that uncorrectable errors have occurred.
This code can correct any single error that has occurred in each 12-bit (8 data + 4 FEC) section of the
message.
Example:
If the byte to be coded is ‘00101100’ then the FEC is derived as follows:
H matrix row:
A
B
A AND B
Even Parity:
1
11101100
00101100
00101100
1
2
11010011
00101100
00000000
0
3
10111010
00101100
00101000
0
4
01110101
00101100
00100100
0
where A is bits 7 - 0 of one row of the H matrix and B is the byte to be coded. The even parity
bits apply to the result of ‘A AND B’.
So the word formed will be: ‘00101100 1000’ sent left to right
When the same process is carried out on these 12 bits as above, using all 12 bits of each H
matrix row, the resulting 4 parity bits will be ‘0000’.
5.1.5.3
Interleaving
All the bits of transmitted Mobitex Data Blocks and Short Data Blocks are interleaved by the
modem to give protection against noise bursts and short fades. Interleaving is not performed
on any bits in the Mobitex Frame Head.
In the Mobitex Data Block case, considering the 240 bits to be numbered sequentially before
interleaving as 0 to 239 (‘0’ = bit 7 of byte 0, ‘11’ = bit 0 of FEC for byte 0, ... , ‘239’ = bit 0 of
FEC for byte 19 - see Figure 6), then they will be transmitted as shown in Figure 13. The
Mobitex Short Data Block is interleaved in a similar way; referring to Figure 13 consider bytes
4 and 5 as the CRC data and ignore bits 72 to 239 in the lower part of the diagram. i.e. the last
bit to be transmitted will be ‘71’.
The modem performs the inverse operation (de-interleaving) in receive mode on both Mobitex
Data Blocks and Short Data Blocks.
 2004 CML Microsystems Plc
38
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 18 Interleaving - Input/Output
5.1.5.4
Scrambling
All formatted bits of both Mobitex Data Blocks and Short Data Blocks are XORed with the
output of a 9-bit scrambler. This scrambler is initialised at the beginning of the first data block
in every Frame. The 511-bit sequence is generated with a 9-bit shift register with the output of
the 5th and 9th stages XOR’ed and fed back to the input of the first stage. The scrambler is
disabled during all other tasks, apart for TSO.
 2004 CML Microsystems Plc
39
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
5.1.6
Application Notes
5.1.6.1
Transmit Frame Example
If the device is required to send a Mobitex Frame the following control signals and data should
be issued to the modem, assuming the device is not starting from a powersave state, TXRXN
is set to ‘1’ and that the relevant control bits have been set as required after power was applied
to the device:
1. 6 bytes forming the Frame Head are loaded into the Data Buffer, followed by a 2-bit pause
to let the filter stabilise, followed by setting T7H task.
2. Device interrupts host µC with IRQN when the 6th byte is read from the Data Buffer.
3. Status Register is read and 18 bytes are loaded, followed by setting TDB task.
4. Device interrupts host µC with IRQN when 18th byte is read from the Data Buffer.
5. Status 1 Register is read, host may load data and set next task as required:
GOTO ‘1’
GOTO ‘3’
GOTO ‘6’
if the last Data Block for this Frame has been transmitted
and another Frame is to be immediately transmitted
if another Data Block in this Frame is to be transmitted
if no more data is to be immediately sent
6. 1 byte representing the ‘hang byte’ is loaded into the Data Buffer, followed by setting the
TSB task.
If the ‘hang byte’ has been transmitted and no more data is to be sent then a new task need not
be written and the µC can wait for the IBEMPTY interrupt when, after a few bits to allow for the
Tx filter delay, it can shut down the Tx RF circuits.
A top level flowchart of the transmit process is shown in Figure 19.
Hang Byte
The filtering required to reduce the transmitted bandwidth causes energy from each bit of
information to be smeared across 3 bit times. To ensure that the last bit transmitted is
received correctly it is necessary to add an 8-bit ‘hang byte’ to the end of each message. Thus
the tasks required to transmit an isolated Mobitex frame are:
T7H + (n x TDB) + TSB
When receiving this data, the extra byte can be ignored as its only function is to ensure
integrity of the last bit and not to carry any information itself.
It is suggested that a ‘00110011’ or ‘11001100’ pattern is used for this ‘hang byte’.
 2004 CML Microsystems Plc
40
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 19 Transmit Process
 2004 CML Microsystems Plc
41
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.1.6.2
CMX990
Receive Frame Example
If the device is required to decode a Mobitex Frame the following control signals should be
issued to the modem. The host should set the Control Register and activate the Acquire I Q
Offset and Acquire AFC each time a new channel is selected when the RSSI indicates a valid
signal or carrier only is present before packets are decoded. This also assumes that the device
is initially not in powersave, the SCREN is set as required, TXRXN bit is set to ‘0’ and a Packet
Detect event has occurred, or a Frame Head is imminently expected:
1. 2 Frame Sync bytes are loaded.
2. 2 bits after the carrier has been detected, a LFSB task is loaded, along with setting the
Acquire Bit Clock to initiate the bit clock extraction sequence.
3. Device interrupts host µC with IRQN when 2nd byte is read from Data Buffer.
4. Status Register is read, 12 bits later task is set to SFH to search for a Mobitex Frame
Head.
5. Device will interrupt host µC with IRQN when valid Frame Sync is detected and header
bytes decoded.
6. Host µC reads Status 1 Register, checks MOBAN and CRCFEC bit and reads out 2 Frame
Head control bytes.
7. Host µC disables Packet Detect and sets the task to RDB to receive a Mobitex Data Block.
8. Device will interrupt host µC with IRQN when the Data Block has been received and the
CRC has been calculated.
9. Host µC reads Status 1 Register, checks CRC validity and reads 18 Data Block bytes. The
Data Quality Register can also be read to obtain the received S/N level.
10. Host µC sets task if more information is expected:
GOTO ‘4’
GOTO ‘7’
if last Data Block and another Frame Head imminently expected.
if another Mobitex Data Block expected.
If the last Data Block has been decoded and no more information is expected then the task bits
need not be set as the device will automatically select the idle state.
A top level flowchart of the receive process is shown in Figure 20.
 2004 CML Microsystems Plc
42
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 20 Receive Process
 2004 CML Microsystems Plc
43
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.2
CMX990
µC Interface
5.2.1 Memory Map and Interface
The following is a summary of the internal registers as seen by the host, details of operation may be
found in the relevant section.
Address
Read
Write
$00
$01
$02
Data Buffer (Rx)
Status 1
Data Quality
Data Buffer (Tx)
Command
Control
$03
Status 2
Mode
$04
$05
$08
Freq Offset
RSSI
Aux ADC 0 LSB
Power Up 1
Power Up 2
Aux DAC 0 LSB
$09
$0A
Aux ADC 0 MSB
Aux ADC 1 LSB
Aux DAC 0 MSB
Aux DAC 1 LSB
$0B
$0C
$0D
$0E
$0F
$10
$11
$12
$13
$14
$15
Aux ADC 1 MSB
Aux ADC 2 LSB
Aux ADC 2 MSB
Aux ADC 3 LSB
Aux ADC 3 MSB
Aux ADC 4 LSB
Aux ADC 4 MSB
Aux ADC 5 LSB
Aux ADC 5 MSB
-
Aux DAC 1 MSB
Aux DAC 2 LSB
Aux DAC 2 MSB
Aux DAC 3 LSB
Aux DAC 3 MSB
RAM DAC control
Aux ADC control 1
Aux ADC control 2
Aux Ram Data1 LSB
Aux Ram Data1 MSB
$16
$17
$18
Analogue Setup 1
Aux Ram Data2 LSB
Aux Ram Data2 MSB
Analogue Setup 1
$19
$1A
Analogue Setup 2
-
Analogue Setup 2
Special Command
$1B
$1C
$1D
Special Data0 LSB
Special Data0 MSB
Special Data1 LSB
Special Data0 LSB
Special Data0 MSB
Special Data1 LSB
$1E
$20
Special Data1 MSB
-
Special Data1 MSB
Main PLL M div LSB
$21
$22
-
Main PLL M div MSB
Main PLL N div LSB
$23
$24
$25
-
Main PLL N div NSB
Main PLL N div MSB
Aux PLL M div LSB
$26
$27
-
Aux PLL M div MSB
Aux PLL N div LSB
$28
$TBA
-
Aux PLL N div MSB
Clock Control
Note: All unused addresses from $00 to $3F are reserved for future use.
 2004 CML Microsystems Plc
44
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Data Bus Buffers
The circuitry driving the D0-7 pins consists of 8 internal bidirectional 3-state logic level buffers between
the internal registers and the external data bus lines.
Address and R/W Decode
Transfer of data bytes between the µC and the internal registers is controlled according to the state of the
Write and Read Enable inputs (WRN and RDN), the Chip Select input (CSN) and the Register Address
inputs A0 to A5.
The Data Bus Buffers, Address and R/W Decode blocks provide a byte-wide parallel µC interface, which
can be memory-mapped, as shown in Figure 2.
5.2.2
Power-on and Reset
When power is first applied to the device an internal circuit will reset internal registers to '0' and put all
circuit blocks in an inactive and power saved state.
Read bits will be reset to '0' - the inactive state. Counters / states will be reset to an inactive and known
condition after a reset event - which can occur asynchronously.
Setting the RESET bit to '1' is similar except the RESET bit does not control the 'V Reg', 'Preserve
registers' and 'Vbias' bits, they will remain at the last programmed state, as shown in bold in the following
2 register diagrams.
Power control
The following registers control individual power-up state of the indicated blocks. Note: Other sections of
the device have the power control bits included in the control registers for those blocks. Blocks are
disabled and in the zero power state when the associated control bit is '0'.
Power Up 1
Bit:
$04
Write
7
6
5
4
3
2
1
0
Enable
Clock
Enable
Baseband
V Reg
Enable
OP1 OP2
Rx IF
Rx RF1
Rx RF2
Tx RFIF
If the Enable Clock is set to '0' the on chip clock buffer will be disabled, the clock buffer must be enabled
if setting RESET (bit 3 of $05) or if any of the internal circuits are powered up apart from those controlled
by the 'V Reg', 'Vbias' and 'OP1 OP2' bits.
The Enable Baseband bit controls the data packeting and clock extraction circuits.
If V Reg bit is set to '0' an internal circuit will hold the nominal 2.5V supply pins at approximately 2V for
data retention only. For normal operation the host must set this bit to '1' before enabling any other
circuitry. If an external supply provides the nominal 2.5V then the V Reg bit should be set to '0'. See
section 4.5 for more details.
When the OP1 OP2 bit is low both OP 1 and OP 2 amplifiers are disabled the OP1T and OP2T pins will
become high impedance inputs to ADC2 and ADC3 respectively. When set to ‘1’ both op-amps are
enabled.
Rx IF bit enables the circuitry from the IF IN pin to the differential I and Q outputs to the baseband.
Rx RF1 bit enables the circuitry from the RF IN A and RF IN B pins to the output of the 1st mixers.
Rx RF2 bit enables the circuitry from the output of the 1st mixers to the IF OUT pin.
Tx RFIF bit enables all the transmit RF and IF circuits from the differential I and Q inputs to the Tx RF
interface pins.
 2004 CML Microsystems Plc
45
D/990/1
GMSK Packet Data Modem and RF Transceiver
Power Up 2
Bit:
$05
CMX990
Write
7
6
5
4
AUX
DAC3
AUX
DAC2
AUX
DAC1
AUX
DAC0
3
2
1
0
RESET
LNA ON
(External)
Preserve
Registers
Vbias
The Vbias control bit must be enabled early enough so that the output is stable before any of the other
circuit blocks are enabled as this circuit takes some time to stabilise after being enabled. Setting the
RESET bit to '1' will not change the Vbias bit.
If set to '1' the Preserve Registers bit will preserve most user settings programmed via the Special
Command register, e.g. Rx channel filter coefficients and non assigned memory. In Rx mode the AGC,
offsets and timing estimates of the received signal will be lost after a RESET event.
LNA ON bit directly controls the LNA ON pin and does not control any internal analogue circuitry. Any
time delay for the external circuitry to stabilise must be taken into account when controlling this bit. This
control bit will be cleared to '0' after a power on reset or if the RESET bit is set to '1'.
Whenever a '1' is written to the RESET bit all registers will be cleared to '0' apart from the Clock Control
register, bit 5 of the Power Up 1 register and bits 1 and 0 of the Power Up 2 register. This will put all
internal circuits in an inactive and power saved state. The 'V Reg', 'Preserve registers' and 'Vbias' bits
will be unchanged. To ensure a clean exit from the RESET condition the RESET bit should be set to '0'
before any other circuitry is enabled. i.e. To enter RESET write '000010xx' to $05. To exit RESET write
'000000xx' then 'xxxx0xxx', where 'x' is the desired condition for the Aux DACs, LNA ON, 'Preserve
registers' and 'Vbias' bits. The host may then program the rest of the device to the desired configuration.
The AUX DAC0-3 bits control the relevant auxiliary D2A converter.
5.2.3
Clock Control
The Ref Clock input can be divided down and then multiplied up to the required frequency to give the
desired bit rate. Note: The reference for the synthesizers is the Ref Clock input to the device. The
following table gives examples for common bit rates:
Ref clock
(MHz)
4.8
Ref Clock
Division
2
Base clock
(MHz)
2.4
Base clock
(MHz)
2.4
Base clock
multiplier
4
Baseband
clock (MHz)
9.6
12
5
2.4
2.4
8
19.2
8000
14.4
5
2.88
2.4
16
38.4
16000
16.8
7
2.4
2.88
4
11.52
4800
19.2
8
2.4
2.88
8
23.04
9600
21.6
9
2.4
Bit rate
4000
The Ref clock input to the device must be in the range 3.8MHz to 24MHz.
The Base Clock resulting from the division of the Ref Clock must be in the range 1.9MHz to 3.0MHz.
Clock Control
Bit:
7
$TBA Write
6
5
4
3
Base clock multiplier, 2 - 16
(0000 = x16, 0001 = Illegal state)
2
1
0
Ref Clock division, 2 - 16
(0000 = /16, 0001 = Illegal state)
Notes: 1) To program '16' the host should load '0000', the value '0001' for both the above values should
not be programmed.
2) The baseband clock will not be available for TBAms after exiting Reset.
 2004 CML Microsystems Plc
46
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.2.4
CMX990
Status Registers
Two status registers indicate events that may require action by the host. Those marked as bold in the
diagrams below will cause bit 7 of Status1 (IRQ) to go high when they change from a 0 to 1. Interrupts
are enabled by setting bit 7 of the Mode register ($03) to '1', the IRQN pin will then be pulled low
whenever the IRQ bit goes high. If the IRQN line to the host is pulled low or if the host is polling for
interrupts then Status Register 1 should be read first then optionally followed by reading Status Register
2. The IRQ bit will be cleared to a '0' when the status register containing the interrupt(s) is read.
Status1
Bit:
$01
7
IRQ
6
BFREE
Read
5
IBEMPTY
4
3
DIBOVF
CRCFEC
2
1
0
DQRDY
MoBaN
Packet
Detect
See section 5.1.4.5 for a description of Status register 1.
Status2
Bit:
$03
Read
7
6
5
4
3
2
1
0
PLL Lock
lost
Main PLL
in lock
Aux PLL
in lock
Tx PLL
in lock
SPC
command
complete
Aux ADC
conversion
complete
Freq offset
error
IQ offset
complete
'PLL Lock lost' bit will be set to '1' whenever bits 4, 5 or 6 go from '1' to '0' since that bit was read as a '1'
from Status Register 2, i.e. PLL Lock lost bit is only set if lock has been gained, the host has read the
register to confirm this and that bit subsequently goes from a '1' to a '0'. This will cause bit 7 of Status1
to be set to '1' only if bit 3 of the Mode register ($03) is set to '1'. This bit will be cleared to ‘0’
immediately after reading the Status 2 register.
Bits 6 to 4 represent the lock status for the corresponding PLL at the time of the read of Status 2 register.
A '1' indicates the PLL is in lock, a '0' indicates that the PLL is not in lock. Buffer circuitry will prevent
changes in the lock status being lost while this register is being read.
When operating a special command the 'SPC command complete' bit will be set to '1' when a command
has finished and any associated data can then be read out. The correct sequence to initiate a special
command is to load any required data into the special data registers $1B to $1E then issue the special
command by writing to the special command register $1A. Having issued a special command the host
must not read or write to the special command or data registers ($1A to $1E) until it has completed.
Reading register Status 2 will clear this bit to '0'.
'Aux ADC conversion complete' bit will be set to '1' when all enabled ADC channels have been
converted. This bit will not be set if continuous conversion is selected, the host may read the latest
conversion for each channel as required. Reading register Status 2 will clear this bit to '0'.
During Rx mode the CMX990 continuously compares the local reference clock frequency against the
received RF signal frequency. If these 2 frequencies deviate by more than the limit set by the host, the
frequency offset error bit will be set to '1'. This bit will be cleared to '0' by reading register Status 2. By
default the error limit is set so that this bit never gets set. This default value can be changed by issuing a
special command to the CMX990 (see section 5.2.4).
'IQ offset complete' bit will be set to '1' when the sequence to estimate the IQ offsets of the receive
channel has completed. During the offset acquisition sequence the received signal will be unreliable.
 2004 CML Microsystems Plc
47
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.2.5
CMX990
Write Only Registers
Data Buffer
$00
7
Bit:
Write
6
5
4
3
2
1
0
3
2
1
0
1
0
Tx Data
Command Register
$01
Write
7
6
5
4
Acquire
Bit Clock
Acquire
I Q Offset
Acquire
AFC
Enable
packet
detect
Bit:
Control Register
$02
7
Bit:
Write
6
5
AGC Control
4
3
$03
Write
6
5
4
3
2
1
0
IRQ
Enable
INVBit
TxRxN
SCREn
En PLL
Lock IRQ
Enable DQ
IRQ
Enable
Main ADC
Enable
Main DAC
Power Up 1
Bit:
$04
Write
7
6
5
4
3
2
1
0
Enable
Clock
Enable
Baseband
V Reg
OP1 OP2
Rx IF
Rx RF1
Rx RF2
Tx RFIF
$05
Write
Power Up 2
Bit:
7
6
5
4
3
2
1
0
AUX
DAC3
AUX
DAC2
AUX
DAC1
AUX
DAC0
RESET
LNA ON
(External)
Preserve
Registers
Vbias
7
6
5
4
3
2
0
0
0
0
0
0
7
6
5
4
3
2
0
0
0
0
0
0
7
6
5
4
3
2
0
0
0
0
0
0
7
6
5
4
3
2
0
0
0
0
0
0
Aux DAC 0
7
$08-09 Write
6
5
4
3
2
1
0
MSB
Aux DAC 1
7
6
5
Aux DAC 2
7
4
3
2
1
0
6
5
Aux DAC 3
7
0
LSB
1
0
LSB
$0C-0D Write
4
3
2
1
0
MSB
Bit:
1
$0A-0B Write
MSB
Bit:
PLL Control
7
Bit:
Bit:
2
Frequency Tracking
Control
IQ Offset Control
Mode Register
Bit:
Task Control
1
0
LSB
$0E-0F Write
6
5
4
3
2
1
0
MSB
 2004 CML Microsystems Plc
48
1
0
LSB
D/990/1
GMSK Packet Data Modem and RF Transceiver
RamDac control
Bit:
$10
7
6
Inc Aux
RAM
address
En Aux
RAM
access
Aux Control1 $11
Bit:
5
4
3
RAM DAC scan rate
[0-7 = /1024 to /8]
En auto
cycle
En RAM
DAC
3
2
1
0
0
0
Enable
ADC 5
Enable
ADC 4
Enable
ADC 3
Enable
ADC 2
Enable
ADC 1
Enable
ADC 0
5
4
3
2
1
0
0
Conversion
rate
Enable cont
conversion
Start
conversion
Write
7
6
DAC RAM
Polarity
Reset DAC
RAMs
7
0
0
$14-15 Write
6
5
4
3
2
1
0
7
6
7
5
4
3
2
$18
6
5
4
3
2
0
0
0
0
0
0
7
6
5
4
3
2
0
0
0
0
0
0
1
0
LSB
1
0
6
Analogue Setup 2
7
$19
6
5
$1A
6
0
LSB
4
3
2
1
0
Coarse Rx I offset, '10000' = Mid value
'00000' = Max -ve offset, '11111' = Max +ve offset
Write
5
Set Rx AGC:
'11' = +40, '10' = +25
'01' = +10, '00' = -5dB
Special Command
1
Write
Set Tx attenuation:
'11' = 10dB, '10' = 15
'01' = 25, '00' = 35
7
7
$16-17 Write
Analogue Setup 1
Bit:
Scan
direction
4
MSB
Bit:
0
5
AuxRamData2
Bit:
1
6
MSB
Bit:
2
7
AuxRamData1
Bit:
Write
Write
Aux Control2 $12
Bit:
CMX990
4
3
2
1
0
Coarse Rx Q offset, '10000' = Mid value
'00000' = Max -ve offset, '11111' = Max +ve offset
Write
5
4
3
2
1
0
Special Command
 2004 CML Microsystems Plc
49
D/990/1
GMSK Packet Data Modem and RF Transceiver
Special Data0
Bit:
7
CMX990
$1D-1E
6
5
4
Read and Write
3
2
1
0
7
6
5
4
MSB Data
Special Data1
Bit:
7
5
4
Bit:
7
6
5
3
2
1
0
7
6
5
4
6
5
4
Sign
0
0
0
7
2
1
7
6
0
2
1
0
1
0
7
6
5
4
3
2
1
0
LSB
Write
0
7
6
5
4
3
2
1
0
7
6
5
4
NSB
3
2
1
0
LSB
$25-26 Write
5
4
3
Tx IF Filter
TX IF
DIV
2
MSB
Aux PLL N divider
Bit:
3
MSB
3
6
Aux PLL
Enable
4
$22-23-24
Aux PLL M divider
Bit:
3
LSB Data
0
Main PLL N divider
7
0
$20-21 Write
Main PLL Tx LO
Enable
DIV
Bit:
1
Read and Write
MSB Data
Main PLL M divider
2
LSB Data
$1B-1C
6
3
2
1
0
7
6
5
4
MSB
3
2
1
0
LSB
$27-28 Write
5
 2004 CML Microsystems Plc
4
3
2
1
0
7
MSB
6
5
4
3
2
1
0
LSB
50
D/990/1
GMSK Packet Data Modem and RF Transceiver
Special Command (SPC)
Bit:
7
$1A
6
CMX990
Write
5
4
3
2
1
0
Special Command
The 8 bit value written to this register instructs the modem to perform special tasks such as loading
coefficients or reading receive values. When executing a special task that requires input data, the data
should be loaded into the Special Data0/1 registers before writing the special command. When the
special command has completed the 'SPC command complete' bit will be set to '1' and the host can read
out any reply data from the Special Data0/1 registers. Note: When the internal circuits read this register
as a non zero value they will attempt to complete the task when there is a gap in processing.
Function
Cmd
No.
(Hex)
Input Data
Data 1
Data 0
$1B $1C $1D $1E
address
-
Returned Data
Data1
Data 0
$1B $1C
$1D $1E
-
Null
Set address
Set tx filter
Set rx channel
filter
Set rx gauss
00
01
09
0A
0B
-
-
-
-
Poke(addr)
Peek(addr)
Branch
Enter setup
0C
0D
0E
11
data
-
address
address
address
-
-
*address
-
Enter setup
and wait
Exit setup
Exit setup and
initialise
User channel
filter
Set BT = 0.3
12
-
-
-
-
13
14
-
-
-
-
15
-
-
-
-
1A
-
-
-
-
1B
1C
18
-
Limit
Offset
-
-
-
-
Set BT = 0.5
Set AFC limit
Set Decode
Threshold
-
Notes
No command - do nothing
address1 = address
address1 = tx filter address
address1 = rx channel filter
address
address1 = rx gauss filter
address
*address=data
Branches to address
Enters setup (debug code
only)
Enters setup (debug code
only) synced to sample clk
Returns to tx/rx
Returns to tx/rx & initialises
Loads rx channel filter from
data at address1
Tx and Rx with BT = 0.3
(Default setting)
Tx and Rx with BT = 0.5
Set data decode threshold
level. Default = 2400
Notes: *address = data in memory pointed to by 'address'.
 2004 CML Microsystems Plc
51
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.2.6
CMX990
Read Only Registers
Data Buffer
Bit:
$00
7
Read
6
5
4
3
2
1
0
3
2
1
0
Rx Data
Status1
$01
Bit:
7
Read
6
IRQ
5
BFREE
IBEMPTY
Data Quality Register $02
Bit:
7
4
DIBOVF
CRCFEC
DQRDY
MoBaN
Packet
Detect
4
3
2
1
0
Read
6
5
Data Quality Reading (0-255)
Status2
$03
Bit:
7
6
PLL Lock
lost
5
Main PLL
in lock
Frequency Offset
Bit:
Read
Aux PLL
in lock
$04
7
4
3
2
1
0
Tx PLL
in lock
SPC
command
complete
Aux ADC
conversion
complete
Freq offset
error
IQ offset
complete
4
3
2
1
0
Read
6
5
Rx measured RF frequency offset (-64 to 63)
Good Data
The 2's complement number read from bits 7 to 1 represents the estimate of the frequency error between
the transmitter and receiver carriers and is equivalent to 16Hz per bit, this value is only valid if bit 0 = '1'.
If bit 0 = '0' the RF frequency offset will not be computed and bits 7 to 1 will hold the last value
calculated.
Signal Strength
Bit:
$05
7
Read
6
5
4
3
2
1
0
Rx measured signal strength RSSI (0-255)
The value read from this register represents the latest estimate of the RSSI as the number of dB above a
level of -150 dB (to be confirmed).
Aux ADC 0
Bit:
7
$08-09 Read
6
5
4
3
2
1
0
MSB
Aux ADC 1
Bit:
7
6
5
Aux ADC 2
7
6
5
4
3
2
X
X
X
X
X
X
7
6
5
4
3
2
X
X
X
X
X
X
7
6
5
4
3
2
X
X
X
X
X
X
1
0
LSB
$0A-0B Read
4
3
2
1
0
MSB
Bit:
7
1
0
LSB
$0C-0D Read
6
5
4
3
2
1
0
MSB
 2004 CML Microsystems Plc
52
1
0
LSB
D/990/1
GMSK Packet Data Modem and RF Transceiver
Aux ADC 3
Bit:
CMX990
$0E-0F Read
7
6
5
4
3
2
1
0
MSB
Aux ADC 4
Bit:
7
6
5
4
Aux ADC 5
3
2
1
0
5
4
3
2
X
X
X
X
X
X
7
6
5
4
3
2
X
X
X
X
X
X
7
6
5
4
3
2
X
X
X
X
X
X
1
0
LSB
1
0
LSB
$12-13 Read
7
6
5
4
3
2
1
0
MSB
Analogue Setup 1
Bit:
6
$10-11 Read
MSB
Bit:
7
$18
7
6
X
Channel
filter
overflow
1
0
LSB
Read
5
4
3
2
1
0
Coarse Rx I offset, '10000' = Mid value
'00000' = Max -ve offset, '11111' = Max +ve offset
Bit 6 is set to '1' when the receive channel filters have a numerical overflow. This bit is reset to '0' after
this register is read. This bit does not generate an interrupt and is intended for test purposes only for
evaluating custom receive filter coefficients. Bits 5 to 0 indicate the current coarse offset correction in
the receive I path.
Analogue Setup 2
Bit:
7
$19
6
AGC setting 0-3
Read
5
4
3
2
1
0
Coarse Rx Q offset, '10000' = Mid value
'00000' = Max -ve offset, '11111' = Max +ve offset
Bits 7 to 6 indicate the current gain setting of the AGC circuit. Bits 5 to 0 indicate the current coarse
offset correction in the receive Q path.
 2004 CML Microsystems Plc
53
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.3
5.3.1
CMX990
Auxiliary DAC and ADC
Aux DAC 0-3
$08-0F
Auxiliary DAC Data Registers (Write only)
$08-09
$0A-0B
$0C-0D
$0E-0F
Aux DAC 0
Aux DAC 1
Aux DAC 2
Aux DAC 3
Auxiliary DAC 0 Data Register
Auxiliary DAC 1 Data Register
Auxiliary DAC 2 Data Register
Auxiliary DAC 3 Data Register
LSB - MSB
LSB - MSB
LSB - MSB
LSB - MSB
$08, $0A, $0C, $0E
Bit
7
6
5
4
3
2
0
0
0
0
0
0
6
5
4
3
2
1
0
DAC Data [1:0]
$09, $0B, $0D, $0F
Bit
7
1
0
DAC Data [9:2]
There are two input registers for each of the four auxiliary DACs. Writing to the LSB register
writes the two least significant bits of DAC data. Writing to the MSB register writes the eight
most significant bits of DAC data and then passes all ten bits to the appropriate DAC input. If the
MSB register is written while the LSB register is left constant, the converter may be treated as an
8-bit DAC.
5.3.2
Bit:
RamDac Control
7
6
Inc Aux
RAM
address
En Aux
RAM
access
$10
Auxiliary RAM DAC Control Register
5
4
3
RAM DAC scan rate
[0-7 = /1024 to /8]
2
1
0
Scan
direction
En auto
cycle
En RAM
DAC
Setting bit 7 high will cause read operations to the auxiliary DAC RAM to increment the address
pointer. Setting this bit low causes write operations to increment the address pointer.
Bit 6 enables access to the auxiliary DAC RAM. Setting bit 6 low resets the RamDac address
pointer.
Bits 5 to 3 control the rate at which the RAM DAC address pointer changes:
Bit 5
Bit 4
Bit 3
Rate of change
0
0
0
MCLK/1024
0
0
1
MCLK/512
0
1
0
MCLK/256
0
1
1
MCLK/128
1
0
0
MCLK/64
1
0
1
MCLK/32
1
1
0
MCLK/16
1
1
1
MCLK/8
Bit 2 controls the direction of the memory scan operation. Setting this bit high will cause the
memory address pointer to increment to the top location, setting this bit low will cause the
memory address pointer to decrement to the bottom location. If this bit is changed while the
 2004 CML Microsystems Plc
54
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
memory is being scanned, the current scan will complete before the new state of this bit takes
effect.
When bit 1 is set high, the memory address pointer continuously increments to the top location
and then decrements to the bottom location.
Bit 0 controls whether DAC0 is driven by the RAM (when set high) or the Aux DAC 0 register
(when set low).
5.3.3
AuxRamData1/2
$14-17 Auxiliary DAC Memory I/O Access Addresses
$14
Bit
7
6
5
4
3
2
1
0
0
0
0
0
0
0
RAM data [1:0]
7
6
5
4
3
2
1
0
0
$15
Bit
RAM data [9:2]
$16
Bit
7
6
5
4
3
2
1
0
0
0
0
0
0
RAM data [1:0]
7
6
5
4
3
2
1
$17
Bit
0
RAM data [9:2]
These four address locations allow access to the 64 x 10-bit RAM. The contents of this RAM can
be pre-loaded with a table of values that can be automatically sent to the auxiliary DAC0 in either
a single cycle or continuous mode. Therefore the RAM can be used in conjunction with DAC0 to
enable user defined profile power ramping of an external RF power transmitter stage.
The RAM contents are addressed incrementally by first setting bit 6 of RamDac Control register.
While this bit is low, the RAM address pointer is held reset. The first two data words are written
by writing to addresses $14 to $17 in order. Accessing location $17 post-increments the address
pointer. Bit 7 of the RamDac Control register determines whether a read or write operation will
increment the RAM address pointer. Further write operations to addresses $14 to $17, will load
the next two locations.
All locations are accessed incrementally; further accesses to this port while bit 7 of the RamDac
Control register is active are not valid and may cause data loss.
 2004 CML Microsystems Plc
55
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.3.4
Aux ADC 0-5 Data Registers
$08-09
$0A-0B
$0C-0D
$0E-0F
$10-11
$12-13
CMX990
$08-13
Aux ADC 0
Aux ADC 1
Aux ADC 2
Aux ADC 3
Aux ADC 4
Aux ADC 5
Read
Auxiliary ADC 0 Data Register
Auxiliary ADC 1 Data Register
Auxiliary ADC 2 Data Register
Auxiliary ADC 3 Data Register
Auxiliary ADC 4 Data Register
Auxiliary ADC 5 Data Register
LSB - MSB
LSB - MSB
LSB - MSB
LSB - MSB
LSB - MSB
LSB - MSB
$08, $0A, $0C, $0E, $10, $12
Bit
7
6
5
4
3
2
X
X
X
X
X
X
6
5
4
3
2
1
0
ADC Data [1:0]
$09, $0B, $0D, $0F, $11, $13
Bit
7
1
0
ADC Data [9:2]
These registers enable the user to inspect the conversion value for each of the six auxiliary
ADCs. There are two read registers per ADC, one to obtain the two least significant bits of the
data, the other for the eight most significant bits. Reading these registers does not affect the
ADC conversion cycle. Reading the MSB register directly reads the ADC output and
simultaneously causes the two bits in the LSB register to be written to a holding register. This
holding register is read when the LSB register is read. This mechanism is necessary to allow the
user to read MSB and LSB data from the same ADC conversion cycle. If only the MSB register
is read, the converter can be considered as an 8-bit ADC. If a 10-bit conversion is required, the
MSB register must be read first.
5.3.5
Bit:
Aux Control1 $11
Write
7
6
5
4
3
2
1
0
0
0
Enable
ADC 5
Enable
ADC 4
Enable
ADC 3
Enable
ADC 2
Enable
ADC 1
Enable
ADC 0
This register controls which ADC channels are converted. These bits may be changed at any
time, but will only update the active state of the ADC channel for the next time it is converted.
5.3.6
Bit:
Aux Control2 $12
Write
7
6
5
4
3
2
1
0
DAC RAM
Polarity
Reset DAC
RAMs
0
0
0
Conversion
rate
Enable cont
conversion
Start
conversion
If bit 6 is set to '1' the RAM associated with DAC 0 is reset, if bit 7 is high the RAM is reset to all
1's, if bit 7 is low the RAM is reset to all 0's. This feature can be used to avoid programming
every RAM location when short ramp profiles are required.
Bit 2 selects the conversion rate of the auxiliary ADC. If set low, the ADC will be clocked at
MCLK/16, giving a conversion time of 176 MCLK periods per enabled channel. Setting this bit
high halves the ADC clock rate and doubles the conversion time.
Setting bit 1 high will cause each enabled ADC channels to be converted continuously.
Setting bit 0 high will cause a single conversion of all enabled ADC channels. This bit is
automatically set low when the ADC conversion has been completed. Note that this bit only has
an effect when bit 1 is set low.
 2004 CML Microsystems Plc
56
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.4
CMX990
Synthesiser
Two integer-N synthesisers are provided, one as the main RF synthesiser (Main PLL), which provides the
tuneable frequency to enable channel selection, and the other (Aux PLL) for the generation of lower
frequency for mixing from IF to baseband. These two synthesisers are fully programmable, via the
processor interface, to any frequency in the range 600 MHz to 2 GHz and 150 MHz to 250 MHz
respectively.
Both the synthesised frequencies are internally divided down. The main RF frequency is divided by two
for use in the offset loop in the transmitter and also for the image reject mixer in the receiver. Note that,
in order to obtain quadrature signals for the IR mixer, both the rising and falling edges of the VCO
generated signal are used; it is important, therefore, that the VCO produce a waveform that is as close as
possible to a mark to space ratio of one. The second synthesiser is optionally divided by 2 or 4 for the
transmitter and divided by 4 for the receiver.
Both synthesisers are phase locked loops (PLLs) and utilise external VCOs and loop filters. The phase
noise of the VCOs should be adequate for the application with particular attention paid to the
performance of the main VCO. It will be noted that as the CMX990 includes an internal divide-by-two in
the LO path the PLL phase noise will be improved by approximately 6dB. The loop filters will need to be
designed as required based on switching bandwidths, VCO gain etc. The CMX990 phase detectors are of
the phase-frequency type with a high impedance charge pump output requiring just passive components
in the loop filter. As a result standard design equations for a type II PLL can be used to select loop filter
components. Lock detect functions are built in to each synthesiser and the status reported to the host
processor. In particular, a transition to out-of-lock can be detected and communicated via an interrupt to
the processor if required; this can be important to ensure that the transmitter cannot falsely transmit into
other bands in the event of a fault condition arising.
The minimum step size is also programmable by setting the reference division ratio; to minimise the
effects of phase noise this should be kept as high as possible, particularly on the main RF synthesiser.
For Mobitex, the maximum this can be set to is 25 kHz as this is governed by the 12.5 kHz channel
spacing and the subsequent divide-by-2 of the generated frequency. Note that if it is required to select a
frequency that is 6.25 kHz offset from a convenient division of the main frequency (although still with
12.5 kHz channel spacings), it is better to keep the step size at 25 kHz but slightly offset the reference
oscillator. In this way the phase noise and lock time performance will not be compromised.
Each synthesiser is set up using two registers, an ‘N’ register that sets the division value of the input
reference frequency to the comparison frequency (step size), and an ‘M’ register that sets the division of
the required synthesised frequency from the external VCO to the comparison frequency.
In the main PLL the VCO frequency is pre-scaled by 2 prior to being divided by N there therefore there is
a factor of 2 in the formula that yields a required synthesised frequency (Fs) such that:
Fs = (2 x N / M) x FREF
where FREF is the reference oscillator frequency
For the aux PLL the formula is:
Fs = ( N / M ) x FREF
 2004 CML Microsystems Plc
57
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Main and Aux PLL
Input
The main and aux PLL circuits have control registers as listed below. Writing to the least significant 8
bits will trigger the circuit to update the dividers with the new multi byte value. Whenever the enable bit
is low the divider circuit will be in the inactive 'zero power' (ZP) mode. To enter normal operation from
ZP mode the MSB (including the enable bit) is written, the LSB would be written last, this would
simultaneously enable the PLL and load the divider ratio - lock may take longer when exiting ZP mode.
To enter ZP mode only the MSB need be written, double buffering will not be used for this control line - a
simple SET / RESET latch will store the 'Enable' value, SET from the output of the 2nd buffer, RESET
from the inverted output of the 1st buffer. The main and aux PLL will control their outputs to the required
quiescent value when shutting down.
Output
One buffered digital output line from each PLL will indicate when the relevant PLL is in lock, this output is
not synchronised. '1' = PLL enabled and in lock, '0' = all other conditions (including disabled ZP state).
These lock outputs are terminated the status register in the host interface block and can optionally cause
an external interrupt to occur. See section 5.2.3 for a description of interrupt operation.
Main PLL M divider
Bit:
7
$20-21 Write
6
5
Main PLL Tx LO
Enable
DIV
4
3
2
0
1
0
7
6
5
4
MSB
3
2
1
0
LSB
The 'Tx LO DIV' bit controls a divide by 2 stage in the Tx LO clock path, '1' = divide by 1, '0' = divide by
2.
Main PLL N divider
Bit:
7
6
5
4
Sign
0
0
0
$22-23-24
3
2
1
Write
0
7
6
5
MSB
4
3
2
1
0
7
6
5
4
NSB
3
2
1
0
LSB
The 'Sign' bit controls the polarity of the Rx IF summer, a '0' = summation, '1' = subtraction.
Aux PLL M divider
Bit:
7
$25-26 Write
6
Aux PLL
Enable
5
4
3
Tx IF Filter
2
Bit:
7
6
Tx IF
DIV
0
0
7
6
5
4
MSB
The 'Tx IF Filter' bits control the Tx IF
filter frequency:
Aux PLL N divider
1
3
2
1
0
LSB
Bit 6
0
0
1
1
Bit 5
0
1
0
1
Tx IF filter setting
90 MHz
80 MHz
45 MHz
40 MHz
$27-28 Write
5
4
3
2
1
0
7
MSB
6
5
4
3
2
1
0
LSB
The 'Tx IF DIV' bit controls a divide by 2 stage in the Tx IF clock path, '0' = divide by 1, '1' = divide by 2.
Sign, Tx IF DIV and Tx IF Filter control:
To activate the above control bits the required value must be written to the MSB register followed by a
write to the LSB of the relevant divider.
 2004 CML Microsystems Plc
58
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.5
CMX990
RF and IF
This comprises the transmitter and receiver parts which, being half duplex, are only operated mutually
exclusively. Normally the non-utilised part will be powered down when not in use. For single antenna
operation an external transmit/receive (T/R) switch is required.
The CMX990 is designed as a broadband RF system. The RF section can support transmission and
reception between 400MHz and 1GHz. As with any RF system care is required with frequency planning
to minimise component count, avoid spurious responses etc. Examples of typical frequency planning are
shown in section 5.5.2.
The transmitter takes the baseband I and Q signals from the modem and up-converts them via a
quadrature modulator to a suitable Intermediate Frequency (IF). The summed output from this mixer will
be an FM representation of the required transmit signal but at a lower frequency than that required. An
offset PLL is then used to control an external VCO. The output of the VCO is sampled, usually after
amplification, and mixed down to the IF value; this mixed down signal is then phase/frequency compared
with the IF from the quadrature modulator. The output of the phase comparator is fed to an external loop
filter, which controls the VCO thereby closing the loop. The VCO output then will be an FM signal at the
required RF frequency having a low out-of-band spurious typical of VCO driven transmitters whilst
guaranteeing a modulation index of exactly 0.5. The output of the VCO requires amplifying with an
external PA (Power Amplifier).
The receiver requires use of an external LNA with some pre-filtering and an external balun. The
differential output from the balun goes into an image reject down-mixer to a suitable IF (typically 45
MHz). The IF is filtered with an external filter to remove spurious signals and then goes into an AGC with
a gain control range of 45dB. The output of the AGC is then mixed down to I and Q signals at baseband
via a quadrature mixers. The I and Q signals are then amplified and filtered to remove any signals that
may alias with the subsequent A-D sampling. The amplifier also has a coarse offset removal system to
allow the approximate nulling of DC offsets developed in the circuits that may restrict the dynamic range
in the subsequent processing.
5.5.1
Receiver Section
It is expected that the signal from the T/R switch will be amplified via an external LNA. The use and
positioning of an image reject filtering is up to the radio designer. As a guide, the Mobitex specification
requires a minimum of 45dB of first image rejection of which at least 25dB will be provided by the on-chip
image reject mixer stage. The design is optimised with an LNA gain of about 15dB. It has been
assumed that there is some insertion loss prior to the LNA; but an overall noise figure of 4dB and gain of
10dB (appox.) is achieved by the circuits preceding the CMX990. A digital control is available from the
chip to enable/disable the LNA. A balun must be used to produce a reasonably well-balanced differential
signal to the first mixer on the chip.
The Image Reject Mixer down-converts the signal to 45 MHz, although this frequency may be changed
for use in regions where there may be conflicts with local transmissions. The resulting IF is then output
from the chip as a single ended signal for filtering. It is expected that a relatively low cost crystal filter
can be used to remove spurious signals some distance from the carrier. This is essential to meet the
blocking performance required by the Mobitex specification. For detail filter requirements see Table 2.
The IF-signal from the filter is then taken back on chip to an AGC. This AGC is adjustable in steps of
15dB from -5dB to +40dB. This can be adjusted automatically, if enabled, by the chip or may be
controlled by instruction from the host processor.
The output from the AGC is then mixed down to baseband, by a quadrature mixer stage, to produce I and
Q signals. These are then filtered, to remove unwanted mixer products, spurii and remaining blocking
signals and at the same time amplified to a suitable level for subsequent A-D conversion. The filters also
precondition the signal to prevent aliasing with the A-D sample frequency. Channel filtering is provided
digitally in the baseband processing section.
 2004 CML Microsystems Plc
59
D/990/1
GMSK Packet Data Modem and RF Transceiver
5.5.2
CMX990
Transmitter Section
I and Q signals, which are baseband representations of the required FM signal, are up-converted with a
quadrature modulator stage to a suitable value. The summed output from this stage has the required
modulation index but at a lower frequency (TXIF) than that required for transmission.
An Offset Phase Locked Loop is used to translate this modulated frequency to the appropriate carrier
frequency. The forward power signal is an attenuated version of the transmitted signal. This is taken on
chip and further attenuated (if necessary) before being down-mixed with the main LO signal to a
frequency nominally the same as the TXIF value. The resulting signal is taken off chip and low-pass
filtered to remove unwanted mixer products, then passed back on to the chip. A high gain limiting
amplifier is then used to enable the loop to have a high dynamic range and to lock-in even when the
transmitted signal is very small and just starting to ramp up. The output of the limiting amplifier is then
phase/frequency compared with the TXIF signal, the charge pump output being passed off chip into a
suitable loop filter. The filtered output controls a VCO with its nominal frequency set to the middle of the
required transmission band. Setting the loop filter appropriately allows the loop to follow the frequency
modulations so as to give an exact modulation index of 0.5 whilst having the low spurii in transmission
typical of a VCO based system.
The output of the VCO needs to be amplified appropriately with a Power Amplifier. A special feature of
one of the Auxiliary D-A converters may be used to control the ramping of the power amplifier optimally
should this be required. This feature is explained in the auxiliary section. The Auxiliary A-D section can
also be used for sensing the forward and reverse power values, and the PA temperature should these
features be required.
Rx band (MHz)
Bottom
Top
935
864
850
426.6
423.9
440
450
453.1
415.7
421
419.5
427
941
870
864
429.5
426.6
440.6
453
453.4
418
423.9
420.5
427.5
Tx band (MHz)
Bottom
Top
896
819
814
416.6
413.9
425.5
460
459.6
406.2
411
412.5
419
902
825
819
419.5
416.6
426.1
463
459.9
408.5
413.9
413.5
419.5
Rx IF Rx Hi/
Rx LO (MHz)
(MHz) Lo bit Bottom
Top
45
45
45
45
45
45
45
45
45
45
45
45
High
High
High
Low
Low
Low
High
High
Low
Low
Low
Low
1960
1818
1790
763.2
757.8
790
990
996.2
741.4
752
749
764
1972
1830
1818
769
763.2
791.2
996
996.8
746
757.8
751
765
Tx IF
(MHz)
84
90
81-90
40
40
40
40
40
40
40
40
40
IF Div
Tx LO (MHz)
Setng Bottom
Top
/2
/2
/2
/4
/4
/4
/4
/4
/4
/4
/4
/4
1960
1818
1790
753.2
747.8
771
1000
999.2
732.4
742
745
758
LO Range
(MHz)
1972
1830
1818
759
753.2
772.2
1006
999.8
737
747.8
747
759
12
12
28
15.8
15.4
20.2
16
3.6
13.6
15.8
6
7
Table 1 – Possible Frequency Plan for CMX990 in common Mobitex Frequency bands
5.5.3
Alternative Receiver Architecture
 2004 CML Microsystems Plc
60
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
In circumstances where it is required to have a higher performance regarding intermodulation products
(for instance to meet ETS 300 113) or to save some current that results from the use of an image reject
mixer, it is possible to bypass the receiver front end completely and power these down. In this case the
front end functions can be carried out using external components. The transmit mixer divide by two
function should be disabled in this case and the VCO would operate at half the frequency.
Figure 21 Simplified Block Diagram of CMX990 Showing Example Frequency
Plan for 864-870MHz (Rx) / 819-825MHz (Tx) band
 2004 CML Microsystems Plc
61
D/990/1
GMSK Packet Data Modem and RF Transceiver
6.
Application Notes
6.1
General
CMX990
The CMX990 chip is a modem and RF system designed for wireless data modem applications. The chip
addresses the needs of various data systems, both product standards and regulatory requirements,
including:
•
•
•
Mobitex Interface Standard (MIS)
European R&TTE ( based on EN 300 113)
FCC Limits (47 CFR Parts 2 and 90)
Details of techniques to meet these requirements can be found in following sections.
6.2
Transmitter
The transmitter architecture is optimised for constant envelope phase/frequency modulation, typically
GMSK or GFSK. The transmitter uses an offset phase locked loop (OPLL) to generate the transmitted
signal. This has the advantage of very low spurious output minimising the need for spurious filtering
reducing the overall cost of the radio and maximising power efficiency due to reduced losses.
The OPLL works by generating the modulation on an intermediate frequency (IF). This can be set on the
CMX990 by programming the IF PLL to an appropriate IF. Table 1 shows some possible choices for
these values and an example is shown in Figure 21. The CMX990 provides either divide by 2 or divide
by 4 from the programmed local oscillator frequency to aid IF selection. The modulation is generated
using classic I/Q vector modulation to provide an accurate modulated waveform which can also be
inverted to allow high side or low side offset mixing (see section 5.1.4.4). This modulated signal is used
as one input to a phase detector. The output of the phase detector drives a VCO operating directly on
the desired transmitter frequency, via a suitable loop filter. The VCO output can be fed directly to power
amplifier stages. The output of the PA is sampled, a directional coupler is recommended although a
simple sample of the PA output can be used. This is fed to a mixer which translates the output frequency
to the same IF as the reference modulation. The mixer output should be filtered to remove harmonics
which could cause false locking and degrade vector error and is then fed back to the second input of the
phase detector via a limiter. The limiter is used to ensure optimum signal level for the phase detector
and to remove any AM content in the envelope although this should be negligible. The limiter has a wide
input range, this is useful during loop start up as the loop will start locking with very small signals such
that by the time output power rises towards operating levels the loop is already locked and the VCO on
the correct frequency.
Output power can be controlled by the PA gain. This is typically done by applying a suitable ramp to the
PA gate bias. This can be done either open loop or using a power detector and integrator to form a
power levelling feedback loop. Details will depend on the PA device selected to work with the CMX990.
The CMX990 provides a power ramping table on auxiliary DAC 1 to allow a suitable ramp profile to be
applied. The auxiliary ADC can be used for a temperature sensor if software based ramping and output
power compensation is used.
Start up
The timing of the turn-on of the transmitter needs careful control. Typical timings are shown in Figure 23.
The first step is to program the IF and RF synthesisers to the correct frequencies for the desired
transmitter channel. When time has been allowed for the PLL’s to lock the transmitter circuits (excluding
the PA) should be enabled. Depending on the leakage through the PA the OPLL should start to lock up.
The limiter has been designed to start to lock with a signal 81dB below the maximum operating power.
For a +35dBm transmitter this is -46dBm or 10dB below the common spurious emissions limit of -36dBm.
The loop should lock quickly and power ramping can start before the loop is fully locked. If leakage
 2004 CML Microsystems Plc
62
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
levels through the PA are particularly low it may be necessary to provide a small amount of bias to
increase leakage to start locking.
Consider the following requirements from Mobitex MIS19:
•
•
•
The receive to transmit time requirement is 20ms.
Frequency must be within 200Hz of the final frequency before the start of data transmission.
The carrier must “on” between 5ms and 10ms prior to the start of data.
The definition of carrier “on” is not very clear in the standard but if we assume 10ms is used for CPU
processing and PLL locking, the transmitter power ramping could start at 10ms before data. The ramp
could take 5ms to rise allowing a further 5ms for the frequency to obtain fine lock to within 200Hz. These
times should be ample.
Main PLL Program
Aux PLL Program
PLL Enable
TX Enable
OPLL Lock
PA Output Control
Figure 22 TX Timing Diagram (not to scale)
Spurious Emissions
The low level and small number of spurious emissions from the OPLL transmitter are a major advantage
of the technique. The major source of spurious signals is the power amplifier harmonics. The level of
these will be set by the selected PA and a harmonic filter must be provided to remove these. The only
significant spurious signals generated by the OPLL transmitter is LO leakage from the offset mixer to the
RF input port. The CMX990 mixer has been designed to have low local oscillator leakage meeting the
typical requirements (e.g. -36dBm in Europe, -17dBm in USA).
Modulation Spectrum
The modulation of the CMX990 is produced digitally ensuring excellent accuracy and adjacent channel
characteristics. The design meets EN 300 113 requirements in Europe and 47 CFR 2.1049 & 90.210 (J)
applicable in the USA (Figure 23).
 2004 CML Microsystems Plc
63
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
RBW
300 Hz
Ref Lvl
VBW
3 kHz
0 dBm
SWT
2.8 s
RF Att
Unit
30 dB
dBm
0
LIMIT CHECK
A
: PASSED
-10
-20
-30
1MA
-40
-50
fcc210j
-60
-70
-80
-90
-100
Center 800.001496 MHz
Date:
31.MAR.2004
5 kHz/
Span 50 kHz
14:22:00
Figure 23 Modulation from CMX990 with 47 CFR 90.210 (J) emission mask
6.3
Receiver
The design of the CMX990 is such as to allow receiver requirements of the Mobitex standard to be met.
In addition the receiver is also capable of meeting the requirement of standards such as EN 300 113
although in this case an external 1st mixer is required.
Architecture Overview
The receiver architecture is based on the classic superhetrodyne approach. The CMX990 provides the
1st mixer and IF stages with AGC followed by conversion to I/Q format baseband signals. These are then
converted to digital signals in sigma-delta converters, which also provide adjacent channel filtering,
before demodulation.
st
The first stage of the CMX990 receiver is a mixer intended to convert from RF to a 1 intermediate
frequency (IF) of around 45MHz. The mixer is an image reject type thus minimising the external filters
required before the mixer. The mixer would normally be preceded by input transmit/receive switch, low
noise amplifier and a filter. A typical noise figure for these stages is around 4dB with a recommended
gain of around 10dB. The noise figure of the mixers is very good for an image reject mixer (circa 13dB)
minimising pre-gain required to achieve a reasonable overall noise figure. It will be noted that the mixer
is a Gilbert cell type therefore requires a differential input. This can be achieved with a narrow-band LC
circuit or a balun transformer. The image reject network is selectable to give high side or low side
rejection depending on the frequency plan of RF and LO inputs.
 2004 CML Microsystems Plc
64
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
The image reject 1st mixer has been optimised to provide a minimum cost solution. The CMX990
provides the option to bypass the 1st mixer to achieve a lower overall power consumption and/or better
intermodulation performance using an external 1st mixer. Further details can be found below.
Following the 1st mixer the signal is passed off chip. A single ended output stage is used to ease
connection to IF filter components. The 1st IF can be in the range 44-46MHz with 45MHz being a typical
choice. Filtering is required at this point to achieve the Mobitex requirements and more stringent filtering
to meet EN 300 113. For Mobitex adjacent channel filtering can be met with digital filters at baseband,
however the blocking signal test at 84dB puts severe demands on the dynamic range of the baseband
sections so filtering at the IF is necessary. A 2-pole crystal filter is recommended. EN 300 113 has more
severe adjacent channel requirements so adjacent channel selectivity at the 1st IF is recommended. A 4pole crystal filter should be satisfactory. A summary of filter requirements can be found in Table 2. A
typical gain, noise figure and intermodulation partition is shown in Table 3 which assumes the filter
performance specified in Table 2.
Radio Modem Mode
(2 Pole Filter Recommended)
10dB
15dB
25dB
25dB
40dB
3dB Typical
Frequency Offset
12.5 kHz
25 kHz
50 kHz
100 kHz
1 MHz to 10 MHz
Pass band (≥ ±3.5 kHz)
EN 300 113 Mode
(4 Pole Filter Recommended)
30dB
30dB
50dB
50dB
50dB
3dB Typical
Note: Attenuation relative to the pass band (with the exception of the pass band specification)
Table 2 IF Filter Requirements
CMX990 Stages
IF Filter AGC/iq
Digital
Filter
LNA
BPF
1st Mixer
Stage specifications:
Gain
(dB)
-1.0
NF
(dB)
1.0
i/p IP
(dBm)
40.0
i/p cp
(dBm)
30.0
15.0
2.9
0.0
-15.0
-3.5
3.5
40.0
30.0
-4.01
13.0
6.5
-2.0
-4.5
4.5
40.0
30.0
63.0
8.1
-44.0
-54.0
0.0
0.0
99.0
99.0
0.0
0.0
99.0
99.0
Cumulative response:
preGain
(dB)
0.0
Cum NF
(dB)
8.4
i/p Te
(%)
4.4
Cum IP
(dBm)
-13.1
i/p IM
(%)
0.0
-1.0
7.4
20.4
-14.1
0.2
14.0
20.5
0.8
0.9
0.0
10.5
17.0
28.9
-2.6
75.9
6.5
11.1
3.8
-3.5
0.0
3.5
8.1
41.6
-44.0
24.0
66.5
0.0
0.0
97.5
0.0
66.5
0.0
0.0
99.0
0.0
Switch
Output
Table 3 Typical Gain / Noise Figure / Intermodulation Partition for CMX990
The IF input stage goes into a gain controlled low noise amplifier stage. 45dB of AGC range is available
in 15dB steps. The output of the IF amplifiers passes to I/Q mixers which are fed a by a divide by 4
circuit from the IF local oscillator. The mixers include DC offset compensation. Baseband amplifiers are
then used to provide the correct input level to the ADC. The baseband amplifiers also include 55dB of
rejection at the ADC image frequency of 1.92MHz. This combined with at least 40dB of external
rejection from the IF filter provides adequate rejection to meet Mobitex requirements.
The ADC are sigma delta types providing high dynamic range and adjacent channel rejection. Internal
DC offset correction is provided to maximise the useable range. After the ADC demodulation is provided
1
Including loss of passive output matching
 2004 CML Microsystems Plc
65
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
along with RSSI/AGC algorithms. RSSI is available from a register. AGC can be controlled
automatically or manually. The baseband section also provides AFC measurement. Results are
available to the host and can be used (via Aux DAC 1) to control an external reference oscillator.
DC Calibration
The signal levels in the receiver are small, typically only a few mV at sensitivity. For the demodulator
algorithms to work correctly the DC offset must be reduced well below the level of the signal. To do this
the CMX990 has two types of DC correction. Systematic DC offsets can be corrected by turning off the
front end circuitry (Figure 24) and measuring the remaining signal then applying an appropriate
correction. This process can be carried out automatically by the CMX990. An output control signal is
provided from the chip to enable/disable the external LNA with appropriate timing. The result should
correct the analogue signals prior to ADC stage to an error of less than 0.5mV. This maximises the
dynamic range available from the ADC.
The second element of DC offset correction is based on averaging the received signal. This is done as
part of the demodulator section and the correction applied by adding/subtracting the measured DC offset
to the received data samples.
Figure 24 DC Offset Correction Scheme
Rx Mixer Options
The receive mixer in the CMX990 is a image reject type allowing a reduction in external filtering thus
allowing a minimum cost solution. Certain radio modem products may require better intermodulation
performance than can be achieved with the image reject architecture. In this case the an external mixer
is recommended and to simplify external circuits the CMX990 incorporates a bypass switch for the
transmit loop local oscillator divide-by-2. This allows the CMX990 transmit local oscillator to be re-used
in an external mixer. A typical configuration is shown in figure 25.
 2004 CML Microsystems Plc
66
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Figure 25 Block Diagram of CMX990 Showing use of External Receive Mixer
Signal to Noise
The performance of the receiver is based on the signal to noise performance of the demodulator. This
has been shown to achieve the Mobitex error rate limit of 1 in 100 BER at 9dB C/N.
Dynamic Range, RSSI and AGC
The dynamic range of the receiver must be partitioned between various requirements. Key to this is the
dynamic range of the ADC within IC that converts the I/Q signals into the digital domain. These
converters have a dynamic range of at least 85dB. This must be partitioned between various factor such
as filtering headroom, signal noise, quantisation noise margin etc. leaving an operating window. The
proposed partition is shown in Figure 26. Other partitions are possible depending on adjacent channel
requirements, external filtering, external gains etc.
 2004 CML Microsystems Plc
67
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
The CMX990 has a built in AGC algorithm. Programmable gain has 4 steps of 15dB (i.e -5dB, +10dB,
+25dB and +40dB). It is beneficial to allow as large an operating window as possible as the AGC has a
certain amount of hysteresis allowing the signal to rise more than 15dB before the gain is backed off.
The CMX990 measures the signal level in baseband. This information is used to control the AGC but is
also available via the control interface. This information must be combined with the AGC setting to
determine RSSI.
Signal Processing
The CMX990 includes the demodulation functions, these are implemented digitally. Algorithms are
consistent with Mobitex mobile burst timing structure and requirements. The received waveform can be
inverted to allow high side or low side mixing in the receiver (see section 5.1.4.4). It will be noted that
when powered on the CMX990 needs to acquire base channel. The baseband has been optimised to
achieve this while also giving minimum power consumption in normal operation (i.e. maximum sleep
times).
Figure 26 ADC Input Dynamic Range Partition
 2004 CML Microsystems Plc
68
D/990/1
GMSK Packet Data Modem and RF Transceiver
6.4
CMX990
Variable Bt
The CMX990 offers the ability to select the Bt factor in the transmit modulation. This allows
characteristics to be optimised for a particular bit/rate channel bandwidth. Standard options of Bt = 0.3
and Bt = 0.5 are available. Figure 27, 28 and 29 show the effect of changing Bt.
RBW
VBW
SWT
Ref Lvl
5 dBm
200 Hz
2 kHz
4.2 s
RF Att
Unit
30 dB
dBm
5
A
0
-10
-20
-30 1VIEW
2VIEW
1RM
2RM
-40
-50
-60
-70
-80
-90
-95
Center 800.0016238 MHz
3.35 kHz/
Span 33.5 kHz
Inner Trace is CMX990 with Bt = 0.3 Outer Trace is CMX990 with Bt = 0.5
Figure 27 Modulation spectrum of CMX990 at 8kbps with different Bt
 2004 CML Microsystems Plc
69
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
CF 800.001624 MHz Meas Signal
SR
8 kHz Eye [I]
Demod
2FSK
Ref Lvl
5 dBm
250m
A
REAL
T1
-250m
0
SYMBOLS
8
Figure 28 CMX990 modulation eye diagram at 8kbps with Bt = 0.3
(Measurement filter Bt=1)
CF 800.001624 MHz Meas Signal
SR
8 kHz Eye [I]
Demod
2FSK
Ref Lvl
5 dBm
250m
A
REAL
T1
-250m
0
SYMBOLS
8
Figure 29 CMX990 modulation eye diagram at 8kbps with Bt = 0.5
(Measurement filter Bt=1)
 2004 CML Microsystems Plc
70
D/990/1
GMSK Packet Data Modem and RF Transceiver
7.
Performance Specification
7.1
Electrical Performance
CMX990
7.1.1 Absolute Maximum Ratings
Exceeding these maximum ratings can result in damage to the device.
Supply (VDDH - VSSH and VDDVCO - VSSH only)
Supply (All other VDD - VSS)
Voltage on any pin to VSSH
Current into or out of any VDD or VSS pin
Current into or out of any other pin
Voltage between any 2 VSS pins
Voltage between any 2 VDD pins (except VDDH)
Q1 Package
Total Allowable Power Dissipation at TAMB = 25 °C
... Derating above 70 °C
Storage Temperature
Operating Temperature
Min.
-0.3
-0.3
-0.3
-100
-20
-0.3
-0.3
Max.
4.0
3.0
VDD + 0.3
+100
+20
+0.3
+0.3
Unit
V
V
V
mA
mA
V
V
Min.
–
–
-55
-40
Max.
1000
26.5
+125
+85
Unit
mW
mW/°C
°C
°C
Min.
3.0
3.0
2.25
Max.
3.6
3.6
2.75
Units
V
V
V
0
0
0
-40
3.8
±0.2
±0.2
±50
+85
24
V
V
mV
°C
MHz
7.1.2 Operating Limits
Correct operation of the device outside these limits is not implied.
Notes
Supply (VDDH - VSSH)
Supply (VDDVCO - VSSH)
Supply (All other VDD - VSSH)
Voltage difference between supplies:
VDDH to VDDVCO
Between all other VDD
All VSS to VSSH
Operating Temperature
Clock Frequency
Notes:
1
1
Error in RF and IF frequencies and bit rate is directly related to the clock frequency.
 2004 CML Microsystems Plc
71
D/990/1
GMSK Packet Data Modem and RF Transceiver
7.1.3
CMX990
Operating Characteristics
Details in this section represent design target values and are not currently guaranteed.
For the following conditions unless otherwise specified:
Clock Frequency = 19.2MHz, Bit Rate = 8k bits/sec, Noise Bandwidth = Bit Rate,
VDDH = VDDVCO = 3.0V to 3.6V, TAMB = -40°C to +85°C.
DC Parameters
IDD (powersaved) at VDDH = 3.3 V
Tx IDD at VDDH = 3.3 V
Rx IDD at VDDH = 3.3 V
AC Parameters
Clock Input
'High' pulse width
'Low' pulse width
Signal amplitude
Input impedance (at 19.2 MHz)
µC Interface
Input logic "1" level
Input logic "0" level
Input leakage current (Vin = 0 to VDDH)
Input capacitance
Output logic "1" level (lOH = 120 µA)
Output logic "0" level (lOL = 360 µA)
'Off' state leakage current (Vout = VDDH)
 2004 CML Microsystems Plc
72
Notes
Min.
Typ.
Max.
Unit
2
2
2
–
–
–
5.0
65
85
20
100
120
µA
mA
mA
3
3
20
20
0.5
TBD
–
–
–
–
–
–
–
–
ns
ns
V p-p
Ω
4, 5
4, 5
4, 5
4, 5
5
5, 6
6
80%
–
-5.0
–
90%
–
–
–
–
–
10
–
–
–
–
20%
+5.0
–
–
10%
10
VDDH
VDDH
µA
pF
VDDH
VDDH
µA
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Notes
Min.
Typ.
Max.
Unit
400
700
44
–
TBD
TBD
–
–
–
–
–
45
0.5
+13
30
TBD
600
4.9
950
2000
46
–
–
–
–
–
–
MHz
MHz
MHz
dB
dBm
dB
Ω
Ω
nV/√Hz
44
–
–
–
–
–
–
–
10
55
TBD
176
45
TBD
650
8
63
18
15
±1.5
–
–
30
180
Digital
46
–
–
–
–
–
–
–
–
–
–
184
MHz
dBm
Ω
dB
dB
dB
dB
dB
dB
dB
dB
MHz
400
700
40
TBD
–
–
–
–
–
TBD
950
2000
90
TBD
–
MHz
MHz
MHz
dBm
dB
9
9
40
–
–
–
-35
-91
90
–
–
–
-10
-10
12
160
–
3.8
14
±1.0
–
–
high
–
MHz
deg
deg
mA
dBm
dBm
Ω
MHz
AC Parameters
Rx 1st Mixer
Input frequency range
Local oscillator frequency range
IF output frequency
Gain
Input third order intercept point
Image rejection
Input impedance
Output load
Output noise voltage
8
7
Rx IF Stages
Input frequency range
Input third order intercept (Max Gain)
Input impedance
Noise figure
Maximum gain (Max AGC)
Minimum gain (Min AGC)
AGC step size
AGC step size accuracy
Selectivity at ±1 to 10 MHz
Selectivity at ±1.92 MHz (ADC Alias)
I/Q image rejection
Local oscillator range
RSSI output
13
Tx Offset Mixer
Input frequency range
Local oscillator frequency range
IF output frequency
Input level
Conversion gain
8
Tx Limiter/Modulator/Phase Detector
Input frequency range
Combined rms phase error
Combined peak phase error
Charge pump output current
Normal input level
Total limiting range
Input Impedance
IF input frequency
 2004 CML Microsystems Plc
73
180
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Notes
Auxiliary ADC
Resolution
Input range
Auxiliary DAC
Resolution
Output range
14
15
Phase Locked Loop
Reference Input
Frequency
Level
Divide ratios
Main RF Synthesizer
Comparison frequency
Input frequency range
Input level
Divide ratios
Charge pump current
Normalised SSB phase noise
Aux IF Synthesizer
Comparison frequency
Input frequency range
Input level
Divide ratios
Charge pump current
Normalised SSB phase noise
Notes:
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
10
11
Min.
Typ.
Max.
Unit
–
TBD
10
–
–
TBD
bits
V
–
TBD
10
–
–
TBD
bits
V
TBD
0.5
1
19.2
–
–
TBD
–
8192
MHz
Vp-p
–
600
-10
48000
–
–
–
–
–
–
±2.5
152
500
2000
-20
1048576
–
–
kHz
MHz
dBm
–
150
-10
250
–
–
100
–
–
–
±2.5
TBD
600
250
-20
16384
–
–
mA
dBc/Hz
kHz
MHz
dBm
mA
dBc/Hz
Not including any current drawn from the device pins by external circuitry.
Timing for the external input to the CLOCK pin.
WRN, RDN, CSN, A0 - A5 pins.
D0 - D7 pins.
IRQN pin.
Gain shown is for a matched 50Ω source, however the input is high impedance and a
transformer or equivalent voltage step-up circuits can be used to achieve a higher gain
figure. If such arrangements are used input third order intercept point will be degraded.
A divide by 2 is provided within the IC.
Normal input level is the range over which phase error performance is specified. The
total limiting range is an extended range, the lower end of which is intended to allow the
Tx loop to “lock up” during power up.
Sine wave or clipped sine wave.
Separate dividers provided for RF and IF PLL’s
TX LO chain has selectable divide by 2 or divide by 4.
IC contains divide by 4.
Aux ADC 2 and 3 have uncommitted op-amps on the input.
Aux DAC 0 provides a power ramp for the PA passed on a user-programmable ramp
table. Aux DAC 1 should be connected to VCXO (or VCTCXO) for AFC control.
 2004 CML Microsystems Plc
74
D/990/1
GMSK Packet Data Modem and RF Transceiver
7.1.3
CMX990
Operating Characteristics (continued)
Timing Diagrams
Figure 30 µC Parallel Interface Timings
 2004 CML Microsystems Plc
75
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
For the following conditions unless otherwise specified:
Clock Frequency = 19.2MHz, VDDH = 3.0V to 3.6V, TAMB = -40°C to +85°C.
Notes
Min.
Typ.
Parallel Interface Timings (ref. Figure 24)
Max.
Unit
–
tACSL
Address valid to CSN low time
0
–
–
ns
tAH
Address hold time
10
–
–
ns
tCSH
CSN hold time
0
–
–
ns
tCSHI
CSN high time
6
–
–
clock cycles
tCSRWL
CSN to WRN or RDN low time
0
–
–
ns
tDHR
Read data hold time
0
–
–
ns
tDHW
Write data hold time
0
–
–
ns
tDSW
Write data setup time
90
–
–
ns
tRHCSL
RDN high to CSN low time (write)
0
–
–
ns
tRACL
Read access time from CSN low
18
–
–
175
ns
tRARL
Read access time from RDN low
18
–
–
145
ns
tRL
RDN low time
200
–
–
ns
tRX
RDN high to D0-D7 3-state time
–
–
50
ns
tWHCSL
WRN high to CSN low time (read)
0
–
–
ns
tWL
WRN low time
200
–
–
ns
Notes:
18. With 30pF max to VSS on D0 - D7 pins. Data valid at greater of: tRARL + tCSRWL or
tRACL.
TBD
Figure 31 Typical Bit Error Rate
 2004 CML Microsystems Plc
76
D/990/1
GMSK Packet Data Modem and RF Transceiver
7.2
CMX990
Packaging
Note:
The underside of the Q1 package is conductive and should be electrically connected to the analogue
ground. The circuit board should be designed so that no unwanted short circuits can occur.
Figure 32 Q1 Mechanical Outline: Order as part no. CMX990Q1
 2004 CML Microsystems Plc
77
D/990/1
GMSK Packet Data Modem and RF Transceiver
CMX990
Handling precautions: This product includes input protection, however, precautions should be taken to prevent device damage
from electro-static discharge. CML does not assume any responsibility for the use of any circuitry described. No IPR or circuit
patent licences are implied. CML reserves the right at any time without notice to change the said circuitry and this product
specification. CML has a policy of testing every product shipped using calibrated test equipment to ensure compliance with this
product specification. Specific testing of all circuit parameters is not necessarily performed.
www.cmlmicro.com
For FAQs see: www.cmlmicro.com/products/faqs/
For a full data sheet listing see: www.cmlmicro.com/products/datasheets/download.htm
For detailed application notes: www.cmlmicro.com/products/applications/
Oval Park, Langford, Maldon,
Essex,
CM9 6WG - England.
4800 Bethania Station Road,
Winston-Salem,
NC 27105 - USA.
No 2 Kallang Pudding Road,
#09 - 05/06 Mactech
Industrial Building,
Singapore 349307
No. 218, Tian Mu Road
West, Tower 1, Unit 1008,
Shanghai Kerry Everbright
City, Zhabei,
Shanghai 200070,
China.
Tel: +44 (0)1621 875500
Tel: +65 6745 0426
Fax: +44 (0)1621 875600
Tel: +1 336 744 5050,
800 638 5577
Fax: +1 336 744 5054
Fax: +65 6745 2917
Tel: +86 21 6317 4107
+86 21 6317 8916
Fax: +86 21 6317 0243
Sales:
[email protected]
Sales:
[email protected]
Sales:
[email protected]
Sales:
[email protected]
Technical Support:
[email protected]
Technical Support:
[email protected]
Technical Support:
[email protected]
Technical Support:
[email protected]