<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基才HDLC協(xié)議的SDH傳輸系統板間通信的設計

基才HDLC協(xié)議的SDH傳輸系統板間通信的設計

作者: 時(shí)間:2006-10-31 來(lái)源:網(wǎng)絡(luò ) 收藏

摘 要:針對板間傳統方法的不足,介紹一種采用進(jìn)行的新方法.并在MPC852T型嵌入式微處理器上得以實(shí)現。嚴格的驗證證明其在可靠性和傳輸速率方面獲得了很好的性能。
關(guān)鍵詞:UART::嵌入式微處理器;SCC

1 引言
板間總線(xiàn)是決定系統設備是否穩定可靠工作的關(guān)鍵技術(shù)之一。板間的物理層信道不可能不發(fā)生差錯.必須選擇合適的數據鏈路層克服有差錯的信道。SDH系統網(wǎng)元內的板間通信受成本和復雜性的限制,一般都建議采用單板Mcu系統內置的串行通信機制來(lái)完成,MCU器件內置的通信接口中,以傳統的UART串行通信接口較為常見(jiàn),UART異步串行通信理論上最大的速率為115 200b/s,因而傳輸效率低下,只適合板間簡(jiǎn)單信息的互通。隨著(zhù)單板軟件復雜程度的提高.通過(guò)板間通信總線(xiàn)傳遞的帶寬要求也會(huì )不斷增加:同時(shí)隨著(zhù)系統變得更加復雜,板間通信總線(xiàn)報文本身的長(cháng)度也在不斷增加中,板間的通信數據流量越來(lái)越大.對板間通信總線(xiàn)的傳輸要求也不斷提高。針對UART方式速率上的不足,擬對進(jìn)行研究.并選用Motormla 的MPC852T型處理器.利用其對HDLC協(xié)議的支持,嘗試采用HDLC協(xié)議進(jìn)行板間通信,驗證其在可靠性、通信速率等方面的改善。

2 HDLC在SDH中的運用
HDLC(High一level Data Link Control Proeedures,高級數據鏈路控制規程)廣泛應用于數據通信領(lǐng)域.是確保數據信息可靠互通的重要技術(shù)。HDLC按照包含地址、控制、信息、CRC(稱(chēng)為幀)的標準格式進(jìn)行發(fā)送和接收。所有的幀以1個(gè)開(kāi)始標志(0x7E)開(kāi)始,以1個(gè)結束標志(0x7E)結束。在開(kāi)始和結束標志之間。1個(gè)幀包含地址域(A)、控制域(c)、O到5000字節的信息域(I)(可選)和FCS域,HDLC的幀結構如下:


HDLC以1個(gè)獨特的二進(jìn)制系列01111111O(0x7E)來(lái)確定幀首(Opening Flag)、幀尾(ClosingFlag).經(jīng)過(guò)編碼在1個(gè)幀的開(kāi)始和結束標志之間的其他部分杜絕了出現5個(gè)連續的“l(fā)”。

