《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 多路接口與E1協(xié)議轉(zhuǎn)換器設(shè)計(jì)與實(shí)現(xiàn)
多路接口與E1協(xié)議轉(zhuǎn)換器設(shè)計(jì)與實(shí)現(xiàn)
余發(fā)洪,,劉 皖,,王占峰 解放軍信息工程大學(xué)
摘要: 針對(duì)通信帶寬越來越高,低速設(shè)備無法連接到高速的E1線路的問題,,提出了一種基于可編程邏輯器件FPGA,、嵌入式微處理器MPC875的多路接口與E1協(xié)議轉(zhuǎn)換器的設(shè)計(jì),,給出了硬件原理框圖及主要元器件的選型,并對(duì)多路接口數(shù)據(jù)調(diào)度方法,、空時(shí)隙處理策略,、FPGA結(jié)構(gòu)設(shè)計(jì)、軟件設(shè)計(jì)流程進(jìn)行了詳細(xì)說明,。通過實(shí)現(xiàn)RS 232,,RS 449,V.35三路接口與E1的協(xié)議轉(zhuǎn)換,,證明該方案是可行的,。
Abstract:
Key words :

0 引言
    隨著計(jì)算機(jī)技術(shù)與通信技術(shù)的持續(xù)發(fā)展,,人們對(duì)高帶寬需求不斷增加,接入DDN(Digital Data Network)網(wǎng),、幀中繼網(wǎng)等高速通信網(wǎng)的應(yīng)用也越來越普遍,。E1是我國(guó)電信傳輸網(wǎng)一次群使用的傳輸標(biāo)準(zhǔn),速率是2.048 Mb/s,。實(shí)現(xiàn)多路接口與E1協(xié)議的相互轉(zhuǎn)換,,將可以把多種設(shè)備同時(shí)連接至高速的E1線路。本文基于FPGA(Field Programmable Gate Array),、嵌入式微處理器設(shè)計(jì)了一個(gè)多路接口與E1的協(xié)議轉(zhuǎn)換器,,實(shí)現(xiàn)RS 232,RS 449,,V.35等接口數(shù)據(jù)在E1線路上的高速傳輸,。

1 系統(tǒng)原理
1.1 系統(tǒng)描述
    多路接口與E1協(xié)議轉(zhuǎn)換示意圖如圖1所示。在發(fā)送端,,將多路接口數(shù)據(jù)按照一定順序合并成一路符合E1協(xié)議的數(shù)據(jù)在E1信道上進(jìn)行傳輸,,在接收端,,將接收到的E1信號(hào)再按發(fā)送端順序分成多路接口數(shù)據(jù),。

a.jpg


1.2 多路接口數(shù)據(jù)映射到E1幀的方法
    E1是一種典型的時(shí)分復(fù)用結(jié)構(gòu),一個(gè)E1時(shí)分復(fù)用幀劃分為32個(gè)相等的時(shí)隙,,編號(hào)為CH0~CH31,,其中時(shí)隙CH0用作幀同步用,時(shí)隙CH16用來傳送信令,。其余的時(shí)隙用來傳送有效數(shù)據(jù),。
    通過將不同的接口數(shù)據(jù)插入不同的數(shù)據(jù)時(shí)隙,把多路接口數(shù)據(jù)編成一個(gè)E1數(shù)據(jù)幀,,實(shí)現(xiàn)多路接口與E1的協(xié)議轉(zhuǎn)換,。
    將多路接口數(shù)據(jù)映射到E1時(shí)隙中,需要根據(jù)每路接口的速率進(jìn)行時(shí)隙分配,,也就是將E1的一個(gè)或多個(gè)時(shí)隙分配給一路接口使用,,分配的時(shí)隙速率不小于接口速率(每個(gè)時(shí)隙的速率相當(dāng)于64 Kb/s),DTE(Data Terminal Equipment)與DCE(Data Communications Equipment)設(shè)備端時(shí)隙分配設(shè)置必須一致,。由于協(xié)議轉(zhuǎn)換器沒有自適應(yīng)接口速率的功能,,因此時(shí)隙的分配通過一個(gè)軟件界面由使用者完成。
    為了實(shí)現(xiàn)對(duì)時(shí)隙的分配,,設(shè)置30個(gè)4位的時(shí)隙分配寄存器,。CPU根據(jù)使用者的時(shí)隙分配設(shè)置,生成30個(gè)數(shù)據(jù)時(shí)隙地址并寫入對(duì)應(yīng)時(shí)隙分配寄存器。數(shù)據(jù)時(shí)隙地址表示的是該數(shù)據(jù)時(shí)隙傳送的是哪個(gè)接口的數(shù)據(jù),。在發(fā)送端,,根據(jù)該地址從相應(yīng)接口讀取數(shù)據(jù)插入對(duì)應(yīng)時(shí)隙;在接收端,,根據(jù)該地址將相應(yīng)時(shí)隙數(shù)據(jù)送往對(duì)應(yīng)接口,。表1為數(shù)據(jù)時(shí)隙地址與接口對(duì)應(yīng)關(guān)系表,空閑表示該時(shí)隙空置沒有使用,。

