国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種HIMAC 硬件協(xié)處理器的設(shè)計(jì)與FPGA 實(shí)現(xiàn)*

2012-12-22 05:59:02潘偉濤邱智亮
電子器件 2012年2期
關(guān)鍵詞:以太網(wǎng)調(diào)度傳輸

潘偉濤,邱智亮

(西安電子科技大學(xué)綜合業(yè)務(wù)網(wǎng)理論及關(guān)鍵技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,西安710071)

為了推進(jìn)“三網(wǎng)融合”以及有線電視網(wǎng)雙向化改造,利用同軸電纜連接光纖主干網(wǎng)和用戶(hù)的傳輸系統(tǒng)成為符合我國(guó)當(dāng)前網(wǎng)絡(luò)設(shè)施現(xiàn)狀的重要解決方案,如HINOC(High Performance Network Over Coax)[1-3]、MoCA(Multimedia over Coax Alliance)[4]、HomePlug AV[5]等系統(tǒng)。其中,HINOC 網(wǎng)絡(luò)是利用有線電視網(wǎng)已有的同軸電纜線路分配網(wǎng)絡(luò),組建而成的最后100 m 范圍內(nèi)的寬帶接入網(wǎng)。該技術(shù)完全利用現(xiàn)有的有線電視網(wǎng)同軸電纜網(wǎng)絡(luò)布線,僅增加HINOC Bridge(HB)和HINOC Modem(HM)等相關(guān)設(shè)備,實(shí)現(xiàn)高速和高質(zhì)量的多業(yè)務(wù)接入,可提供給用戶(hù)IPTV、SDTV/HDTV 和高速上網(wǎng)等寬帶應(yīng)用。更為重要的是HINOC 系統(tǒng)是基于我國(guó)國(guó)情、自主研發(fā)的具有自主知識(shí)產(chǎn)權(quán)的系統(tǒng),這一產(chǎn)品的應(yīng)用將帶動(dòng)芯片制造、設(shè)備制造、直至業(yè)務(wù)提供商的產(chǎn)業(yè)鏈的發(fā)展,也為我國(guó)正在建設(shè)的下一代廣播電視網(wǎng)(Next-Generation Broadcast,NGB)及“三網(wǎng)融合”奠定堅(jiān)實(shí)的基礎(chǔ)。

HINOC 網(wǎng)絡(luò)協(xié)議棧為分層結(jié)構(gòu),自下而上依次為PHY 層(以下簡(jiǎn)稱(chēng)HIPHY[6])、MAC 層(以下簡(jiǎn)稱(chēng)HIMAC)和高層。MAC 層又可分為公共部分子層和匯聚子層,實(shí)現(xiàn)HINOC 網(wǎng)絡(luò)中的媒質(zhì)接入控制和業(yè)務(wù)適配功能;PHY 層規(guī)定了傳輸信號(hào)的幀結(jié)構(gòu)、信道編碼以及調(diào)制技術(shù)。為了提高數(shù)據(jù)搬移效率,MAC 層的主要功能需要由硬件完成。本文介紹了一種基于具有自主知識(shí)產(chǎn)權(quán)的HINOC MAC 層協(xié)議的硬件加速協(xié)處理的設(shè)計(jì)。

1 HIMAC 體系架構(gòu)及功能概述

1.1 體系架構(gòu)

HIMAC 主要用于在CPU 軟件控制下,完成EPHY(以太網(wǎng)PHY)和HIPHY(HINOC PHY)之間的數(shù)據(jù)傳輸和信息交互。主要分為拆幀、組幀、調(diào)度、EMAC 接口控制、流分類(lèi)、插入捕獲及數(shù)據(jù)緩存等模塊。其詳細(xì)內(nèi)核結(jié)構(gòu)如圖1 所示。

圖1 HIMAC 系統(tǒng)整體框圖

1.2 功能概述

HIMAC FPGA 對(duì)外接口有3 種:一種是EMAC接口,完成以太網(wǎng)幀的接收和發(fā)送,實(shí)現(xiàn)與高層進(jìn)行數(shù)據(jù)業(yè)務(wù)的交互;另一種是HIMAC 接口,完成HIMAC 幀的組幀和拆幀,實(shí)現(xiàn)HINOC 網(wǎng)絡(luò)內(nèi)部的數(shù)據(jù)傳輸;第3 種是CPU 接口,實(shí)現(xiàn)CPU 與HIMAC之間數(shù)據(jù)幀及控制幀的傳輸。