地址域(A)用于多點(diǎn)通訊方式時(shí)設定站地址。幀接收時(shí)如果地址域(A)與本站不匹配.該幀不會(huì )被接收。還有1個(gè)值得注意的是。FCS域.采用循環(huán)冗余校驗((2RC)除標志域外的所有其他域的校驗值。HDI£通過(guò):FCS域來(lái)保證數據的可靠傳輸。關(guān)于HDLC的詳細資料請參閱參考文獻。

SDH系統是目前電信系統中的主要傳輸手段,它由一些SDH網(wǎng)元組成.在光纖上進(jìn)行同步信息傳輸、復用和交叉連接。傳統的SDH網(wǎng)元結構如圖1所示。


在圖1所示系統中.網(wǎng)元控制板NCP單元部件是SDH系統的重要組成部分.系統內部各功能單板的性能、告警等信息要通過(guò)該單元送到網(wǎng)管。同時(shí)網(wǎng)管的一些命令也必須通過(guò)。NCP下發(fā)到各單板。系統中板間通信組成了1個(gè)典型的多機系統.NCP單元為多機通信系統中主機.其他部件為從機。

NCP單元和其他部件通信可靠性要求高.信息量大而且實(shí)時(shí)性要求高。而SDH系統網(wǎng)元的背板總線(xiàn)線(xiàn)路長(cháng)度相對較長(cháng).所以不得不考慮電磁干擾、信號完整性、阻抗匹配、電平選擇等問(wèn)題。傳統的UART通信顯然無(wú)法勝任。以HDLC協(xié)議的優(yōu)越性能,可以實(shí)現高可靠和高效的板間通信。

3 SDH板間通信
3.1 MPC852T
MPC85T是MPC866 PowerOUICC系列中的一款嵌入式通信處理器。MPC852T內核主頻可達100MHz.內部集成了CPU核(PowerQUICC)、系統接口單元(SIU)和通信處理器(CPM)3個(gè)模塊,由于它成本低、通信能力強、多種通信協(xié)議能靈活接口,因而特別適合于通信和網(wǎng)絡(luò )應用。MPC852T Pow-erQUICC集成了2個(gè)處理塊,1個(gè)處理塊是嵌入式Power PC核.另1個(gè)是RISC Controller。系統框圖如圖2所示。


通信協(xié)議處理器(CPM)模塊是需要關(guān)注的焦點(diǎn),它促成了MPC852T強大的通信處理能力。CPM是RISC處理器,具備多個(gè)通信控制器,其中包括2個(gè)串行通信控制器(SCC),可運行多種通信協(xié)議(Ether-net、HDLC、UART、透明傳輸等)。SCC口是最具有特色的接口.通過(guò)操作相應的寄存器、獨立開(kāi)發(fā)收發(fā)驅動(dòng)程序或調用操作系統相關(guān)的驅動(dòng)程序,SCC口就能完成優(yōu)越的板間通信功能。

參考MPC852T Datasheet提供的數據,HDLC板間通信速率支持Nx64kb/s,N最大為64,即理論最大通信速率為4Mb/s,實(shí)用速率應視CPM利用率和Core處理能力而改變。而UART的理論最大速率為115.2kb/s.理論比較結果非常明顯。

3.2 MPC852T處理器SCC口的設計

硬件設計方面.HDLC數據鏈路層協(xié)議需要合適的物理層的支持.以達到高可靠性和高流量??紤]到SDH網(wǎng)元背板的線(xiàn)路走線(xiàn)長(cháng)度和通信速率,列舉了常見(jiàn)的3種串行通信標準的主要特征。

由表1可以看出.RS一485的傳輸距離、速率都能滿(mǎn)足設計要求,而且成本低廉、易購,所以選擇RS一485來(lái)完成通信系統設計。如圖3所示。


