《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > HDLC協(xié)議芯片PT7A6525及其在交換機(jī)中的應(yīng)用
HDLC協(xié)議芯片PT7A6525及其在交換機(jī)中的應(yīng)用
摘要: HDLC 協(xié)議不依賴于任何一種字符編碼集;數(shù)據(jù)報(bào)文可透明傳輸,,用于實(shí)現(xiàn)透明傳輸?shù)摹癘比特插入法”易于硬件實(shí)現(xiàn),;全雙工通信,不必等待確認(rèn)便可連續(xù)發(fā)送數(shù)據(jù),,有較高的數(shù)據(jù)鏈路傳輸效率;所有幀均采用CRC校驗(yàn),,對(duì)信息幀進(jìn)行順序編號(hào),,可防止漏收或重發(fā),傳輸可靠性高,;傳輸控制功能與處理功能分離,,具有較大的靈活性。
Abstract:
Key words :

  HDLC 協(xié)議不依賴于任何一種字符編碼集,;數(shù)據(jù)報(bào)文可透明傳輸,,用于實(shí)現(xiàn)透明傳輸?shù)?ldquo;O比特插入法”易于硬件實(shí)現(xiàn);全雙工通信,,不必等待確認(rèn)便可連續(xù)發(fā)送數(shù)據(jù),,有較高的數(shù)據(jù)鏈路傳輸效率;所有幀均采用CRC校驗(yàn),,對(duì)信息幀進(jìn)行順序編號(hào),,可防止漏收或重發(fā),傳輸可靠性高,;傳輸控制功能與處理功能分離,,具有較大的靈活性。

  筆者曾撰文介紹過MT8952B,,并收到不少讀者對(duì)相關(guān)問題的咨詢,。隨著電子技術(shù)的不斷發(fā)展,交換機(jī)的交換容量要求也越來越高,,通信量也越來越大,,具有19字節(jié)FIFO的MT8952B已遠(yuǎn)遠(yuǎn)不能滿足用戶的需求。HDILC芯片有64字節(jié)FIFO,,傳輸信息可以不受限制,。

  PT7A6525 HDLC協(xié)議控制器有以下特點(diǎn):支持2個(gè)完全獨(dú)立的全雙工HDLC信道,符合X.25第二層標(biāo)準(zhǔn)數(shù)據(jù)格式,,前向序列的產(chǎn)生和檢測(cè),,單字節(jié)地址識(shí)別,具有微處理器端口,,靈活操作和控制寄存器,,發(fā)送和接收有64個(gè)字節(jié)的FIFO緩沖區(qū),多路數(shù)據(jù)鏈路握手信號(hào),高速串行時(shí)鐘輸出(8 Mbps),,符合ST-BUS的可編程的通道選擇和時(shí)隙控制,,靈活的協(xié)議控制功能,低功耗ISO-CMOS技術(shù),。其適用的主要應(yīng)用領(lǐng)域包括:數(shù)據(jù)鏈路控制和協(xié)議產(chǎn)生,,數(shù)字設(shè)備、PBXs和專用數(shù)據(jù)網(wǎng),,ISDN基本數(shù)據(jù)的D通道控制器,,數(shù)據(jù)網(wǎng)絡(luò)接口電路的C通道控制器,內(nèi)部通信處理等,。

  PT7A6525內(nèi)部結(jié)構(gòu)如圖1所示,。

