發(fā)布時間:所屬分類:科技論文瀏覽:1次
摘 要: 摘要:在數(shù)據(jù)傳輸系統(tǒng)中,數(shù)據(jù)在傳輸?shù)倪^程里會存在一些冗余信息,而且傳輸?shù)臄?shù)據(jù)需要預(yù)先進行編碼處理。針對數(shù)據(jù)傳輸過程中的問題,文中設(shè)計了一種數(shù)據(jù)編碼電路。該電路能將接收到的數(shù)據(jù)以四種不同的編碼方式發(fā)送出去,而且可以將傳輸數(shù)據(jù)中的冗余信息去除。
摘要:在數(shù)據(jù)傳輸系統(tǒng)中,數(shù)據(jù)在傳輸?shù)倪^程里會存在一些冗余信息,而且傳輸?shù)臄?shù)據(jù)需要預(yù)先進行編碼處理。針對數(shù)據(jù)傳輸過程中的問題,文中設(shè)計了一種數(shù)據(jù)編碼電路。該電路能將接收到的數(shù)據(jù)以四種不同的編碼方式發(fā)送出去,而且可以將傳輸數(shù)據(jù)中的冗余信息去除。該數(shù)據(jù)編碼電路通過Vivado硬件仿真平臺進行仿真驗證,使用XilinxZedBoardFPGA開發(fā)板來實現(xiàn)。實驗結(jié)果表明,本方案合理地使用了片上資源,在滿足電路在時序與功耗上的要求的同時,也滿足了功能上的要求。
關(guān)鍵詞:半導(dǎo)體技術(shù);數(shù)據(jù)編碼;VerilogHDL;FPGA
科技的進步推動著高速信息處理技術(shù)的發(fā)展,在工業(yè)生產(chǎn)、科研探索、消費電子等諸多領(lǐng)域中,信號處理傳輸?shù)膽?yīng)用與日俱增[1-5]。當今世界科學技術(shù)快速發(fā)展,使得通信、雷達、航空航天等軍事或民用的各個領(lǐng)域?qū)π畔⑥D(zhuǎn)換的要求越來越高,因此對數(shù)據(jù)編碼的需求越來越廣泛[6-10]。數(shù)據(jù)編碼電路是不同模塊電路之間的橋梁,具有快速獲取信息、存儲信息、處理信息和發(fā)送信息的作用。數(shù)據(jù)編碼電路能對信號快速、有效地處理,尤其是在軍事領(lǐng)域和通信領(lǐng)域,早些將信息處理,這往往能達到至關(guān)重要的效果[11-13]。
本文基于現(xiàn)場可編程門陣列(FieldProgrammableGateArray,F(xiàn)PGA)設(shè)計了一種數(shù)據(jù)編碼電路,解決數(shù)據(jù)傳輸過程中數(shù)據(jù)需要編碼轉(zhuǎn)換的問題。
1數(shù)據(jù)編碼電路系統(tǒng)
1.1數(shù)據(jù)編碼電路功能
數(shù)據(jù)通過數(shù)據(jù)線DIN采用串行方式不間斷地輸入該電路,并且與時鐘CLK_30MHz同步。該電路根據(jù)模式MODE的設(shè)定,對接收到的有效數(shù)據(jù)進行重新排列。通過系統(tǒng)時鐘CLK_48MHz產(chǎn)生不同頻率的輸出信號,即同步時鐘信號CLK_OUT。為了使得通信持續(xù)進行,該電路需要使得接收有效數(shù)據(jù)的時間與輸出有效數(shù)據(jù)的時間基本一致。
最終將有效信號分別輸出到三個數(shù)據(jù)輸出端DOUT_A、DOUT_B和DOUT_C上,同時產(chǎn)生有效指示信號VALID。數(shù)據(jù)編碼電路的主要功能包括:①接收數(shù)據(jù),識別有效數(shù)據(jù),并存儲數(shù)據(jù);②根據(jù)模式,產(chǎn)生不同頻率的輸出時鐘,使得接收有效數(shù)據(jù)的時間與輸出有效數(shù)據(jù)的時間基本一致;③根據(jù)模式,對三個端口的數(shù)據(jù)進行編碼轉(zhuǎn)換,串行發(fā)送數(shù)據(jù)。
1.2數(shù)據(jù)編碼電路結(jié)構(gòu)
接收模塊識別數(shù)據(jù),組裝數(shù)據(jù)并且產(chǎn)生寫使能與寫地址;分頻模塊得到輸出的頻率;存儲模塊將得到的數(shù)據(jù)存儲與讀出;發(fā)送模塊將數(shù)據(jù)從存儲模塊讀出,將并行數(shù)據(jù)串行輸出,并且與控制模塊通過握手進行協(xié)同操作;控制模塊產(chǎn)生讀使能與讀地址來控制存儲模塊,根據(jù)模式控制分頻模塊的分頻狀態(tài),并且與發(fā)送模塊進行握手通信[14-15]。
2硬件模塊設(shè)計
對于輸入數(shù)據(jù)端口DIN,每幀輸入數(shù)據(jù)由720組數(shù)據(jù)組成,每組數(shù)據(jù)由八位有效數(shù)據(jù)和兩位無效數(shù)據(jù)構(gòu)成。對于輸出數(shù)據(jù)端口DOUT_A、DOUT_B和DOUT_C,輸出數(shù)據(jù)只輸出不同模式下的有效數(shù)據(jù)。硬件電路實現(xiàn)了輸入到輸出之間的數(shù)據(jù)處理過程。
2.1接收模塊
接收模塊由三部分電路組成,即串并轉(zhuǎn)換電路、寫地址產(chǎn)生電路與寫使能產(chǎn)生電路。首先,串并轉(zhuǎn)換電路識別幀頭;再將串行數(shù)據(jù)DIN并行化,得到數(shù)據(jù)傳輸過程中的有效信號;之后產(chǎn)生相應(yīng)的寫地址與寫使能。接收模塊每次并行化的數(shù)據(jù)由6組有效數(shù)據(jù)構(gòu)成。這可以減少了寫使能與寫地址的變化頻率,從而降低了動態(tài)功耗。
2.2存儲模塊
存儲模塊是一個典型的偽雙口RAM,一個端口只讀,另一個端口只寫。偽雙口RAM存儲了兩幀數(shù)據(jù),根據(jù)地址將該存儲模塊分為兩個部分,這兩部分分別存儲了兩幀數(shù)據(jù)。當一部分數(shù)據(jù)進行寫操作,另一部分數(shù)據(jù)可以進行讀操作,這完成了數(shù)據(jù)的無縫緩沖和處理。這兩部分可以同時分別進行讀或?qū)懀瑥亩鴮崿F(xiàn)典型的乒乓操作。存儲模塊需要耗費大量的寄存器資源。通過調(diào)用相應(yīng)的IP核,并且使用塊RAM來實現(xiàn),不僅合理地使用了FPGA資源,而且降低了電路的功耗。
2.3控制模塊
控制模塊調(diào)節(jié)各個模塊進行協(xié)同工作。該模塊通過接收模塊收到數(shù)據(jù)之后生成的寫地址與寫使能,可以得到數(shù)據(jù)是否已經(jīng)讀入完畢;根據(jù)與發(fā)送模塊間的握手信號REC_ACK產(chǎn)生讀使能與讀地址,從而控制存儲模塊;通過與發(fā)送模塊的握手進行協(xié)調(diào)通信;根據(jù)MODE端口來控制分頻模塊產(chǎn)生不同頻率的信號。
2.4發(fā)送模塊
發(fā)送模塊通過與控制模塊協(xié)調(diào)得到讀數(shù)據(jù),并且將讀數(shù)據(jù)分解成相應(yīng)的串行輸出數(shù)據(jù)。該電路主要由握手電路與并串轉(zhuǎn)換電路構(gòu)成。在握手電路中,發(fā)送模塊REC_ACK拉高表明已準備好接收下一組讀數(shù)據(jù)。而控制模塊據(jù)此在產(chǎn)生讀使能與讀地址后拉高KEY信號,表明讀數(shù)據(jù)已經(jīng)有效,從而實現(xiàn)了跨時鐘域的握手操作。并串轉(zhuǎn)換電路則根據(jù)模式來對數(shù)據(jù)進行拆解與并串轉(zhuǎn)換操作。
3實驗結(jié)果分析
本實驗首先在Modelsim上進行功能仿真,之后使用Xilinx公司的Vivado2017.1進行硬件開發(fā)。FPGA使用XilinxZedBoardZynqEvaluationandDevelopmentKit開發(fā)板。
3.1功能仿真
通過功能仿真對電路實現(xiàn)的功能進行驗證分析。首先,制定了合理的仿真驗證方案,保證該電路的所有功能都測試;其次,通過觀察仿真結(jié)果確保功能的正確性。
3.1.1仿真驗證方案
在進行仿真驗證時,首先在MATLAB中用序列發(fā)生器產(chǎn)生隨機的輸入數(shù)據(jù),從而得到了發(fā)送數(shù)據(jù)的文本文檔;再將得到的文本文檔的數(shù)據(jù)讀出,并以串行的方式按照時鐘數(shù)據(jù)輸入到DIN端口,從輸出端口可以得出相應(yīng)數(shù)據(jù);最后根據(jù)輸出端口的數(shù)據(jù)與預(yù)期的輸出結(jié)果是否一致來判斷電路是否符合要求,從而驗證了電路功能的正確性。
①激勵對電路信號進行初始化,產(chǎn)生復(fù)位信號、系統(tǒng)時鐘與同步時鐘,之后選擇電路模式;②輸入端口DIN按照同步時鐘輸入數(shù)據(jù)的幀頭;③輸入端口DIN將輸入數(shù)據(jù)按照同步時鐘進行串行發(fā)送;④將經(jīng)過電路處理后的數(shù)據(jù)與事先估計的結(jié)果進行比對,若一致,則電路正確。根據(jù)模式的不同,將電路分為四個測試點。在測試點1、2、3和4中,MODE分別設(shè)定為0、1、2和3,觀察輸出是否滿足數(shù)據(jù)輸出規(guī)則。flag為輸出是否正確的標志位,如果仿真輸出結(jié)果與預(yù)期結(jié)果相同,則flag為1,否則為0。
4結(jié)束語
針對數(shù)據(jù)傳輸過程中數(shù)據(jù)的特點,提出了一種數(shù)據(jù)編碼電路。該編碼電路合理劃分電路模塊,實現(xiàn)了四種不同的編碼方式。實驗結(jié)果表明,該電路滿足功能、資源、時序與功耗的要求,達到相應(yīng)指標。
參考文獻:
[1]張平.基于FPGA的高速8B/10B解碼電路設(shè)計[D].合肥:安徽大學,2016.
[2]李長慶,程軍,李梁,等.采用并行8b/10b編碼的JESD204B接口發(fā)送端電路設(shè)計[J].微電子學與計算機,2017,34(8):70-75.
[3]吳光珩,張興明,劉冬培,等.基虧PRBS檢測的8B/10B編碼器設(shè)計[J].電子設(shè)計工程,2017,25(20):56-59.
[4]史策,韓焱,李劍,等.SOPC的多路信號同步采集編碼系統(tǒng)[J].單片機與嵌入式系統(tǒng)應(yīng)用,2017,17(10):33-36.
[5]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程.第3版[M].北京:北京航空航天大學出版社,2013.
[6]吳厚航.深入淺出玩轉(zhuǎn)FPGA[M].北京:北京航空航天大學出版社,2010.
相關(guān)刊物推薦:《電子設(shè)計工程》Electronic Design Engineering(半月刊),創(chuàng)刊于1993年,原名《國外電子元器件》,主要介紹具有較高學術(shù)水平的、電子領(lǐng)域相關(guān)的理論、技術(shù)、方法的專業(yè)性技術(shù)期刊。17年來,《電子設(shè)計工程》知識涵蓋面廣、影響力度大,以弘揚科技創(chuàng)新、擴展學術(shù)領(lǐng)域為契機,為科研事業(yè)傳播知識、積累學術(shù)成果以及國家科技發(fā)展做出了諸多貢獻。