CMX878 - CML Microcircuits

CMX878
CML Microcircuits
Line Powered
Modem plus DAA
COMMUNICATION SEMICONDUCTORS
D/878/2 December 2002
Provisional Issue
Features
Applications
•
V.22bis, V.22, Bell 212A, V.23/Bell 202,
•
Line Powered Applications
V.21/Bell 103 modulation schemes
•
EPOS Terminals
•
DTMF/Tones Transmit and Receive
•
Remote Utility Meter Reading
•
Line Reversal and Ring Detection
•
Security Systems
•
Regulated Power taken from Line
•
Telephone Telemetry Systems
•
Gyrator and Impedance Matching Control
•
ATMs
•
Parallel Phone Detection
•
Pay-Phones
•
Low Power Operation and Standby
•
E-mail Terminals
EXTRACTED
POWER
TIP
RING
LINE
INTERFACING
APPLICATION
CIRCUITRY
CMX878
VDD
CBUS
1.1
MICROCONTROLLER
Brief Description
The CMX878 is a line-powered multi-standard modem for use in telephone based information and
telemetry systems. It provides the building blocks for interfacing to the telephone line without the need
for a transformer - this is the Data Access Arrangement (DAA) – allowing for the coupling of data signals
to and from the line; it can also detect Ringing and Line Reversals.
Provision is made for the conditioning and monitoring of other aspects of the telephone line – this
includes the gyrator/loop current, line impedance control, and line voltage measurement. A complete line
interface can be implemented using low cost external components.
Very low power consumption and built-in power management makes the CMX878 suitable for telephone
line power usage. Furthermore the microcontroller can be de-powered whilst awaiting the detection of a
Ring, Line Reversal, or WAKE pin event.
Control of the device is via a simple high speed serial bus, compatible with most types of µC serial
interface. Data transmitted and received by the modem is transferred over the same serial bus.
The CMX878 is available in 28-pin SOIC, SSOP and TSSOP packages.
 2002 Consumer Microcircuits Limited
Line Powered Modem plus DAA
CMX878
CONTENTS
Section
Page
1.1
Brief Description.................................................................................. 1
1.2
Block Diagrams ................................................................................... 4
1.3
Signal List ............................................................................................ 6
1.4
External Components.......................................................................... 8
1.4.1 Ring Detector Interface......................................................... 10
1.4.2 Line-derived Power & Line Interface.................................... 11
1.4.2.1 Standby Regulator................................................................. 11
1.4.2.2 The Regulated Supply & Line Volts Measurement .............. 11
1.4.2.3 Loop Current Control, AC Impedance & Modulation........... 12
1.4.2.4 Rx Hybrid................................................................................ 12
1.4.2.5 Transmit Levels & Receive Thresholds................................ 12
1.5
General Description........................................................................... 16
1.5.1 Tx USART .............................................................................. 17
1.5.2 FSK and QAM/DPSK Modulators ......................................... 18
1.5.3 Tx Filter and Equaliser.......................................................... 19
1.5.4 DTMF/Tone Generator .......................................................... 19
1.5.5 Tx Level Control and Output Buffer..................................... 19
1.5.6 Rx DTMF/Tones Detectors.................................................... 20
1.5.7 Rx Modem Filterering and Demodulation............................ 21
1.5.8 Rx Modem Pattern Detectors and Descrambler .................. 22
1.5.9 Rx Data Register and USART ............................................... 22
1.5.10 DAC 24
1.5.11 ADC 24
1.5.12 C-BUS Interface..................................................................... 26
1.5.12.1
General Reset Command.............................. 29
1.5.12.2
Configuration Register ................................. 29
1.5.12.3
Supplementary Standby Register ................ 30
1.5.12.4
Line/Wakeup Event Register ........................ 30
1.5.12.5
Line Control Register.................................... 31
1.5.12.6
Line Control Register.................................... 31
1.5.12.7
ADC Control Register ................................... 32
1.5.12.8
General Control Register.............................. 33
1.5.12.9
Transmit Mode Register ............................... 35
1.5.12.10
Receive Mode Register ................................. 38
1.5.12.11
Tx Data Register............................................ 40
1.5.12.12
Rx Data Register ........................................... 40
1.5.12.13
Status Register.............................................. 41
1.5.12.14
Programming Register.................................. 44
1.6
Application Notes .............................................................................. 48
1.6.1 Programming Register ............................................. 48
1.6.2 Microprocessor Boot-up Routines .......................... 49
1.6.4 V.22 bis Calling Modem Application .................................... 49
1.6.5 V.22 bis Answering Modem Application.............................. 50
 2002 Consumer Microcircuits Limited
2
D/878/2
Line Powered Modem plus DAA
1.7
CMX878
Performance Specification................................................................ 52
1.7.1 Electrical Performance.......................................................... 52
1.7.1.1 Absolute Maximum Ratings..................................... 52
1.7.1.2 Operating Limits....................................................... 52
1.7.1.3 Operating Characteristics ........................................ 53
1.7.2 Packaging.............................................................................. 60
 2002 Consumer Microcircuits Limited
3
D/878/2
Line Powered Modem plus DAA
1.2
CMX878
Block Diagrams
Figure 1a Block Diagram of CMX878 within a typical application
(See Figure 1b for details of MODEM & TONES PROCESSOR block)
 2002 Consumer Microcircuits Limited
4
D/878/2
Line Powered Modem plus DAA
CMX878
Tx Output
Buffer
MOD
Tx Level
Control
Scrambler
Enable
LOCAL
ANALOGUE
LOOPBACK
Descrambler
Enable
Rx Gain
Control
+
-
MODEM
ENERGY
DETECTOR
BIAS
RXIN
RXFB
Rx Input
Amplifier
Figure 1b Block Diagram of MODEM & TONES PROCESSOR
Figure 1c Block Diagram of the ADC circuit
 2002 Consumer Microcircuits Limited
5
D/878/2
Line Powered Modem plus DAA
1.3
CMX878
Signal List
CMX878
D1/D6/E1
packages
Signal
Description
Pin No.
Name
Type
1
XTALN
O/P
The output of the on-chip Xtal oscillator inverter.
2
XTAL/CLOCK
I/P
3
DVSS
Power
4
WAKE
I/P
5
RD
I/P
6
RT
BI
7
SBYVDD
Power
8
VFB
O/P
The input to the oscillator inverter from the Xtal
circuit or external clock source.
The negative supply rail for the digital on-chip
blocks.
A 0 to 1 transition on this pin can be used to
wake the device.
Schmitt trigger input to the Ring signal detector.
Connect to VSS if Ring Detector not used.
Open drain output and Schmitt trigger input
forming part of the Ring signal detector.
Connect to SBYVDD if Ring Detector not used.
The positive rail of the low current Standby
Supply. This supply will normally remain
present even when the regulated supply has
been de-powered.
Forms part of the regulator feedback loop.
9
REGENAB
O/P
10
AVDD
Power
11
MOD
O/P
12
RXIN
I/P
The modulation signals generated by the device
are output at this pin.
The inverting input to the Rx Input Amplifier.
13
RXFB
O/P
The output of the Rx Input Amplifier.
14
AVss
Power
15
VBIAS
I/P
16
ADCIN
I/P
17
ICTRL
O/P
18
GYON
O/P
19
CLID Z EN
O/P
 2002 Consumer Microcircuits Limited
A logic output used to enable the regulator.
This pin is powered from the Standby Supply
and will take the level of SBYVDD when high.
The positive rail of the regulated power supply.
The negative supply rail for the analogue onchip blocks.
Internally generated bias voltage of
approximately AVDD/2. It will discharge to Vss
when in powersave mode or when the regulated
supply is de-powered.
The input to the Analogue to Digital Converter.
Used in line voltage measurement and detection
of extensions going off-hook.
The output of the programmable DAC. Used for
programming a current drawn from the line.
A logic output used to enable the gyrator.
A logic output. Could be used in circuits with
Caller Line ID provision to switch in a line
matching impedance.
6
D/878/2
Line Powered Modem plus DAA
CMX878
CMX878
D1/D6/E1
packages
Signal
Description
Pin No.
Name
Type
20
GP OP1
O/P
21
GP OP2
O/P
22
GP OP3
O/P
23
CSN
I/P
A General Purpose logic output. An example
use would be as an enable for a second
regulator in circuits with a battery.
A General Purpose logic output. An example
use would be as a line voltage measurement
divider enable in circuits where this function is
required separately from the regulator.
A General Purpose logic output. An example
use would be as a control to inhibit the ring
signal in systems where the application is in
series with a phone.
The C-BUS chip select input from the µC.
24
CMD DATA
I/P
The C-BUS serial data input from the µC.
25
SERIAL
CLOCK
I/P
The C-BUS serial clock input from the µC.
26
REPLY DATA
T/S
27
IRQN
O/P
28
DVDD
Power
A 3-state C-BUS serial data output to the µC.
This output is high impedance when not sending
data to the µC.
A ‘wire-ORable’ output for connection to a µC
Interrupt Request input. This output is pulled
down to VSS when active and is high impedance
when inactive. An external pullup resistor is
required ie R1 of Figure 2
The positive supply rail for the digital on-chip
blocks.
Notes:
I/P
O/P
BI
T/S
NC
=
=
=
=
=
Input
Output
Bidirectional
3-state Output
No Connection
 2002 Consumer Microcircuits Limited
7
D/878/2
Line Powered Modem plus DAA
1.4
CMX878
External Components
R1
X1
C1, C2
C3
100kΩ
11.0592MHz
or 12.288MHz
22pF
100nF
Resistors ±5%, capacitors ±20% unless otherwise stated.
Figure 2a Pin-out of Packaged Device
 2002 Consumer Microcircuits Limited
8
D/878/2
Line Powered Modem plus DAA
CMX878
Power Supply Arrangement
Figure 2b Recommended Power Supply Connections and De-coupling
This device is capable of detecting and decoding small amplitude signals. To achieve this DVDD, AVDD
and VBIAS should be decoupled and the receive path protected from extraneous in-band signals. It is
recommended that the printed circuit board is laid out with both AVSS and DVSS ground planes in the
CMX878 area, as shown in Figure 2b, with provision to make a link between them close to the CMX878.
To provide a low impedance connection to ground, the decoupling capacitors must be mounted as close
to the CMX878 as possible and connected directly to their respective ground plane. This will be achieved
more easily by using surface mounted capacitors.
VBIAS is used as an internal reference for detecting and generating the various analogue signals. It must
be carefully decoupled, to ensure its integrity. Apart from the decoupling capacitor, no other loads are
allowed. If VBIAS needs to be used to set external analogue levels, it must be buffered with a high input
impedance buffer.
The DVSS connections to the Xtal oscillator capacitors C1 and C2 should also be of low impedance and
preferably be part of the DVSS ground plane to ensure reliable start up of the oscillator.
In a line powered application it is important to prevent noise from the circuit being coupled onto the line;
careful board layout should be employed to minimise this. It is also important to minimise power supply
noise currents from causing undesirable modulation of the line; the circuit configuration shown in
Figure 4a will minimise this effect.
 2002 Consumer Microcircuits Limited
9
D/878/2
Line Powered Modem plus DAA
1.4.1
CMX878
Ring Detector Interface
This interface runs from the Standby Supply.
Figure 3 shows how the CMX878 may be used to detect the large amplitude Ringing signal voltage or a
Line Reversal present at the start of an incoming telephone call.
The ring signal is usually applied at the subscriber's exchange as an ac voltage inserted in series with
one of the telephone wires and will pass through either C19 and R26 or C20 and R27 to appear at the top
end of R28 (point X in Figure 3) in a rectified and attenuated form.
The signal at point X is further attenuated by the potential divider formed by R28 and R29 before being
applied to the CMX878 RD input. If the amplitude of the signal appearing at RD is greater than the input
threshold (Vthi) of Schmitt trigger 'A' then the N transistor connected to RT will be turned on, pulling the
voltage at RT to VSS by discharging the external capacitor C21. The output of the Schmitt trigger 'B' will
then go high; this output is then processed by logic circuits running from the Standby Supply.
The minimum amplitude ringing signal that is certain to be detected is:
( 0.7 + Vthi x [R26 + R28 + R29] / R29 ) x 0.707 Vrms
where Vthi is the high-going threshold voltage of the Schmitt trigger A (see section 1.7.1).
With R26-28 all 470kΩ as Figure 3, then setting R29 to 68kΩ will ensure detection of ringing signals of
30Vrms and above for SBYVDD over the range 2.9V to 3.9V.
C19 R26
CMX878
X
C22
(opt.)
From
Line
D9 12
AVSS
RD
A
RT
C20
To
Standby
logic
circuits
B
R28
R30
R27
SBYV DD
AVSS
Ring signal
Bridge rectifier o/p (X)
Vthi
RT
Vthi
AVSS
AVSS
Output of
inverting
Schmitt trigger ‘B’
R26, 27, 28
R29
R30
C19, 20
C21
D9-12
470kΩ
See text
1MΩ
0.1µF
150nF
1N4004
Resistors ±5%, capacitors ±20%
Figure 3 Ring Signal Detector Interface Circuit
 2002 Consumer Microcircuits Limited