PT7A6525內(nèi)部結(jié)構(gòu)

  2  PT7A6525寄存器

  PT7A6525 HDLC協(xié)議控制器,處理符合CCITT建議的X.25(第2層)由包交換協(xié)議定義的協(xié)議結(jié)構(gòu)和幀數(shù)據(jù),。通過零位插入和刪除技術(shù)獲得數(shù)據(jù)傳輸?shù)耐该餍?。在發(fā)送數(shù)據(jù)的過程中,自動(dòng)產(chǎn)生HDLC幀標(biāo)志(0111110)和FCS(Frame(,;heck Sequence)幀校驗(yàn)序列字段以及幀異常中止,、信道空閑和其他接收狀態(tài),因而PT7A6525將準(zhǔn)備發(fā)送的數(shù)據(jù)自動(dòng)構(gòu)成HDLC幀,。在接收端,,把來自遠(yuǎn)方的HDLC幀進(jìn)行FCS校驗(yàn),并恢復(fù)原始數(shù)據(jù),。

  PT7.A6525有2個(gè)端口:一個(gè)是串行端口,,用來發(fā)送和接收數(shù)據(jù)包;另一個(gè)是并口,,允許在單片機(jī)系統(tǒng)總線和協(xié)議處理器之間并行傳輸數(shù)據(jù)。這個(gè)接口包括數(shù)據(jù)總線(D0~D7),、地址總線(A0~A6),、時(shí)鐘、片選(CS)和讀/寫控制等,,微處理器可以讀/寫協(xié)議處理器的各個(gè)寄存器,。表1給出這些寄存器的地址,寄存器的詳細(xì)描述可參考PT7A6525的數(shù)據(jù)手冊(cè)[1],。

寄存器的地址

  3  PT7A6525時(shí)鐘模式

  PT7A6525 每個(gè)通道支持的時(shí)鐘模式有內(nèi)部時(shí)鐘晶振(OSC)模式,、獨(dú)立的波特率發(fā)生器(BRG)和數(shù)字脈沖鎖相環(huán)(DPLL)模式??赏ㄟ^設(shè)置寄存器產(chǎn)生接收和發(fā)送時(shí)鐘:內(nèi)部時(shí)鐘產(chǎn)生可以通過OSC,、BRG和DPLL獲得,外部時(shí)鐘可以通過TxCLK/RxCLK獲得??傊赏ㄟ^信道配置寄存器1(CCRl)軟件設(shè)置產(chǎn)生8種不同的時(shí)鐘模式,,如表2所列。

時(shí)鐘模式

  本文以外部時(shí)鐘模式O為例加以詳細(xì)介紹,,主要適用于點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多點(diǎn)連接,,分別同步于收發(fā)引腳。

  4  PT7A6525在交換機(jī)中的應(yīng)用連接圖

  本文給出的示例為單板一主網(wǎng)間通信,,采用點(diǎn)對(duì)多點(diǎn),、主從方式的串行HDLC通信。連接框圖如圖2所示,。其中主網(wǎng)控制板的HDLC控制器作為主,,其他單板的HDLC作為從。主網(wǎng)控制板的HDLC按地址輪詢其他單板,,只有輪詢到的單板可以應(yīng)答,。

連接框圖

  單板的接收線經(jīng)驅(qū)動(dòng)連到HDLC控制器。單板的發(fā)送線經(jīng)驅(qū)動(dòng)后再送到背板,。此驅(qū)動(dòng)的輸出受單板的邏輯控制,,具體控制分幾種情況:a.上電復(fù)位時(shí),邏輯控制為高阻輸出,。b.MCU死機(jī)時(shí),,引起復(fù)位,也控制為高阻輸出,,以防止單板長期占用總線,。c.當(dāng)輪詢此單板時(shí),單板發(fā)送數(shù)據(jù)前先使能輸出,,發(fā)送結(jié)束后再置為高阻,,讓出總線。

  單板的HDLC控制器采用的是本文介紹的雙路HDLC.芯片PT7A6525直接與HDLC芯片(如主網(wǎng)控制層用 PT7A6632)相連,。A6~A0為協(xié)議控制器的寄存器地址選擇,,單片機(jī)可以讀/寫這些寄存器,串口可以傳送/接收數(shù)據(jù)包,,也可以連接到數(shù)字傳輸媒介或數(shù)字接口電路,,如MT8972、MT8980等,。例如TxD和RxD可以與MT8980的母線相連,。

  5  PT7A6525數(shù)據(jù)讀/寫應(yīng)用實(shí)例

  根據(jù)前面的介紹,參考圖2的應(yīng)用連接圖(具體接口圖可參考芯片手冊(cè)等)可以控制寄存器,,達(dá)到所需的目的,。在實(shí)際應(yīng)用中,,文中給出點(diǎn)到點(diǎn)模式的讀取和發(fā)送數(shù)據(jù)子程序?qū)嵗怨﹨⒖肌?/p>

  5.1  讀取數(shù)據(jù)

  PT7A6525數(shù)據(jù)的讀取在外部中斷里實(shí)現(xiàn),。當(dāng)有數(shù)據(jù)到達(dá)時(shí),,INT拉低,微處理器產(chǎn)生中斷,,可以在外部中斷服務(wù)程序中操作,。

讀取數(shù)據(jù)

   在實(shí)際應(yīng)用中,接收的數(shù)據(jù)可能不正確,,這時(shí)可以讀取外部中斷寄存器接收溢出標(biāo)志,,若為1,則讀取數(shù)據(jù)并放棄,。若發(fā)送的數(shù)據(jù)不確定字節(jié)數(shù),,則可以判斷FIFO狀態(tài)寄存器中接收FIFO結(jié)束標(biāo)志,這樣就能確保數(shù)據(jù)的正確性,。

   5.2  發(fā)送數(shù)據(jù)

  PT7A6525 既可以在中斷里發(fā)送數(shù)據(jù),,也可以在程序執(zhí)行中發(fā)送。假設(shè)要發(fā)送的數(shù)據(jù)放人緩沖區(qū)t_pt7a6525[MSG_LEN],。在下面的實(shí)例中,,消息長度 MSG_LEN很靈活,可為任意值,,可發(fā)送超過32字節(jié),。注意每次最多發(fā)送32字節(jié),在最后發(fā)送數(shù)據(jù)小于32字節(jié)時(shí),,將命令寄存器的XTF和XME位寫 1,,表明數(shù)據(jù)包發(fā)送結(jié)束。

發(fā)送數(shù)據(jù)

  6 PT7A6525在程控?cái)?shù)字交換機(jī)中的應(yīng)用

  在程控?cái)?shù)字交換機(jī)中,,最廣泛應(yīng)用的就是交換信令的傳輸和接收,。微處理器根據(jù)收到的信令或消息,進(jìn)行相應(yīng)的操作,。如收到SETUP消息,,需發(fā)送SETUP AC-KNOWLEDGE。再根據(jù)消息的不同,,進(jìn)行不同的話路接續(xù)、語音接續(xù),、電路控制等,。而在程控?cái)?shù)字交換機(jī)應(yīng)用中,尤其是標(biāo)準(zhǔn)的信令如NO.7,、 DSSl信令,,局間的通信量較大,,1條協(xié)議鑒別語(protocol discriminator)多數(shù)需要32字節(jié)甚至更多,文中給出Q.931協(xié)議鑒別語中的消息建立(SETUP)實(shí)例供參考,。

  Q.931 協(xié)議規(guī)定了每個(gè)消息要包含協(xié)議鑒別語(pro-tocol discriminator),、呼叫參考(call reference)、消息類型(message type),、其他信息單元(other information ele-ments,,as required)幾部分,如下所示:

Q.931 協(xié)議規(guī)定

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。