會議芯片M34116及其在專網(wǎng)通信中的應(yīng)用
關(guān)鍵詞:PCM 母線 時隙 會議
1 概述
在專用通信系統(tǒng)中,電話會議是不可缺少的功能,如部隊(duì)的指揮調(diào)度、車站的站場調(diào)度、話務(wù)轉(zhuǎn)接臺的三方會議、會議錄音等都會用會議功能。目前,市場上出現(xiàn)的會議信號合成器處理專用集成電路芯片主要有Motorla公司的MC145611、Mitel公司的MT8924、SGS-湯姆遜公司的M34116。M34116有以下主要技術(shù)特點(diǎn):
*可匯接1~64方會方式通話;
*最多可達(dá)29組會議;
*可在3種模式下同時工作,會議、透明傳輸和聲音產(chǎn)生;
*典型的比特率為1356/1544/2048/4096Kb/s;
*兼容所有PCM幀格式;
*A/μ律可選;
*每一個通道為相同的優(yōu)先級;
*從發(fā)送到接收有一個幀又一個時隙的延時;
*各通道的增益從0~15dB可控;
*聲音產(chǎn)生從3.9MHz到3938Hz,最小間隔為3.9Hz;
*在并行口上有7種不同的聲音輸出,最多4種不同持續(xù)頻率;
*一種最多可編程32種不同持續(xù)頻率的聲音旋律;
*5V供電;
*兼容TTL電平輸入和TTL/CMOS電平輸出。
2 功能描述
2.1 引腳說明
M34116為24引腳雙列直插封裝,引腳如圖1所示。
2.2 內(nèi)部結(jié)構(gòu)
當(dāng)系統(tǒng)組織一個電話會議時,參加會議的任一臺話機(jī)接口的輸出信號都必須同時送到其余所有話機(jī)接接收端。換而言之,會議中每一個接口的接收端所收到的信號就是除本身外其余所有話機(jī)接口輸出的模擬話音信號的疊加。在數(shù)字交換中,由于話音信號的二進(jìn)制非線性編碼(A/μ律)特性,不允許將來自若干路接二進(jìn)信號簡單地相加。圖2為M34116內(nèi)部結(jié)構(gòu)圖。會議芯片須占用一對母線,交換網(wǎng)輸出的PCM信號由芯片的PCM I踅攀淙耄經(jīng)串-并變換后,輸入線性化電路。線性化后的各引時隙(抽樣)加上控制系統(tǒng)端口的衰減或增益電平被送入加法器相加,加完后的結(jié)果通過POWER 10再線性化后送入幀RAM中。哪些時隙構(gòu)成一個會議,由控制系統(tǒng)經(jīng)數(shù)據(jù)總線中口寫入。當(dāng)一個接口發(fā)起一個會議時,控制系統(tǒng)為該會議編排一個1~29的編號。此后,其它接噪中根據(jù)需要加入已經(jīng)存在會議,或重新組織另一個會議??刂葡到y(tǒng)由數(shù)據(jù)總線口將各會議的編號及參加每個會議的各時隙的編號寫入會議RAM中,地加法器對各信號正確地組合相加。加法器輸出的信號經(jīng)非線性化電路還原為A/μ律編碼信號,最后有并一串變換電路恢復(fù)為串行輸出,送往對應(yīng)的交換網(wǎng)絡(luò)PCM輸入總線。
2.3 功能說明
M34116是專為PCM數(shù)字交換應(yīng)用而設(shè)計(jì)的器件,能匯接64方會議和最多29組會議。M34116與交換網(wǎng)絡(luò)、微處理器連接中圖3所法。交換網(wǎng)可以采用M3488或MT8980D等數(shù)字交換網(wǎng)絡(luò)。經(jīng)過PCM編碼后,其輸出時隙比輸入時隙延時一個幀(加一個時隙),因此,做會議接續(xù)時應(yīng)延時一個時隙。輸入、輸出關(guān)系如圖4所示。M34116對每種工作模式的每一通道具有可編程衰減 或增益控制,輸入/輸出的范圍均為15dB。
3 控制字軟件設(shè)置
微處理器對M34116的控制是通過設(shè)置以下命令字實(shí)現(xiàn)的。先通過設(shè)置操作模式,發(fā)送操作模式,進(jìn)行指令設(shè)置和功能選擇。擴(kuò)展位E=1,F(xiàn)1、F0設(shè)置PCM字節(jié)格式。F1、F0=00無位翻轉(zhuǎn),F(xiàn)1、F0=01偶位翻轉(zhuǎn),F(xiàn)1、F0=10奇位翻轉(zhuǎn),F(xiàn)1、F0=11所有位翻轉(zhuǎn)。M34116必須復(fù)位后設(shè)置操作模式。
3.1 會議接續(xù)(指令1)
該指令由5個字節(jié)組成:前4個字節(jié)為數(shù)據(jù)字節(jié),第5個字節(jié)為控制字。第1個字節(jié)的內(nèi)容為會議組編號及會議啟動位S,當(dāng)S=1時,本組會議的所有寄存器清0,只有當(dāng)接入一組新會議的第1個時隙時,才置S為1,P4~P0對應(yīng)會議組編寫(1~29);第2個字節(jié)為輸入衰減或增益控制,AI4=1時,為增益控制,AI4=0時,為衰減控制,AI3~AI0為設(shè)置的值(0~15dB);第3個字節(jié)為輸出衰減或增益控制;第4個字節(jié)為時隙選擇,PT=1時,在加入會議前的PCM抽樣信號翻轉(zhuǎn),用于回波抑制;第5個字節(jié)為控制字。
3.2 透明接續(xù)(指令2)
該指令是M34116的另一功能,為其一時隙的PCM輸入輸出的衰減或增益電平調(diào)整,延時一個幀和一個時隙。該時隙不是會議參加方。
3.3 拆線(指令3)
拆掉是一會議成員,結(jié)束透明接續(xù)或結(jié)束產(chǎn)生產(chǎn)生,都要用該指令一一拆線。
3.4 溢出信息(指令4)
單字節(jié)指令,讀取會議溢出,通過設(shè)置空位選擇B1~B0(0~3)。該指令之后,當(dāng)讀有效時,根據(jù)選擇值讀取數(shù)據(jù)總線上數(shù)據(jù),判斷哪此會議溢出。
3.5 聲音產(chǎn)生
指定增益或衰減的聲音時隙和聲音序列。該聲音序列由最多4對持續(xù)聲音和最多32對持續(xù)頻率旋律組成,頻率范圍為3.9Hz~3938Hz,持續(xù)范圍為32ms~8610ms。既可以指定所有時隙,也可以用FFHEX字節(jié)結(jié)束。M34116不斷地指定或者拆線。旋律可編程為正弦波或方波。
最多可同時產(chǎn)生7個聲音和1個旋律時隙,聲音和旋律產(chǎn)生的指令格式相同。第1個字節(jié)為輸出增益或衰減,第2個字節(jié)為時隙號,第3個字節(jié)為操作碼,F(xiàn)FHEX字節(jié)為結(jié)束碼,Sn7~Sn0為頻率間隔(n范圍為1~4),Tn為旋律(n范圍為1~32)。
3.6 狀態(tài)信息
狀態(tài)指令用來讀取指令寄存器或聲音旋律寄存器的內(nèi)容,通過指定時隙號讀取狀態(tài)字節(jié)。這些字節(jié)包括:會議號或透明模式或聲音或未連續(xù),輸入/輸出衰減或增益。若為聲音模式,則讀取聲音的持續(xù)頻率序列。第1個字節(jié)為時隙選擇,第2個字節(jié)為控制字。當(dāng)設(shè)置讀取時隙后,后續(xù)讀取的值依賴該時序的操作類型(P4~P0)。P4~P0=0,為拆線狀態(tài),后續(xù)讀取的數(shù)據(jù)無效;P4~P0=1~29,為會議號;P4~P0=30聲音或旋律操作,后續(xù)讀取的為聲音序列;P4~P0=31,為透明接續(xù)。
4 M34116典型連接電路
M34116典型應(yīng)用電路如圖5所示。微處理器為MCS-51系列單片機(jī)W77E58P,交換網(wǎng)采用敏迪公司MT8980D。由于交換網(wǎng)采用的是4.096Mb/s時鐘,F(xiàn)0i是其同步信號(8kHz)輸入,置低后,C4i的第一個下降沿啟動內(nèi)部時鐘,而M34116則是在C4i的第一個下降沿啟動,所以,在使用同一時鐘時,在M34116引腳CLK與交換網(wǎng)的C4i引腳間加一反向電路。在電話會議期間,控制系統(tǒng)可靠需要向參加會議的用戶發(fā)送一些提示信號音。當(dāng)外電路在TF端輸入一個頻率為f的方波時,M34116可能在PCM OUT端輸出一個頻率為f的正弦波PCM信號;當(dāng)TD為高電平時,芯片輸出信號音,同時關(guān)閉PCM話音信號。當(dāng)TD為低電平時,信號音輸出禁止,恢復(fù)正常的PCM輸出。信號音從哪些時隙輸出可由單片機(jī)寫入適當(dāng)?shù)目刂谱忠?guī)定,本文只介紹實(shí)現(xiàn)會議功能,故將TD與TF引腳接地。
5 M34116在專網(wǎng)中的應(yīng)用程序?qū)嵗?/B>
根據(jù)前面的介紹,通過圖5的接口電路,處理器可以對控制字讀寫,完成所需的功能。本文簡要列舉會議的組織、加入、拆線,其它控制字可參考這些用例。
#define unch unsigned char
#define DATA34116 8001 //數(shù)據(jù)地址
#define CTRL34116 8000 //控制地址
#define START_CONF 0XFF//會議開始
#define JION_CONF 0X00 //加入會議
5.1 組織會議
/*參數(shù)ConfNumb:會議號(1~29)。MeetInGain:會議輸入增益。MeetOutGain:會議輸出增益。ChannelNumb:會議時隙。Flag:新會議開始標(biāo)志*/
#pragma disable
void ConnetConf(unch ConfNumb,unch ChannelNumb,unch MeetInGain,unch MeetOutGain,unch Flag){
if(Flag==START_CONF){
XBYTE[DATA34116]=0x10|ConfNumb;/*創(chuàng)建的會議號*/
XBYTE[DATA34]=MeetInGain;/*輸入增益*/
XBYTE[DATA34116]=MeetOutGain; /*輸出增益*/
}
else if(Flag=JION_CONF){
XBYTE[DATA34116]=0x1F ConfNumb;/*會議號*/
XBYTE[DATA34116]=MeetInGain;/*輸入增益*/
XBYTE[DATA34116]=MeetOutGain; /*輸出增益*/
}
XBYTE[DATA34116]=0x40|ChannelNumb;/*會議時隙*/
XBYTE[CTRL34116=0x07;/*寫控制字*/
}
5.2 拆線
/*參數(shù)ChannelNumb:會議時隙*/
#pragma disable
void DisconnetConf(unch ChannelNumb)
{
XBYTE[DATA34116]=0x1F ChannelNumb;/*會議時隙*/
XBYTE[CTRL34116]=0x0F; /*寫控制字*/
}
圖5
A、B、C三方欲組織一會議。假設(shè)A母線為HW_A,時隙為tsa;B母線為HW_B,時隙為tsb;C母線為HW_C,時隙為tsc;輸入輸出增益均為0,HW_CONF為M34116的母線。
(1)會議初始化
ConnectConf(1,0,0,1,START_CONF);
//創(chuàng)建會議,會議號為1,時隙為1
ConnectConf(1,0,0,2,JOIN_CONF);//時隙2加入會議
ConnectConf(1,0,0,3,JOIN_CONF);//時隙3加入會議
(2)時隙交換
connect(HWA,tsa,HW_CONF,1);//將A的時隙與會議時隙1進(jìn)行雙向連接
connect(HWB,tsb,HW_CONF,2);//可參考《單片機(jī)與嵌入式系統(tǒng)應(yīng)用》2002.7
connect(HWC,tsc,HW_CONF,3);//或參考MT8980D數(shù)據(jù)手冊
這樣就組成了三方會議。還可以將會議母線為HW_CONF、時隙為5送到專用操作臺,組成多方式或交母會議。注意,時隙必須是5。因?yàn)檩敵鰰r隙比輸入時隙延時一個幀又一個時隙。
評論