10
D/878/2
Line Powered Modem plus DAA
CMX878
If the time constant of R30 and C21 is large enough then the voltage on RT will remain below the
threshold of the 'B' Schmitt trigger for the duration of a ring cycle.
The time for the voltage on RT to charge from VSS towards SBYVDD can be derived from the formula
VRT = SBYVDD x [1 - exp(-t/(R30 x C21)) ]
As the Schmitt trigger high-going input threshold voltage (Vthi) has a minimum value of 0.56 x SBYVDD,
then the Schmitt trigger B output will remain high for a time of at least 0.821 x R30 x C21 following a
pulse at RD.
The values of R30 and C21 given in Figure 3 (1MΩ and 150nF) give a minimum RT charge time of 100
msec, which is adequate for ring frequencies of 10Hz or above.
The circuit will also respond to a telephone line voltage reversal. The BT specification SIN242 gives a
range of reversal voltages and slew times which must be detected. The slowest change required to be
detected is a +15V to –15V reversal between the two lines slewing in 30ms. In order to ensure detection
of this reversal the resistor R29 should be set to 300kΩ.
There are systems where the ‘ring’ signal is made up from consecutive fast line reversals – an example is
an ISDN terminal adapter which connects to local POTS ports. In such a case the CMX878 ring detector
circuit will give a better response with the inclusion of capacitor C22 (10nF).
If the Ring detect function is not used then pin RD should be connected to VSS and RT to SBYVDD.
1.4.2
Line-derived Power and Line Interfacing
The CMX878 has the building blocks for providing a variety of line interfacing solutions. Figure 4a shows
a suitable set of external components for interfacing to the line (explained in Figure 4b) . Note that some
of the component values vary according to whether the application is for American or European markets.
1.4.2.1 Standby Regulator
The Ring Detect and Wake input circuitry and the Standby C-BUS registers are permanently powered by
the voltage on the SBYVDD pin. This voltage is generated from the telephone line voltage by the Standby
Regulator, which consists of the high value resistor R3 and an on-chip zener diode (nominally 3.3V)
connected between the SBYVDD and VSS pins. D5 and C8 ensure that SBYVDD remains at a workable
value during short line breaks. D6 provides an alternative source of SBYVDD when the main Regulated
Supply is present.
1.4.2.2 The Regulated Supply and Line Volts Measurement
When the REGENAB pin is high M1 and Q1 connect the +ve line voltage to the line voltage
measurement divider R6, R7 and, via R8 and R9, to the AVDD regulator circuit Q2, Q3. An on-chip
comparator and bandgap reference control the base drive to Q2 via the VFB pin to keep the Regulated
Supply AVDD at nominally 3.3V.
The digital parts of the CMX878 are powered from the DVDD pin. This supply is derived from the
regulated supply AVDD through a decoupling network R2, C6, C7.
The Regulated Supply powers all parts of the CMX878 (except the Standby Circuits) and also the host
microcontroller. It is recommended that the total load on this supply should not exceed 10mA.
The Standby Supply will out-live the Regulated Supply following a loss of line voltage.
 2002 Consumer Microcircuits Limited
11
D/878/2
Line Powered Modem plus DAA
CMX878
1.4.2.3 Loop Current Control, AC Impedance and Modulation
When the CMX878 is in Standby mode, the GYON and ICTRL output pins will be at Vss, hence Q4, Q5
and M2 will be turned off and will draw no current from the telephone line.
In the off-hook mode, the regulated supply will be turned on, the GYON output will be at VDD and the
ICTRL output will be high impedance, hence M2 will be turned on, providing drive to the quasi-darlington
Q4/Q5. The DC loop current taken from the line is then controlled by the network R16, D8, R19, R20,
R14 and R15. Transistor Q6, together with the voltage divider R17, R18 and decoupling capacitor C11,
act as an optional DC current limiter which limits to approx. 60mA with the recommended components
(as required in TBR21). With selection of the appropriate external component values the resulting DC
line voltage vs. current characteristic can be made to meet the requirements of TBR21 or EIA-470-A.
The AC impedance presented to the line in the off-hook mode is controlled by the network C10, R15,
R14. With selection of the component values for the appropriate market it will either give a good match
to the TBR21 (European) nominal impedance as shown below…
…or 600Ω for American systems.
The analogue signal output of the CMX878 modem appears at the MOD pin and modulates the line
voltage via C13, R22, R21, Q5 and Q4. C14 attenuates any high frequency noise that may be present at
the MOD output pin.
When the regulated supply is enabled, the CMX878 may also be set into a ‘line probing’ mode, in which it
draws a programmable current from the telephone line. This can be useful in characterising the line. In
this mode the GYON output is at VSS and the line current is determined by the output of the DAC
appearing at the ICTRL output pin. Note that in this mode the AC impedance presented to the line and
the transmit signal levels will not be correct.
1.4.2.4 Rx Hybrid
The AC signal input to the CMX878 is taken from the line through C16 and R25 to the input amplifier pin
RXIN, the level of the receive signal appearing at the RXFB pin being determined by the ratio of the
resistors R25 and R24. C15 and R23 provide a receive hybrid function to reduce the level of transmitted
signal appearing at the RXFB pin (the CMX878 requires a minimum of 7dB rejection, however with
careful component selection it will be possible to greatly exceed this).
1.4.2.5 Transmit Levels and Receive Thresholds
Transmit levels and receive thresholds are proportional to AVDD. 0dBm = 775mVrms.
With the circuit in Figure 4a (which regulates AVDD to 3.3V), the Tx Mode Register set for a Tx Level
Control gain of 0dB and a matched line, the nominal transmit line levels will be:
QAM, DPSK and FSK Tx modes (no guard tone)
Single tone transmit mode
DTMF transmit mode
-10dBm
-10dBm
-6 and -8 dBm
With the Rx Mode Register set for a Rx Level Control gain of 0dB, the nominal receiver thresholds will be
as stated in the Operating Characteristics.
 2002 Consumer Microcircuits Limited
12
D/878/2
Line Powered Modem plus DAA
CMX878
Figure 4a Line interfacing components (ring detection components shown separately)
 2002 Consumer Microcircuits Limited
13
D/878/2
Line Powered Modem plus DAA
CMX878
Figure 4b Explanatory view of line interfacing circuit shown in Figure 4a
 2002 Consumer Microcircuits Limited
14
D/878/2
Line Powered Modem plus DAA
CMX878
Component Values – for Figures 2a, 2b and 4a
Resistors ±5%, capacitors ±20%
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
R11
100kΩ
30Ω
6.8MΩ
100kΩ
220kΩ
470kΩ
15kΩ
100kΩ
100kΩ
100kΩ
2.7kΩ
R13
R14
R15
R16
R17
R18
R19
R20
10kΩ
EURO: 12Ω (0.25W) US: 27Ω (0.5W)
EURO: 36Ω (0.6W) US: wire link
10kΩ
EURO: 5.6kΩ US: not required
EURO: 2kΩ US: not required
470Ω
10kΩ
R21
R22
R23
R24
R25
EURO: 3.3kΩ US: 3kΩ
EURO: 2.7kΩ US: 3kΩ
EURO: 100kΩ US: 91kΩ
100kΩ
160kΩ
Q1
Q2
Q3
Q4*
Q5
Q6
MMBTA92
MMBTA42
MMBTA92
FZT757
MMBTA42
EURO: BC846 US: not required
X1
11.0592MHz or 12.288MHz
C1, C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
C23
22pF
100nF
22µF
100nF
22µF
100nF
100nF
100nF
EURO: 3.3µF US: not required
EURO: 33µF US: not required
3.3µF
220nF
10nF
100nF
47nF
100pF
3.3µF
220nF
D1 D4
D5
D6
D7
D8
D1N4004
1N914
1N914
BZX84C5V6
BZX84C4V7
M1, M2
BSN304 or ZVNL535A
*Transistor Q4 is the main off-hook load and will dissipate heat. In circuits with the built-in current
limiting, the power dissipation can be up to 2 Watts; without current limiting the power dissipation can be
up to
1 Watt. Ensure adequate heat sink provision.
‘EURO’ represents component values for European markets (specification TBR21).
‘US’ represents component values for North American markets (specification EIA-470)
 2002 Consumer Microcircuits Limited
15
D/878/2
Line Powered Modem plus DAA
1.5
CMX878
General Description
The CMX878 transmit and receive operating modes are independently programmable.
The transmit mode can be set to any one of the following:
V.22bis modem. 2400bps QAM (Quadrature Amplitude Modulation).
V.22 and Bell 212A modem. 1200 or 600 bps DPSK (Differential Phase Shift Keying).
V.21 modem. 300bps FSK (Frequency Shift Keying).
Bell 103 modem. 300bps FSK.
V.23 modem. 1200 or 75 bps FSK.
Bell 202 modem. 1200 or 150 bps FSK.
DTMF transmit.
Single tone transmit (from a range of modem calling, answer and other tone frequencies)
User programmed tone or tone pair transmit (programmable frequencies and levels)
Disabled.
The receive mode can be set to any one of the following:
V.22bis modem. 2400bps QAM.
V.22 and Bell 212A modem. 1200 or 600 bps DPSK.
V.21 modem. 300bps FSK.
Bell 103 modem. 300 bps FSK.
V.23 modem. 1200 or 75 bps FSK.
Bell 202 modem. 1200 or 150 bps FSK.
DTMF detect.
2100Hz and 2225Hz answer tone detect.
Call progress signal detect.
User programmed tone or tone pair detect.
Disabled.
The CMX878 may also be set into a Powersave mode which disables all circuitry except for the C-BUS
interface and the Ring Detector.
 2002 Consumer Microcircuits Limited
16
D/878/2
Line Powered Modem plus DAA
1.5.1
CMX878
Tx USART
A flexible Tx USART is provided for all modem modes, meeting the requirements of V.14 for QAM and
DPSK modems.
It can be programmed to transmit continuous patterns, Start-Stop characters or Synchronous Data.
In both Synchronous Data and Start-Stop modes the data to be transmitted is written by the µC into the
8-bit C-BUS Tx Data Register from which it is transferred to the Tx Data Buffer.
If Synchronous Data mode has been selected the 8 data bits in the Tx Data Buffer are transmitted
serially, b0 being sent first.
In Start-Stop mode a single Start bit is transmitted, followed by 5, 6, 7 or 8 data bits from the Tx Data
Buffer - b0 first - followed by an optional Parity bit then - normally - one or two Stop bits. The Start, Parity
and Stop bits are generated by the USART as determined by the Tx Mode Register settings and are not
taken from the Tx Data Register.
Figure 5a Tx USART
Every time the contents of the C-BUS Tx Data Register are transferred to the Tx Data Buffer the Tx Data
Ready flag bit of the Status Register is set to 1 to indicate that a new value should be loaded into the CBUS Tx Data Register. This flag bit is cleared to 0 when a new value is loaded into the Tx Data Register.
Figure 5b Tx USART Function (Start-Stop mode, 8 Data Bits + Parity)
If a new value is not loaded into the Tx Data Register in time for the next Tx Data Register to Tx Data
Buffer transfer then the Status Register Tx Data Underflow bit will be set to 1. In this event the contents
of the Tx Data Buffer will be re-transmitted if Synchronous Data mode has been selected, or if the Tx
modem is in Start-Stop mode then a continuous Stop signal (1) will be transmitted until a new value is
loaded into the Tx Data Register.
 2002 Consumer Microcircuits Limited
17
D/878/2
Line Powered Modem plus DAA
CMX878
In all modes the transmitted bit and baud rates are the nominal rates for the selected modem type, with
an accuracy determined by the XTAL frequency accuracy, however for QAM and DPSK modes V.14
requires that Start-Stop characters can be transmitted at up to 1% overspeed (basic signalling rate range)
or 2.3% overspeed (extended signalling rate range) by deleting a Stop bit from no more than one out of
every 8 (basic range) or 4 (extended range) consecutive transmitted characters.
To accommodate the V.14 requirement the Tx Data Register has been given two C-BUS addresses, $E3
and $E4. Data should normally be written to $E3.
In QAM or DPSK Start-Stop modes if data is written to $E4 then the programmed number of Stop bits will
be reduced by one for that character. In this way the µC can delete transmitted Stop bits as needed.
In FSK Start-Stop modes, data written to $E4 will be transmitted with a 12.5% reduction in the length of
the Stop bit at the end of that character.
In all Synchronous Data modes data written to $E4 will be treated as though it had been written to $E3.
The underspeed transmission requirement of V.14 is automatically met by the CMX878 as in Start-Stop
mode it automatically inserts extra Stop bit(s) if it has to wait for new data to be loaded into the C-BUS
Tx Data Register.
The optional V.22/V.22bis compatible data scrambler can be programmed to invert the next input bit in
the event of 64 consecutive ones appearing at its input. It uses the generating polynomial:
1 + x-14 + x-17
1.5.2
FSK and QAM/DPSK Modulators
Serial data from the USART is fed via the optional scrambler to the FSK modulator if V.21, V.23, Bell
103 or Bell 202 mode has been selected or to the QAM/DPSK modulator for V.22, V.22bis and Bell 212A
modes.
The FSK modulator generates one of two frequencies according to the transmit mode and the value of
current transmit data bit.
The QAM/DPSK modulator generates a carrier of 1200Hz (Low Band, Calling modem) or 2400Hz (High
Band, Answering modem) which is modulated at 600 symbols/sec as described below:
600bps V.22 signals are transmitted as a +90° carrier phase change for a ‘0’ bit, +270° for ‘1’.
For V.22 and Bell 212A 1200bps DPSK the transmit data stream is divided into groups of two
consecutive bits (dibits) which are encoded as a carrier phase change:
Dibit
(left-hand bit is the
first of the pair)
00
01
11
10
 2002 Consumer Microcircuits Limited
Phase change
+90°
0°
+270°
+180°
18
D/878/2
Line Powered Modem plus DAA
CMX878
For V.22bis 2400bps QAM the transmit data stream is divided into groups of 4 consecutive data
bits. The first two bits of each group are encoded as a phase quadrant change and the last two
bits define one of four elements within a quadrant:
First two bits of group
(left-hand bit is the
first of the pair)
00
01
11
10
Phase quadrant change
+90° (e.g. quadrant 1 to 2)
0° (no change of quadrant)
+270° (e.g. quadrant 1 to 4)
+180° (e.g. quadrant 1 to 3)
Figure 6 V.22bis Signal Constellation
1.5.3
Tx Filter and Equaliser
The FSK or QAM/DPSK modulator output signal is fed through the Transmit Filter and Equaliser block
which limits the out-of-band signal energy to acceptable limits. In 600, 1200 and 2400 bps FSK, DPSK
and QAM modes this block includes a fixed compromise line equaliser which is automatically set for the
particular modulation type and frequency band being employed. This fixed compromise line equaliser
may be enabled or disabled by bit 10 of the General Control Register. The amount of Tx equalisation
provided compensates for one quarter of the relative amplitude and delay distortion of ETS Test Line 1
over the frequency band used.
1.5.4
DTMF/Tone Generator
In DTMF/Tones mode this block generates DTMF signals or single or dual frequency tones. In
QAM/DPSK modem modes it is used to generate the optional 550 or 1800Hz guard tone.
1.5.5
Tx Level Control and Output Buffer
The outputs (if present) of the Transmit Filter and DTMF/Tone Generator are summed then passed
through the programmable Tx Level Control and Tx Output Buffer to the pins MOD pin.
 2002 Consumer Microcircuits Limited