b.jpg


    系統(tǒng)將E1時(shí)隙分配給多路接口使用,,當(dāng)有時(shí)隙沒有被分配時(shí),就會(huì)產(chǎn)生空時(shí)隙,。在本設(shè)計(jì)中,,系統(tǒng)可支配的最小單位是E1時(shí)隙,也就是說,,系統(tǒng)可以將一個(gè)數(shù)據(jù)時(shí)隙分配給一路接口使用,,也可以將多個(gè)數(shù)據(jù)時(shí)隙分配給一路接口使用,當(dāng)一路接口數(shù)據(jù)不能完全填滿一個(gè)或多個(gè)時(shí)隙時(shí),,將會(huì)產(chǎn)生半空時(shí)隙,。比如一個(gè)100 Kb/s的接口,占用兩個(gè)時(shí)隙,,將會(huì)產(chǎn)生28 Kb/s的空時(shí)隙,。
    對(duì)于沒有使用的空閑時(shí)隙,系統(tǒng)可以根據(jù)時(shí)隙分配寄存器的值識(shí)別空閑時(shí)隙,。在發(fā)送端,,默認(rèn)發(fā)送全“1”數(shù)據(jù),在接收端,,拋棄該無用數(shù)據(jù),;對(duì)于一路接口數(shù)據(jù)不能完全填滿一個(gè)或多個(gè)數(shù)據(jù)時(shí)隙產(chǎn)生的半空時(shí)隙,采取循環(huán)發(fā)空包的方法來填充半空時(shí)隙,,空包格式固定為“000 01111”,。在接收端,檢測(cè)到這樣的空包數(shù)據(jù),,丟棄不用,。
    下面主要實(shí)現(xiàn)V.35,RS 449,,RS 232三路接口與E1協(xié)議轉(zhuǎn)換的設(shè)計(jì),。通過三路接口與E1協(xié)議轉(zhuǎn)換的實(shí)現(xiàn),驗(yàn)證多路接口同時(shí)與E1協(xié)議轉(zhuǎn)換的可行性,。

1.3 系統(tǒng)硬件原理框圖與模塊功能描述
    系統(tǒng)硬件原理框圖如圖2所示,,主要由接口芯片,、FPGA、CPLD,、微處理器構(gòu)成,。

c.jpg


    LTC1546/LTC1544:多功能接口芯片LTC1546,LTC1544,,二者結(jié)合,,構(gòu)成全功能的多協(xié)議接口界面,支持RS232,,RS449,,EIA530,EIA-530-A,,V.35,,V.36,X.21協(xié)議,,協(xié)議的選擇可完全由軟件進(jìn)行,。
    MPC875:飛思卡爾MPC875嵌入式CPU,基于POWERPC架構(gòu),,主頻高達(dá)133 MHz,,8 KB指令cache,8 KB數(shù)據(jù)cache,,總線頻率最高可達(dá)80 MHz,。
    EP3C25F324C8:Altera公司的CycloneⅢ系列FPGA,性價(jià)比高,,資源豐富,。
    EPM7256 AETCl44-7:A1tera公司MAX7000AE系列CPLD,支持多種接口電平,。由于LTC1546,LTC1544接口電平為5 V,,F(xiàn)PGA不支持這樣的接口電壓,,這里使用CPLD作接口電路。
    XRT82D20:RXAR公司的E1線路接口芯片,,支持單路E1,,具有HDB3編碼、時(shí)鐘恢復(fù),、線路驅(qū)動(dòng)等功能,,75 Ω或者120 Ω阻抗匹配。
    keyboard:4×4鍵盤,,用來接收時(shí)隙分配設(shè)置輸入,。
    LED:LED指示燈,共30個(gè),用來指示30個(gè)數(shù)據(jù)時(shí)隙的使用情況:當(dāng)LED燈點(diǎn)亮?xí)r,,表示該時(shí)隙已經(jīng)使用,;LED燈不亮,表示該時(shí)隙為空閑,。

2 關(guān)鍵模塊設(shè)計(jì)
2.1 與CPU通信FPGA端硬件電路設(shè)計(jì)
    當(dāng)FPGA與CPU通信時(shí),,由于CPU總線特殊的時(shí)序關(guān)系,F(xiàn)PGA端須做相應(yīng)的處理才能保證讀寫數(shù)據(jù)的穩(wěn)定性,。圖3為MPC875讀數(shù)據(jù)總線時(shí)序圖,。其中:d.jpg為片選信號(hào),e.jpg為讀信號(hào),,A[0:31]為地址信號(hào),,D[0:31]為數(shù)據(jù)信號(hào)。圖4為MPC875寫數(shù)據(jù)總線時(shí)序圖,,f.jpg為寫信號(hào),,其余信號(hào)與讀總線相同。

