English
Language : 

CMX989 Datasheet, PDF (22/31 Pages) CML Microcircuits – CDPD MAC and Data Pump Processor
CDPD MAC and Data Pump Processor
CMX989
Acquisition of a CDPD channel
The first thing that the device will be required to do is to search for a CDPD Forward Channel data
stream.
The sequence below describes how to do this:
1. The likely presence of an Rx data stream (CDPD Forward Channel modulation) may be indicated
by the RSSI in a process which is separate from, and external to, the CMX989. Simultaneously,
the CMX989 can search for a CDPD Forward Channel synchronization word, as follows:
2. Write “1” to ZERO POWER and “1” to ENABRX (Bits 4 and 3 of the RX CONTROL register) to
enable the crystal and the receiver. Also set the SYNC ERROR LIMIT (Bits 2, 1 and 0 of the RX
CONTROL register) to a binary value from 0 to 5, depending on the number of errors that can be
tolerated in the Forward Channel synchronization word.
3. Write “1” to SYNCM (Bit 7 of the IRQ MASK register) to enable the detection on interrupt of the
forward synchronization word.
4. The device will now interrupt when a CDPD Forward Channel synchronization word has been
detected. An additional local timer could be set to give a timeout after which the host µController
could initiate a change of RF channel to search elsewhere for a CDPD Forward Channel stream.
5. When the interrupt occurs, read the IRQ FLAGS register to confirm and clear the SYNCF flag
and read the STATUS register to check the SYNC bit. The SYNCM bit can be left set to “1” as
further interrupts would indicate that the device has lost the forward synchronization. Appropriate
action should then be taken. However the user may wish to disable it, as the CDPD Reed-
Solomon decoder has the ability to indicate when the data has lost its integrity. Loss of the
channel or corruption of the data is indicated by errors in the synchronization word and/or errors
in a Reed-Solomon decoded data block (RX ERROR DATA register).
6. The RX ERROR DATA register may also be used in the initial acquisition of the channel as
detailed in the CDPD specification (Release 1.1, Part 402, Section 3.2.3).
Receive
Having found a CDPD Forward Channel stream, the data can be read using the following sequence:
1. Write a “1” to ERRM, a “1” to RXM and a “1” to RXFRMM (Bits 2, 1 and 0 of the IRQ MASK
register), to enable the Rx Error IRQ, the Rx Data IRQ and the Rx Frame Flag IRQ respectively.
2. An RXFRMF interrupt (Bit 0 of the IRQ FLAGS register) indicates that the next byte to be read
from the RX DATA BUFFER register is the first byte of a new frame. The contents of the RX
DATA BUFFER register prior to the first RXFRMF interrupt event after ENABRX is set to "1" are
automatically discarded when the first RXFRMF interrupt occurs. RXF interrupts are also
disabled until the first RXFRMF interrupt occurs.
3. Using the RXF interrupt (Bit 1 of the IRQ FLAGS register) as a handshake, data can be read
from the device. RXF set to "1" indicates that another byte can be read from the RX DATA
BUFFER register. When RXF remains at "0", the buffer is empty. The frame boundaries are
indicated by the RXFRMF interrupt (Bit 0 of the IRQ FLAGS register). Note that the host
µController should continuously read bytes from the RX DATA BUFFER register and then re-
assemble the frame within the host µController's memory, rather than wait for a complete frame
(indicated by the next RXFRMF interrupt) before starting data transfer. Since the frame size is
not an integer multiple of the block size, overflow will eventually occur if data is only transferred
on frame boundaries.
© 2001 Consumer Microcircuits Limited
22
D/989/2