19
D/878/2
Line Powered Modem plus DAA
1.5.6
CMX878
Rx DTMF/Tones Detectors
In Rx Tones Detect mode the received signal, after passing through the Rx Gain Control block, is fed to
the DTMF / Tones / Call Progress / Answer Tone detector. The user may select any of four separate
detectors:
The DTMF detector detects standard DTMF signals. A valid DTMF signal will set bit 5 of the Status
Register to 1 for as long as the signal is detected.
The programmable tone pair detector includes two separate tone detectors (see Figure 12). The first
detector will set bit 6 of the Status Register for as long as a valid signal is detected, the second detector
sets bit 7, and bit 10 of the Status Register will be set when both tones are detected.
The Call Progress detector measures the amplitude of the signal at the output of a 275 - 665 Hz
bandpass filter and sets bit 10 of the Status Register to 1 when the signal level exceeds the
measurement threshold.
10
0
-10
-20
dB
-30
-40
-50
-60
0
0.5
1
1.5
2
kHz
2.5
3
3.5
4
Figure 7a Response of Call Progress Filter
The Answer Tone detector measures both amplitude and frequency of the received signal and sets bit 6
or bit 7 of the Status Register when a valid 2225Hz or 2100Hz signal is received.
 2002 Consumer Microcircuits Limited
20
D/878/2
Line Powered Modem plus DAA
1.5.7
CMX878
Rx Modem Filterering and Demodulation
When the receive part of the CMX878 is operating as a modem, the received signal is fed to a bandpass
filter to attenuate unwanted signals and to provide fixed compromise line equalisation for 600, 1200 and
2400 bps FSK, DPSK and QAM modes. The characteristics of the bandpass filter and equaliser are
determined by the chosen receive modem type and frequency band. The line equaliser may be enabled
or disabled by bit 10 of the General Control Register and compensates for one quarter of the relative
amplitude and delay distortion of ETS Test Line 1.
The responses of these filters, including the line equaliser and the effect of external components used in
Figures 4a are shown in Figures 7b-e:
dB
10
10
0
0
-10
-10
-20
-20
-30
dB
-30
-40
-40
-50
-50
-60
-60
0
0.5
1
1.5
2
2.5
3
3.5
4
0
0.5
1
1.5
kHz
Figure 7b QAM/DPSK Rx Filters
dB
2
2.5
3
3.5
4
kHz
Figure 7c V.21 Rx Filters
10
10
0
0
-10
-10
-20
-20
-30
dB
-30
-40
-40
-50
-50
-60
-60
0
0.5
1
1.5
2
2.5
3
3.5
4
0
kHz
0.5
1
1.5
2
2.5
3
3.5
4
kHz
Figure 7d Bell 103 Rx Filters
Figure 7e V.23/Bell 202 Rx Filters
The signal level at the output of the Receive Modem Filter and Equaliser is measured in the Modem
Energy Detector block, compared to a threshold value, and the result controls bit 10 of the Status
Register.
The output of the Receive Modem Filter and Equaliser is also fed to the FSK or QAM/DPSK demodulator
depending on the selected modem type.
 2002 Consumer Microcircuits Limited
21
D/878/2
Line Powered Modem plus DAA
CMX878
The FSK demodulator recognises individual frequencies as representing received ‘1’ or ‘0’ data bits:
The QAM/DPSK demodulator decodes QAM or DPSK modulation of a 1200Hz or 2400Hz carrier and is
used for V.22, V.22bis and Bell 212A modes. It includes an adaptive receive signal equaliser (autoequaliser) that will automatically compensate for a wide range of line conditions in both QAM and DPSK
modes. It must be enabled when receiving 2400bps QAM. The auto-equaliser can provide a useful
improvement in performance in 600 or 1200bps DPSK modes as well as 2400bps QAM, so although it
must be disabled at the start of a handshake sequence, it can be enabled as soon as scrambled 1200bps
1s have been detected.
Both FSK and QAM/DPSK demodulators produce a serial data bit stream which is fed to the Rx pattern
detector, descrambler and USART block, See Figure 8a. In QAM/DPSK modes the demodulator input is
also monitored for the V.22bis handshake ‘S1’ signal.
The QAM/DPSK demodulator also estimates the received bit error rate by comparing the actual received
signal against an ideal waveform. This estimate is placed in bits 2-0 of the Status Register, see Figure
11.
1.5.8
Rx Modem Pattern Detectors and Descrambler
See Figure 8a.
The 1010.. pattern detector operates only in FSK modes and will set bit 9 of the Status Register when 32
bits of alternating 1s and 0s have been received.
The ‘Continuous Unscrambled 1s’ detector operates in all modem modes and sets bits 8 and 7 of the
Status Register to ‘01’ when 32 consecutive 1s have been received.
The descrambler operates only in DPSK/QAM modes and is enabled by setting bit 7 of the Rx Mode
Register.
The ‘Continuous Scrambled 1’s’ detector operates only in DPSK/QAM modes when the descrambler is
enabled and sets bits 8 and 7 of the Status Register to ‘11’ when 32 consecutive 1s appear at the output
of the descrambler. To avoid possible ambiguity, the ‘Scrambled 1s’ detector is disabled when
continuous unscrambled 1s are detected.
The ‘Continuous 0s’ detector sets bits 8 and 7 of the Status Register to ‘10’ when NX consecutive 0s have
been received, NX being 32 except when DPSK/QAM Start-Stop mode has been selected, in which case
NX = 2N + 4 where N is the number of bits per character including the Start, Stop and any Parity bits.
All of these pattern detectors will hold the ‘detect’ output for 12 bit times after the end of the detected
pattern unless the received bit rate or operating mode is changed, in which case the detectors are reset
within 2 msec.
1.5.9
Rx Data Register and USART
A flexible Rx USART is provided for all modem modes, meeting the requirements of V.14 for QAM and
DPSK modems. It can be programmed to treat the received data bit stream as Synchronous data or as
Start-Stop characters.
In Synchronous mode the received data bits are all fed into the Rx Data Buffer which is copied into the
C-BUS Rx Data Register after every 8 bits.
 2002 Consumer Microcircuits Limited
22
D/878/2
Line Powered Modem plus DAA
CMX878
In Start-Stop mode the USART Control logic looks for the start of each character, then feeds only the
required number of data bits (not parity) into the Rx Data Buffer. The parity bit (if used) and the presence
of a Stop bit are then checked and the data bits in the Rx Data Buffer copied to the C-BUS Rx Data
Register.
Figure 8a Rx Modem Data Paths
Whenever a new character is copied into the C-BUS Rx Data Register, the Rx Data Ready flag bit of the
Status Register is set to ‘1’ to prompt the µC to read the new data and, in Start-Stop mode, the Even Rx
Parity flag bit of the Status Register is updated.
In Start-Stop mode, if the Stop bit is missing (received as a ‘0’ instead of a ‘1’) the received character will
still be placed into the Rx Data Register and the Rx Data Ready flag bit set, but, unless allowed by the
V.14 overspeed option described below, the Status Register Rx Framing Error bit will also be set to ‘1’
and the USART will re-synchronise onto the next ‘1’ – ‘0’ (Stop – Start) transition. The Rx Framing Error
bit will remain set until the next character has been received.
Figure 8b Rx USART Function (Start-Stop mode, 8 Data Bits + Parity)
If the µC has not read the previous data from the Rx Data Register by the time that new data is copied to
it from the Rx Data Buffer then the Rx Data Overflow flag bit of the Status Register will be set to 1.
The Rx Data Ready flag and Rx Data Overflow bits are cleared to 0 when the Rx Data Register is read
by the µC.
For QAM and DPSK Start-Stop modes, V.14 requires that the receive USART be able to cope with
missing Stop bits; up to 1 missing Stop bit in every 8 consecutive received characters being allowed for
the +1% overspeed (basic signalling rate) V.14 mode and 1 in 4 for the +2.3% overspeed (extended
signalling rate) mode.
 2002 Consumer Microcircuits Limited
23
D/878/2
Line Powered Modem plus DAA
CMX878
To accommodate the requirements of V.14, the CMX878 Rx Mode Register can be set for 0, +1% or
+2.3% overspeed operation in QAM or DPSK Start-Stop modes. Missing Stop bits beyond those allowed
by the selected overspeed option will set the Rx Framing Error flag bit of the Status Register.
In order that received Break signals can be handled correctly in V.14 Rx overspeed mode, a received
character which has all bits ‘0’, including the Stop and any Parity bits, will always cause the Rx Framing
Error bit to be set and the USART to re-synchronise onto the next ‘1’ – ‘0’ transition. Additionally the
received Continuous 0s detector will respond when more than 2M + 3 consecutive ‘0’s are received,
where ‘M’ is the selected total number of bits per character including Stop and any Parity bits.
1.5.10 DAC
This is an 8-bit linear Digital to Analogue Converter. The primary intended purpose is that it will be used
for controlling a current drawn from the line as part of a line characterisation function; it could, however,
be used for any other purpose if so required. It is powered from the Regulated Supply. The output level
is set by programming the C-BUS DAC Control Register – see the register description for more
information.
Note that when the DAC is enabled, the output impedance is set to a nominal 5kΩ. When used in
conjunction with the circuit in Figure 4a and with the gyrator disabled, the programmed DAC voltage will
give a current out of the ICTRL pin of approximately (DAC voltage – 0.7V) / 5kΩ. The current drawn
from the line will be approximately 200 times this current.
1.5.11 ADC
The Analogue to Digital Converter has two major components: a dedicated 8-bit DAC and a comparator.
See Figure 1c. The comparator compares the output of the DAC (ADC-REF voltage) with the input
signal ADCIN. The output of the comparator is fed to the C-BUS. See also the register description for
more information.
There are two main ways of using this ADC:
i.
Line Drop-out Detection, e.g. testing for an extension going off-hook
Determine the Line voltage at below which the microcontroller needs to be alerted and calculate
the corresponding divided-down voltage at ADCIN. Program ADC-REF to this voltage. Read the
Line/Wakeup Event Register to clear any false drop-out detection which may occur at the
moment when the ADC circuit is programmed. Set mask bits to enable the IRQ.
When the Line voltage drops below the threshold, Line/Wakeup Event Register bit 8 will go to 1,
and consequently so will Status Register bit 14. The microcontroller will then detect the IRQ and
will read the Status Register and the Line/Wakeup Event Register which will indicate the Line
Drop-out Event. As a guard against a false drop-out caused by noise, the microcontroller then
could poll the ADC comparator level (Line/Wakeup Event Register bit 9) to confirm that it is a
reliable 0. Alternatively, it could measure the voltage by using the following successive
approximation technique.
ii.
Line Voltage Measurement using Successive Approximation
By programming successive values of ADC-REF and reading the comparator output (bit 9) from
the Line/Wakeup Event Register, the voltage at ADCIN (and by calculation the Line voltage) can
be determined. The technique for Successive Approximation is:
 2002 Consumer Microcircuits Limited
24
D/878/2
Line Powered Modem plus DAA
CMX878
Set the MSB (bit 7) of the ADC-REF register to 1 and all other bits to 0. Read the ADC
comparator level (bit 9 of the Line/Wakeup Event Register); if it is 1 then keep the MSB at 1,
otherwise set it to 0. Repeat this procedure for the next most significant bit (bit 6) and continue
until the LSB (bit 0). The final value represents the voltage at ADCIN, i.e. :
Measured level is:
( AVDD / 2 ) x ( final value / 255 )
Note that this configuration is intended to give an indication of the DC value of the line rather
than a precise time-quantised value (which would require a sample-and-hold circuit to be added).
Capacitor C18 de-emphasises the effect of AC signals.
 2002 Consumer Microcircuits Limited
25
D/878/2
Line Powered Modem plus DAA
CMX878
1.5.12 C-BUS Interface
This block provides for the transfer of data and control or status information between the CMX878’s
internal registers and the µC over the C-BUS serial bus. Each transaction consists of a single Register
Address byte sent from the µC which may be followed by a one or more data byte(s) sent from the µC to
be written into one of the CMX878’s Write Only Registers, or a one or more byte(s) of data read out from
one of the CMX878’s Read Only Registers, as illustrated in Figure 9.
Data sent from the µC on the Command Data line is clocked into the CMX878 on the rising edge of the
Serial Clock input. Reply Data sent from the CMX878 to the µC is valid when the Serial Clock is high.
The CSN line must be held low during a data transfer and kept high between transfers. The C-BUS
interface is compatible with most common µC serial interfaces and may also be easily implemented with
general purpose µC I/O pins controlled by a simple software routine. Figure 15 gives detailed C-BUS
timing requirements.
For all C-BUS data transfers the regulated supply must be provided to AVDD and DVDD, powering
the C-BUS circuitry and the microcontroller. The C-BUS registers are split between those which
have their contents maintained by the Standby Supply (SBYVDD) and those which have their
contents maintained by the Regulated Supply (DVDD).
In a Line-powered application it is necessary to minimise the current drawn from the Line when in the onhook state. For this reason it is intended that power should be removed from the Regulated Supply when
it is not required. This will de-power the microcontroller and the functions of the CMX878 which are not
required in this mode, for example the crystal oscillator, the VBIAS generator, the MODEM & TONES
PROCESSOR block, the Line DAC and ADC, and the associated registers.
The Standby Supply operates independently of the Regulator and this powers the functions which must
remain present in the on-hook state. These functions are the Line Reversal / Ring detectors and the
WAKE input detector. It also powers the three ‘Standby Supply Registers’ – these are:
The Configuration Register. This is used to: enable the standby event detectors; to enable/disable
the Regulated Supply; and to define certain states. As an example, the microcontroller could program
this register to enable detection of a Line Reversal and de-power the Regulated Supply. This will remove
power from the microcontroller but will leave the Line Reversal detector enabled on the Standby Supply.
When a Line Reversal is later detected, power to the microcontroller will be restored and it will begin its
program.
The Supplementary Standby Register. A general purpose write/read register which can be used to
store any values that must survive a drop-out of the Regulated Supply.
The Line/Wakeup Event Register. This is read from in order to determine which detector events have
occurred and to check that the contents of the Standby Supply Registers are valid. (It also indicates the
output of the Line DAC, although this additionally requires the Regulated Supply to be present.)
The CMX878 will automatically power up the microcontroller (via the Regulated Supply) when:
i.
The circuit is initially plugged into Line Power. The microcontroller should then read the
Line/Wakeup Event Register and will determine that the Standby Supply Registers have ‘INVALID’
contents. It will then proceed with programming the CMX878 registers.
ii.
A Line Reversal, Ring, or WAKE input event has occurred (note that the Reversal and Ring
detectors must have been previously enabled in the Configuration Register for them to operate). The
microcontroller will read the Line/Wakeup Event Register, it will determine that the Standby Supply
Registers have ‘VALID’ contents, and it will determine and act upon the Event which has occurred.
 2002 Consumer Microcircuits Limited