g.jpg

    當(dāng)CPU讀取FPGA中數(shù)據(jù)時(shí),,先給出地址信號(hào),,然后使能片選d.jpg,、讀信號(hào)e.jpg,,這時(shí)如果數(shù)據(jù)總線上有數(shù)據(jù),,CPU讀入數(shù)據(jù),。但MPC875總線頻率高達(dá)80 MHz,,為了CPU能穩(wěn)定的讀取到數(shù)據(jù),,這里將片選信號(hào)與讀信號(hào)相“與”,,然后擴(kuò)寬3倍得到總線可用信號(hào),,在總線可用信號(hào)有效期間,,數(shù)據(jù)總線上總有數(shù)據(jù),,這樣,可以保證CPU能穩(wěn)定的讀到數(shù)據(jù),。
    當(dāng)CPU寫入數(shù)據(jù)時(shí),,CPU先給出地址信號(hào),然后給出片選及寫信號(hào),,在寫信號(hào)有效期間,,CPU穩(wěn)定的給出數(shù)據(jù)。因此,,在片選及寫信號(hào)有效時(shí),,鎖存數(shù)據(jù)總線上的數(shù)據(jù)即可。
2.2 CPLD硬件接口電路設(shè)計(jì)
    CPLD主要完成V.35,,RS 449,,RS 232數(shù)據(jù)收發(fā),;keyboard,LED控制,;FIFO讀寫等功能,。功能框圖如圖5所示。

i.jpg


    CPU通過CPLD對(duì)接口芯片進(jìn)行模式選擇,。V.35,,RS 449為同步平衡接口,常用接口速率為N×64 Kb/s(N=1~32),。時(shí)鐘,、數(shù)據(jù)信號(hào)為兩線平衡傳輸,控制信號(hào)為不平衡傳輸,。發(fā)送數(shù)據(jù)時(shí),,將與之對(duì)應(yīng)的時(shí)鐘一并輸出。在接收數(shù)據(jù)時(shí),,用接口時(shí)鐘采樣數(shù)據(jù),。
     RS 232為不平衡傳輸。幀格式固定為:1位開始位,、8位數(shù)據(jù)位,、結(jié)束位。結(jié)束位有三種:1位,、1.5位,、2位。開始位固定為“0”,,停止位固定為“1”,。通信雙方在開始通信前必須約定好串行傳輸?shù)膮?shù)(傳輸速度、幀格式),。在發(fā)送端,,首先通過分頻產(chǎn)生需要的串行波特率,然后按照幀格式以約定好的速率發(fā)送,。在接收端,,使用8倍于波特率的時(shí)鐘對(duì)接收到的信號(hào)進(jìn)行過采樣,經(jīng)過濾波后如果為低電平信號(hào),,即認(rèn)為是開始位,然后按照約定好的速率接收數(shù)據(jù),。
    在接收數(shù)據(jù)時(shí),,F(xiàn)IFO讀寫模塊將串行接收數(shù)據(jù)變成8位并行,同時(shí),,將與接收數(shù)據(jù)同步的時(shí)鐘8分頻,,用此時(shí)鐘將8位并行數(shù)據(jù)寫入與該接口對(duì)應(yīng)的FIFO,;在發(fā)送數(shù)據(jù)時(shí),將發(fā)送時(shí)鐘8分頻,,用此時(shí)鐘從與該接口對(duì)應(yīng)的FIFO讀取數(shù)據(jù),,同時(shí)將8位并行數(shù)據(jù)串行輸出。
    keyboard為4×4掃描式矩陣鍵盤,,具有16個(gè)鍵,。由硬件程序自動(dòng)掃描鍵盤,輸入數(shù)據(jù)觸發(fā)中斷,,CPU讀取數(shù)據(jù),。LED輸出由CPU寫入相應(yīng)的顯示寄存器,然后硬件程序?qū)⑾嚓P(guān)信號(hào)輸出點(diǎn)亮LED,。

2.3 FPGA硬件電路設(shè)計(jì)
    FPGA主要根據(jù)時(shí)隙的分配設(shè)置,,在時(shí)鐘系統(tǒng)的管理控制下,完成E1的編解幀功能,。功能框圖如圖6所示,。

