AlgoTron DSP Software for Telecoms & Audio
a TI DSP Third Party Network Member

Home  Modems  Telephony  Audio  HF radio  Utilities  Consultancy  Glossary  Index  Contact us

Home
Modems
Telephony
Audio
HF radio
Utilities

Consultancy
Glossary
Index
Contact us


       

Bell 212(A) Modem DSP C Code

Description: implements the data pump function of the modem Bell 212(A). This provides full-duplex data transmission over the telephone network. Data rates available are 1.2kb/s, using V.22 modulation, and 300b/s, using Bell 103 modulation. Duplex channel separation is achieved by band splitting, with V.22 channel carriers at 1200Hz and 2400Hz for 1.2kb/s, and Bell 103 tone pairs at 1070/1270Hz and 2070/2270Hz for 300b/s.
         The C code is suitable for any processor with an ANSI-compliant C compiler. It is designed especially for efficient operation on low-cost fixed-point DSP- and general-purpose micro-processors. All data memory is specified as 16-bit integer words. Multiplies are integer 16x16-bit with 32-bit products.
         The code is operated by one callable subroutine for initialisation and one for main-routine processing of input/output samples and data. The user is responsible for interfacing samples and data to hardware. The code is re-entrant to facilitate multi-channel operation. A comprehensive user's guide is provided with the code, together with example application files. Test results are available.

Interfaces: at the sample interface, the code can operate at 8.0kHz and 9.6kHz sample rates. Transmit and receive samples are transferred on a common clock, to which the transmit clock is synchronised. In V.22 modulation, the receive clock is interpolated in the DSP code for synchronisation to the far-end modem. At the data interface, operation can be Asynchronous (normal for Bell 103 modulation) or Synchronous. In Asynchronous mode, data is transferred with start & stop bits auto-inserted/-deleted. In Synchronous mode, data is transferred transparently, with the receiver performing clock recovery on bit transitions. In both cases, the data is in multiple-bit blocks.
        
At the control interface, the assembler code has one 16-bit control word to sequence operation and to set operating parameters, and two diagnostic words to convey data transfer status and signal quality* (*not in Bell 103 300b/s).

Performance: near matched-filter performance is obtained over both flat and very severe channels. SNR for 10-6 Error Rate (4kHz BW noise):

  • 1.2kb/s ( V.22 ) : 6.5dB - Flat Channel; 7.5dB - Bell 3002 Channel
  • 300b/s(Bell 103): 5.0dB - Flat Channel; 5.5dB - Bell 3002 Channel

Processor Load:

Sample rate MIPS# Data memory (words) Prog memory (bytes)#
8.0kHz 5.5(5.0) 220 10.1k
9.6kHz 4.4(6.0) 201 8.9k

- #figures are for TMS320C54x operation with the assembler interface including Remote Digital Loop
- figures in ( ) for 300b/s Bell 103 mode

Availability: NOW - sale is under licence - integration support offered

 
Home  Modems  Telephony  Audio  HF radio  Utilities  Consultancy  Glossary  Index  Contact us