26
D/878/2
Line Powered Modem plus DAA
CMX878
Definitions of ‘VALID’ and ‘INVALID’: These terms describe the data integrity of the Standby Supply
Registers. The CMX878 monitors the Standby Supply and will set the ‘VALID’ bit (bit 5) of the
Line/Wakeup Event Register accordingly. 1 = ‘VALID’. 0 = ‘INVALID’.
Upon first application of line power (or after a line interruption severe enough to drop SBYVDD below its
acceptable level) this bit will be set to 0 to indicate ‘INVALID’ register contents. When the microcontroller
has read this bit as being ‘INVALID’ it should ignore the value of all other bits read back. It should then
proceed to program both the Configuration Register and the Supplementary Standby Register to the
required values. The Standby Supply Register contents are now ‘VALID’ and bit 5 of the Line/Wakeup
Event Register will be set to 1.
The microcontroller must check the ‘VALID’ status at the start of its program after it has powered up.
Also if the microcontroller is able to detect certain fault conditions (e.g. with a brown-out detector or a
watchdog timer) it should again check the ‘VALID’ status.
All other C-BUS Registers are concerned with the control of functions which operate from the
Regulated Supply, usually with the Line off-hook; for example operation of the MODEM & TONES
PROCESSOR block. Note that these registers will lose their contents whenever the Regulated Supply is
de-powered.
Interrupts: The only register bit which can directly cause an interrupt is bit 14 (IRQ) of the Status
Register and thus all interrupts operate through this bit. When this bit and the IRQNEN bit (bit 6) of the
General Control Register are both 1 then the IRQN output pin will be pulled low (to Vss).
The following C-BUS addresses and registers are used by the CMX878:
Register
Name
Type
General Reset Command
General Control Register
Transmit Mode Register
Receive Mode Register
Transmit Data Register
address only,
no data
16-bit write-only
16-bit write-only
16-bit write-only
8-bit write-only
Receive Data Register
Status Register
Programming Register
Line Control Register
DAC Control Register
ADC Control Register
Configuration Register Write
Configuration Register Read
Supplementary Standby Register Write
Supplementary Standby Register Read
Line/Wakeup Event Register
8-bit read-only
16-bit read-only
16-bit write-only
8-bit write-only
8-bit write-only
8-bit write-only
16-bit write
16-bit read
16-bit write
16-bit read
16-bit read-only
Address
$01
$E0
$E1
$E2
$E3 &
$E4
$E5
$E6
$E8
$EC
$ED
$EE
$F0
$F1
$F2
$F3
$F4
From Supply:
Standby [S] or
Regulated [R]
R
R
R
R
R
R
R
R
R
R
R
S
S
S
S
S
Note: The C-BUS addresses $E9, $EA and $EB are allocated for production testing and should not be
accessed in normal operation.
 2002 Consumer Microcircuits Limited
27
D/878/2
Line Powered Modem plus DAA
CMX878
a) Single byte from µC
CSN
Note:
The SERIAL CLOCK line may be high
or low at the start and end of each
transaction. See figure 15.
SERIAL CLOCK
COMMAND DATA
REPLY DATA
Hi-Z
7 6 5 4 3 2 1 0
Address (01 Hex = Reset)
= Level not important
b) One Address and one Data byte from µC
CSN
SERIAL CLOCK
COMMAND DATA
REPLY DATA
7 6 5 4 3 2 1 0
Address
7 6 5 4 3 2 1 0
Data to CMX878
Hi-Z
c) One Address and 2 Data bytes from µC
CSN
SERIAL CLOCK
COMMAND DATA
REPLY DATA
7 6 5 4 3 2 1 0
Address
Hi-Z
7 6 5 4 3 2 1 0
First (msb) data
byte to CMX878
7 6 5 4 3 2 1 0
Second (lsb) data
byte to CMX878
d) One Address byte from µC and one Reply byte from CMX878
CSN
SERIAL CLOCK
COMMAND DATA
REPLY DATA
7 6 5 4 3 2 1 0
Address
7 6 5 4 3 2 1 0
Data from CMX78
Hi-Z
e) One Address byte from µC and 2 Reply bytes from CMX878
CSN
SERIAL CLOCK
7 6 5 4 3 2 1 0
Address
COMMAND DATA
REPLY DATA
Hi-Z
7 6 5 4 3 2 1 0
First (msb) byte
from CMX878
7 6 5 4 3 2 1 0
Second(lsb) byte
from CMX878
Figure 9 C-BUS Transactions
 2002 Consumer Microcircuits Limited
28
D/878/2
Line Powered Modem plus DAA
1.5.12.1
CMX878
General Reset Command
General Reset Command
(no data)
C-BUS address $01
This command resets the device and clears all bits of the General Control, Transmit Mode, Receive
Mode, Line Control, DAC Mode and ADC Mode Registers and bits 15 and 13-0 of the Status Register. It
does not affect the Standby Supply Registers.
1.5.12.2
Configuration Register
Configuration Register: 16-bit read & write
C-BUS addresses: write $F0 ; read $F1
This is a ‘Standby Supply Register’.
Bit 0
Bit 1
Bit 2
Bit 3
Bit 4
Bits 5-15
Writing 1 enables Detection of Line Reversal Event
Writing 1 enables Detection of Start of Ring Event
Writing 1 enables Detection of End of Ring Burst Event
Set this bit to 0
Regulated Supply Enable
1 powers the Regulated Supply.
0 de-powers up the Regulated Supply.
Note that this bit can get set to 1 by events other than a C-BUS write – see
below.
General Purpose Bits 5-15
Whenever a C-BUS ‘write’ is made to this register, its contents will be deemed VALID and Line/Wakeup
Event Register bit 5 will be set to 1. Any loss of the Standby Supply will invalidate the contents of this
register and it will need to be (re-) programmed; read Line/Wakeup Event Register bit 5 to check if this is
necessary.
Bits 0-2. Depending on which type of Line Reversal or Ring event is to be detected, set one of these bits
to logic 1. If it is necessary to distinguish between a Line Reversal and a Ring then set bit 0 to 1; the
microcontroller will be alerted to the first RT pin edge and can then monitor any further activity by reading
the RD and RT bits from the Line/Wakeup Event Register.
Bit 3. Set this bit to 0.
When one of the above Detection Events occurs, bit 4 will be set to 1 powering the Regulated Supply and
the microcontroller; also the Status Register bit 14 will be set to 1.
Bit 4. When this bit is set to 0* the Regulated Supply will be de-powered and only the circuits powered by
the Standby Supply will remain active (Ring, Line Reversal Detectors, WAKE input, Standby Supply
Registers). Both the microcontroller and the C-BUS will be deactivated and this state will remain until a
Wake Event occurs. The contents of all non-Standby registers will be lost.
This bit should be set to 1 when the Regulated Supply is to remain in its powered state.
This bit is also gets set to 1 by:
An Event – any of Line/Wakeup Event Register bits 0-3 going to 1 (as caused by a Line
Reversal, Ring or WAKE pin Event),
A Power-on-Reset – the Line/Wakeup Event Register bit 5 goes to 0 (when the contents of the
Standby Registers are NOT VALID due to a previous loss of the Standby Supply).
*Note: Because an event indicated by the Line/Wakeup Event Register can set this bit, the Line/Wakeup
Event Register must always be read (clearing it) before de-powering the Regulated Supply with Bit 4.
 2002 Consumer Microcircuits Limited
29
D/878/2
Line Powered Modem plus DAA
CMX878
Bits 5-15 are general purpose register bits which, being powered from the Standby Supply, will retain
their values even when the Regulated Supply is absent. These bits can be set by the microcontroller to
represent various operating states. Consequently if the Regulated Supply is temporarily lost (e.g. a
Central Office generated line break following an off-hook transition), when the Regulated Supply returns,
the microcontroller can read back these values to re-establish the position in its program.
1.5.12.3
Supplementary Standby Register
Supplementary Standby Register: 16-bit read and write
$F3
C-BUS addresses: write $F2 ; read
This is a ‘Standby Supply Register’ and allows for data storage even when the Regulated Supply is
removed. The bits can be used by the application for any purpose
Bit:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
a 16-bit general purpose register – set as required
1.5.12.4
Line/Wakeup Event Register
Line/Wakeup Event Register: 16-bit read-only
C-BUS address $F4
This is a ‘Standby Supply Register’.
Bit 0
Bit 1
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Bit 8
Bit 9
Bits 10-15
1 when a Line Reversal Event has occurred
1 when a Start of Ring Event has occurred
1 when an End of Ring Burst Event has occurred
1 when a WAKE pin Event has occurred
Reserved for future use. Currently set to 0
1 when the contents of the Standby Supply Registers are VALID.
RD. The equivalent logic level at the ring detector’s RD input
RT. The equivalent logic level at the ring detector’s RT input
1 when a Line ADC Drop-out Event has occurred
ADC comparator level (0 = ADCIN pin < ADC-REF, else 1)
Reserved for future use. Currently set to 000000
Bit 0. A ‘Line Reversal Event’ is caused by one rising edge on the RD pin.
Bit 1. A ‘Start of Ring Event’ is caused by two falling edges on the RD pin within the period that the RT
pin is low.
Bit 2. An ‘End of Ring Burst Event’ is as per the ‘Start of Ring Event’ but it does not occur until the RT
pin goes back high.
These above three Events can only occur if they were previously enabled in the Configuration Register.
Bit 3. A ‘WAKE pin Event’ is when the WAKE pin makes a 0 to 1 transition.
When one of Bits 0-3 goes to 1, bit 4 of the Configuration Register will be set to 1, powering up the
Regulated Supply and the microcontroller; also Status Register bit 14 will be set to 1.
Bit 4. Currently set to 0.
Bit 5. This bit determines the validity of the register bits which are powered from the Standby Supply.
After reading this register, the microcontroller should consider the level of this bit FIRST.
 2002 Consumer Microcircuits Limited
30
D/878/2
Line Powered Modem plus DAA
CMX878
Upon any drop-out of the Standby Supply, this bit will be set to 0 to indicate that the contents of all other
register bits in the Standby Supply Registers cannot be relied upon and are hence termed NOT VALID.
Whenever the device is in this NOT VALID state, it will also set Configuration Register bit 4 to 1 in order
to ensure that the Regulated Supply and microcontroller are powered up.
Whenever the microcontroller reads a NOT VALID state, it should proceed to program the Configuration
Register and the Supplementary Standby Register. Programming the Configuration Register will make
its contents VALID and Line/Wakeup Event Register bit 5 will be set to 1.
Bits 6 and 7. The equivalent logic levels on the ring detector pins RD and RT can be sampled via these
bits.
Bit 8. A ‘Line ADC Drop-out Event’ occurs when the Line ADC voltage has fallen below the programmed
ADC-REF voltage. When Bit 8 goes to 1, Status Register bit 14 will be set to 1 – this will also give an
interrupt if the relevant flag bits are set. The ‘Line ADC Drop-out Event’ is disabled when the ADC
Control Register is set to all 0’s.
Bit 9. The level on the output of the Line ADC comparator.
Bits 0-3 and Bit 8 are cleared after reading this register.
1.5.12.5
Line Control Register
Line Control Register: 8-bit write-only.
C-BUS address $EC
This register controls sets various logic outputs which can be used to control external circuits.
Bit 0
Bit 1
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
1.5.12.6
Logic level CLID Z EN pin (Caller Line ID Z control)
Logic level at GP OP1 pin (a General Purpose logic pin)
Logic level at GP OP2 pin (a General Purpose logic pin)
Logic level at GP OP3 pin (a General Purpose logic pin)
Logic level at GYON (Gyrator Enable)
Reserved for future use. Set to 0.
Reserved for future use. Set to 0.
Reserved for future use. Set to 0.
DAC Control Register
DAC Control Register: 8-bit write-only
Bit:
7
6
5
4
3
2
C-BUS address $ED
1
0
Register Value
When the DAC is enabled, the voltage produced is:
AVDD x ( Register Value / 255 )
via an output impedance of approximately 5kΩ.
All bits of this register are cleared to 0 by a General Reset command. A setting of all 0’s will disable and
powersave the DAC.
 2002 Consumer Microcircuits Limited
