999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的64B/66B編解碼設(shè)計(jì)與實(shí)現(xiàn)

2017-03-06 21:14:01王向陽(yáng)
電子技術(shù)與軟件工程 2016年23期
關(guān)鍵詞:設(shè)計(jì)

摘 要

64B/66B編碼是萬(wàn)兆以太網(wǎng)物理編碼子層的重要組成部分,是IEEE推薦的10G通信的編碼方式。文章主要研究64B/66B編碼的編碼準(zhǔn)則以及一種基于查找表法的改進(jìn)的編解碼方法。該方法使用FPGA實(shí)現(xiàn),實(shí)驗(yàn)結(jié)果與數(shù)據(jù)分析顯示,該方案滿足設(shè)計(jì)意圖與協(xié)議的規(guī)定。

【關(guān)鍵詞】64B/66B 萬(wàn)兆以太網(wǎng) 查找表 編解碼 FPGA

與以往的傳統(tǒng)以太網(wǎng)的介質(zhì)獨(dú)立接口類似,萬(wàn)兆以太網(wǎng)(XGMII)接口為l0GbE的MAC層和物理層之間提供了一種簡(jiǎn)單、低成本并易于實(shí)現(xiàn)的互聯(lián)接口。XGMII接口由發(fā)送通道和接收通道組成,每個(gè)方向的數(shù)據(jù)傳輸是相互獨(dú)立的,接口信號(hào)由數(shù)據(jù)、控制和時(shí)鐘信號(hào)構(gòu)成。XGMII接口具有支持l0Gbps的雙向傳輸速率,成本低、容易實(shí)現(xiàn)的特點(diǎn)。64B/66B編碼為XGMMII接口傳輸數(shù)據(jù)編碼,編碼準(zhǔn)則來(lái)源于IEEE803.2ae,它并不是真正的編碼,而是一種基于擾碼機(jī)制的編解碼方式,是IEEE推薦的10G通信標(biāo)準(zhǔn)編碼方式。該編碼具有系統(tǒng)開(kāi)銷較小,碼字長(zhǎng),安全性高,傳輸快等優(yōu)點(diǎn)。本文根據(jù)IEEE803.2ae中的編碼準(zhǔn)則,使用查找表法,運(yùn)用Verilog語(yǔ)言完成了數(shù)字電路設(shè)計(jì),使用Qurtus II軟件完成模擬和數(shù)據(jù)分析。

如今使用硬件描述語(yǔ)言(Verilog 或 VHDL)所完成的電路設(shè)計(jì),經(jīng)過(guò)簡(jiǎn)單的綜合與布局,快速的燒錄至合適的FPGA 上進(jìn)行測(cè)試,是現(xiàn)代 IC 設(shè)計(jì)驗(yàn)證的主流方法。開(kāi)發(fā)人員可以根據(jù)自身的設(shè)計(jì)要求對(duì)FPGA編程,將編碼燒錄到 FPGA 芯片中即可實(shí)現(xiàn)數(shù)字系統(tǒng)的設(shè)計(jì)。得到所需要的數(shù)字電路。一個(gè)出廠后的成品 FPGA 的邏輯塊和連接可以按照設(shè)計(jì)者而改變,所以 FPGA可以完成所需要的邏輯功能。

1 編解碼的基本原理

1.1 概述

64b/66b編解碼與萬(wàn)兆以太網(wǎng)的媒體獨(dú)立接口XGMII(10 Gigabit Media Independent Interface)連接。其主要功能是:根據(jù)給出的不同的8個(gè)XGMII控制信號(hào)(XGMII_TXC[7:0]),把輸入的64B的XGMII數(shù)據(jù)塊或控制塊XGMII_TXD[63:0]編碼成66B碼進(jìn)行通信。其中,控制信號(hào)的每一位與64B碼每8位對(duì)應(yīng),比如:XGMII_TXC[0]=0,則XGMII_TXD[7:0]為數(shù)據(jù)代碼;XGMII_TXC[0]=1,則XGMII_TXD[7:0]為控制代碼。64B/66B解碼則是將66B碼按照相反的規(guī)律解碼成原先的64B XGMII數(shù)據(jù)塊或控制塊,并將原先的8個(gè)控制信號(hào)傳送到XGMII接口。

1.2 IEEE802.3ae準(zhǔn)則解讀

