Você está na página 1de 5

Management of Speech path in a typical PBX

Program using MT8816 cross-point switch


Overview:
1. The PBX System is operated by 8051 CPU
2. There is only one cross-point switch chip, so total subscriber are 16, and
further 16 SLIC circuits (typically MH88500) are assumed to be connected
with X0-X15 of cross-point switch
3. For simplification of document, it is assumed that SWITCH IC is directly
connected to CPU
4. Document considers only the program relevant to Speech path connection
management.

General Signaling in PBX


Telecommunication software is by nature asynchronous due to
The resources in the Telecommunication Network may not be available at the
time.
The subscriber has to be notified all the time i.e. Fast processing.
For example if subscriber A wants to connect subscriber B, we dont know whether
call be successful or not! Due to following possible situations.
1. Phone is dead (Drop wire broken)
2. No more speech paths are available in PBX i.e. congestion situation.
3. Called Party is Busy/Not Available.
It is notified to caller subscriber by providing:
1. Silence (if drop wire is broken )
2. Dial tone is provided if everything is OK.
3. Ring back or busy tone is connected after dialing Subscriber B number
according to whether subscriber B is Available or Busy i.e. already connected
with someone else.
Different situations occurring inside PBX are referred to as Events such as offhook, on-hook, ringing.

MT8816 SWITCH

It shows that total eleven (11) signals control the operation of switch

MT8816 Interfacing with 8051 CPU

X0-X15 are connected to JUNCTOR pin of each SLIC corresponding to each


subscriber.
Y0-Y7 are left open, used internally as voice path junctors.
So if AX and XY are written with DATA=1, a switch connection is made, otherwise if
AX and AY are written with DATA=0, the switch connection is released

Manufacturers uneven junctor map

It shows jumps in addressing at AX=6, AX=8, AX=14


So the program has added a fixing table to adjust the input, so the connection is
made consistent as AX is varied 0-15.
This is example of C-language TABLE

Example of Connecting one X line to one Y line.

There are two parameters sub_no and junctor. The first parameter sub_no
shows the subscriber number between 0-15 which is to be connected to junctor
having value 1-8.
Junctor=1 means the first junctor (AY=0) whereas junctor=8 means the last
junctor (AY=7) of cross-point switch.
Note that AY bits are arranged in bit 0-2 poistions and AX bits are put in bit3-6, and
DATA is put in bit 7.
DATA
AX3
AX2
AX1
AX0
AY2
AY1
AY0
This data is written in MT8816_ADDRESS which is pointing to P1 port of CPU
Finally STROBE bit is applied and removed so that above data stores into latch.
Recall MT8816_STROBE is pointing to P3.0 pin of CPU.

The C-compiler generates Assembly language code as follows:


_Connect_junctor:
;----Parameter 'sub_no' assigned to Register 'R7' ---;---- Parameter 'junctor' assigned to Register 'R5' ---; translate due to unevent addressing of AX3-AX0 signal
MOV
A,R7
RLC
A
SUBB
A,ACC
MOV
R6,A
MOV
A,#LOW (MT8816_TABLE)
ADD
A,R7
MOV
DPL,A
MOV
A,#HIGH (MT8816_TABLE)
ADDC
A,R6
MOV
DPH,A
CLR
A
MOVC A,@A+DPTR
;---- Variable 'XY_Address' assigned to Register 'R7' ---; XY_Address <<= 3;
// insert 3 bits for AY address
RLC
A
RLC
A
RLC
A
ANL
A,#0F8H
MOV
R7,A
MOV
A,R5
;get junctor (1-8)
DEC
A
ADD
A,R7
;AY=junctor (0-7)
ADD
A,#080H
; set bit 7 for DATA
MOV
P1,A
SETB
MT8816_STROBE
; Apply STROBE
CLR
MT8816_STROBE
;Remove STROBE
RET

Você também pode gostar