31
D/878/2
Line Powered Modem plus DAA
CMX878
The state of the ICTRL pin is also dependent on the mode of the Regulator and Gyrator as shown in the
following table:
Mode of
Operation
On-hook,
min. current
On-hook,
Regulator ON
Off-hook
Programmed
Line Current
Draw
1.5.12.7
Regulator
Enabled?
N
Gyrator
Enabled?
N
DAC
Enabled?
N
ICTRL
OUTPUT
Vss
Y
N
N
Low Z Vss
Y
Y
Y
N
N
Y
Hi Z
As
programmed
on the DAC
ADC Control Register
ADC Control Register: 8-bit write-only.
Bit:
7
6
5
4
3
2
C-BUS address $EE
1
0
Register Value
The ADC comprises an 8 bit programmable reference voltage, ADC-REF, which is compared with the
voltage at the ADCIN pin. The output of the comparator is available in the Line/Wake Event Register.
The ADC is designed to operate with signals between 0V (Vss) and half supply (AVDD / 2). The external
divider will normally be configured to limit the ADCIN pin signals to within this range.
The ADC-REF voltage is:
( AVDD / 2 ) x ( Register Value / 255 )
All bits of this register are cleared to 0 by a General Reset command. A setting of all 0s will powersave
the ADC circuit and will force the output of the comparator to 1.
The ADC can be used to measure a voltage or detect a drop-out. See Section 1.5.11 for details.
 2002 Consumer Microcircuits Limited
32
D/878/2
Line Powered Modem plus DAA
1.5.12.8
CMX878
General Control Register
General Control Register: 16-bit write-only.
C-BUS address $E0
This register controls general features of the MODEM & TONES PROCESSOR block such as the
Powersave and Loopback modes, and the IRQ mask bits. It also allows the fixed compromise equalisers
in the Tx and Rx signal paths to be disabled if desired, and sets the internal clock dividers to use either a
11.0592 or a 12.288 MHz XTAL frequency.
All bits of this register are cleared to 0 by a General Reset command.
Bit:
15
14
13
12
11
10
9
8
7
6
0
0
0
Xtal
freq
LB
Equ
0
Pwr
Rst
Irqn
en
5
4
3
2
1
0
IRQ Mask Bits
General Control Register b15-13: Reserved, set to 000
General Control Register b12: Xtal frequency
This bit should be set according to the Xtal frequency.
b12 = 1
b12 = 0
11.0592MHz
12.2880MHz
General Control Register b11: Analogue Loopback test mode
This bit controls the analogue loopback test mode. Note that in loopback test mode both
Transmit and Receive Mode Registers should be set to the same modem type and band or bit
rate.
b11 = 1
b11 = 0
Local analogue loopback mode enabled
No loopback (normal modem operation)
General Control Register b10: Tx and Rx Fixed Compromise Equalisers
This bit allows the Tx and Rx fixed compromise equalisers in the modem transmit and receive
filter blocks to be disabled.
b10 = 1
b10 = 0
Disable equalisers
Enable equalisers (600, 1200 or 2400bps modem modes)
General Control Register b9: Reserved, set to 0
 2002 Consumer Microcircuits Limited
33
D/878/2
Line Powered Modem plus DAA
CMX878
General Control Register b8: Powerup
This bit controls the internal power supply to most of the internal circuits, including the Xtal
oscillator, VBIAS supply and the MODEM & TONES PROCESSOR block. It does not affect the
DAC and ADC. It does not affect the circuits which run off the Standby Supply.
Note that the General Reset command clears this bit, putting the MODEM & TONES
PROCESSOR block into Powersave mode.
When the device is switched from Powersave mode to normal operation by setting the
Powerup bit to 1, the Reset bit should also be set to 1 and should be held at 1 for about 20ms
while the internal circuits, Xtal oscillator and VBIAS stabilise before starting to use the
transmitter or receiver.
Changing the Powerup bit from 0 to 1 clears all bits of the Transmit Mode and Receive Mode
Registers and clears b15 and b13-0 of the Status Register.
b8 = 1
b8 = 0
MODEM & TONES PROCESSOR BLOCK powered up normally
MODEM & TONES PROCESSOR BLOCK Powersave
General Control Register b7: Reset
Setting this bit to 1 resets the CMX878’s internal circuitry, clearing all bits of the Transmit and
Receive Mode Registers and b13-0 of the Status Register.
b7 = 1
b7 = 0
Internal circuitry in a reset condition.
Normal operation
General Control Register b6: IRQNEN (IRQN O/P Enable)
Setting this bit to 1 enables the IRQN output pin.
b6 = 1
b6 = 0
IRQN pin driven low (to VSS) if the IRQ bit of the Status Register = 1
IRQN pin disabled (high impedance)
General Control Register b5-0: IRQ Mask bits
These bits affect the operation of the IRQ bit of the Status Register as described in section
1.5.12.13.
 2002 Consumer Microcircuits Limited
34
D/878/2
Line Powered Modem plus DAA
1.5.12.9
CMX878
Transmit Mode Register
Transmit Mode Register: 16-bit write-only.
C-BUS address $E1
This register controls the CMX878 transmit signal type and level. All bits of this register are cleared to 0
by a General Reset command or when b7 (Reset) of the General Control Register is 1.
Bit:
15
14
13
12
11
10
Tx mode = modem
Tx level
Tx mode = DTMF/Tones
Tx mode = Disabled
Tx level
9
8
7
Guard tone
6
5
4
Scrambler
Unused, set to 0000
Set to 0000 0000 0000
3
2
1
0
Start-stop /
# data bits /
synch data
synch data source
DTMF or Tone select
Tx Mode Register b15-12: Tx mode
These 4 bits select the transmit operating mode.
b15
b14
b13
b12
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
V.22bis 2400 bps QAM
“
V.22/Bell 212A 1200 bps DPSK
“
V.22 600 bps DPSK
“
V.21 300 bps FSK
“
Bell 103 300 bps FSK
“
V.23 FSK
“
Bell 202 FSK
“
DTMF / Tones
Transmitter disabled
High band (Answering modem)
Low band (Calling modem)
High band (Answering modem)
Low band (Calling modem)
High band (Answering modem)
Low band (Calling modem)
High band (Answering modem)
Low band (Calling modem)
High band (Answering modem)
Low band (Calling modem)
1200 bps
75 bps
1200 bps
150 bps
Tx Mode Register b11-9: Tx level
These 3 bits set the gain of the Tx Level Control block.
b11
b10
b9
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
 2002 Consumer Microcircuits Limited
0dB
-1.5dB
-3.0dB
-4.5dB
-6.0dB
-7.5dB
-9.0dB
-10.5dB
35
D/878/2
Line Powered Modem plus DAA
CMX878
Tx Mode Register b8-7: Tx Guard tone (QAM, DPSK modes)
These 2 bits select the guard tone to be transmitted together with highband QAM or DPSK.
Set both bits to 0 in FSK modes.
b8
b7
1
1
Tx 550Hz guard tone
1
0
Tx 1800Hz guard tone
0
x
No Tx guard tone
Tx Mode Register b6-5: Tx Scrambler (QAM, DPSK modes)
These 2 bits control the operation of the Tx scrambler used in QAM and DPSK modes.
Set both bits to 0 in FSK modes.
b6
b5
1
1
Scrambler enabled, 64 ones detect circuit enabled (normal use)
1
0
Scrambler enabled, 64 ones detect circuit disabled
0
x
Scrambler disabled
Tx Mode Register b4-3: Tx Data Format (QAM, DPSK, FSK modes)
These two bits select Synchronous or Start-stop mode and the addition of a parity bit to
transmitted characters in Start-stop mode.
b4
1
1
0
0
b3
1
0
1
0
Synchronous mode
Start-stop mode, no parity
Start-stop mode, even parity bit added to data bits
Start-stop mode, odd parity bit added to data bits
Tx Mode Register b2-0: Tx Data and Stop bits (QAM, DPSK, FSK Start-Stop modes)
In Start-stop mode these three bits select the number of Tx data and stop bits.
b2
1
1
1
1
0
0
0
0
b1
1
1
0
0
1
1
0
0
b0
1
0
1
0
1
0
1
0
8 data bits, 2 stop bits
8 data bits, 1 stop bit
7 data bits, 2 stop bits
7 data bits, 1 stop bit
6 data bits, 2 stop bits
6 data bits, 1 stop bit
5 data bits, 2 stop bits
5 data bits, 1 stop bit
Tx Mode Register b2-0: Tx Data source (QAM, DPSK, FSK Synchronous mode)
In Synchronous mode (b4-3 = 11) these three bits select the source of the data fed to the Tx
FSK or QAM/DPSK scrambler and modulator.
b2
1
0
0
0
b1
x
1
1
0
b0
x
1
0
x
 2002 Consumer Microcircuits Limited
Data bytes from Tx Data Buffer
Continuous 1s
Continuous 0s
Continuous V.22bis handshake S1 pattern dibits ’00,11’ in DPSK and
QAM modes, continuous alternating 1s and 0s in all other modes.
36
D/878/2
Line Powered Modem plus DAA
CMX878
Tx Mode Register b8-0: DTMF/Tones mode
If DTMF/Tones transmit mode has been selected (Tx Mode Register b15-12 = 0001) then b8-5
should be set to 0000 and b4-0 will select a DTMF signal or a fixed tone or one of four
programmed tones or tone pairs for transmission.
b4 = 0: Tx fixed tone or programmed tone pair
b3
b2
b1
b0
Tone frequency (Hz)
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
No tone
697
770
852
941
1209
1336
1477
1633
1300
2100
2225
Tone pair TA
Tone pair TB
Tone pair TC
Tone pair TD
(Calling tone)
(Answer tone)
(Answer tone)
Programmed Tx tone or tone pair, see 1.5.12.14
“
“
“
b4 = 1: Tx DTMF
b3
b2
b1
b0
Low frequency (Hz)
High frequency (Hz)
Keypad symbol
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
941
697
697
697
770
770
770
852
852
852
941
941
941
697
770
852
1633
1209
1336
1477
1209
1336
1477
1209
1336
1477
1336
1209
1477
1633
1633
1633
D
1
2
3
4
5
6
7
8
9
0
*
#
A
B
C
 2002 Consumer Microcircuits Limited
37
D/878/2
Line Powered Modem plus DAA
1.5.12.10
CMX878
Receive Mode Register
Receive Mode Register: 16-bit write-only.
C-BUS address $E2
This register controls the CMX878 receive signal type and level.
All bits of this register are cleared to 0 by a General Reset command or when b7 (Reset) of the General
Control Register is 1.
Bit:
15
14
13
12
11
10
Rx mode = modem
Rx level
Rx mode = Tones detect
Rx mode = Disabled
Rx level
9
8
7
Eq
6
Descrambl
5
4
3
2
1
0
Start-stop/Synch
No. of bits and
parity
DTMF/Tones/Call Progress select
Set to 0000 0000 0000
Rx Mode Register b15-12: Rx mode
These 4 bits select the receive operating mode.
b15
b14
b13
b12
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
V.22bis 2400 bps QAM
High band (Calling modem)
“
Low band (Answering modem)
V.22/Bell 212A 1200 bps DPSK
High band (Calling modem)
“
Low band (Answering modem)
V.22 600 bps DPSK
High band (Calling modem)
“
Low band (Answering modem)
V.21 300 bps FSK
High band (Calling modem)
“
Low band (Answering modem)
Bell 103 300 bps FSK
High band (Calling modem)
“
Low band (Answering modem)
V.23 FSK
1200 bps
“
75 bps
Bell 202 FSK
1200 bps
“
150 bps
DTMF, Programmed tone pair, Answer Tone, Call Progress detect
Receiver disabled
Rx Mode Register b11-9: Rx level
These three bits set the gain of the Rx Gain Control block.
b11
b10
b9
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
 2002 Consumer Microcircuits Limited
0dB
-1.5dB
-3.0dB
-4.5dB
-6.0dB
-7.5dB
-9.0dB
-10.5dB
38
D/878/2
Line Powered Modem plus DAA
CMX878
Rx Mode Register b8: Rx Auto-equalise (DPSK/QAM modem modes)
This bit controls the operation of the receive DPSK/QAM auto-equaliser. Set to 0 in FSK
modes. Set to 1 in 2400bps QAM mode.
b8 = 1
b8 = 0
Enable auto-equaliser
DPSK mode: Auto-equaliser disabled
QAM mode : Auto-equaliser settings frozen
Rx Mode Register b7-6: Rx Scrambler (DPSK/QAM modem modes)
These 2 bits control the operation of the Rx descrambler used in QAM and DPSK modes.
Set both bits to 0 in FSK modes
b7
b6
1
1
Descrambler enabled, 64 ones detect circuit enabled (normal use)
1
0
Descrambler enabled, 64 ones detect circuit disabled
0
x
Descrambler disabled
Rx Mode Register b5-3: Rx USART Setting (QAM, DPSK, FSK modem modes)
These three bits select the Rx USART operating mode. The 1% and 2.3% overspeed options
apply to DPSK/QAM modes only.
b5
b4
b3
1
1
1
Rx Synchronous mode
1
1
0
Rx Start-stop mode, no overspeed
1
0
1
Rx Start-stop mode, +1% overspeed (1 in 8 missing Stop bits allowed)
1
0
0
Rx Start-stop mode, +2.3% overspeed (1 in 4 missing Stop bits allowed)
0
x
x
Rx USART function disabled
Rx Mode Register b2-0: Rx Data bits and parity (QAM, DPSK, FSK Start-Stop modem
modes)
In Start-stop mode these three bits select the number of data bits (plus any parity bit) in each
received character. These bits are ignored in Synchronous mode.
b2
b1
b0
1
1
1
8 data bits + parity
1
1
0
8 data bits
1
0
1
7 data bits + parity
1
0
0
7 data bits
0
1
1
6 data bits + parity
0
1
0
6 data bits
0
0
1
5 data bits + parity
0
0
0
5 data bits
Rx Mode Register b2-0: Tones Detect mode
In Tones Detect Mode (Rx Mode Register b15-12 = 0001) b8-3 should be set to 000000
Bits 2-0 select the detector type.
b2
b1
b0
1
0
0
Programmable Tone Pair Detect
0
1
1
Call Progress Detect
0
1
0
2100, 2225Hz Answer Tone Detect
0
0
1
DTMF Detect
0
0
0
Disabled
 2002 Consumer Microcircuits Limited