萬(wàn)兆以太網(wǎng)協(xié)議 IEEE 802.3ae 中規(guī)定了 64B/66B的編解碼規(guī)則。具體規(guī)則如下:64B/66B碼組的映射關(guān)系如表1所示。從中我們可以知道,64B碼可以分為包含純粹數(shù)據(jù)(8個(gè)8位的數(shù)據(jù))的數(shù)據(jù)塊(Data Block Format)和數(shù)據(jù)與控制代碼按照一定順序排列的控制塊(Control Block Format)。根據(jù)不同的64B碼格式,也有不同的編碼規(guī)則,在生成66B碼時(shí)就會(huì)有不同的同步頭(sync)和塊有效荷(Block Payload)。比如:輸入的八位控制信號(hào)全部為0時(shí),則表示輸入的64B碼為數(shù)據(jù)塊格式,則同步頭為01,塊有效荷即輸出相應(yīng)數(shù)據(jù)。反之,當(dāng)輸入的八位控制信號(hào)不全為0,則表示輸入的64B碼為控制塊格式,則同步頭為10,塊有效荷按如表1中規(guī)定格式生成。

根據(jù)IEEE803.2ae的編碼準(zhǔn)則,控制塊代碼也具有相應(yīng)的類型,這些控制塊代碼的類型如表2所示。表2將控制代碼分為對(duì)應(yīng)的幾種形式:

(1)Idle表示空字符。(64B碼中為16進(jìn)制ox07,生成66B碼時(shí)變?yōu)?6進(jìn)制ox00)

(2)start表示開(kāi)始字符。

(3)Terminate表示結(jié)束字符。

(4)Error 表示錯(cuò)誤,一般表示收到錯(cuò)誤的數(shù)據(jù)。

(5)Sequence ordered_set系列號(hào)有序集。

(6)Reserved(0~5)保留字符0到5。

(7)Signal Order_set表示信號(hào)有序集。

所有的有效字符必須符合表2的要求,否則為無(wú)效或者非法字符。

1.3 編解碼

64B/66B 編碼過(guò)程:將輸入的64B碼分成8個(gè)1字節(jié)的碼組,根據(jù)輸入XGMII_TXC的每比特值判斷這個(gè)碼組是數(shù)據(jù)代碼還是控制代碼。如果XGMII_TXC 每個(gè)比特值都為0,則64B碼為純數(shù)據(jù)代碼,直接在64B碼組前加上同步頭01就組成66B碼組輸出。如果XGMII_TXC 中有一個(gè)比特為1,則表示64B碼組為控制塊格式,先根據(jù)表2判斷控制塊中的每個(gè)控制代碼是否有效,如果符合要求,則繼續(xù)根據(jù)表1中的控制塊格式來(lái)判斷是否符合其中一種格式,如果格式符合則根據(jù)相應(yīng)的控制塊格式生成66B碼組。在編碼過(guò)程中,只要不符合表1或表2中的任何形式就認(rèn)為是無(wú)效不符合要求,則不需進(jìn)行編碼。

解碼則相對(duì)容易,與編碼過(guò)程相反,首先根據(jù)66B碼的同步頭判斷當(dāng)前的數(shù)據(jù)是數(shù)據(jù)塊還是控制塊,如果是數(shù)據(jù)塊則將除塊頭的64B數(shù)據(jù)賦予XGMII_TXD[63:0],再將XGMII_TXC[7:0]全部賦值0;如果是控制塊,則根據(jù)塊類型區(qū)的值確定控制塊的格式,可以得到64B碼每8位數(shù)據(jù)是數(shù)據(jù)代碼還是控制代碼,一方面得出XGMII_TXC[7:0],另一方面,運(yùn)用查找表法,根據(jù)表1和表2相應(yīng)的轉(zhuǎn)換得出XGMII_TXD[63:0]。(表1中的空格表示一比特0,在64B控制塊格式中C0—C7是8比特,在66B塊效荷中為7 比特)。

2 編解碼器設(shè)計(jì)

2.1 改進(jìn)的編碼器設(shè)計(jì)

根據(jù)對(duì)編碼原理的研究,目前最常用的64b/66b編碼方法是查找表法,這種方法雖然實(shí)現(xiàn)起來(lái)非常方便,但是使用過(guò)程中占用資源相對(duì)巨大,對(duì)于工程來(lái)說(shuō),單純?yōu)榱司幗獯a占用較多的FPGA資源是不合理的,這在很大程度上限制了該方法的使用。鑒于此,本文采用了一種基于查找表法的新的編碼方法。其基本思路是:先判斷輸入的XGMII_TXC是否符合控制塊格式的要求并判斷出同步頭,如果不符合則直接輸出Error并不需要對(duì)XGMII_TXD進(jìn)行處理。再根據(jù)控制塊將輸入的XGMII_TXD分為8個(gè)通道,分別對(duì)每個(gè)8位數(shù)據(jù)進(jìn)行處理,最后將數(shù)據(jù)輸入多路復(fù)用器進(jìn)行整合,輸出符合要求的66Bit數(shù)據(jù)。其基本原理電路圖如圖1所示。編碼器的組成為:輸入數(shù)據(jù)寄存器,控制塊格式判斷模塊,數(shù)據(jù)代碼生成模塊,塊類型寄存器和多路復(fù)用器模塊。

