多路接口與E1協議轉換器設計與實現
摘要:針對通信帶寬越來越高,低速設備無法連接到高速的E1線路的問題,提出了一種基于可編程邏輯器件FPGA、嵌入式微處理器MPC875的多路接口與E1協議轉換器的設計,給出了硬件原理框圖及主要元器件的選型,并對多路接口數據調度方法、空時隙處理策略、FPGA結構設計、軟件設計流程進行了詳細說明。通過實現RS 232,RS 449,V.35三路接口與E1的協議轉換,證明該方案是可行的。
關鍵詞:多路接口;E1;協議轉換;FPGA
0 引言
隨著計算機技術與通信技術的持續(xù)發(fā)展,人們對高帶寬需求不斷增加,接入DDN(Digital Data Network)網、幀中繼網等高速通信網的應用也越來越普遍。E1是我國電信傳輸網一次群使用的傳輸標準,速率是2.048 Mb/s。實現多路接口與E1協議的相互轉換,將可以把多種設備同時連接至高速的E1線路。本文基于FPGA(Field Programmable Gate Array)、嵌入式微處理器設計了一個多路接口與E1的協議轉換器,實現RS 232,RS 449,V.35等接口數據在E1線路上的高速傳輸。
1 系統(tǒng)原理
1.1 系統(tǒng)描述
多路接口與E1協議轉換示意圖如圖1所示。在發(fā)送端,將多路接口數據按照一定順序合并成一路符合E1協議的數據在E1信道上進行傳輸,在接收端,將接收到的E1信號再按發(fā)送端順序分成多路接口數據。
1.2 多路接口數據映射到E1幀的方法
E1是一種典型的時分復用結構,一個E1時分復用幀劃分為32個相等的時隙,編號為CH0~CH31,其中時隙CH0用作幀同步用,時隙CH16用來傳送信令。其余的時隙用來傳送有效數據。
通過將不同的接口數據插入不同的數據時隙,把多路接口數據編成一個E1數據幀,實現多路接口與E1的協議轉換。
將多路接口數據映射到E1時隙中,需要根據每路接口的速率進行時隙分配,也就是將E1的一個或多個時隙分配給一路接口使用,分配的時隙速率不小于接口速率(每個時隙的速率相當于64 Kb/s),DTE(Data Terminal Equipment)與DCE(Data Communications Equipment)設備端時隙分配設置必須一致。由于協議轉換器沒有自適應接口速率的功能,因此時隙的分配通過一個軟件界面由使用者完成。
為了實現對時隙的分配,設置30個4位的時隙分配寄存器。CPU根據使用者的時隙分配設置,生成30個數據時隙地址并寫入對應時隙分配寄存器。數據時隙地址表示的是該數據時隙傳送的是哪個接口的數據。在發(fā)送端,根據該地址從相應接口讀取數據插入對應時隙;在接收端,根據該地址將相應時隙數據送往對應接口。表1為數據時隙地址與接口對應關系表,空閑表示該時隙空置沒有使用。
系統(tǒng)將E1時隙分配給多路接口使用,當有時隙沒有被分配時,就會產生空時隙。在本設計中,系統(tǒng)可支配的最小單位是E1時隙,也就是說,系統(tǒng)可以將一個數據時隙分配給一路接口使用,也可以將多個數據時隙分配給一路接口使用,當一路接口數據不能完全填滿一個或多個時隙時,將會產生半空時隙。比如一個100 Kb/s的接口,占用兩個時隙,將會產生28 Kb/s的空時隙。
評論