39
D/878/2
Line Powered Modem plus DAA
1.5.12.11
CMX878
Tx Data Register
Tx Data Register: 8-bit write-only.
Bit:
7
6
5
4
3
C-BUS addresses $E3 and $E4
2
1
0
Data bits to be transmitted
In Synchronous Tx data mode this register contains the next 8 data bits to be transmitted. Bit 0 is
transmitted first.
In Tx Start-Stop mode the specified number of data bits will be transmitted from this register (b0 first). A
Start bit, a Parity bit (if required) and Stop bit(s) will be added automatically.
This register should only be written to when the Tx Data Ready bit of the Status Register is 1.
C-BUS address $E3 should normally be used, $E4 is for implementing the V.14 overspeed transmission
requirement in Start-Stop mode, see section 1.5.1.
1.5.12.12
Rx Data Register
Rx Data Register: 8-bit read-only.
Bit:
7
6
5
4
3
C-BUS address $E5
2
1
0
Received data bits
In unformatted Rx data mode this register contains 8 received data bits, b0 of the register holding the
earliest received bit, b7 the latest.
In Rx Start-Stop data mode this register contains the specified number of data bits from a received
character, b0 holding the first received bit.
 2002 Consumer Microcircuits Limited
40
D/878/2
Line Powered Modem plus DAA
1.5.12.13
CMX878
Status Register
Status Register: 16-bit read-only.
C-BUS address $E6
Bits 13-0 of this register are cleared to 0 by a General Reset command or when b7 (Reset) of the
General Control Register is 1.
Bit:
15
14
13
IRQ
RD
PF
12
11
10
9
8
7
6
5
4
3
2
1
0
See below for uses of these bits
The meanings of the Status Register bits 12-0 depend on whether the receive circuitry is in Modem or
Tones Detect mode.
Status Register bits:
Rx Modem modes
b15
b14
b13
b12
b11
b10
b9
b8
b7
b6
b5
b4
b3
b2
b1
b0
Rx Tones Detect modes
IRQ
Set to 1 when a Line/Wakeup Event has occurred
Programming Flag bit. See 1.5.12.14
Set to 1 on Tx data ready.
Cleared by write to Tx Data Register
Set to 1 on Tx data underflow.
Cleared by write to Tx Data Register
1 when energy is detected in Rx
1 when energy is detected in Call
modem signal band
Progress band or when both
programmable tones are detected
0
1 when S1 pattern (double DPSK
dibit 00,11) is detected in DPSK or
QAM modes, or when ‘1010..’
pattern is detected in FSK modes
See following table
0
See following table
1 when 2100Hz answer tone or the
second programmable tone is
detected
Set to 1 on Rx data ready.
1 when 2225Hz answer tone or the
Cleared by read from Rx Data
first programmable tone is detected
Register
Set to 1 on Rx data overflow.
1 when DTMF code is detected
Cleared by read from Rx Data
Register
Set to 1 on Rx framing error
0
Set to 1 on even Rx parity
Rx DTMF code b3, see table
QAM/DPSK Rx signal quality b2
Rx DTMF code b2
QAM/DPSK Rx signal quality b1
Rx DTMF code b1
QAM/DPSK Rx signal quality b0
Rx DTMF code b0
or FSK frequency demodulator
output
 2002 Consumer Microcircuits Limited
41
** IRQ
Mask bit
b5
b4
b3
b3
b2
b1
b1
b1
b0
b0
-
D/878/2
Line Powered Modem plus DAA
CMX878
Notes: ** This column shows the corresponding IRQ Mask bits in the General Control Register. A 0 to 1
transition on any of the Status Register bits 14-5 will cause the IRQ bit b15 to be set to 1 if the
corresponding IRQ Mask bit is 1. The IRQ bit is cleared by a read of the Status Register or a
General Reset command or by setting b7 or b8 of the General Control Register to 1.
A spurious ‘continuous 0s’ detect may be generated within 4msec of changing the Rx Mode
Register to any of the QAM or DPSK modes.
The operation of the data demodulator and pattern detector circuits within the CMX878 does not
depend on the state of the Rx energy detect function.
Decoding of Status Register b8,7 in Rx Modem Modes, see also Figure 8a
b8
b7
Descrambler disabled
1
1
-
1
0
0
0
1
0
Continuous unscrambled 0s
Continuous unscrambled 1s
-
Descrambler enabled
(DPSK/QAM modes only)
Continuous scrambled 1s
(see note)
Continuous scrambled 0s
Continuous unscrambled 1s
-
When the descrambler is enabled then detection of continuous unscrambled 1s will inhibit the
continuous scrambled 1s detector.
Figure 10a Operation of Status Register bits 5-10
The IRQN output pin will be pulled low (to VSS) when the IRQ bit of the Status Register and the
IRQNEN bit (b6) of the General Control Register are both 1.
Changes to Status Register bits caused by a change of Tx or Rx operating mode can take up to
150µs to take effect.
In Powersave mode or when the Reset bit (b7) of the General Control Register is 1 bit 15 of the
Status Register continues to operate.
The ‘continuous 0’ and ‘continuous 1’ detectors monitor the Rx signal after the QAM/DPSK
descrambler, (see Figure 8a) and hence will detect continuous 1s or 0s if the descrambler is
disabled, or continuous scrambled 1s or 0s if the descrambler is enabled.
 2002 Consumer Microcircuits Limited
42
D/878/2
Line Powered Modem plus DAA
CMX878
In QAM or DPSK Rx modem modes b2-0 of the Status Register contain a value indicative of the
received signal BER, see Figure 11. In Rx FSK modem modes bits 2 and 1 will be zero and b0
will show the output of the frequency demodulator, updated at 8 times the nominal data rate.
Figure 10b Operation of Status Register in DTMF Rx Mode
b3
b2
b1
b0
Low frequency (Hz)
High frequency
(Hz)
Keypad symbol
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
941
697
697
697
770
770
770
852
852
852
941
941
941
697
770
852
1633
1209
1336
1477
1209
1336
1477
1209
1336
1477
1336
1209
1477
1633
1633
1633
D
1
2
3
4
5
6
7
8
9
0
*
#
A
B
C
Received DTMF Code: b3-0 of Status Register
Bit 14: This bit is the logical-OR of Line/Wakeup Event Register bits 0,1,2,3 & 8. It will go to 1 to
indicate that a Line/Wakeup Event has occurred – this could be a Line Reversal/Ring Event, a WAKE pin
Event, or a Line ADC Drop-out Event. The Regulated Supply and microcontroller will be powered-up (if
not already) by such an event.
 2002 Consumer Microcircuits Limited
43
D/878/2
Line Powered Modem plus DAA
CMX878
Bit 14 going to 1 can also produce an IRQ if the appropriate mask bits have been set – although this is
only possible in the case where the Regulated Supply has not been de-powered since the setting of the
mask bits.
The microcontroller is therefore made aware of the Line/Wakeup Event by being powered up or with an
interrupt. Following this powerup/IRQ, the microcontroller should read the Status Register to clear any
interrupt. It should then read the Line/Wakeup Event Register to determine which Line/Wakeup Event
had occurred.
1.E-03
1.E-04
BER
1.E-05
1.E-06
0
1
2
3
4
5
6
7
Rx Status Register BER reading
Figure 11 Typical Rx BER vs. Average Status Register BER Reading (b2-0)
1.5.12.14
Programming Register
Programming Register : 16-bit write-only.
C-BUS address $E8
This register is used to program the transmit and receive programmed tone pairs by writing appropriate
values to RAM locations within the CMX878. Note that these RAM locations are cleared by Powersave or
Reset.
The Programming Register should only be written to when the Programming Flag bit (b13) of the Status
Register is 1. The act of writing to the Programming Register clears the Programming Flag bit. When the
programming action has been completed (normally within 150µs) the CMX878 will set the bit back to 1.
When programming Transmit or Receive Tone Pairs, do not change the Transmit or Receive Mode
Registers until programming is complete and the Programming Flag bit has returned to 1.
Transmit Tone Pair Programming
4 transmit tone pairs (TA to TD) can be programmed.
The frequency (max 3.4kHz) and level must be entered for each tone to be used.
Single tones are programmed by setting both level and frequency values to zero for one of the pair.
 2002 Consumer Microcircuits Limited
44
D/878/2
Line Powered Modem plus DAA
CMX878
Programming is done by writing a sequence of up to seventeen 16-bit words to the Programming
Register.
The first word should be 32768 (8000 hex), the following 16-bit words set the frequencies and levels and
are in the range 0 to 16383 (0-3FFF hex)
Word
1
2
3
4
5
6
7
----16
17
Tone Pair
Value written
32768
Tone 1 frequency
Tone 1 level
Tone 2 frequency
Tone 2 level
Tone 1 frequency
Tone 1 level
------------------Tone 2 frequency
Tone 2 level
TA
TA
TA
TA
TB
TB
----TD
TD
The Frequency values to be entered are calculated from the formula:
Value to be entered = desired frequency (Hz) * 3.414
i.e. for 1kHz the value to be entered is 3414 (or 0D56 in Hex).
The Level values to be entered are calculated from the formula:
Value to be entered = desired Vrms * 93780 / VDD
i.e. for 0.5Vrms at VDD = 3.0V, the value to be entered is 15630 (3D0E in Hex)
Note that allowance should be made for the transmit signal filtering in the CMX878 which attenuates the
output signal for frequencies above 2kHz by 0.25dB at 2.5kHz, by 1dB at 3kHz and by 2.2dB at 3.4kHz.
On powerup or after a reset, the tone pairs TA-TC are set to notone, and TD set to generate 2130Hz +
2750Hz at approximately –20dBm each.
Receive Tone Pair Programming
th
The programmable tone pair detector is implemented as shown in Figure 12a. The filters are 4 order IIR
sections. The frequency detectors measure the time taken for a programmable number of complete input
signal cycles and compare this time against programmable upper and lower limits.
Figure 12a Programmable Tone Detectors
 2002 Consumer Microcircuits Limited
45
D/878/2
Line Powered Modem plus DAA
CMX878
Figure 12b Filter Implementation
Programming is done by writing a sequence of twenty-seven 16-bit words to the Programming Register.
The first word should be 32769 (8001 hex), the following twenty-six 16-bit words set the frequencies and
levels and are in the range 0 to 32767 (0000-7FFF hex).
Word
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Value written
32769
Filter #1 coefficient b21
Filter #1 coefficient b11
Filter #1 coefficient b01
Filter #1 coefficient a21
Filter #1 coefficient a11
Filter #1 coefficient b22
Filter #1 coefficient b12
Filter #1 coefficient b02
Filter #1 coefficient a22
Filter #1 coefficient a12
Freq measurement #1 ncycles
Freq measurement #1 mintime
Freq measurement #1 maxtime
Word
15
16
17
18
19
20
21
22
23
24
25
26
27
Value written
Filter #2 coefficient b21
Filter #2 coefficient b11
Filter #2 coefficient b01
Filter #2 coefficient a21
Filter #2 coefficient a11
Filter #2 coefficient b22
Filter #2 coefficient b12
Filter #2 coefficient b02
Filter #2 coefficient a22
Filter #2 coefficient a12
Freq measurement #2 ncycles
Freq measurement #2 mintime
Freq measurement #2 maxtime
The coefficients are entered as 15-bit signed (two’s complement) integer values (the most significant bit
of the 16-bit word entered should be zero) calculated as 8192 * coefficient value from the user’s filter
design program (i.e. this allows for filter design values of -1.9999 to +1.9999).
The design of the IIR filters should make allowance for the fixed receive signal filtering in the CMX878
which has a low pass characteristic above 1.5kHz of 0.4dB at 2kHz, 1.2dB at 2.5kHz, 2.6dB at 3kHz and
4.1dB at 3.4kHz.
‘ncycles’ is the number of signal cycles for the frequency measurement.
‘mintime’ is the smallest acceptable time for ncycles of the input signal expressed as the number of
9.6kHz timer clocks. i.e. ‘mintime’ = 9600 * ncycles / high frequency limit
‘maxtime’ is the highest acceptable time for ncycles of the input signal expressed as the number of
9.6kHz timer clocks. i.e. ‘maxtime’ = 9600 * ncycles / low frequency limit
The level detectors include hysteresis. The threshold levels - measured on the line with unity gain filters,
using the line interface circuit shown in Figure 4a, and with the Rx Gain Control block set to 0dB - are
nominally:
‘Off’ to ‘On’
-44.5dBm
‘On’ to ‘Off’
-47.0dBm
 2002 Consumer Microcircuits Limited
46
D/878/2
Line Powered Modem plus DAA
CMX878
Note that if any changes are made to the programmed values while the CMX878 is running in
Programmed Tone Detect mode they will not take effect until the CMX878 is next switched into
Programmed Tone Detect mode.
On a MODEM & TONES PROCESSOR BLOCK powerup or reset, the programmable tone pair detector
is set to act as a simple 2130Hz + 2750Hz detector.
 2002 Consumer Microcircuits Limited
