版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于FPGA開源200Gbps數(shù)據(jù)包逆解析器的設(shè)計(jì)摘要:P4語言極大地改變了網(wǎng)絡(luò)領(lǐng)域,因?yàn)樗梢钥焖倜枋龊蛯?shí)現(xiàn)新的網(wǎng)絡(luò)應(yīng)用程序。盡管可以使用P4語言描述各種各樣的應(yīng)用程序,但是當(dāng)前的可編程開關(guān)體系結(jié)構(gòu)對(duì)P4程序施加了很大的限制。為了解決這個(gè)缺點(diǎn),人們已經(jīng)探索了將FPGA作為P4應(yīng)用的潛在目標(biāo)。P4應(yīng)用程序使用三種抽象來描述:數(shù)據(jù)包解析器,匹配操作表和數(shù)據(jù)包逆解析器,后者使用匹配操作表的結(jié)果重新組合輸出數(shù)據(jù)包。盡管FPGA上的數(shù)據(jù)包解析器和匹配表的實(shí)現(xiàn)已在文獻(xiàn)中得到了廣泛報(bào)道,但對(duì)于數(shù)據(jù)包逆解析器并沒有提出一般的設(shè)計(jì)原理。
實(shí)際上,在FPGA上實(shí)現(xiàn)高速高效的逆解析器仍然是一個(gè)懸而未決的問題,因?yàn)樗枰罅康幕ミB,并且必須針對(duì)P4程序量身定制該體系結(jié)構(gòu)。
因此,在一些在FPGA上實(shí)現(xiàn)P4應(yīng)用程序的工作中,逆解析器消耗了大量的芯片資源。因此,在本文中,我們通過介紹FPGA上高效和快速的逆解析器的設(shè)計(jì)原理來解決這個(gè)問題。
作為一個(gè)神器,我們將介紹一種可通過P4程序生成高效的,可診斷的逆解析器架構(gòu)的工具。我們的設(shè)計(jì)已通過基于cocotb的框架進(jìn)行了驗(yàn)證和仿真。最終的架構(gòu)在XilinxUltrascale+FPGA上實(shí)現(xiàn),并支持200Gbps以上的吞吐量,同時(shí)與其他解決方案相比將資源使用量減少了近10倍。
CCS概念:
?硬件→可重新配置的邏輯應(yīng)用程序;
?計(jì)算機(jī)系統(tǒng)組織→可重構(gòu)計(jì)算;高級(jí)語言架構(gòu);
?網(wǎng)絡(luò)→編程接口。
01INTRODUCTIONP4域特定語言(DSL)[6]重塑了網(wǎng)絡(luò)域,因?yàn)樗试S描述具有很大靈活性的自定義數(shù)據(jù)包轉(zhuǎn)發(fā)應(yīng)用程序。使用FPGA卸載網(wǎng)絡(luò)任務(wù)的興趣日益濃厚。例如,微軟已經(jīng)在其數(shù)據(jù)中心部署了FPGA,以實(shí)現(xiàn)Azure服務(wù)器的數(shù)據(jù)平面[8]。網(wǎng)絡(luò)內(nèi)計(jì)算是最近考慮使用FPGA的另一種途徑[20]。
另外,最近的一些工作利用FPGA可重配置性來創(chuàng)建可編程數(shù)據(jù)平面并實(shí)現(xiàn)P4應(yīng)用[5、13、21]。
如圖1所示,P4應(yīng)用程序包含三個(gè)抽象:數(shù)據(jù)包解析器,處理階段(匹配動(dòng)作表)和數(shù)據(jù)包逆解析器(第2.2節(jié))。盡管已經(jīng)廣泛探索了FPGA上高效數(shù)據(jù)包解析器的設(shè)計(jì)[3、5、19],但很少有精力致力于高效數(shù)據(jù)包逆解析器的實(shí)現(xiàn)。首先,據(jù)我們所知,僅一篇論文涵蓋了該主題[7]。然而,Cabal等人[7]僅報(bào)告了100Gbps數(shù)據(jù)包逆解析器的FPGA資源消耗,而未涵蓋設(shè)計(jì)原理和微體系結(jié)構(gòu)細(xì)節(jié)。
第二,如Luinaud等[16]觀察到,數(shù)據(jù)包逆分解器可能會(huì)消耗超過80%的資源來實(shí)現(xiàn)一個(gè)完整的流水線,這會(huì)危害FPGA來實(shí)現(xiàn)更復(fù)雜的P4應(yīng)用程序的能力。
本文介紹了一種開源代碼解決方案,可在FPGA上生成高效且高速的數(shù)據(jù)包逆解析器。它為FPGA數(shù)據(jù)包逆解析器的設(shè)計(jì)原理奠定了基礎(chǔ)。它包括一個(gè)體系結(jié)構(gòu)和一個(gè)編譯器,可從P4程序生成一個(gè)逆解析器。
用Python描述了逆解析器編譯器(第4節(jié)),并為提出的逆解析器體系結(jié)構(gòu)生成了可綜合的VHDL代碼。
生成的架構(gòu)利用了FPGA固有的可配置性,從而避免了無法在FPGA上有效實(shí)現(xiàn)的硬件構(gòu)造,例如交叉開關(guān)或桶形移位器[1,25]。
仿真環(huán)境基于cocotb[11],它允許使用幾個(gè)現(xiàn)成的Python包(例如Scapy)來生成測(cè)試用例。另外,可以將測(cè)試中的設(shè)計(jì)與虛擬網(wǎng)絡(luò)接口[12]連接起來。結(jié)果,可以使用P4行為參考模型來進(jìn)行行為驗(yàn)證[17]。
已針對(duì)各種數(shù)據(jù)包頭評(píng)估了生成的體系結(jié)構(gòu)。評(píng)估顯示,與最新解決方案(第5節(jié))相比,生成的逆解析器支持200Gbps以上的數(shù)據(jù)包吞吐量,同時(shí)將資源使用量減少10倍以上。
本文的貢獻(xiàn)如下:
?利用FPGA可配置性(§3)的逆解析器架構(gòu);
?開源P4-to-VHDL數(shù)據(jù)包逆解析器編譯器(第4節(jié));
?基于cocotb的仿真環(huán)境,可簡(jiǎn)化逆解析器驗(yàn)證(第5節(jié))。
02數(shù)據(jù)包處理
本節(jié)介紹P4語言以及如何組織P4程序組件來描述數(shù)據(jù)包處理。
>2.1P4語言
P4[6]是命令性DSL,用于描述可編程數(shù)據(jù)平面上的自定義數(shù)據(jù)包處理。
·2.1.1P4程序概述
構(gòu)成P4程序的組件有四個(gè):標(biāo)頭,解析器,控制和switch。報(bào)頭是由特定寬度的字段和有效位組成的結(jié)構(gòu)。標(biāo)頭的結(jié)構(gòu)用于定義可以由P4程序處理的標(biāo)頭集。解析器塊表示順序和提取包頭的方式??刂茐K描述了對(duì)標(biāo)頭執(zhí)行的操作。
·2.1.2
控制操作
在控制塊中,可以執(zhí)行多種操作類型來修改標(biāo)頭。逆解析器需要關(guān)注兩個(gè)特定的操作setValid和setInvalid,這兩個(gè)操作可分別用于將標(biāo)頭有效性位設(shè)置為有效或無效。
在P4中,控制塊還實(shí)現(xiàn)了解析邏輯。這些塊由一系列的emit語句組成。首先,這些語句的順序決定了標(biāo)題的發(fā)出順序。
其次,僅在設(shè)置了有效位的情況下才發(fā)送頭。
由于發(fā)出語句的順序決定了報(bào)頭的發(fā)出順序,并且由于可以由先前的控制塊更改有效性位,因此逆解析器必須能夠在運(yùn)行時(shí)插入或刪除報(bào)頭。
>2.2P4程序組件
本文考慮了Bená?ek等人提出的交換結(jié)構(gòu)[5]由三部分組成:解析器,處理部分和逆解析器,如圖1所示。
解析器。
解析器將數(shù)據(jù)包作為輸入,并生成數(shù)據(jù)包頭矢量(PHV)和數(shù)據(jù)包有效負(fù)載。在我們的設(shè)計(jì)中,我們假設(shè)PHV由兩部分組成:包含標(biāo)頭數(shù)據(jù)的PHV_data總線和指示每個(gè)標(biāo)頭組件有效性位的位圖矢量PHV_valid總線。我們還假設(shè)數(shù)據(jù)包有效負(fù)載是通過流總線發(fā)送的,第一個(gè)字節(jié)位于位置0。
處理過程。
處理部分從解析器中獲取PHV作為輸入,并輸出修改后的PHV,并將其轉(zhuǎn)發(fā)給逆解析器。PHV上的操作可以是標(biāo)頭數(shù)據(jù)修改或標(biāo)頭有效性位更改。
逆解析器。
逆解析器模塊將來自處理部分的PHV和來自解析器的有效負(fù)載作為輸入。它輸出要在流式總線上發(fā)送的數(shù)據(jù)包。
03Deparser架構(gòu)原則在本節(jié)中,我們介紹Deparser架構(gòu)原則。首先,我們介紹一個(gè)Deparser抽象機(jī)。其次,我們介紹了DeparserI/O信號(hào)。第三,我們介紹了擬議的Deparser的微體系結(jié)構(gòu)。我們所有的設(shè)計(jì)選擇都使用FPGA固有的可配置性,并為Deparser編譯器提供可配置的模塊。
>3.1Deparser抽象機(jī)
Deparser抽象機(jī)如圖2所示。在此體系結(jié)構(gòu)中,我們假設(shè)PHV已緩沖并與PHV有效向量一起到達(dá)了Deparser。
算法1展示了PHV移位器模塊的偽代碼,而算法2展示了有效載荷移位器。
在FPGA上實(shí)現(xiàn)逆解析器的主要限制因素是頭插入所需的大量互連和桶形移位器。為了限制這些塊的使用,我們基于標(biāo)頭和有效載荷構(gòu)造了一個(gè)新數(shù)據(jù)包。因此,由于可以在編譯時(shí)完全推斷出P4解析邏輯,并且由于FPGA是可重新配置的,因此我們?yōu)橹付ǖ腜4程序定制了逆解析器架構(gòu),以減輕這些限制因素。
現(xiàn)在,我們介紹了Deparser的輸入和輸出。
>3.2
輸入和輸出
該逆解析器具有3個(gè)輸入和1個(gè)輸出。輸出Pkt_out和輸入有效負(fù)載是AXI4流總線[2]。這兩個(gè)總線的數(shù)據(jù)寬度是一個(gè)編譯時(shí)間參數(shù)。兩個(gè)輸入PHV_data和PHV_valid分別包含標(biāo)題數(shù)據(jù)和要解析的有效性位。在編譯P4應(yīng)用程序時(shí),將確定PHV_data和PHV_valid的寬度。
>3.3
微體系結(jié)構(gòu)細(xì)節(jié)
在內(nèi)部,逆解析器是圍繞三個(gè)塊構(gòu)建的:PHV移位器,有效負(fù)載移位器和選擇器。PHV移位器獲取PHV_data和PHV_valid作為輸入,并輸出要發(fā)送的頭幀。
有效載荷移位器接收有效載荷和PHV_valid作為輸入,并生成有效載荷數(shù)據(jù)幀。有效負(fù)載移位器和PHV移位器都輸入到選擇器。選擇器根據(jù)有效負(fù)載移位器和PHV移位器接收到的狀態(tài)生成Pkt_out幀?!?/p>
3.3.1PHV移位器
PHV移位器將PHV位移位以構(gòu)建數(shù)據(jù)包。它由圖3所示的標(biāo)頭移位器組成。標(biāo)頭移位器的最大數(shù)量等于Pkt_out總線寬度。
標(biāo)頭移位器具有三個(gè)輸入:PHV_data,PHV_valid和啟動(dòng)信號(hào)。它輸出:標(biāo)頭數(shù)據(jù),有效的標(biāo)頭和最后的標(biāo)頭。PHV_valid和啟動(dòng)輸入連接到狀態(tài)機(jī)模塊。狀態(tài)機(jī)模塊驅(qū)動(dòng)標(biāo)題有效和標(biāo)題最后輸出。PHV_data輸入連接到驅(qū)動(dòng)頭數(shù)據(jù)輸出的多路復(fù)用器。多路復(fù)用器根據(jù)狀態(tài)機(jī)模塊的一個(gè)輸出選擇PHV_data的位之一。狀態(tài)機(jī)是從逆解析器圖(§4)以及多路復(fù)用器的輸入數(shù)量中得出的。
·
3.3.2有效負(fù)載轉(zhuǎn)換器
有效負(fù)載移位器將有效負(fù)載與發(fā)出的標(biāo)題對(duì)齊。有效負(fù)載移位器的基本模塊如圖4所示。它以數(shù)據(jù),Ctrl和Keep作為輸入,并輸出有效負(fù)載數(shù)據(jù)和有效負(fù)載保持信號(hào)。數(shù)據(jù)總線和Keep總線分別連接到Deparser的有效負(fù)載輸入總線的AXItdata和tkeep信號(hào)。該總線的每個(gè)字節(jié)都連接到圖4中多路復(fù)用器1的一個(gè)輸入。
Keep信號(hào)的每個(gè)位都連接到多路復(fù)用器3的一個(gè)輸入。Ctrl信號(hào)確定應(yīng)選擇多路復(fù)用器1和3的哪個(gè)輸入。最后,可以注冊(cè)多路復(fù)用器1和3的輸出,以將數(shù)據(jù)輸出延遲一個(gè)周期。多路復(fù)用器2和4選擇當(dāng)前值或延遲值。Ctrl總線的值由在編譯時(shí)生成的較小且恒定的關(guān)聯(lián)內(nèi)存設(shè)置。
·3.3.3選擇器
該模塊在有效負(fù)載移位器和PHV移位器之間選擇正確的輸出數(shù)據(jù),并生成AXI4流輸出信號(hào)數(shù)據(jù)包數(shù)據(jù),數(shù)據(jù)包保留和數(shù)據(jù)包最后。選擇器將有效負(fù)載移位器的輸出和PHV移位器的輸出作為輸入,如圖5所示。
分組數(shù)據(jù)和分組保持信號(hào)由塊數(shù)據(jù)選擇分配。該塊被復(fù)制以分配所有分組數(shù)據(jù)位。
根據(jù)輸入信號(hào)“具有有效負(fù)載”指示的有效負(fù)載的存在,“最后一個(gè)包”信號(hào)是“PHV最后”或“有效負(fù)載最后”。
·3.3.4FPGA上的多路復(fù)用器
所呈現(xiàn)的不同構(gòu)造塊高度依賴于FPGA上的多路復(fù)用器實(shí)現(xiàn)。我們選擇使用多路復(fù)用器,因?yàn)樗鼈円言贔PGA上有效實(shí)現(xiàn)。實(shí)際上,一個(gè)16:1的多路復(fù)用器在XilinxFPGA上消耗了一個(gè)切片[23]。雖然擁有一個(gè)非常大的多路復(fù)用器會(huì)變得很昂貴,但我們知道每個(gè)多路復(fù)用器的輸入數(shù)量將由編譯器減少到最少(第4.2.2節(jié))。
04生成逆解析器逆解析器可以表示為有向無環(huán)圖(DAG)。為了生成DeparserDAG,使用p4c-bm2-ss編譯器將P4程序編譯為JSON文件[18]。生成的JSON文件然后用于生成一個(gè)DeparserDAG??梢詢?yōu)化此DAG,但是此優(yōu)化留給以后的工作。本節(jié)的其余部分介紹了從DeparserDAG生成不同的Deparser模塊的過程。
>4.1DeparserDAG
用于以太網(wǎng),IPv4,IPv6,TCP和UDP數(shù)據(jù)包的DeparserDAG的示例如圖6所示。DAG的每個(gè)節(jié)點(diǎn)(不包括開頭和結(jié)尾)均表示一個(gè)報(bào)頭。DAG的每個(gè)箭頭表示可能要發(fā)出的下一個(gè)報(bào)頭。起始和結(jié)束之間的每個(gè)路徑代表可能發(fā)出的一組報(bào)頭。
表1列出了所有可能的路徑。
為了從DAG獲得逆解析器,有兩個(gè)部分。第一部分對(duì)deparser圖進(jìn)行變換,以生成PHV移位器。第二部分使用deparser圖生成凈荷移位器。>4.2PHV移位器的生成為了生成PHV移位器的標(biāo)題移位器,我們構(gòu)建了deparser圖的sub-DAG。每個(gè)子DAG代表一個(gè)報(bào)頭移位器塊(第3.3.1節(jié))。由于大多數(shù)網(wǎng)絡(luò)協(xié)議都是按字節(jié)對(duì)齊的[5],因此我們?yōu)槊總€(gè)輸出字節(jié)構(gòu)建一個(gè)sub-DAG。這允許合并PHV移位器狀態(tài)機(jī),因此降低了逆解析器的體系結(jié)構(gòu)復(fù)雜性。
·4.2.1子DAG的生成
在子DAG中,每個(gè)節(jié)點(diǎn)都包含標(biāo)題和要提取的字節(jié)。每個(gè)邊緣都指示要到達(dá)相應(yīng)下一節(jié)點(diǎn)的報(bào)頭有效性條件。我們提出了算法3來生成子DAG。
所提出的算法通過遍歷De
parser圖來遍歷所有可能的標(biāo)頭發(fā)射序列。我們將序列的每個(gè)字節(jié)分配給一個(gè)子DAG。當(dāng)子DAG第一次處理來自特定標(biāo)頭的字節(jié)時(shí),我們將邊緣條件設(shè)置為此標(biāo)頭。圖7顯示了使用算法3使用圖6的deparserDAG和128位輸出總線生成的子DAG。
·4.2.2Sub-DAG轉(zhuǎn)換
子DAG轉(zhuǎn)換分為兩個(gè)部分:標(biāo)頭移位器多路復(fù)用器生成和狀態(tài)機(jī)生成。生成的多路復(fù)用器的輸入數(shù)量等于子DAG中的節(jié)點(diǎn)數(shù)量。狀態(tài)機(jī)是從子DAG派生的,其中每個(gè)節(jié)點(diǎn)代表一個(gè)狀態(tài),每個(gè)邊沿代表一個(gè)過渡。頭字節(jié)位置被轉(zhuǎn)換為多路復(fù)用器的輸入位置。
>4.3有效載荷移位器關(guān)聯(lián)內(nèi)存的創(chuàng)建
有效載荷移位器體系結(jié)構(gòu)在第3.3.2節(jié)中介紹。我們使用該圖生成驅(qū)動(dòng)Ctrl信號(hào)的關(guān)聯(lián)內(nèi)存。使用deparser圖可以分兩步生成此內(nèi)存。首先,我們通過查看Deparser圖表中開始和結(jié)束之間的所有可能路徑來確定可能的有效標(biāo)頭的設(shè)置PH。集合PH中的每個(gè)元素ph由PHV_valid總線值和所有標(biāo)頭寬度的總和組成。
建立集合PH后,對(duì)于每個(gè)可能的元素ph∈PH,我們?yōu)镃trl分配一個(gè)值。對(duì)于每個(gè)可能的PHV_valid值,我們計(jì)算有效負(fù)載的偏移量。使用等式Offset=phw(modw)獲得偏移,其中w是總線寬度,而phw表示發(fā)出的標(biāo)頭的總位數(shù)。最后,我們?yōu)槲挥谄浦狄韵碌拿總€(gè)有效負(fù)載移位器設(shè)置連接到圖4的多路復(fù)用器2和4的Ctrl位的值。
05結(jié)果本節(jié)介紹了這項(xiàng)工作的結(jié)果。首先,我們描述實(shí)驗(yàn)設(shè)置。然后,我們介紹了編譯器參數(shù)對(duì)生成的體系結(jié)構(gòu)的影響。最后,我們將實(shí)現(xiàn)結(jié)果與以前的工作進(jìn)行比較。
>5.1實(shí)驗(yàn)設(shè)置
我們?yōu)橐韵氯齻€(gè)協(xié)議棧生成了逆解析器:
?T1:以太網(wǎng),IPv4/IPv6,TCP/UDP
?T2:以太網(wǎng),IPv4/IPv6,TCP/UDP,ICMP/ICMPv6
?T3:以太網(wǎng),2×VLAN,2×MPLS,IPv4/IPv6,
TCP/UDP,ICMP/ICMPv6
為了驗(yàn)證我們的工作,我們基于cocotb框架[11]開發(fā)了一個(gè)仿真平臺(tái)。我們?yōu)锳XI4-stream總線開發(fā)了cocotb驅(qū)動(dòng)程序和監(jiān)視器,從而使我們能夠快速評(píng)估不同的Deparser配置。XilinxVivado2019.1用于合成和布局布線。為了實(shí)現(xiàn)可重復(fù)性,我們的代碼是開放的1。
>5.2編譯器參數(shù)的影響
為了評(píng)估圖形復(fù)雜度的影響,我們從非優(yōu)化的deparserDAG和逆解析器DAG(被視為優(yōu)化的逆解析器DAG)生成并合成了逆解析器。使用解析器DAG作為逆解析器DAG是在P414[9]中提出的實(shí)現(xiàn)。表2列出了針對(duì)Xilinxxcvu3p-3FPGA時(shí),每個(gè)綜合運(yùn)行的BlockRAM(BRAM),查找表(LUT)和觸發(fā)器(FF)的使用情況。結(jié)果表明,兩個(gè)因素主導(dǎo)著資源的使用:復(fù)雜度和數(shù)據(jù)總線寬度。
圖的復(fù)雜度。
圖形的復(fù)雜性受逆解析器代碼和圖形簡(jiǎn)化程度的影響。由于簡(jiǎn)化的DeparserDAG具有較少的邊,因此可減少其PHV_shifter的狀態(tài)機(jī)和有效負(fù)載移位器的關(guān)聯(lián)內(nèi)存的大小。另外,每個(gè)子DAG需要更少的節(jié)點(diǎn)。結(jié)果,減少了PHV移位器復(fù)用器的輸入數(shù)量。例如,在T1中,有5個(gè)標(biāo)頭。對(duì)于未優(yōu)化的解析器DAG,這將導(dǎo)致總共32條路徑,而簡(jiǎn)化的逆解析器圖僅包含7條路徑。
總線寬度。除了圖形復(fù)雜度之外,總線寬度還會(huì)影響資源消耗。提出的設(shè)計(jì)具有6個(gè)時(shí)鐘周期的延遲。而且,輸出數(shù)據(jù)包的等待時(shí)間是要發(fā)射的總報(bào)頭長(zhǎng)度和總線寬度的函數(shù)。如表2所示,對(duì)于大型公交車,與較小型公交車相比,最壞情況的等待時(shí)間減少了。標(biāo)頭發(fā)射的最壞情況延遲可以通過以上公式計(jì)算。
同樣,增加總線寬度會(huì)增加LUT和FF的使用率。對(duì)于64位至256位不等的數(shù)據(jù)總線,資源使用量會(huì)略有增加,但是對(duì)于512位總線而言,這種增加變得非常重要。有兩個(gè)因素可以解釋這種較高的復(fù)雜性。首先,多路復(fù)用器的最小數(shù)量以每個(gè)輸出位1個(gè)多路復(fù)用器的速率增加。其次,對(duì)于較大的總線,由于標(biāo)頭對(duì)齊,因此對(duì)于每個(gè)輸出幀,可以將更多標(biāo)頭附加到總線上。
因此,PHV移位器的可能輸入的重用較少。
>5.3實(shí)現(xiàn)結(jié)果
我們還為三個(gè)協(xié)議棧(具有512位數(shù)據(jù)總線)實(shí)現(xiàn)了非優(yōu)化的DeparserDAG。我們將Deparser實(shí)施結(jié)果與XilinxSDNet2017.4[24]和Bená?ek等人生成的Deparser進(jìn)行了比較[5]。這些實(shí)現(xiàn)的結(jié)果顯示在表3中。我們的Deparser支持的吞吐量比Bená?ek等人提出的Deparser大20Gpbs[5],同時(shí)將資源使用量減少5倍。
與XilinxSDNet[24]生成的逆解析器相比,在最壞的情況下,我們的逆解析器支持的吞吐量低60Gbps,但我們的逆解析器使用的資源卻少了近10倍。
比較實(shí)施和綜合結(jié)果時(shí),資源消耗保持穩(wěn)定。在T1和T2的情況下,布局布線后的性能幾乎相同。但是,可以通過對(duì)多路復(fù)用器進(jìn)行流水線化來提高最大時(shí)鐘頻率,而不會(huì)顯著影響資源消耗。實(shí)際上,生成的體系結(jié)構(gòu)每個(gè)切片消耗少于一個(gè)FF,而典型的切片則具有八個(gè)FF。結(jié)果,未使用的FF可以用于流水線復(fù)用器,因?yàn)樗鼈儾惶赡苡善渌K驅(qū)動(dòng)。
06相關(guān)工作Wang等提出了P4FPGA[22]。P4FPGA是面向中等性能FPGA(10Gbps)的開源且與供應(yīng)商無關(guān)的P4-to-FPGA編譯器。Ibanez等[14]建議將XilinxSDNetP4編譯器[24]集成到現(xiàn)成的NetFPGA板[1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版智能家居安防系統(tǒng)試用合同3篇
- 二零二五版辦公家具租賃與辦公空間智能化改造合同2篇
- 二零二五年度國(guó)際商務(wù)考察合同范本3篇
- 二零二五年度金融機(jī)構(gòu)貸款合同風(fēng)險(xiǎn)評(píng)估與管理指南3篇
- 二零二五年度某零售商與第三方支付平臺(tái)就支付服務(wù)合作合同2篇
- 敬老院二零二五年度土地承包及社區(qū)服務(wù)一體化合同3篇
- 二零二五年船舶通信設(shè)備維護(hù)船員聘用合同3篇
- 二零二五年智慧交通項(xiàng)目合作開發(fā)合同范本3篇
- 二零二五年度搬家搬運(yùn)服務(wù)合同范本2篇
- 二零二五版導(dǎo)游人員旅游活動(dòng)組織聘用合同3篇
- 深圳2024-2025學(xué)年度四年級(jí)第一學(xué)期期末數(shù)學(xué)試題
- 中考語文復(fù)習(xí)說話要得體
- 《工商業(yè)儲(chǔ)能柜技術(shù)規(guī)范》
- 華中師范大學(xué)教育技術(shù)學(xué)碩士研究生培養(yǎng)方案
- 醫(yī)院醫(yī)學(xué)倫理委員會(huì)章程
- 初中班主任案例分析4篇
- 公司7s管理組織實(shí)施方案
- Q∕GDW 12147-2021 電網(wǎng)智能業(yè)務(wù)終端接入規(guī)范
- 仁愛英語單詞默寫本(全六冊(cè))英譯漢
- 公園廣場(chǎng)綠地文化設(shè)施維修改造工程施工部署及進(jìn)度計(jì)劃
- 塑料件缺陷匯總
評(píng)論
0/150
提交評(píng)論