符合中國移動標準協議轉換器中的HDLC協議的FPGA設計與實現
隨著通信與網絡技術的不斷發展,使我國用現有的E1資源來傳輸以太網業務成為廣泛的應用。以太網數據要通過E1線路傳輸就必須對以太網凈荷數據進行幀封裝,才能從E1線路上恢復出以太網數據幀,完成以太網數據的交換。通常,以太網數據是通過HDLC協議或GFP協議來進行封裝的。本文介紹了中國移動標準協議轉換器中以太網到單路E1轉換器HDLC協議封裝的FPGA(現場可編程邏輯陣列)設計與實現。
本文引用地址:http://www.104case.com/article/121375.htm通用HDLC協議介紹
HDLC(High Level Data Link Control)協議是通信領域應用最廣泛的協議之一,它是面向位的高級數據鏈路控制規程,具有差錯檢測功能強大、高效和同步傳輸的特點。其幀結構如圖1所示。
其中,F為起始標志和結束標志,定義為“01111110”,作為幀同步標志。兩HDLC幀間至少包含一個“01111110”。A為接收地址,C為控制字,Info為信息字段,是長度可變的凈荷數據,FCS為對A+C+Info進行CRC校驗的結果。A+C+Info+FCS就構成了HDLC幀透明傳輸的凈荷內容。為了防止HDLC幀凈荷中出現幀同步標志,協議規定,在發送端,如果HDLC幀的凈荷中出現5個連續的“1”時,在第5個“1”后自動插入一個“0”;在接收端,當HDLC幀同步后,如果在幀凈荷比特流中檢測到連續5個“1”時,要自動將第5個“1”后的“0”刪除。從而保證了HDLC凈荷良好的傳輸特性。
HDLC標準的協議較多,如CCITT、ANSI、ISO/IEC等。各種標準的區別之一就是CRC校驗處理的差異,體現如下:
1. 幀校驗序列位數不同,如CRC16和CRC32。
2. CRC生成多項式不同,如對于CRC16,CCITT標準的多項式是x16+x12+x5+1;ANSI標準的多項式是x16+x15+x2+1。
3. CRC校驗寄存器的初始值不同,初始值為全“0”,或為全“1”。
4. CRC計算結果發送方式不同,如直接把CRC結果發送,或把CRC結果取反發送。
評論