47
D/878/2
Line Powered Modem plus DAA
CMX878
1.6
Application Notes
1.6.1
Controlling the Phone Line
The CMX878 needs to control the phone line in various operating states.
summarised in the following table.
Mode of
Operation
On-hook,
min. current
On-hook,
Regulator
ON
Off-hook
taking line
current
(DC Mask)
Programmed
Line Current
Draw
The main states are
Explanation
This is the On-hook or Standby state. The regulator is disabled and therefore
also the microcontroller. Only the Standby circuits remain active. The device
may have previously been primed for detection of a ring or line reversal event.
It will also respond to a WAKE pin event.
In this state the regulated supply is active but the gyrator / off-hook current
draw is disabled. There will be a current drawn from the line by the regulator,
providing a 3.3V for the CMX878, the microcontroller and any additional
application. The current taken will not be sufficient to take the line off-hook.
This is the off-hook state when the line is in-use. The regulator and gyrator are
enabled. Current will be drawn from the line to take the line off-hook. It will
also present the correctly matched impedance to AC signals. The CMX878 can
now be programmed to transmit and receive tones and modem signals. The
line voltage can be monitored by the ADC.
In this state the regulator is enabled and will draw a small line current (regulator
+ microcontroller + active CMX878 circuitry). An additional line current draw
can be set by controlling the level of the DAC. This feature can assist with
characterising the line. Whilst progressively increasing the line current,
measure the line voltage with the ADC and check for the presence of a Dial
Tone with the Call Progress Detector. When Dial Tone is detected, store a
representation of the line voltage in one of the Standby Supply registers. This
knowledge of the line voltage at below which the line is off-hook can be used to
determine if an extension has already seized the line.
The next table shows which circuits will need to be enabled.
Mode of
Operation
On-hook,
min. current
On-hook,
Regulator
ON
Off-hook on
DC Mask
Regulator
Enabled?
N
Gyrator
Enabled?
N
DAC
Enabled?
N
ADC
Enabled?
N
Y
N
N
Y
Y
N
Programmed
Line Current
Draw
Y
N
Y
Y if want to
measure line
voltage
Y to detect
an extension
going off-hook
Y
Note that in order to use any of the MODEM & TONES PROCESSOR functions of the CMX878, bit 7 of
the General Control Register ‘Pwr’ must also be set to 1 (otherwise the MODEM & TONES PROCESSOR
will be powersaved).
 2002 Consumer Microcircuits Limited
48
D/878/2
Line Powered Modem plus DAA
CMX878
1.6.2 Microcontroller Boot-up Routines
The microcontroller will normally be powered from the Regulated Supply. There are two main cases of
when power will be applied to the microcontroller causing it to jump to the start point in its program:
i.
When the application is first plugged into line power.
ii.
When the sleeping CMX878 is woken by the detection of a Ring, Line Reversal or the WAKE
input going high.
Both of these events will power up the regulated supply and the microcontroller must deal with both
cases. The following is an example of a suitable routine:
(Microcontroller powers up, program starts)
1.
Read CMX878 Status Register to clear any IRQ
2.
Read Line/Wakeup Event Register
3.
If Line/Wakeup Event Register Bit 5 is 0, a loss of Standby Supply had occurred making the
contents of the Standby Supply Registers invalid; begin programming CMX878 registers from
scratch, starting with the Configuration Register.
4.
Otherwise, consider the remaining Line/Wakeup Event bits to check for a Line
Reversal/Ring/WAKE input event – proceed accordingly.
5.
Otherwise, read back the Configuration Register. General Purpose bits 5-15 * may hold a value
representing a state which existed before the Regulated Supply failed then returned (e.g. the line
was in an off-hook state, when the Central Office generated a temporary line break). If this is the
case, proceed accordingly – perhaps returning to the previous state.
To take the line off-hook:
6.
7.
8.
Define the state of the system by writing a code to the General Purpose * bits of the
Configuration Register (these bits will survive a drop-out of the Regulated Supply).
Take the line off-hook by setting high the gyrator output bit in the Line Control Register.
The program can now proceed to power-up the MODEM & TONES PROCESSOR and
associated circuits, starting with the programming of the General Control Register.
* Note that the Supplementary Standby Register can also be used to store a code.
In common with many embedded systems, it is recommended that precautions are taken to minimise the
potential of the program crashing due to a software bug or a power supply disturbance. Watchdog timers
and brown-out detectors can be employed to assist with this. It is recommended that following such a
disturbance, a General Reset is issued to the CMX878 before proceeding to re-program it.
1.6.3
V.22bis Calling Modem Application
This section describes how the CMX878 can be used in a V.22bis Calling modem application, employing
V.25 automatic answering and the V.22bis recommended handshake sequence. This attempts to
establish a 2400bps connection but may fall back to 1200bps if the answering modem is not capable of
2400bps operation.
1. Ensure that the CMX878 is fully powered up. Set the Tx Mode Register to DTMF/Tones mode (set to
‘No Tone’ at this time), and the Rx Mode Register to Call Progress Detect mode.
2. Connect the line (go off hook) then dial the required number using the DTMF generator, monitoring for
call progress signals (dial tone, busy, etc). Change to Answer Tone Detect mode.
 2002 Consumer Microcircuits Limited
49
D/878/2
Line Powered Modem plus DAA
CMX878
3. On detection of the 2100Hz answer tone wait for it to end then wait for the 2225Hz answer tone
detector to respond. (The ‘2225Hz’ answer tone detector will recognise unscrambled binary 1s at
1200bps High Band as well as 2225Hz). When unscrambled binary 1s or 2225Hz have been received
for 155ms set a 456ms timer.
4. When the 456ms timer expires check that the 2225Hz or unscrambled 1s is still being received, then
set the Tx Mode Register for V.22 1200bps Low Band transmission of S1 signal and set a 100ms
timer. Also set the Rx Mode register to V.22 1200bps High Band receive, descrambler enabled and
Rx USART disabled.
5. When the 100ms timer expires set the Tx Mode Register for V.22 1200bps Low Band transmission of
scrambled 1s (continuous 1s with the scrambler enabled) and look for received S1 signal.
6. If the S1 signal is not detected within 270ms then go to step 14 as the answering modem is not
capable of 2400bps operation.
7. If S1 signal is detected wait for it to end then set a 450ms timer.
8. When the 450ms timer expires set the Rx Mode Register to V.22bis 2400bps High Band (this will
begin 16-way decisions) with the auto-equaliser and descrambler enabled. Start to monitor for Rx
scrambled 1s. Set a 150ms timer.
9. Once 32 consecutive bits of received scrambled 1s at 2400bps have been detected, enable the Rx
USART.
10. When the 150ms timer expires set the Tx Mode Register for V.22bis 2400bps scrambled 1s, set a
200ms timer.
11. Load the Tx Data Register with the first data to be transmitted.
12. When the 200ms timer expires set the Tx Mode Register for Start-Stop or Synchronous transmission
of data from the Tx Data Buffer. This will start transmission of the data loaded in step 11.
13. A 2400bps data connection has now been established.
14. If the S1 signal had not been detected within 270ms after step 5 then monitor for scrambled 1s at
1200bps.
15. When scrambled 1s (at 1200bps) have been received for 270ms enable the Rx USART, set a 765ms
timer and load the Tx Data Register with the first data to be transmitted.
16. When the timer expires set the Tx Mode Register for Start-Stop or Synchronous transmission of data
from the Tx Data Buffer. This will start transmission of the data loaded in step 15.
17. A 1200bps data connection has now been established.
1.6.4
V.22bis Answering Modem Application
This section describes how the CMX878 can be used in a V.22bis Answering modem application,
employing V.25 automatic answering and the V.22bis recommended handshake sequence. A 1200 or
2400 bps connection will be established depending on the signals received from the calling modem.
 2002 Consumer Microcircuits Limited
50
D/878/2
Line Powered Modem plus DAA
CMX878
1. It is assumed that the CMX878 has powered up the regulator after detecting a ringing signal. The
microcontroller confirms this by reading the Line/Wakeup Event Register. It then powers up the xtal
and MODEM & TONES PROCESSOR circuits.
2. Connect the line (go off hook), set a 2150ms timer and power up the CMX878, setting the Tx Mode
Register to DTMF/Tones mode (set for ‘no tone’ at this time) and the Rx Mode Register to V.22
1200bps Low Band receive, descrambler enabled, Rx USART disabled.
3. When the 2150ms timer expires set the Tx Mode Register to transmit the 2100Hz answer tone and set
a 3300ms timer.
4. When the 3300ms timer expires set the Tx Mode Register to no tone and set a 75ms timer.
5. When the 75ms timer expires set the Tx Mode Register for V.22 High Band 1200bps transmission of
unscrambled 1s. Monitor the received signal for the S1 signal or scrambled 1s.
6. If scrambled 1s are detected for 270ms go to step 15.
7. If the S1 signal is received wait for it to end then set the Tx Mode Register for V.22 High Band
1200bps transmission of the S1 signal and set a 100ms timer.
8. When the 100ms timer expires set the Tx Mode Register for V.22 High Band 1200bps transmission of
scrambled 1s and set a 350ms timer.
9. When the 350ms timer expires set the Rx Mode Register for V.22bis Low Band 2400bps receive (this
will begin 16-way decisions) with the auto-equaliser and descrambler enabled and the Rx USART
disabled, set a 150ms timer and start to monitor for Rx scrambled 1s.
10. When the 150ms timer expires set the Tx Mode Register for V.22bis High Band 2400bps
transmission of scrambled 1s and set a 200ms timer.
11. Load the Tx Data Buffer with the first data to be transmitted.
12. Once 32 consecutive bits of received scrambled 1s at 2400bps have been detected, enable the Rx
USART.
13. When the 200ms timer expires set the Tx Mode Register for Start-Stop or Synchronous transmission
of data from the Tx Data Buffer. This will start transmission of the data loaded in step 11.
14. A 2400bps data connection has now been established.
15. If scrambled 1s had been detected for 270ms in step 6, set the Tx Mode Register to V.22 High Band
1200bps scrambled 1s transmission and set a 765ms timer and enable the Rx USART.
16. Load the Tx Data Buffer with the first data to be transmitted.
17. When the 765ms timer expires set the Tx Mode Register for Start-Stop or Synchronous transmission
of data from the Tx Data Buffer. This will start transmission of the data loaded in step 16.
18. A 1200bps data connection has now been established.
 2002 Consumer Microcircuits Limited
51
D/878/2
Line Powered Modem plus DAA
1.7
Performance Specification
1.7.1
Electrical Performance
CMX878
1.7.1.1 Absolute Maximum Ratings
Exceeding these maximum ratings can result in damage to the device.
Supply (AVDD - AVSS)
or (DVDD - DVSS)
Voltage on any pin to ground
Voltage on WAKE, RD, RT, VFB and
REGENAB pins to ground
Current into or out of VDD and VSS pins
Current into or out of any other pin
Notes:
Notes
i
Min.
-0.3
Max.
7.0
Units
V
i, ii
i, iii
-0.3
-0.3
AVDD + 0.3
SBYVDD
+ 0.3
+50
+20
V
V
-50
-20
mA
mA
i.
The negative supply rails AVSS and DVSS (‘ground’) are electrically connected on-chip
and therefore must not have different potentials applied to them. They should also be
connected together externally, having regard to the recommended grounding techniques
described in Section 1.4. AVDD ≈ DVDD.
ii. Excludes pins which are connected to the Standby Supply (i.e. SBYVDD, WAKE, RD, RT,
VFB and REGENAB).
iii. It is possible that during the peaks of large ringing signals, the voltage at the RD pin
could exceed SBYVDD + 0.3V. This is acceptable because on-chip diode clamps will
limit the voltage to approximately SBYVDD + 0.7V and high value resistors should be
employed in the external circuit to limit the current.
Max.
Units
Total Allowable Power Dissipation at Tamb = 25°C
D1 package
D6 package
E1 package
Min.
800
550
400
mW
mW
mW
... Derating
D1 package
D6 package
E1 package
13
9
5.3
mW/°C
mW/°C
mW/°C
+125
+85
°C
°C
Max.
5.5
+85
Units
V
°C
Storage Temperature
Operating Temperature
-55
-40
1.7.1.2 Operating Limits
Correct operation of the device outside these limits is not implied.
Supply (AVDD - VSS) or (DVDD - DVSS)
Operating Temperature
Notes:
Notes
iv
Min.
2.7
-40
iv. The circuit shown in Figure 4a will give a regulated supply of nominally 3.3V which is
within the specified range.
 2002 Consumer Microcircuits Limited
52
D/878/2
Line Powered Modem plus DAA
CMX878
1.7.1.3 Operating Characteristics
For the following conditions unless otherwise specified:
AVDD = 3.3V. Circuit as in Figure 4a. Line Voltage = 50V DC.
CMX878 operational temp. range = -40 to +85°C.
Xtal Frequency = 11.0592 or 12.288MHz ± 0.01% (100ppm). 0dBm corresponds to 775mVrms.
DC Parameters
Regulated Supply at AVDD (regulator on)
Standby Supply at SBYVDD (regulator off)
On-hook Supply Current from Line (regulator off)
Regulated Supply Current from Line (regulator
on, all other functions powersaved, no other load)
Currents into the device via
IDD = AVDD + DVDD currents
with regulator running at 3.3V :
IDD (MODEM Powersaved, i.e. ‘Pwr’ bit =0)
IDD (MODEM Reset but not powersaved)
IDD (MODEM Running)
IDD (DAC and ADC only running)
Logic '1' Input Level
Logic '0' Input Level
Logic Input Leakage Current (Vin = 0 to VDD),
(excluding XTAL/CLOCK input)
Output Logic '1' Level (lOH = 2 mA)
Output Logic '0' Level (lOL = -3 mA)
IRQN O/P 'Off' State Current (Vout = VDD)
RD and RT pin Schmitt trigger input high-going
threshold (Vthi) (see Figure 13)
RD and RT pin Schmitt trigger input low-going
threshold (Vtlo) (see Figure 13)
Notes:
Notes
1a
1a, 1b
Min.
3.1
2.9
Typ.
3.3
3.4
Max.
3.5
3.9
Units
V
V
1a
1a
-
6.7
1.0
10
1.4
µA
mA
1c, 2
1c, 3
1c
1c
-
100
2.0
3.5
1.0
130
3.0
5.5
2.0
µA
mA
mA
mA
4
4
70%
-1.0
-
30%
+1.0
DVDD
DVDD
µA
80%
0.56 x
SBYVDD
-
DVDD
V
µA
V
0.44 x
SBYVDD
- 0.6V
-
0.4
1.0
0.56 x
SBYVDD
+ 0.6V
0.44 x
SBYVDD
V
1a. With the application circuit at Tamb = 0 to 40°C.
1b. With the regulator on and the gyrator on (line off-hook) the minimum value for SBYVDD
will be AVDD – D6 diode drop.
1c. At 25°C, not including any current drawn from the CMX878 pins by external circuitry
other than X1, C1 and C2. ‘MODEM’ means the MODEM & TONES PROCESSOR
block.
2. All logic inputs at VSS except for RT and CSN inputs which are at VDD.
3. General Mode Register b8 and b7 both set to 1.
4. Excluding RD, RT and WAKE pins.
 2002 Consumer Microcircuits Limited
