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