在軟件編程方面。首先要設置SCC口的通道參數.本設計中將SCC3設置為HDLC模式。然后設計驅動(dòng)程序.驅動(dòng)程序運行時(shí)首先進(jìn)行SCC3以及存儲區的初始化.其次才進(jìn)行收發(fā)操作。SCC3及存儲區的初始化過(guò)程概括為:初始化SDCR以提供U總線(xiàn)上的優(yōu)先級一設置SICR將時(shí)鐘連接到SCC3一設置SCC3參數RAM最大接收緩存長(cháng)度一對命令寄存器(CPCR)寫(xiě)入相應命令初始化發(fā)送和接收參數一初始化HDLC參數RAM,包括錯誤計數器和幀地址域一初始化接收和發(fā)送緩存描述字一初始化屏蔽寄存器以允許期望的事件發(fā)生的中斷一初始化CIMR以允許CPM設備產(chǎn)生中斷一初始化通用SCC3方式寄存器高、低位一初始化協(xié)議定義方式寄存器,包括標志的數量,HDLC總線(xiàn)方式.標志共享允許等一設置SCC3方式寄存器低位((GSMR_LX)中允許發(fā)送和,或接收。

初始化完成后,便可以進(jìn)入收發(fā)狀態(tài)。接收過(guò)程為:當GSMR_LX寄存器中的ENR位允許時(shí),HDLC控制器進(jìn)入接收允許狀態(tài),在該狀態(tài)下,控制器等待1個(gè)標志。當出現1個(gè)標志時(shí),控制器進(jìn)入地址允許狀態(tài),等待1個(gè)非標志,該非標志必須為1個(gè)地址.控制器將地址與HADDRX和HMASK域的地址比較。地址匹配后,測RxBD狀態(tài)模式字節.如果接收準備好便開(kāi)始接收,1個(gè)數據包分多個(gè)地方緩存.RxBD字節的L位可以指示是否為接收幀最后一個(gè)緩存.不是便繼續接收,是則完成CRC校驗后結束接收。流程如圖4所示。


圖4中:RxBD(ReceiverBuffer Descriptor,接收緩沖描述符)是SCC、SMC等控制器與緩沖區的接口。RxBD的數據結構如表2所示。


每個(gè)RxBD管理內存中的1個(gè)BUFFER區,RxBD中確定了這個(gè)BUFFER區的首地址和末地址。CPM將要接收的數據會(huì )被置于這個(gè)BUFFER區里,Data length描述了數據的長(cháng)度.Status and con-trol描述了數據和BUFFER區的狀態(tài)。驅動(dòng)程序通過(guò)設置、讀取RxBD中的各參數來(lái)判斷數據和BUFFER的狀態(tài),控制數據的收發(fā)。

多個(gè)RxBD可以在DPRAM或者內存中連續放置,構成1個(gè)RxBD表,讓CPM的控制器可以在驅動(dòng)程序介入處理之前接收或者發(fā)送多幀數據.數據幀數由RxBD表的個(gè)數所確定。

發(fā)送過(guò)程和接收相似,限于篇幅,不再贅述。

3.3 測試結果和性能分析

按照流程圖,采用C語(yǔ)言編程,并在PSOS操作系統上運行調試,為了檢查測試SCC3口的丟包率等性能,專(zhuān)門(mén)模仿TCP/IP中的ping命令編制了1條sping命令,用大數據包(1 024字節)長(cháng)時(shí)間的測試SCC3口.測試的命令是:
sping子架號槽位號cpu號包大小次數最大時(shí)間間隔(10ms為單位)

測試平臺如圖5所示。接有網(wǎng)線(xiàn)的單板是NCP板,左下邊是光板,微機通過(guò)網(wǎng)線(xiàn)經(jīng)交換機和NCP板進(jìn)行通信,運行telnet命令后相當于對NCP板自身的操作。NCP板和光板通過(guò)背板以HDLC協(xié)議進(jìn)行通信,此時(shí)執行sping命令便能測試SCC3口的性能。圖5是用于實(shí)測的硬件平臺。實(shí)測時(shí).為了驗證對大數據包的處理能力,采用了1 024字節.并且重復了1 000次。


從測試結果看出:傳輸大數據包的丟包率為零;從傳輸速率來(lái)看,平均70ms的時(shí)間包括發(fā)出和接收的時(shí)間,單程是35ms,換算成實(shí)際的傳輸速率約為234.1kb/s。因為測試是在一塊正常運行的單板上進(jìn)行的,MCU除了處理HDLC通信外.大部分資源都是在處理其他功能,因此實(shí)際測試結果要比理論值速低很多,但從目前傳輸系統板間通信所需的數據量來(lái)看,實(shí)測結果已經(jīng)滿(mǎn)足要求。

4 結束語(yǔ)
本文針對UART在板間通信的局限性提出了采用HDLC協(xié)議重新設計的方法.并采用MPC852T實(shí)現了設計方案,通過(guò)編寫(xiě)驅動(dòng)程序在PSOS操作系統上進(jìn)行調試,取得了比較滿(mǎn)意的結果。利用該方法已完成了SDH系統設備的研發(fā),產(chǎn)品目前穩定可靠。該設計方法還可以延伸到路由器設備、移動(dòng)通信基站、接人設備等單板之間的通信.具有比較高的應用值。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>