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

Home Modems Telephony Audio Utilities Consultancy Glossary Index Contact us

Home
Modems
Telephony
Audio
Utilities
Consultancy
Glossary
Index
Contact us


       

Caller ID Detector (Japan) TMS320C5000 DSP Code

Description: implements Caller IDentity - CID - detection for communicating call data on-hook over telephone lines to subscribers as implemented in Japan. Here before the 1st normal ring, the exchange sends a line reversal followed by a set of short rings that should be inaudible in a normal subscriber phone. The phone responds by going off-hook, triggering the exchange to send the CID message data. After reception, the phone reverts to on-hook, and the exchange continues with normal ringing.
         The CID message is a pre-amble of mark carrier followed by the message byte data and finally a cyclic redundancy check (CRC) byte-pair, all modulated as a V.23 modem signal. The byte data consists of multiple parameter groups. The CID Detector - Decoder+Receiver - implements the message data communication for the subscriber end. The software function summary is:

CID Decoder - accepts the pre-amble of mark carrier signal for a user-set minimum period, followed by the fixed start 5 bytes, then loads received bytes into the message data buffer stripping parity, then the fixed end 2 bytes, and finally checks the received CRC byte-pair

The function above detects from line signal samples using the following routine, available on its own:

CID Receiver (as used with "standard" CID) - with timing at 1200b/s, frequency-demodulates V.23 (1300Hz Mark, 2100Hz Space) receive samples to pre-amble data or message data bytes, stripping out start/stop bits

The Detector forms a buffer of the complete message data for the user interface in parameterised byte form, excluding the CRC bytes. Message de-parameterisation in the user code gives flexibility in dealing with Caller ID categories. The message buffer format is 2 per 16-bit word for efficiency in multi-channel use.
        
Each function has an initialisation routine and a per-sample main routine and is re-entrant with memory offset-addressing for multi-channel operation. As well as from assembler, the routines can also be called from C, wrappers being provided. The C main routines enable multiple sample blocks to be processed. Sample rates of 8.0kHz or 9.6kHz can be set. A comprehensive user's guide is provided with the code.

Performance:

SNR for 10-6 BER on Flat Channel: 12.0dB - Bell 202 ; 12.5dB - V.23 (4kHz BW noise)
Local loop line length for no errors: >9km

Processor Load:

Function MIPS# Data memory (words) Prog memory (words)#
CID-J Detector (Decoder+Receiver) 1.26 (26 + M) x N 356
CID Receiver only 1.11 24 x N 181

- #figures are for TMS320C54x operation with the assembler interface at 8.0kHz sampling
- in data memory figures M is the user-set buffer size at 2 bytes per word and N is no. of channels

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

 
Home Modems Telephony Audio Utilities Consultancy Glossary Index Contact us