EPHY 和HIMAC 之間的數(shù)據(jù)處理流程比較簡(jiǎn)單,它們之間交互的信息只有EMAC 數(shù)據(jù)幀,直接和HIMAC 進(jìn)行數(shù)據(jù)傳輸。其數(shù)據(jù)處理流程是:當(dāng)EPHY 有以太網(wǎng)數(shù)據(jù)時(shí),EPHY 通過(guò)與EMAC 接口的信息交互把EMAC 數(shù)據(jù)搬移到EMAC 幀的接收緩存中實(shí)現(xiàn)EMAC 數(shù)據(jù)幀的接收;當(dāng)HIMAC 中的EMAC 幀發(fā)送緩存中有以太網(wǎng)數(shù)據(jù)要發(fā)送時(shí),通過(guò)EMAC 接口與外部EPHY 的信息交互實(shí)現(xiàn)EMAC 數(shù)據(jù)幀的發(fā)送。

HIPHY 交給HIMAC 處理的幀有兩種類(lèi)型,即數(shù)據(jù)幀和控制幀。當(dāng)HIPHY 的發(fā)送緩存中有HIMAC 幀要發(fā)送時(shí),HIPHY 首先會(huì)產(chǎn)生中斷觸發(fā)中斷服務(wù)程序,CPU 執(zhí)行中斷處理程序,讀取HIMAC 幀的幀頭信息并對(duì)該幀進(jìn)行判斷,如果是控制幀則交給CPU 處理,如果是數(shù)據(jù)幀,則從HIPHY的發(fā)送緩存直接搬移到HIMAC 的接收緩存中。同理,交給HIPHY 的幀也有兩種類(lèi)型,當(dāng)交給HIPHY的幀是控制幀,則由CPU 直接寫(xiě)到HIPHY 的接收緩存中,如果是數(shù)據(jù)幀則從HIMAC 的發(fā)送緩存搬移到HIPHY 的接收緩存中。

2 關(guān)鍵模塊功能介紹

由于HIMAC 硬件協(xié)處理器承載著以太網(wǎng)幀與HINOC 幀之間數(shù)據(jù)的交換、轉(zhuǎn)發(fā)及傳輸功能,因此,不同業(yè)務(wù)的實(shí)現(xiàn)、不同類(lèi)型幀之間的轉(zhuǎn)換及調(diào)度、轉(zhuǎn)發(fā)功能是整個(gè)HIMAC 的核心。

2.1 流分類(lèi)及分組處理模塊

流分類(lèi)模塊負(fù)責(zé)按照規(guī)則表的要求對(duì)流進(jìn)行規(guī)則匹配。流分類(lèi)模塊可在數(shù)據(jù)幀內(nèi)識(shí)別出IP 幀頭的位置以及IP 上層協(xié)議(如IGMP,ICMPv6,TCP,UDP)頭的位置;基于這些幀頭的位置,規(guī)則表規(guī)定了需要進(jìn)行匹配操作的關(guān)注窗口、匹配的操作值、匹配后要進(jìn)行的動(dòng)作等信息,流分類(lèi)模塊用關(guān)注窗口從數(shù)據(jù)幀中取出值與各條規(guī)則對(duì)比,得到需要對(duì)該數(shù)據(jù)幀進(jìn)行的操作;以指令碼的形式送出。流分類(lèi)的指令的內(nèi)容包括:指定優(yōu)先級(jí)、重定向(包含拷貝重定向)到CPU、丟棄包、插入、修改、刪除字段(最長(zhǎng)32 bit)。