53
D/878/2
Line Powered Modem plus DAA
CMX878
3.5
3
2.5
2
Figure 13 Typical Schmitt Trigger Input
Voltage Thresholds vs. SBYVDD
Vin
1.5
1
Vthi
0.5
Vtlo
0
2.5
3
3.5
4
4.5
5
5.5
Vdd
XTAL/CLOCK Input
(timings for an external clock input)
'High' Pulse Width
'Low' Pulse Width
Notes
Min.
Typ.
Max.
Units
30
30
-
-
ns
ns
Transmit QAM and DPSK Modes
(V.22, Bell 212A, V.22bis)
Carrier frequency, high band
Carrier frequency, low band
Baud rate
Bit rate (V.22, Bell 212A)
Bit rate (V.22bis)
550Hz guard tone frequency
550Hz guard tone level wrt data signal
1800Hz guard tone frequency
1800Hz guard tone level wrt data signal
Notes
Min.
Typ.
Max.
Units
5
5
6
6
6
548
-4.0
1797
-7.0
2400
1200
600
1200/600
2400
550
-3.0
1800
-6.0
552
-2.0
1803
-5.0
Hz
Hz
Baud
bps
bps
Hz
dB
Hz
dB
Transmit V.21 FSK Mode
Baud rate
Mark (logical 1) frequency, high band
Space (logical 0) frequency, high band
Mark (logical 1) frequency, low band
Space (logical 0) frequency, low band
Notes
6
Min.
1647
1847
978
1178
Typ.
300
1650
1850
980
1180
Max.
1653
1853
982
1182
Units
Baud
Hz
Hz
Hz
Hz
Transmit Bell 103 FSK Mode
Baud rate
Mark (logical 1) frequency, high band
Space (logical 0) frequency, high band
Mark (logical 1) frequency, low band
Space (logical 0) frequency, low band
Notes
6
Min.
2222
2022
1268
1068
Typ.
300
2225
2025
1270
1070
Max.
2228
2028
1272
1072
Units
Baud
Hz
Hz
Hz
Hz
Transmit V.23 FSK Mode
Baud rate
Mark (logical 1) frequency, 1200 baud
Space (logical 0) frequency, 1200 baud
Mark (logical 1) frequency, 75 baud
Space (logical 0) frequency, 75 baud
Notes
6
Min.
1298
2097
389
449
Typ.
1200/75
1300
2100
390
450
Max.
1302
2103
391
451
Units
Baud
Hz
Hz
Hz
Hz
 2002 Consumer Microcircuits Limited
54
D/878/2
Line Powered Modem plus DAA
CMX878
Transmit Bell 202 FSK Mode
Baud rate
Mark (logical 1) frequency, 1200 baud
Space (logical 0) frequency, 1200 baud
Mark (logical 1) frequency, 150 baud
Space (logical 0) frequency, 150 baud
Notes
6
Min.
1198
2197
386
486
Typ.
1200/150
1200
2200
387
487
Max.
1202
2203
388
488
Units
Baud
Hz
Hz
Hz
Hz
DTMF/Single Tone Transmit
Tone frequency accuracy
Distortion
Notes
7
Min.
-0.2
-
Typ.
1.0
Max.
+0.2
2.0
Units
%
%
Transmit Output Level
Modem and Single Tone modes
DTMF mode, Low Group tones
DTMF: level of High Group tones wrt Low Group
Tx output buffer gain control accuracy
Notes
7
7
7
7
Min.
-11.0
-9.0
+1.0
-0.25
Typ.
-10.0
-8.0
+2.0
-
Max.
-9.0
-7.0
+3.0
+0.25
Units
dBm
dBm
dB
dB
Notes:
5. % carrier frequency accuracy is the same as XTAL/CLOCK % frequency accuracy.
6
Tx signal % baud or bit rate accuracy is the same as XTAL/CLOCK % frequency
accuracy.
7. Measured on a matched line with Tx Level Control gain set to 0dB, at A VDD = 3.3V
(levels are proportional to VDD). Level measurements for all modem modes are
performed with random transmitted data and without any guard tone. 0dBm =
775mVrms.
0
-10
Bell 202
-20
-30
dBm
-40
-50
-60
-70
10
100
1000
10000
100000
Hz
Figure 14 Maximum Out of Band Tx Line Energy Limits (see note 8)
Notes:
8. Measured on the line with the Tx line signal level set to -10dBm for QAM, DPSK, FSK or
single tones, -6dBm and -8dBm for DTMF tones. Excludes any distortion due to external
components.
 2002 Consumer Microcircuits Limited
55
D/878/2
Line Powered Modem plus DAA
CMX878
Receive QAM and DPSK Modes
(V.22, Bell 212A, V.22bis)
Carrier frequency (high band)
Carrier frequency (low band)
Baud rate
Bit rate (V.22, Bell 212A)
Bit rate (V.22bis)
Notes:
Notes
Min.
Typ.
Max.
Units
9
9
9
2392
1192
-
2400
1200
600
1200/600
2400
2408
1208
-
Hz
Hz
Baud
bps
bps
9. These are the bit and baud rates of the line signal, the acceptable tolerance is ±0.01%.
Receive V.21 FSK Mode
Acceptable baud rate
Mark (logical 1) frequency, high band
Space (logical 0) frequency, high band
Mark (logical 1) frequency, low band
Space (logical 0) frequency, low band
Notes
Min.
297
1638
1838
968
1168
Typ.
300
1650
1850
980
1180
Max.
303
1662
1862
992
1192
Units
Baud
Hz
Hz
Hz
Hz
Receive Bell 103 FSK Mode
Acceptable baud rate
Mark (logical 1) frequency, high band
Space (logical 0) frequency, high band
Mark (logical 1) frequency, low band
Space (logical 0) frequency, low band
Notes
Min.
297
2213
2013
1258
1058
Typ.
300
2225
2025
1270
1070
Max.
303
2237
2037
1282
1082
Units
Baud
Hz
Hz
Hz
Hz
Receive V.23 FSK Mode
1200 baud
Acceptable baud rate
Mark (logical 1) frequency
Space (logical 0) frequency
75 baud
Acceptable baud rate
Mark (logical 1) frequency
Space (logical 0) frequency
Notes
Min.
Typ.
Max.
Units
1188
1280
2080
1200
1300
2100
1212
1320
2120
Baud
Hz
Hz
74
382
442
75
390
450
76
398
458
Baud
Hz
Hz
Receive Bell 202 FSK Mode
1200 baud
Acceptable baud rate
Mark (logical 1) frequency
Space (logical 0) frequency
150 baud
Acceptable baud rate
Mark (logical 1) frequency
Space (logical 0) frequency
Notes
Min.
Typ.
Max.
Units
1188
1180
2180
1200
1200
2200
1212
1220
2220
Baud
Hz
Hz
148
377
477
150
387
487
152
397
497
Baud
Hz
Hz
Rx Modem Signal
(FSK, DPSK and QAM Modes)
Signal level
Signal to Noise Ratio (noise flat 300-3400Hz)
Notes
Min.
Typ.
Max.
Units
10
-45
20
-
-9
-
dBm
dB
 2002 Consumer Microcircuits Limited
56
D/878/2
Line Powered Modem plus DAA
CMX878
Rx Modem S1 Pattern Detector
(DPSK and QAM modes)
Will detect S1 pattern lasting for
Will not detect S1 pattern lasting for
Hold time (minimum detector ‘On’ time)
Notes
Min.
Typ.
Max.
Units
90.0
-
ms
5.0
-
72.0
-
Rx Modem Energy Detector
Detect threshold (‘Off’ to ‘On)
Undetect threshold (‘On’ to ‘Off’)
Hysteresis
Detect (‘Off’ to ‘On’) response time
QAM and DPSK modes
300 and 1200 baud FSK modes
150 and 75 baud FSK modes
Undetect (‘On’ to ‘Off’) response time
QAM and DPSK modes
300 and 1200 baud FSK modes
150 and 75 baud FSK modes
Notes
10,11
10,11
10,11
Min.
-48.0
2.0
Typ.
-
Max.
-43.0
-
Units
dBm
dBm
dB
10,11
10,11
10,11
10.0
8.0
16.0
-
35.0
30.0
60.0
ms
ms
ms
10,11
10,11
10,11
10.0
10.0
20.0
-
55.0
40.0
80.0
ms
ms
ms
Rx Answer Tone Detectors
Detect threshold (‘Off’ to ‘On)
Undetect threshold (‘On’ to ‘Off’)
Detect (‘Off’ to ‘On’) response time
Undetect (‘On’ to ‘Off’) response time
2100Hz detector
‘Will detect’ frequency
‘Will not detect’ frequency
2225Hz detector
‘Will detect’ frequency
‘Will not detect’ frequency
Notes
10,12
10,12
10,12
10,12
Min.
-48.0
30.0
7.0
Typ.
33.0
18.0
Max.
-43.0
45.0
25.0
Units
dBm
dBm
ms
ms
2050
-
-
2160
2000
Hz
Hz
2160
2335
-
2285
-
Hz
Hz
Rx Call Progress Energy Detector
Bandwidth (-3dB points) See Figure 7a
Detect threshold (‘Off’ to ‘On)
Undetect threshold (‘On’ to ‘Off’)
Detect (‘Off’ to ‘On’) response time
Undetect (‘On’ to ‘Off’) response time
Notes
Min.
275
-42.0
30.0
6.0
Typ.
36.0
8.0
Max.
665
-37.0
45.0
50.0
Units
Hz
dBm
dBm
ms
ms
Notes:
10,13
10,13
10,13
10,13
ms
10. Gain Control block set to 0dB
11. Thresholds and times measured with random data for QAM and DPSK modes,
continuous binary ‘1’ for all FSK modes. Fixed compromise line equaliser enabled. Signal
switched between off and -33dBm
12. ‘Typical’ value refers to 2100Hz or 2225Hz signal switched between off and -33dBm.
Times measured wrt. received line signal
13. ‘Typical’ values refers to 400Hz signal switched between off and -33dBm
 2002 Consumer Microcircuits Limited
57
D/878/2
Line Powered Modem plus DAA
CMX878
DTMF Decoder
Valid input signal levels
(each tone of composite signal)
Not decode level
(either tone of composite signal)
Twist = High Tone/Low Tone
Frequency Detect Bandwidth
Frequency Not Detect Bandwidth
Max level of low frequency noise (i.e. dial tone)
Interfering signal frequency <= 550Hz
Interfering signal frequency <= 450Hz
Interfering signal frequency <= 200Hz
Max. noise level wrt. signal
DTMF detect response time
DTMF de-response time
Status Register b5 high time
‘Will Detect’ DTMF signal duration
‘Will Not Detect’ DTMF signal duration
Pause length detected
Pause length ignored
Notes:
Notes
Min.
Typ.
Max.
Unit
10
-30.0
-
0.0
dBm
10
-10.0
±1.8
-
-
-36.0
6.0
±3.5
dBm
dB
%
%
14
14
14
14,15
14.0
40.0
30.0
-
25.0
-
0.0
10.0
20.0
-10.0
40.0
30.0
15.0
dB
dB
dB
dB
ms
ms
ms
ms
ms
ms
ms
Min.
10.0
Typ.
Max.
14. Referenced to DTMF tone of lower amplitude.
15 Flat Gaussian Noise in 300-3400Hz band.
Receive Input Amplifier
Input impedance (at 100Hz)
Notes
Open loop gain (at 100Hz)
Rx Gain Control Block accuracy
 2002 Consumer Microcircuits Limited
10000
-0.25
58
+0.25
Units
Moh
m
V/V
dB
D/878/2
Line Powered Modem plus DAA
CMX878
C-BUS Timings (See Figure 15)
tCSE
CSN-Enable to Clock-High time
tCSH
Last Clock-High to CSN-High time
tLOZ
Clock-Low to Reply Output enable
time
tHIZ
CSN-High to Reply Output 3-state
time
tCSOFF
CSN-High Time between transactions
tNXT
Inter-Byte Time
tCK
Clock-Cycle time
tCH
Serial Clock-High time
tCL
Serial Clock-Low time
tCDS
Command Data Set-Up time
tCDH
Command Data Hold time
tRDS
Reply Data Set-Up time
tRDH
Reply Data Hold time
Notes
Min.
100
100
0.0
Typ.
-
Max.
-
Units
ns
ns
ns
-
-
1.0
µs
1.0
200
200
100
100
75.0
25.0
50.0
0.0
-
-
µs
ns
ns
ns
ns
ns
ns
ns
ns
Maximum 30pF load on each C-BUS interface line.
Note: These timings are for the latest version of the C-BUS as embodied in the CMX878, and allow faster
transfers than the original C-BUS timings given in CML Publication D/800/Sys/3 July 1994.
Figure 15 C-BUS Timing
 2002 Consumer Microcircuits Limited
59
D/878/2
Line Powered Modem plus DAA
1.7.2
CMX878
Packaging
Figure 16 28-pin SOIC (D1) Mechanical Outline: Order as part no. CMX878D1
Figure 17 28-pin SSOP (D6) Mechanical Outline: Order as part no. CMX878D6
 2002 Consumer Microcircuits Limited
60
D/878/2
Line Powered Modem plus DAA
CMX878
Figure 18 28-pin TSSOP (E1) Mechanical Outline: Order as part no. CMX878E1
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
Oval Park - Langford - Maldon - Essex
- CM9 6WG - England.
Tel: +44 (0)1621 875500
Fax: +44 (0)1621 875600
Sales: [email protected]
Technical Support:
[email protected]
4800 Bethania Station Road Winston-Salem - NC 27105 - USA.
Tel: +1 336 744 5050,
800 638 5577
Fax: +1 336 744 5054
Sales: [email protected]
Technical Support:
[email protected]
No 2 Kallang Pudding Road - #09 to
05/06 Mactech Industrial Building Singapore 349307
Tel: +65 6745 0426
Fax: +65 6745 2917
Sales: [email protected]
Technical Support:
[email protected]