j.jpg


    CPU根據(jù)設(shè)置向時(shí)隙分配寄存器寫入相應(yīng)的數(shù)據(jù)。在發(fā)送數(shù)據(jù)時(shí),,E1編解幀模塊根據(jù)時(shí)隙分配設(shè)置,,從相應(yīng)的FIFO讀取數(shù)據(jù),寫入該時(shí)隙,。對(duì)于沒有使用的空時(shí)隙,,按照空時(shí)隙處理辦法填入無效數(shù)據(jù)。發(fā)送時(shí)鐘為FPGA外接的2.048 MHz時(shí)鐘,。由于XRT82D20為數(shù)據(jù)差分輸入,,因此將編解幀模塊輸出的數(shù)據(jù)TPOS進(jìn)行反向得到TNEG,平衡輸出,。TCLK為發(fā)送時(shí)鐘,。
    在接收時(shí),XRT82D20數(shù)據(jù)差分輸入RPOS,,RNEG,,將兩個(gè)信號(hào)相減得到輸入數(shù)據(jù)信號(hào),RCLK為時(shí)鐘輸入,。在輸入時(shí)鐘的控制下,,E1編解幀模塊將數(shù)據(jù)解幀。同時(shí),,根據(jù)時(shí)隙分配設(shè)置,,將各個(gè)時(shí)隙的數(shù)據(jù)送入不同的接口FIFO。

3 軟件主程序流程圖
    MPC875主要完成接口芯片初始化設(shè)置,、時(shí)隙分配設(shè)置輸入,、狀態(tài)顯示等功能,。軟件主程序流程圖如圖7所示。


    上電以后,,CPU進(jìn)行初始化設(shè)置,。延遲1 ms進(jìn)行內(nèi)存地址分配:每個(gè)自定義寄存器及I/O均分配一個(gè)內(nèi)存地址,CPU操作時(shí)讀寫相應(yīng)地址即可,;接著進(jìn)行LTC1546/LTC1544模式選擇,,將三組接口分別配置為V.35,RS 449,,RS 232,;然后查詢時(shí)隙分配設(shè)置輸入,如果已經(jīng)輸入時(shí)隙分配設(shè)置,,則讀取時(shí)隙設(shè)置數(shù)據(jù),,否則,等待時(shí)隙設(shè)置輸入,;協(xié)議轉(zhuǎn)換器初始化設(shè)置完畢,,每隔100 ms進(jìn)行一次線路運(yùn)行狀態(tài)告警顯示。

4 協(xié)議轉(zhuǎn)換器測(cè)試
4.1 測(cè)試平臺(tái)搭建
    測(cè)試平臺(tái)由JDSU ANT-5 SDH接入測(cè)試儀,,協(xié)議轉(zhuǎn)換器,,示意圖如圖8所示。JDSU ANT-5手持型SDH/PDH傳輸分析儀,,內(nèi)置所有必要的接口:從T1Bantam,、E1平衡與E1非平衡,到STM-16/OC48光接口,;測(cè)試速率從1.544 Mb/s~2.5 Gb/s,;大屏幕、簡(jiǎn)單圖形化界面,、中文菜單,,易于使用。

l.jpg


    首先進(jìn)行時(shí)隙分配設(shè)置,,將1到15時(shí)隙分配給V.35接口,,17到30時(shí)隙分配給RS 449接口,31時(shí)隙分配給RS 232接口,。由JDSU ANT-5 SDH接入測(cè)試儀發(fā)出的2 MHz信號(hào),,進(jìn)入?yún)f(xié)議轉(zhuǎn)換器,然后分別將V.35,,RS 449,,RS 232接口環(huán)回,再將輸出的E1信號(hào)接入測(cè)試儀,,在測(cè)試儀中測(cè)試環(huán)回信號(hào)的各種特性,。
4.2 測(cè)試結(jié)果
    依照上述測(cè)試平臺(tái)進(jìn)行協(xié)議轉(zhuǎn)換器功能測(cè)試,測(cè)試結(jié)果顯示,,誤碼率為0,,說明協(xié)議轉(zhuǎn)換器功能正常。JDSU ANT-5 SDH接入測(cè)試儀測(cè)試截圖如圖9所示,。其中BER為誤碼率,。

m.jpg



5 結(jié)語
    本文提出了一種多路接口與E1的協(xié)議轉(zhuǎn)換設(shè)計(jì)方法,并具體介紹了時(shí)隙分配及調(diào)度,、空時(shí)隙處理等技術(shù)難點(diǎn),。通過實(shí)現(xiàn)V.35,RS449,,RS 232三路接口與E1的協(xié)議轉(zhuǎn)換,,證明該方案是可行的。另外,,本設(shè)計(jì)具有良好的擴(kuò)展性,,可以方便的根據(jù)具體應(yīng)用添加或去除接口,也可以在本設(shè)計(jì)的基礎(chǔ)上進(jìn)行二次開發(fā),,完成更多的功能,。

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