徐思燕,鄧宇
(西華大學計算機與軟件工程學院,成都610039)
基于FPGA的E1成幀器的設(shè)計與實現(xiàn)
徐思燕,鄧宇
(西華大學計算機與軟件工程學院,成都610039)
提出一種基于FPGA的E1成幀器的設(shè)計與實現(xiàn),分析E1基本幀和復(fù)幀的結(jié)構(gòu),設(shè)計基于FPGA的E1基本幀、復(fù)幀的接收同步檢測和發(fā)送形成幀的電路,完成E1成幀器的RTL描述,并利用ModelSim仿真軟件對設(shè)計的電路進行仿真驗證。
FPGA;E1;成解幀
隨著通信事業(yè)的不斷發(fā)展,成幀器芯片的應(yīng)用越來越廣泛,需求量也越來越大。以往的成幀器通常使用ASIC或軟件編程的方式實現(xiàn)。ASIC方式雖然保證了成幀器的穩(wěn)定性和速度,但是它的價格一般都比較昂貴。軟件編程方式雖然靈活,但是缺乏穩(wěn)定性。設(shè)計一款既穩(wěn)定又靈活的成幀器成為市場的需求。
本文提出一種基于FPGA實現(xiàn)E1成幀器的方式,它既集成了ASIC的穩(wěn)定性又集成了軟件的靈活性。
符合G.704標準的E1幀結(jié)構(gòu)如圖1所示,E1的工作效率為2048Kbit/s,圖中的每一行就是一個基本幀,每個基本幀長度為256比特,由32個時隙(ts0~ts31)組成,每個路時隙由8bit碼組成,其中時隙ts1~ts15,ts17~ts31分別用來傳數(shù)字信息的數(shù)據(jù)時隙,ts0用來傳輸幀同步信號(FAS),循環(huán)冗余校驗位(Ci),同步告警位(A)和備用位(S),ts16用來傳輸信令。
復(fù)幀(MF)由16個E1幀組成。在復(fù)幀中,E1幀被分為FAS幀和NFAS幀,兩種幀在復(fù)幀結(jié)構(gòu)中交替出現(xiàn)。FAS幀和NFAS幀的區(qū)分是通過ts0的第bit2來區(qū)分,NFAS幀的bit2為‘1’,F(xiàn)AS幀的bit2~bit8為幀同步信號,用來實現(xiàn)基本幀同步。G.704協(xié)議規(guī)定幀同步信號FAS為“0011011”。
復(fù)幀的第一幀ts16的前四個碼位分配給復(fù)幀定位使用,其定位碼組是“0000”,第6bit為復(fù)幀對告比特,無報警時固定為‘1’。復(fù)幀中第2~16幀的ts16作為30個話路的信令時隙,每路信令占4個碼位,在這里以4比特為單位實現(xiàn)30路信令的同步交錯復(fù)用,同時不能為“0000”。但由于目前國內(nèi)使用的是公共信令,所以一般使用的幀應(yīng)該是PCM31即31路話路,ts16傳也為數(shù)據(jù),本設(shè)計也是針對這種幀結(jié)構(gòu)。
圖1 E1幀/復(fù)幀結(jié)構(gòu)
E1成幀器由div_clk、deframe_module和frame_ mdoule三部分組成,分別實現(xiàn)E1成幀器的工作頻率、解幀和成幀。
本成幀器傳輸?shù)臄?shù)據(jù)是E1信號,其幀的重復(fù)頻率為8000幀/秒,復(fù)接后比特率是2.048Mbit/s。經(jīng)過計算可知傳輸1位數(shù)據(jù)需要500ns,而系統(tǒng)的時鐘為100MHz,即周期為10ns,為了達到傳送與接收數(shù)據(jù)的同步且傳輸率為8000幀/秒,需要對系統(tǒng)時鐘進行50分頻。
deframe_module模塊負責E1幀的解析。其中主要的部分就是對基本幀和復(fù)幀同步的檢測。首先對基本幀的檢測,根據(jù)ITU-T G.704標準要求,基本幀同步檢測需要經(jīng)過以下過程,第一步檢測到正確的幀同步信號FAS(0011011);第二步檢測下一幀是不是NFAS幀,即檢測ts0的bit2是否為1;第三步,檢測第3幀,第二次發(fā)現(xiàn)正確的幀同步信號FAS。在以上的過程中,如果任何步驟出現(xiàn)問題,幀的同步檢測又得從第一步開始。幀同步檢測確定后,如果發(fā)生以下情況之一發(fā)生就判斷幀同步檢測丟失,第一種情況,連續(xù)檢測到3個NFAS幀的ts0的bit2位不為1;第二情況,連續(xù)檢測到3個錯誤的FAS幀同步信號。本設(shè)計中使用了有限狀態(tài)機的方法來實現(xiàn)對幀的同步檢測和丟失檢測,其框圖如圖2所示。
圖2 基本幀同步檢測狀態(tài)圖
根據(jù)幀的重復(fù)頻率,計算可以得知,傳輸一個復(fù)幀的時間為2ms。復(fù)幀同步檢測的條件是在8ms內(nèi)接收到4個復(fù)幀中,有兩個或者兩個以上正確的復(fù)幀同步信號(001011)。如果出現(xiàn)基本幀丟失或者連續(xù)4個復(fù)幀中沒有找到正確的復(fù)幀同步信號,就判斷復(fù)幀丟失。
Frame_module模塊是負責基本幀和復(fù)幀的成幀。本設(shè)計中主要是按照IUT-T G.704通信協(xié)議的標準要求,把接收的數(shù)據(jù)進行封裝,形成基幀和復(fù)幀,其中復(fù)幀中包含F(xiàn)AS和NFAS兩種幀,然后把包裝好的信號發(fā)送出去。
本設(shè)計中使用Verilog HDL對系統(tǒng)進行RTL級描述,使用ModelSim軟件進行仿真。圖3為時鐘分頻的仿真結(jié)果。圖中的clk為系統(tǒng)時鐘,clk_bps為分頻后的時鐘即就是E1所需的時鐘頻率。
圖3 時鐘分頻仿真結(jié)果
圖4為deframe_moduled的仿真模塊,圖中CLK為系統(tǒng)時鐘信號,clk_bps為系統(tǒng)時鐘分頻后得到的2.048MHz的時鐘信號。RX為接收到的E1幀信號,是通過仿真文件rx_module.vt寫入的模擬E1信號數(shù)據(jù)。cnt、cnt_t分別為基本幀的比特計數(shù)、復(fù)幀的時間計數(shù)。fram_sig為基本幀同步檢測的確定信號,當通過基本幀檢測的過程后,該信號就將被置為1,進入下一次基本幀檢測時,該位復(fù)位。mult_fram為復(fù)幀同步檢測的確定信號,當檢測到正確的復(fù)幀同步信號時,該位被置1。經(jīng)過仿真驗證,本設(shè)計中的基本幀和復(fù)幀的同步檢測符合G.704通信協(xié)議標準要求。
圖5為frame_moduled的仿真模塊,圖中的clk為2.048MHz的時鐘信號。rst為復(fù)位信號。tx輸出為E1成幀的信號。圖中的幀為FAS幀和NFAS幀,兩種幀交替出現(xiàn)。當基本幀為FAS幀時,時隙ts0的bit2~bit8為幀同步信號(0011011);當基本幀為NFAS幀時,時隙ts0幀的第bit1用來傳復(fù)幀定位信號MFAS(001011),由于復(fù)幀信號只有六位,只需用到NFAS幀的前6幀,NFAS幀的后2幀用來傳誤塊指示比特E0和E1,時隙ts0的bit2為1,為FAS幀和NFAS幀的區(qū)分位。經(jīng)過仿真驗證,本設(shè)計中形成的基幀和復(fù)幀符合ITU-T G.704標準要求。
本文設(shè)計了一個滿足ITU-T G.704通信協(xié)議要求的,實現(xiàn)了基本幀、復(fù)幀的同步檢測和成幀的E1成幀器。本文分別從E1幀結(jié)構(gòu),成解幀的RTL實現(xiàn),仿真驗證等方面做了詳細的介紹。經(jīng)過時序仿真和實驗驗證,證明本設(shè)計合ITU G.704標準的要求,可以在低成本FPGA上實現(xiàn)。該實現(xiàn)方式最大的特點就是靈活,它既可以定制各種電路,又減少受制于專用芯片的束縛。本設(shè)計中的FPGA芯片選用的是Altera公司低成本CycloneII系列中的EP1C12Q240C8。經(jīng)過QuartusII軟件的編譯、時序分析和功耗分析,本設(shè)計滿足資源、時序和功耗的要求。
圖5 frame_moduled模塊仿真結(jié)果
[1]楊銳.基于FPGA的16E1/T1光纖復(fù)接系統(tǒng)的研究與實現(xiàn).中國礦業(yè)大學.通信與信息系統(tǒng).碩士論文,2008:1-50.
[2]張秀賢,張毅等.DS21554在E1數(shù)據(jù)傳輸分析儀中的應(yīng)用[J].微計算機信息,2008,7-1:171-173.
[3]ITU-T G.704 Synchronous Frame Structures Used at 1544,6312,2048,8448 and 44736 kbit/s hierarchical levels[S].Geneva:ITU,1998.
[4]耿立華,李占勇等.一種基于FPGA的E1數(shù)字傳輸分析儀成解幀實現(xiàn)方法[J].微計算機信息,2012,28(9):213-223
[5]帕爾尼卡.Verilog HDL數(shù)字設(shè)計與綜合[M].夏宇聞,譯.第2版.北京:電子工業(yè)出版社,2009.
Design and Implementation of E1 Into Frame Based on the FPGA
XU Si-Yan,DENG Yu
(College of Computer and Software Engineering,Xihua University,Chengdu 610039)
Proposes the design and implementation of a kind of E1 into frame Based on FPGA,analyzes the basic frame and E1 frame structure,basic frame,designs E1 multi-frame receiving synchronous detection and sending form the frame of the circuit based on FPGA,completes the E1 frame becoming of RTL description,and uses ModelSim simulation software to design the circuit simulation.
FPGA;E1;Framing and De-framing
1007-1423(2016)16-0044-03DOI:10.3969/j.issn.1007-1423.2016.16.013
徐思燕(1986-),女,四川宜賓人,碩士研究生,研究方向為嵌入式系統(tǒng)及其應(yīng)用
2016-04-06
2016-05-25
鄧宇(1991-),男,四川瀘州人,碩士研究生,研究方向為嵌入式系統(tǒng)及其應(yīng)用