2.2 解碼器設(shè)計(jì)

先分析66B碼的同步頭和塊類型數(shù)據(jù),得出接受的是數(shù)據(jù)塊還是控制塊,并可以確定是何種類型的控制塊,生成判決信號(hào)輸送到下一個(gè)模塊(塊類型生成模塊),然后塊類型生成模塊根據(jù)表1和表2得出相應(yīng)的64B控制塊格式并根據(jù)判決信號(hào)得出XGMII_RXC的值。碼子反轉(zhuǎn)換模塊根據(jù)XGMII_RXC判斷XGMII_RXD每8個(gè)比特是控制代碼還是數(shù)據(jù)代碼并根據(jù)表2進(jìn)行相應(yīng)轉(zhuǎn)換。最后利用數(shù)據(jù)生成器將這些數(shù)據(jù)或控制信號(hào)組成總線的形式輸出。

3 仿真結(jié)果和數(shù)據(jù)分析

3.1 實(shí)驗(yàn)用FPGA開(kāi)發(fā)板介紹

本文所使用的開(kāi)發(fā)板如圖3所示,該開(kāi)發(fā)板的FPGA芯片是選用Cyclone IV系列的FPGA器件EP4CE15F17C8N,屬于邏輯單元相對(duì)較少的FPGA芯片。CycloneIV系列器件集成了一個(gè)可選擇的低成本收發(fā)器,在不影響性能的情況下,節(jié)省了功耗及成本。針對(duì)無(wú)線、有線、廣播、工業(yè),用戶以及通信等行業(yè)中的低成本的小型應(yīng)用,CycloneIV器件應(yīng)該是最理想的選擇。

3.2 實(shí)驗(yàn)結(jié)果

根據(jù)本文提出的新的64B/66B編解碼方法,在Altera公司的Quartus II 軟件平臺(tái)上進(jìn)行相關(guān)程序代碼的編寫,并選用Cyclone IV系列的FPGA器件EP4CE15F17C8N實(shí)現(xiàn)了編解碼的功能驗(yàn)證,電路綜合和波形仿真。編碼器的仿真結(jié)果如圖4所示, 從圖中的仿真波形可以看出,DATA_OUT輸出前先延時(shí)4個(gè)時(shí)鐘周期,當(dāng)輸入xgmii_txc=0xff,xgmiix_txd=0x0707070707070707時(shí),表示輸入的控制塊格式,參考表1,同步頭為10,則可以得出data_out= 00000000000000079 。從圖4可以得出結(jié)果是正確的。相反,解碼器仿真結(jié)果如圖5所示,解碼器輸出延時(shí)2個(gè)時(shí)鐘周期,當(dāng)輸入數(shù)據(jù)data_in=00000000000000079時(shí),解碼得出結(jié)果xgmii_txc=0xff;xgmii_txd=0x0707070707070707,也與解碼碼準(zhǔn)則相符合。

以上的仿真結(jié)果表明本文設(shè)計(jì)的編解碼器可以正確的對(duì)輸入的數(shù)據(jù)進(jìn)行編解碼,符合本文的設(shè)計(jì)意圖。

本文所設(shè)計(jì)的編碼器的FPGA資源占有率如圖6所示,解碼器的FPGA資源占有率如圖7所示,從圖中看出,資源的總體占有率很小,使用較少的邏輯單元(其中編碼器:625/15408約占4%;解碼器:426/15408 約占3%)便能完成工程設(shè)計(jì),符合工程設(shè)計(jì)要求。

4 結(jié)論

64B/66B編碼作為一種應(yīng)用于以太網(wǎng)技術(shù)的編碼方式,具有很多優(yōu)點(diǎn),其也為之后用于PCI-E,USB的128B/132B編碼提供參考。本文的數(shù)字電路設(shè)計(jì)方法是基于查找表法的改進(jìn)方法,在運(yùn)用FPGA實(shí)現(xiàn)時(shí),具有占用資源少,編碼速度塊等優(yōu)點(diǎn)。此外,此方法使用的Verilog代碼具有很好的可移植性,可以作為IP核植入到64B/66B編碼的光纖電路中,特別適合FPGA設(shè)計(jì),有很實(shí)用的工程價(jià)值。

參考文獻(xiàn)

[1]溫宇辰.嵌入式光纖萬(wàn)兆以太網(wǎng)系統(tǒng)設(shè)計(jì)[D].大連:大連理工大學(xué)通信與信息系統(tǒng),2014.