流分類(lèi)對(duì)以太網(wǎng)數(shù)據(jù)包過(guò)濾和分類(lèi)后,得到分類(lèi)結(jié)果,即指令碼,分組處理模塊負(fù)責(zé)執(zhí)行這些指令碼,由此實(shí)現(xiàn)諸如訪問(wèn)控制、QOS 處理、IGMP Snooping 等相應(yīng)的功能。分組處理模塊需要完成的功能包括:控制EMAC 分組的正確接收、執(zhí)行流分類(lèi)模塊給出的指令、提取幀的源目的地址,幀長(zhǎng),VLAN 號(hào)等信息、把分組處理的結(jié)果告知統(tǒng)計(jì)模塊及實(shí)現(xiàn)幀數(shù)據(jù)在內(nèi)部總線上的正確搬移等功能。

2.2 組幀拆幀模塊

組幀模塊通過(guò)與調(diào)度模塊和內(nèi)部總線模塊的信息交互把要發(fā)送的上層數(shù)據(jù)業(yè)務(wù)根據(jù)打包規(guī)則封裝成適合在HINOC 網(wǎng)絡(luò)中傳輸?shù)腍IMAC 幀格式,然后通知SLAVE 接口將該數(shù)據(jù)幀發(fā)送出去。而HIMAC 拆幀模塊則是將封裝在HIMAC 幀中的EMAC 幀拆分出來(lái)。圖2 是組幀過(guò)程示意圖,拆幀過(guò)程與之相反。

圖2 HIMAC 組幀示意圖

2.3 調(diào)度模塊和轉(zhuǎn)發(fā)表模塊

調(diào)度模塊是HIMAC 協(xié)處理器內(nèi)部的核心模塊之一,在整個(gè)HIMAC 中起著重要的作用。它連接著轉(zhuǎn)發(fā)表模塊、隊(duì)列管理模塊、內(nèi)部總線控制模塊、分組處理模塊、HIMAC 數(shù)據(jù)發(fā)送控制FIFO 以及捕獲和插入模塊等,在這些模塊之間進(jìn)行信息的控制、傳遞,最終有序、正確地完成EMAC 幀的接收和發(fā)送、HIMAC 幀的組幀和拆幀等工作。調(diào)度模塊可分為6 個(gè)部分:接收調(diào)度模塊、發(fā)送調(diào)度模塊、總調(diào)度模塊以及用來(lái)緩存數(shù)據(jù)的接收調(diào)度FIFO、發(fā)送調(diào)度FIFO 和調(diào)度結(jié)果FIFO。

轉(zhuǎn)發(fā)表模塊分為單播轉(zhuǎn)發(fā)表模塊和組播轉(zhuǎn)發(fā)表兩種。單播地址轉(zhuǎn)發(fā)表的主要功能為:根據(jù)接收調(diào)度模塊傳來(lái)的單播EMAC 幀的源MAC 地址、目的MAC地址、源端口號(hào)、VLAN 號(hào)(源端口VLAN_ID)以及VLAN 有效指示信息進(jìn)行學(xué)習(xí)和查表操作,查表成功則將查表得到的目的端口號(hào)以及接收到的VLAN 信息輸出給接收調(diào)度模塊,否則,指示查表失敗。同時(shí),為了使地址表的表項(xiàng)能夠持續(xù)更新,設(shè)置5 min 的老化時(shí)間,若一個(gè)表項(xiàng)的老化時(shí)間到達(dá),則被認(rèn)為是陳舊表項(xiàng),從地址表中刪除。而組播轉(zhuǎn)發(fā)表則是由CPU通過(guò)軟件的方式來(lái)完成組播轉(zhuǎn)發(fā)表的維護(hù)和更新。其中HIMAC 硬件協(xié)處理器完成兩個(gè)功能:一是從CPU 接口寄存器實(shí)時(shí)讀取軟件組播表信息,建立和更新硬件組播轉(zhuǎn)發(fā)表;二是根據(jù)調(diào)度器輸入的組播目的地址查找組播轉(zhuǎn)發(fā)表實(shí)現(xiàn)組播數(shù)據(jù)流的轉(zhuǎn)發(fā)。

2.4 隊(duì)列管理模塊

