趙曉東 程煜洋 左磊 方圓
摘? 要:在基于FPGA的基帶傳輸系統(tǒng)研究中,對基帶傳輸信號的碼型有嚴(yán)格的要求。通過對CMI碼型的研究,提出了一種通過Altera公司Cyclone Ⅱ系列EP2C35F672C6芯片實現(xiàn)CMI編解碼功能的方法,并給出了Quartus Ⅱ仿真平臺實現(xiàn)CMI編解碼的設(shè)計方案。通過這種方法得出的CMI編解碼碼型符合編解碼原理,解碼輸出與基帶信號一致,最終結(jié)果符合預(yù)期。能夠適應(yīng)多種集成電子電路設(shè)計場合,通過仿真幫助達(dá)到預(yù)期效果。
關(guān)鍵詞:FPGA;CMI;編解碼
Abstract:In the research of baseband transmission system based on FPGA,there are strict requirements for the code type of baseband transmission signal. Through the research of CMI code type,a method to realize CMI coding and decoding function through Alteras Cyclone Ⅱ series EP2C35F672C6 chip is proposed,and the design scheme of Quartus Ⅱ simulation platform to realize CMI coding and decoding is given. The CMI codec pattern obtained by this method accords with the principle of CODEC,the decoding output is consistent with the baseband signal and the final result meets the expectations. It can adapt to a variety of integrated electronic circuit design occasions,and help achieve the desired effect through simulation.
Keywords:FPGA;CMI;CODEC(coder-decoder)
0? 引? 言
隨著科技的快速發(fā)展,電子計算機、大規(guī)模集成電路、超大規(guī)模集成電路以及微處理器技術(shù)的迅猛發(fā)展。基帶傳輸系統(tǒng)設(shè)計成為了必要。在集成電路領(lǐng)域中,F(xiàn)PGA器件是超大規(guī)模、超高速的可編程邏輯器件,由于其具有高集成度、高速、可編程、硬件描述語言的可修改性、低功耗、開發(fā)周期短、硬件與軟件并行性等優(yōu)點而被廣泛應(yīng)用。文獻(xiàn)[1]針對數(shù)字光纖通信傳輸信號碼型的要求,提出了一種基于可編程邏輯器件EPM240T100C5實現(xiàn)CMI編解碼的方法。文獻(xiàn)[2]介紹了一種新的編程思路實現(xiàn)CMI編碼,在Max+ Plus Ⅱ開發(fā)平臺上使用VHDL編程實現(xiàn)CMI編碼,并得到仿真波形。文獻(xiàn)[3]針對LDPC碼進(jìn)行了兩種算法的設(shè)計,一種是直接基于校驗矩陣進(jìn)行遞歸求取,另一種則通過部分生成矩陣進(jìn)行設(shè)計,并對兩種架構(gòu)分別進(jìn)行設(shè)計、分析和比較。文獻(xiàn)[4]研究了八路視頻信號傳輸中數(shù)字復(fù)分接的設(shè)計和反向數(shù)據(jù)信號傳輸中線路碼的編解碼設(shè)計。在文獻(xiàn)[5]中,研究者設(shè)計出一種將數(shù)字化信號的傳輸和光纖通信結(jié)合到一起的方案,通過串并轉(zhuǎn)換及CMI編碼后,經(jīng)過光纖將信號傳輸?shù)焦饨邮斩?。文獻(xiàn)[6]對FPGA的數(shù)據(jù)采集與處理技術(shù)進(jìn)行研究,基于FPGA在數(shù)據(jù)采樣控制和信號處理方面的高性能和單片系統(tǒng)發(fā)展的新熱點,把FPGA作為整個數(shù)據(jù)采集與處理系統(tǒng)的控制核心。在文獻(xiàn)[7]中,研究者完成了FPGA器件之間以及與其他同類器件性能上的比較,并對分析結(jié)果給出了相應(yīng)的建議。文獻(xiàn)[8]、[9]中,研究者提出包括物理層、傳輸層以及應(yīng)用層在內(nèi)的光纖數(shù)據(jù)傳輸模型,在此基礎(chǔ)上設(shè)計光纖傳輸協(xié)議,確定光纖傳輸幀格式和數(shù)據(jù)編碼規(guī)則。CMI編碼作為一種容易實現(xiàn)、有恒定的直流分量、頻帶寬等特點在工程中被廣泛應(yīng)用。筆者所在實驗室基于2020北京市大學(xué)生科學(xué)研究與創(chuàng)業(yè)行動計劃項目,結(jié)合當(dāng)前與專業(yè)相關(guān)的問題,開展了基于FPGA的基帶傳輸系統(tǒng)的相關(guān)研究。本文在前人不同設(shè)計思想的基礎(chǔ)上,面向?qū)嶋H應(yīng)用的需求,將CMI編碼用FPGA器件實現(xiàn),并進(jìn)行仿真和驗證。
1? CMI編解碼原理
CMI碼全稱為Code Mark Inversion,它是一種二電平的不歸零1B2B碼型(一位二元信息,二位二元碼元),與數(shù)字雙相碼類似,其中的二電平分別為“0”和“1”,簡稱反轉(zhuǎn)碼。CMI碼在編碼時輪流使用正電平“11”和負(fù)電平“00”來表示“1”;用固定相位的一個方波“01”來表示“0”?!?0”為禁用碼組,不會出現(xiàn)三個以上的連碼,這種方式使得CMI碼碼流中可以包含大量的可提取的定時信號,而且易于進(jìn)行錯誤檢查,也易于實現(xiàn)。在光纖通信中,光源只能發(fā)出正的光脈沖,而簡單的二電平碼信息流中“0”“1”的組合情況會造成起伏,造成判決出現(xiàn)問題,此時CMI碼就非常適用。
2? CMI編解碼系統(tǒng)設(shè)計
CMI編解碼系統(tǒng)設(shè)計方框圖如圖1所示。由圖1可見,系統(tǒng)包括分頻器、偽隨機序列發(fā)生器、CMI編碼、CMI解碼四個模塊。
分頻器:由于CMI碼元速率是基帶信號的兩倍,所以采用二分頻模塊來進(jìn)行分頻。該模塊輸入信號為時鐘信號和異步復(fù)位信號,復(fù)位信號高電平有效,時鐘信號上升沿觸發(fā),輸出信號為分頻時鐘信號。
偽隨機序列發(fā)生器:特征多項式使用f(x)=1+x2+x3,生成周期為7的偽隨機二值序列。采用線性移位寄存器來產(chǎn)生。電路在適當(dāng)?shù)臅r鐘信號控制下工作,上升沿觸發(fā),其中設(shè)置了reset端,reset高電平時電路異步復(fù)位。
CMI編碼:當(dāng)輸入的碼流為‘0碼時,輸出的碼流為“01”,當(dāng)輸入的碼流為‘1時,設(shè)置一個標(biāo)志位flag,使得flag<=‘0,輸出“11”,然后將標(biāo)志位置1,即flag<= ‘1,當(dāng)接下來的碼流依舊為‘1時,此時輸出為“00”,flag<=‘0。通過標(biāo)志位的設(shè)立,來達(dá)到輸入為‘1時,輸出“00”“11”碼流交替出現(xiàn)。輸出都是采用二位二進(jìn)制代碼輸出。根據(jù)CMI編碼的原理可知,CMI碼元的速率為基帶信號的兩倍,所以通過對基帶信號的二分頻方式來使得編碼模塊和其他模塊工作在同一個系統(tǒng)中。
CMI解碼:解碼電路相對于編碼就比較簡單一些,因為無須檢測變化系數(shù),由于輸入是來自上一個模塊的編碼電路,輸入是二位二進(jìn)制代碼,因此不用對輸入的碼流進(jìn)行分割。當(dāng)解碼電路的輸入為“00”或“11”時,輸出為‘1。當(dāng)輸入為“01”時,輸出為‘0。
3? 系統(tǒng)實現(xiàn)
本系統(tǒng)以Altera公司旗下的Quartus Ⅱ軟件作為開發(fā)平臺,采用的FPGA芯片為Cyclone Ⅱ系列EP2C35F672C6,時鐘周期設(shè)置為10 kHz。
系統(tǒng)頂層設(shè)計原理圖如圖2所示,其中生成的偽隨機序列作為基帶信號分別經(jīng)CMI編碼模塊和CMI解碼模塊輸出。
3.1? 偽隨機序列發(fā)生器
3.2? CMI編碼實現(xiàn)
在CMI編解碼設(shè)計中,輸入為偽隨機序列發(fā)生器,編碼根據(jù)輸入的信號,將它轉(zhuǎn)換成1B2B的CMI碼,并以二位二進(jìn)制的形式顯示出來,然后解碼根據(jù)同步時鐘對編碼的輸出進(jìn)行解碼,還原成我們輸入的基帶信號,部分VHDL源代碼為:if(clk'event and clk='1' )then
4? CMI編解碼系統(tǒng)仿真結(jié)果
將Quartus Ⅱ開發(fā)工具與ModelSim-Altera仿真軟件相結(jié)合,對CMI編解碼系統(tǒng)進(jìn)行仿真。在測試文件testbench中,設(shè)置輸入時鐘clk周期為0.1 ms,設(shè)置reset復(fù)位信號初始為高電平持續(xù)20 ns后變?yōu)榈碗娖?。仿真結(jié)果如圖3所示。
由圖3可知,偽隨機序列輸入的基帶信號m_out從clk_2信號的上升沿讀取,每隔一個時鐘周期采取一次,結(jié)果為1 0 1 1 1 0 0,周期為7。CMI編碼的輸出為00 01 11 00 11 01 01,CMI解碼輸出為1 0 1 1 1 0 0,與基帶信號是一致的,保證解碼的正確性。解碼輸出與偽隨機序列相比延時0.3 ms。
5? 結(jié)? 論
本設(shè)計基于Altera公司的Quartus Ⅱ軟件開發(fā)平臺和ModelSim-Altera仿真實驗平臺,使用FPGA器件EP2C35F 672C6芯片,利用VHDL硬件描述語言完成了CMI編解碼電路的設(shè)計與仿真。本系統(tǒng)是由許多獨立的可編程邏輯模塊組成,邏輯模塊之間通過頂層設(shè)計連接,具有邏輯單元靈活、集成度高、適用范圍廣等優(yōu)點。在集成電子電路工程上具有一定的應(yīng)用價值。
參考文獻(xiàn):
[1] 陳適,綦曉華.基于CPLD的CMI編解碼電路的設(shè)計與實現(xiàn) [J].武漢理工大學(xué)學(xué)報(信息與管理工程版),2010,32(1):8-11.
[2] 李莉.基于CPLD/FPGA的CMI編碼設(shè)計與實現(xiàn) [J].現(xiàn)代電子技術(shù),2010,33(11):86-87.
[3] 郝曉博.LDPC編譯碼器的實現(xiàn) [D].成都:電子科技大學(xué),2019.
[4] 綦曉華.基于FPGA的數(shù)字視頻監(jiān)控系統(tǒng)的研究與設(shè)計 [D].武漢:武漢理工大學(xué),2009.
[5] 吳成靜.模擬信號在光纖中的傳輸方案研究 [D].西安:西安工業(yè)大學(xué),2015.
[6] 孔利東.基于FPGA的數(shù)據(jù)采集與處理技術(shù)的研究 [D].武漢:武漢理工大學(xué),2007.
[7] 包晗.FPGA器件的應(yīng)用研究 [D].大連:大連海事大學(xué),2006.
[8] 沙啟迪.基于FPGA的光纖通信數(shù)據(jù)傳輸技術(shù)研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2015.
[9] 李亮.基于FPGA的高速光纖通信數(shù)據(jù)傳輸技術(shù)的研究與實現(xiàn) [D].長春:吉林大學(xué),2017.
作者簡介:趙曉東(2000—),男,漢族,寧夏石嘴山人,本科在讀,研究方向:通信工程;程煜洋(2000—),女,漢族,湖北武漢人,本科在讀,研究方向:通信工程;左磊(2000—),男,穿青人,貴州畢節(jié)人,本科在讀,研究方向:通信工程;方圓(1999—),女,漢族,福建福州人,本科在讀,研究方向:通信工程。