[2]齊劍,胡春暉.高端路由器8口萬(wàn)兆子卡的硬件設(shè)計(jì)[J].電子設(shè)計(jì)工程,2015(07):178-181.

[3]朱云鵬.10G EPON協(xié)議分析儀中物理層的設(shè)計(jì)與實(shí)現(xiàn)[D].西安:電子科技大學(xué)光學(xué)工程,2015.

[4]周晴倫,王勇.萬(wàn)兆以太網(wǎng)中64B/66B編解碼的硬件實(shí)現(xiàn)方法[J]:光通信技術(shù),2006(02):21-23.

[5]王新.高速率傳送網(wǎng)平臺(tái)的物理層編碼研究與實(shí)現(xiàn)[D].西安:電子科技大學(xué)通信與信息系統(tǒng),2015.

[6]IEEE Std 802.3ae-2002[S/OL].New Jersey:IEEE,2002[2002-8-30].http://standards.ieee.org.

[7] The Automotive-Grade Device Handbook [EB/OL].2016-5-3.San Jose:http://www.altera.com.

[8]程博鋒.基于FPGA及以太網(wǎng)技術(shù)的100G接口板設(shè)計(jì)[D].南京:南京理工大學(xué)電子與通信工程,2014.

作者簡(jiǎn)介

王向陽(yáng)(1991-),男,安徽省廬江市人。合肥工業(yè)大學(xué)碩士生。主攻方向?yàn)閿?shù)字集成電路設(shè)計(jì)。

作者單位

合肥工業(yè)大學(xué)電子科學(xué)與應(yīng)用物理學(xué)院 安徽省合肥市 230009

猜你喜歡
設(shè)計(jì)
二十四節(jié)氣在平面廣告設(shè)計(jì)中的應(yīng)用
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統(tǒng)設(shè)計(jì)
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設(shè)計(jì)
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發(fā)生器仿真設(shè)計(jì)
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設(shè)計(jì)到“設(shè)計(jì)健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 丰满人妻一区二区三区视频| 在线观看91香蕉国产免费| 好紧太爽了视频免费无码| 在线观看的黄网| 免费一级α片在线观看| 国产又色又刺激高潮免费看| 国产美女自慰在线观看| 欧美激情成人网| 亚洲欧美日韩中文字幕一区二区三区| 国产高清在线丝袜精品一区| 亚洲天堂视频在线观看免费| 成人福利在线观看| 国产精品一区二区不卡的视频| 青青青国产视频| 亚洲另类第一页| 国产啪在线91| 乱色熟女综合一区二区| 啊嗯不日本网站| 欧美成人看片一区二区三区 | 亚洲精品第一页不卡| 国产96在线 | 97在线免费视频| 欧美成人手机在线视频| 在线观看国产精美视频| 亚洲二三区| 午夜视频在线观看区二区| 日韩欧美国产精品| 午夜视频在线观看区二区| 日韩成人在线网站| 亚洲成人在线免费| 浮力影院国产第一页| 波多野结衣亚洲一区| 国产无遮挡裸体免费视频| 成人亚洲国产| 日本精品视频一区二区| 狼友视频国产精品首页| 99这里只有精品在线| 中文字幕在线观| 久久夜色精品国产嚕嚕亚洲av| 91探花在线观看国产最新| 538国产视频| 日韩一级毛一欧美一国产| 国产乱码精品一区二区三区中文 | 四虎国产成人免费观看| 高清无码手机在线观看| 中文字幕 欧美日韩| 国产91线观看| 欧洲日本亚洲中文字幕| 美女啪啪无遮挡| 午夜福利网址| 国产欧美成人不卡视频| 在线一级毛片| 久久性视频| 免费国产在线精品一区| 女人18毛片一级毛片在线 | 免费99精品国产自在现线| 亚洲中久无码永久在线观看软件| 99精品福利视频| 精品视频福利| 国产一在线| 国产成人高清在线精品| 91亚洲视频下载| 波多野衣结在线精品二区| 这里只有精品免费视频| 国产一区二区三区精品欧美日韩| 日本亚洲国产一区二区三区| 国产呦精品一区二区三区下载| 欧美全免费aaaaaa特黄在线| 久久国产热| 亚洲第一成年人网站| 亚洲精品爱草草视频在线| 91精品aⅴ无码中文字字幕蜜桃| 国产欧美视频在线| av午夜福利一片免费看| 成人亚洲视频| 亚洲色图在线观看| 国产午夜人做人免费视频中文| 高清无码不卡视频| 精久久久久无码区中文字幕| 中国一级毛片免费观看| 伊人婷婷色香五月综合缴缴情| 亚洲精品在线观看91|