由HINOC 網(wǎng)絡(luò)組網(wǎng)方式可知,HB 節(jié)點(diǎn)一端連接千兆以太網(wǎng),另一端通過(guò)一根同軸電纜連接HINOC 接入網(wǎng)。由于采用了TDM/TDMA 方式每個(gè)HINOC 接入網(wǎng)最多可包含32 個(gè)HM 節(jié)點(diǎn),各個(gè)節(jié)點(diǎn)之間都可以相互通信,類(lèi)似于一個(gè)32×32 的交換矩陣。系統(tǒng)采用了共享存儲(chǔ)式的交換結(jié)構(gòu),交換數(shù)據(jù)以隊(duì)列的方式存儲(chǔ)在共享存儲(chǔ)器中。在頻繁的數(shù)據(jù)出隊(duì)和入隊(duì)過(guò)程中,需要一個(gè)專(zhuān)門(mén)的隊(duì)列管理模塊來(lái)管理,更新和維護(hù)存儲(chǔ)器中的數(shù)據(jù)隊(duì)列。整個(gè)隊(duì)列管理的實(shí)現(xiàn)是以對(duì)每個(gè)鏈表節(jié)點(diǎn)的操作為基礎(chǔ)實(shí)現(xiàn)的。每個(gè)鏈表節(jié)點(diǎn)由數(shù)據(jù)部分和地址指針部分構(gòu)成,如圖3 所示。

圖3 鏈表節(jié)點(diǎn)結(jié)構(gòu)

2.5 插入捕獲模塊

在設(shè)計(jì)中,HINOC 網(wǎng)絡(luò)能夠支持IGMP、MLD、DHCP 等協(xié)議,而這些協(xié)議報(bào)文必須交給CPU 進(jìn)行處理,因此在HIMAC 中設(shè)計(jì)了捕獲模塊,用于將需要交給CPU 處理的報(bào)文捕獲給CPU。為了實(shí)現(xiàn)的簡(jiǎn)易性,設(shè)計(jì)為從總線上捕獲數(shù)據(jù)。捕獲的數(shù)據(jù)幀分為兩類(lèi):重定向到CPU 的數(shù)據(jù)幀及復(fù)制到CPU的數(shù)據(jù)幀。

當(dāng)CPU 產(chǎn)生(或者是轉(zhuǎn)發(fā))的數(shù)據(jù)幀需要由HIMAC 或EMAC 端口發(fā)送時(shí),就需要將這些數(shù)據(jù)幀插入到HIMAC 內(nèi)部,然后讓這些數(shù)據(jù)幀和普通的數(shù)據(jù)幀一起進(jìn)行調(diào)度、入隊(duì),出隊(duì)等操作,為此,設(shè)置了插入模塊作為CPU 的數(shù)據(jù)幀插入到HIMAC 內(nèi)部的通道??梢詫⒉迦肽K作為接收調(diào)度模塊進(jìn)行輪詢(xún)操作時(shí)的第三個(gè)外部接口,幀從CPU 出來(lái),經(jīng)調(diào)度模塊調(diào)度,就可以直接入隊(duì)。

3 功能仿真及FPGA 驗(yàn)證

3.1 功能仿真

整個(gè)HIMAC 硬件協(xié)處理器采用Verilog HDL 語(yǔ)言實(shí)現(xiàn)。為驗(yàn)證其邏輯功能的正確性,編寫(xiě)了CPU、HIPHY 及以太網(wǎng)幀產(chǎn)生模塊等BFM。規(guī)定其詳細(xì)功能列表,建立驗(yàn)證平臺(tái),制定相應(yīng)的測(cè)試用例。仿真驗(yàn)證采用可回歸的自動(dòng)報(bào)結(jié)果的檢驗(yàn)手段。在ModelSim 6.3 環(huán)境下通過(guò)邏輯仿真。結(jié)果表明,能夠?qū)崿F(xiàn)預(yù)定的各種功能。

3.2 FPGA 驗(yàn)證

3.2.1 驗(yàn)證平臺(tái)

FPGA 的驗(yàn)證平臺(tái)主要包括Altera 公司StratixⅡ系列的芯片EP2S180,PXA270 處理器及一些接口和存儲(chǔ)模塊等。驗(yàn)證平臺(tái)硬件框圖如圖4 所示。

圖4 硬件驗(yàn)證平臺(tái)

3.2.2 驗(yàn)證方案

