新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的8B/10B編解碼設計

        基于FPGA的8B/10B編解碼設計

        作者: 時間:2010-08-06 來源:網絡 收藏

        2.2 并串轉換模塊
        該模塊主要完成并行數據到lOB串行數據的轉換功能,lOB串行數據的數據格式為:l bit低電平起始位、10 bit數據位、l bit高電平停止位、2 bit高電平數據空碼。生成一個完整的串行數據包含4個狀態,生成起始位、轉換10 bit數據位、生成停止位、生成數據空碼。
        2.3 10B串并行轉換模塊
        該模塊主要完成10B串行信號到10B并行信號的轉換,10B信號的串并轉換模塊主要是要從14 bit的串行信號中挑出10 bit的有效數據位,過程中首先要判斷起始位(而不是任意一個低電平),然后采集10 bit的有效數據位,完成后等待下一個起始位。程序同樣是通過狀態機來實現整個過程的流通。
        2.4 10B/8B解碼模塊
        解碼模塊根據系統要求可分為6B/5B解碼模塊、4B/3B解碼模塊和誤碼檢測模塊。解碼模塊相對編碼模塊而言邏輯過程要簡單的多,該模塊首先將10 bit信號分割成4 bit和6bit兩部分(高低位必須和編碼端對應),然后4 bit和6 bit數據根據編碼列表分別解碼成3 bit和5 bit,在解碼過程中判斷是否有誤碼產生有則報錯,無則并行輸出。圖4給出了1OB/8B解碼模塊的邏輯框圖和程序設計流程如圖4所示。

        本文引用地址:http://www.104case.com/article/191634.htm

        3 系統仿真結果分析
        待完成整套的8B/10B器模塊連接后,對整體程序進行仿真驗證,其結果如圖5所示,其中clkl為編碼和解碼模塊的時鐘引腳,elk2為1OB串并轉換和10B并串轉換模塊的時鐘引腳,rst為整個系統的異步復位引腳,datin[7..0]為待傳輸的8 bit并行數據,datout[7..0]為傳輸完成的8 bit并行數據,error為解碼端誤碼檢測報警引腳,wrong為編碼端出錯報警引腳。還有3個引腳是系統不必要的但是為方便調試而引出的,outl[9..0]為10B串并轉換完成的10B并行信號,out3為10B并串轉換完成的10B串行信號,out2[9..0]為8B/10B編碼完成的10B并行信號。


        由圖5可看出:輸入數據datin為“10101110”,經過8B/10B編碼完成的數據out2為“0111001010”,8B/10B編碼模塊出錯報警引腳為“0”,10B并串轉換輸出的串行數據out3為“00111001010111”,10B串并轉換輸出的并行數據outl為“0111001010”,1OB/8B解碼完成的輸出數據datout為“10101llO”,結合整個系統的工作過程和編碼列表不難看出系統正確的完成了編碼和解碼的功能,能滿足設計任務的需要。

        4 結束語
        本文提出一種利用實現8B/10B編碼和10B/8B解碼設計的方法,介紹了8B/10B技術,實現了8B/10B的正常和接口串并、并串轉換的設計,在的控制下能實現數據的傳輸,滿足了實際設備中所提出的要求。


        上一頁 1 2 3 下一頁

        關鍵詞: FPGA 10B 編解碼

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 延庆县| 贺州市| 阿合奇县| 玉林市| 常山县| 长阳| 西城区| 泸溪县| 固原市| 桓仁| 互助| 清镇市| 广元市| 平武县| 荥经县| 龙山县| 靖江市| 澎湖县| 黄平县| 民权县| 贡山| 崇阳县| 芜湖市| 旺苍县| 伊春市| 贵州省| 日喀则市| 汪清县| 米易县| 房产| 东安县| 军事| 长春市| 栾川县| 华坪县| 综艺| 仙游县| 丰城市| 汉源县| 玉门市| 本溪|