HINOC 系統(tǒng)中,影響系統(tǒng)性能的因素主要有Pd周期及Pd 幀前/后保護(hù)期、幀間隔、調(diào)試方式(64/128/256QAM)[7-8]、MAP 規(guī)劃的不同等。設(shè)計(jì)中Pd周期、Pd 幀前/后保護(hù)期和幀間隔的基本單位為1/64 μs,這里是以HIPHY 的時(shí)鐘頻率(64MHz)為基準(zhǔn)。針對(duì)HINOC 系統(tǒng)的測(cè)試,本文設(shè)計(jì)了如圖5 所示的測(cè)試方案。

方便起見(jiàn),圖5 只給出了HIMAC FPGA 內(nèi)部的部分功能模塊。該測(cè)試方法可通過(guò)CPU 配置HINOC系統(tǒng)寄存器實(shí)現(xiàn),CPU 將HIMAC FPGA 和HIPHY FPGA 的模式寄存器置0,選取正常工作模式。HINOC 系統(tǒng)中,下行方向(HB→HM):HB 將收到的EMAC 幀進(jìn)行組幀后送往HIPHY 的發(fā)送緩存,然后在MAP 周期內(nèi)下行時(shí)隙時(shí)將組好的數(shù)據(jù)幀經(jīng)HIPHY 發(fā)送至HM,HM 將數(shù)據(jù)拆幀后,由EMAC 口發(fā)回SmartBits 測(cè)試儀;上行方向(HM→HB):HM 將收到的EMAC 幀完成組幀后向HB 請(qǐng)求信道預(yù)約,然后在HB 為其分配發(fā)送時(shí)隙內(nèi)將數(shù)據(jù)發(fā)送至HB,HB對(duì)數(shù)據(jù)拆幀后,由EMAC 口發(fā)回SmartBits 測(cè)試儀。

圖5 系統(tǒng)驗(yàn)證方案

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

使用Altera 公司的Quartus Ⅱ9. 1 工具對(duì)HIMAC 協(xié)處理器代碼進(jìn)行綜合,目標(biāo)器件為EP2S180F1020I4,綜合后的資源占用情況如表1所示。

表1 FPGA 資源統(tǒng)計(jì)

為測(cè)試系統(tǒng)的性能,對(duì)圖5 所示系統(tǒng)進(jìn)行下行傳輸測(cè)試和雙向傳輸測(cè)試。

(1)HINOC 系統(tǒng)下行傳輸測(cè)試

下行傳輸時(shí),MAP 規(guī)劃中僅僅存在下行時(shí)隙和MAP 幀,而不存在預(yù)約時(shí)隙和上行時(shí)隙。表2 給出了Pd 前后保護(hù)期分別為4 000 和20 000(接近理論最小保護(hù)時(shí)間)、256QAM 調(diào)制方式下的HINOC 系統(tǒng)下行傳輸?shù)臏y(cè)試結(jié)果。

表2 系統(tǒng)下行測(cè)試

表2 所測(cè)為無(wú)丟包情況時(shí)的HINOC 系統(tǒng)下行極限傳輸速率。圖6 給出了利用SmartBits 200 測(cè)試儀測(cè)得的表2 中序號(hào)8 情況時(shí)的測(cè)試結(jié)果。

圖6 系統(tǒng)下行測(cè)試結(jié)果

可見(jiàn),在EMAC 幀間隔為0.002 4 ms,幀長(zhǎng)度為固定1 500 byte 情況下,所統(tǒng)計(jì)的發(fā)送和接收的數(shù)據(jù)一致,且無(wú)出錯(cuò),網(wǎng)絡(luò)的單向數(shù)據(jù)傳輸速率可達(dá)83 Mbit/s,考慮到在每個(gè)MAP 周期內(nèi),CPU 需要處理控制幀、信令幀、生成MAP 規(guī)劃等,此速率實(shí)際上已接近該情況下的極限速率。

(2)HINOC 系統(tǒng)雙向傳輸測(cè)試

雙向傳輸時(shí),MAP 規(guī)劃內(nèi)包含上/下行時(shí)隙、預(yù)約時(shí)隙和MAP 幀。圖7 給出了Pd 周期為786 432,Pd 前/后保護(hù)期分別為6 400 和20 000,上下行切換間隔20 000,幀間隔為2 000 時(shí),利用SmartBits 600測(cè)試儀得到的測(cè)試結(jié)果。

圖7 系統(tǒng)雙向傳輸測(cè)試結(jié)果

由圖7 可知,測(cè)得的HINOC 系統(tǒng)下行傳輸速率為42 Mbps,上行傳輸速率為26 Mbps,測(cè)試結(jié)果達(dá)到設(shè)計(jì)要求。

4 結(jié)論

提出了一種具有自主知識(shí)產(chǎn)權(quán)的HINOC 系統(tǒng)MAC 層硬件協(xié)處理器的設(shè)計(jì)方案。實(shí)驗(yàn)結(jié)果表明,該設(shè)計(jì)滿足HINOC 系統(tǒng)對(duì)各種數(shù)據(jù)幀處理速率的要求,同時(shí),一些原本由軟件完成的功能通過(guò)硬件來(lái)實(shí)現(xiàn),降低了CPU 的負(fù)荷,同時(shí)也提高了數(shù)據(jù)幀處理的效率。

[1] 國(guó)家廣播電影電視總局廣播科學(xué)研究院,北京大學(xué),西安電子科技大學(xué).高性能同軸電纜接入網(wǎng)(HINOC)物理層傳輸模式及媒質(zhì)接入控制協(xié)議(面向NGB 電纜接入技術(shù)的建議方案).2010 年.

[2] 趙翠,張誠(chéng),李紅濱,等.HINOC 系統(tǒng)硬件架構(gòu)和實(shí)現(xiàn)方法[J].廣播與電視技術(shù),2011,(10):39-42.

[3] 歐陽(yáng)峰,崔競(jìng)飛HINOC 技術(shù)概述和進(jìn)展[J].電視技術(shù),2011,(12):11-13.

[4] MoCA MAC/PHY Specification V1.0[S]. Multimedia Over Coax Alliance,2006.

[5] HomePlug AV Specification V1.0[S].HomePlug Power Alliance,2005.

[6] Cui Xiaoxin,Long Jinkai,Sun Bin,et al. A High Performance Baseband Transceiver IC for HINOC Communication System[C]//ICSICT2010,442-444,2010.

[7] Pfau T,Sebastian Hoffmann,Reinhold Noe.Hardware-Efficient Coherent Digital Receiver Concept with Feedforward Carrier Recovery for M-QAM Constellations[J]. Journal of Lightwave Technology,2009,27:989-999.

[8] Adnan Zafar,Zaineb Farooq S. Implementation and Analysis of QPSK &16QAM Modulator & Demodulator[C]//ICAST2008,64-68,2008.

猜你喜歡
以太網(wǎng)調(diào)度傳輸
混合型隨機(jī)微分方程的傳輸不等式
牽引8K超高清傳輸時(shí)代 FIBBR Pure38K
基于1500以太網(wǎng)養(yǎng)豬場(chǎng)的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
《調(diào)度集中系統(tǒng)(CTC)/列車(chē)調(diào)度指揮系統(tǒng)(TDCS)維護(hù)手冊(cè)》正式出版
一種基于負(fù)載均衡的Kubernetes調(diào)度改進(jìn)算法
虛擬機(jī)實(shí)時(shí)遷移調(diào)度算法
電子制作(2018年18期)2018-11-14 01:48:00
支持長(zhǎng)距離4K HDR傳輸 AudioQuest Pearl、 Forest、 Cinnamon HDMI線
談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動(dòng)化中的應(yīng)用
電子制作(2017年24期)2017-02-02 07:14:44
一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
涞源县| 东乡| 岑溪市| 潼南县| 金川县| 子长县| 安溪县| 通山县| 科技| 河津市| 平舆县| 新宁县| 阆中市| 兴安盟| 桑植县| 潢川县| 广丰县| 明光市| 娱乐| 遵义市| 工布江达县| 外汇| 聂拉木县| 韩城市| 兰考县| 平陆县| 余江县| 赞皇县| 清镇市| 太仓市| 贡觉县| 德清县| 澄迈县| 元江| 辛集市| 成安县| 金乡县| 镇远县| 东兰县| 汤阴县| 龙井市|