陳一驕,盧澤新,孫志剛,李韜,呂高鋒
(國(guó)防科學(xué)技術(shù)大學(xué) 計(jì)算機(jī)學(xué)院,湖南 長(zhǎng)沙 410073)
信息網(wǎng)絡(luò)技術(shù)及應(yīng)用的迅猛發(fā)展對(duì)網(wǎng)絡(luò)路由交換設(shè)備(路由器等)提出了巨大挑戰(zhàn),層出不窮的網(wǎng)絡(luò)業(yè)務(wù)需求以及網(wǎng)絡(luò)帶寬和鏈路速率的飛速增長(zhǎng)要求新型網(wǎng)絡(luò)路由交換設(shè)備必須能夠提供高度的可編程性和適應(yīng)性,以支持大量多樣化用戶業(yè)務(wù)的快速部署和高效實(shí)現(xiàn)。然而,傳統(tǒng)路由交換設(shè)備體系結(jié)構(gòu)具有剛性和封閉性特點(diǎn),對(duì)于新型業(yè)務(wù)的部署通常僅能依賴于設(shè)備整體升級(jí)和更新?lián)Q代,即使是可行的升級(jí)和擴(kuò)展也只能由原提供商實(shí)施,無(wú)法充分實(shí)現(xiàn)開放和競(jìng)爭(zhēng),網(wǎng)絡(luò)運(yùn)營(yíng)商的投資無(wú)法得到有效保護(hù)。
此外,隨著互聯(lián)網(wǎng)規(guī)模的膨脹及業(yè)務(wù)模式的演變,對(duì)網(wǎng)絡(luò)路由交換設(shè)備的功能需求也在不斷演化,網(wǎng)絡(luò)路由交換設(shè)備不應(yīng)局限于僅提供基本的分組交換能力,而應(yīng)考慮在數(shù)據(jù)傳輸路徑上提供較為豐富的功能支撐。如何在網(wǎng)絡(luò)設(shè)備上通過(guò)擴(kuò)展計(jì)算、存儲(chǔ)等資源,并通過(guò)提供開放的標(biāo)準(zhǔn)編程接口(API)有效支持網(wǎng)絡(luò)設(shè)備新的功能原語(yǔ)實(shí)現(xiàn)已成為目前的研究熱點(diǎn)。
實(shí)際上,網(wǎng)絡(luò)路由交換設(shè)備的功能具有時(shí)空特性,即路由器的功能隨著時(shí)間和空間的變化而變化。如圖1所示,當(dāng)路由器在T1時(shí)刻部署在A點(diǎn)(如邊緣接入網(wǎng)絡(luò))和B點(diǎn)(如匯聚網(wǎng)絡(luò))時(shí)需要的功能不同。同樣在B點(diǎn),當(dāng)時(shí)間變化到T2時(shí),路由器的功能集合也可能變化。例如T1時(shí)刻路由器需要對(duì)網(wǎng)絡(luò)中爆發(fā)的蠕蟲病毒進(jìn)行監(jiān)測(cè)和過(guò)濾,而在 T2時(shí)刻蠕蟲病毒平息后,并不需要此項(xiàng)功能。同樣,在T3時(shí)刻路由器又部署到A點(diǎn)時(shí),其需要的功能又有可能發(fā)生變化。
圖1 路由交換設(shè)備功能時(shí)空特性
基于以上需求和觀察,新型可重構(gòu)路由交換(即可重構(gòu)路由器)平臺(tái)[1]應(yīng)運(yùn)而生,在平臺(tái)化支撐的構(gòu)件化處理技術(shù)基礎(chǔ)上,通過(guò)在平臺(tái)、組件和構(gòu)件3個(gè)層次提供開放可重構(gòu)能力,可有效支持以組合、升級(jí)以及替換等方式實(shí)現(xiàn)系統(tǒng)功能和性能的演進(jìn)和擴(kuò)展??芍貥?gòu)路由器可根據(jù)不斷變化的功能需求動(dòng)態(tài)加載不同處理構(gòu)件,不但可以滿足各種新出現(xiàn)的互聯(lián)網(wǎng)處理需求,如視頻感知的處理,而且可以降低設(shè)備功耗,延長(zhǎng)使用周期和減少電子垃圾,更加綠色節(jié)能[2]。
可重構(gòu)路由器的設(shè)計(jì)基于控制與數(shù)據(jù)平面分離思想,由路由轉(zhuǎn)發(fā)平面負(fù)責(zé)完成數(shù)據(jù)報(bào)文的高速查表、緩沖、交換以及調(diào)度等功能,而管理控制平面則主要負(fù)責(zé)路由計(jì)算、設(shè)備的管理和配置等功能。
可重構(gòu)路由器設(shè)計(jì)與實(shí)現(xiàn)中很多開放的問(wèn)題有待研究[3]。本文聚焦可重構(gòu)路由器的數(shù)據(jù)轉(zhuǎn)發(fā)平面,著重研究承載各種報(bào)文處理任務(wù)的轉(zhuǎn)發(fā)引擎如何有效支持包括常規(guī)轉(zhuǎn)發(fā)處理、新的安全、流量管理等業(yè)務(wù)的重構(gòu)實(shí)現(xiàn),力圖在保證報(bào)文處理性能的前提下,通過(guò)優(yōu)化提升可重構(gòu)路由器數(shù)據(jù)轉(zhuǎn)發(fā)平面的適應(yīng)性,支撐報(bào)文處理業(yè)務(wù)及網(wǎng)絡(luò)協(xié)議的快速升級(jí)、部署及驗(yàn)證。
本文著重研究支撐可重構(gòu)路由器數(shù)據(jù)平面處理的可重構(gòu)報(bào)文轉(zhuǎn)發(fā)引擎,主要貢獻(xiàn)包括:在提出構(gòu)件化報(bào)文轉(zhuǎn)發(fā)引擎重構(gòu)模型基礎(chǔ)上,通過(guò)采用Pass-Through模式實(shí)現(xiàn)可重構(gòu)FPGA與網(wǎng)絡(luò)處理器的有機(jī)結(jié)合,為程序/電路構(gòu)件的映射實(shí)現(xiàn)提供了優(yōu)化的構(gòu)件運(yùn)行環(huán)境。可重構(gòu)報(bào)文轉(zhuǎn)發(fā)引擎可以靈活實(shí)現(xiàn)網(wǎng)絡(luò)報(bào)文處理性能優(yōu)化,實(shí)現(xiàn)多樣化程序/電路構(gòu)件的快速映射與部署,支持多種類型網(wǎng)絡(luò)接口接入,并可為交換網(wǎng)絡(luò)的擴(kuò)展與升級(jí)提供有效支撐。
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,高性能路由器的處理能力和流量也不斷提升。然而,商用路由器系統(tǒng)針對(duì)性能提升的特定優(yōu)化卻在一定程度上限制了對(duì)新型協(xié)議以及服務(wù)的有效支撐。另一方面,商用路由器系統(tǒng)的封閉性也束縛了第三方軟件廠商及增值服務(wù)商新業(yè)務(wù)應(yīng)用的開發(fā)動(dòng)力。
D.C.LEE等[4]在文獻(xiàn)中提出可重構(gòu)路由器的概念,指出承載報(bào)文處理業(yè)務(wù)的路由器能夠在保證處理性能的前提下,具有適應(yīng)不斷變化的網(wǎng)絡(luò)通信標(biāo)準(zhǔn)和協(xié)議的能力。力圖能夠提高網(wǎng)絡(luò)報(bào)文處理性能,能夠更好地適應(yīng)流量的動(dòng)態(tài)變化。
然而,可重構(gòu)技術(shù)的研究主要集中在可重構(gòu)計(jì)算上,針對(duì)網(wǎng)絡(luò)和路由器的可重構(gòu)技術(shù)研究很少[1]。
在實(shí)現(xiàn)方式上,可重構(gòu)路由器系統(tǒng)通常采用通用 CPU、FPGA以及網(wǎng)絡(luò)處理器(NP, network processor)等具有可重構(gòu)能力的技術(shù)構(gòu)建。
基于通用CPU實(shí)現(xiàn)的路由器又稱軟件路由器,具有高度可編程性和靈活性,可以提供靈活的業(yè)務(wù)可重構(gòu)能力。例如,Click[5]是美國(guó)麻省理工大學(xué)提出的一種由細(xì)粒度構(gòu)件組成的軟件路由器,其設(shè)計(jì)目標(biāo)是使路由器軟件更加靈活并且易于配置和管理。美國(guó)華盛頓大學(xué)和瑞士蘇黎世聯(lián)邦理工學(xué)院提出了一種Routers Plugins[6],用于在報(bào)文分類器匹配特定流時(shí)執(zhí)行,分類器可以安裝在任何的“門”間,然而這些“門”在IP報(bào)文處理路徑上是固定的,無(wú)法有效更新和控制路徑。PacketShader[7]利用 GPU加速軟件路由器報(bào)文處理過(guò)程,通過(guò)應(yīng)用程序(庫(kù)程序)控制硬件報(bào)文轉(zhuǎn)發(fā)過(guò)程,可以達(dá)到每秒數(shù)百萬(wàn)報(bào)文的處理速度。然而,這種報(bào)文批處理方式也會(huì)引入較高的報(bào)文處理延遲。
FPGA技術(shù)具有可編程、可擦除、重復(fù)使用等特點(diǎn),可以在不改變外圍電路的情況下,通過(guò)用戶編程實(shí)現(xiàn)不同功能。文獻(xiàn)[8]中提出了一個(gè)基于流的可重構(gòu)路由器原型結(jié)構(gòu),并基于FPGA實(shí)現(xiàn)了可重構(gòu)硬件處理部件。華盛頓大學(xué)可重構(gòu)研究小組則提出了基于 FPX(field-programmable port extender)[9]實(shí)現(xiàn)的路由器動(dòng)態(tài)可重構(gòu)解決方案,其目的是充分利用可重構(gòu)硬件的高性能和靈活性,開發(fā)新的網(wǎng)絡(luò)應(yīng)用。斯坦福大學(xué)的研究人員則利用網(wǎng)絡(luò)教學(xué)開發(fā)平臺(tái)NetFPGA[10]實(shí)現(xiàn)了一個(gè)參考可重構(gòu)路由器,作為課程教學(xué)與科研實(shí)驗(yàn)的參考設(shè)計(jì)。SwitchBlade[11]基于FPGA預(yù)置豐富的報(bào)文處理功能集合及虛擬數(shù)據(jù)平面處理,以增強(qiáng)新型網(wǎng)絡(luò)技術(shù)的快速開發(fā)和部署能力。然而,完全基于 FPGA的設(shè)計(jì)則受限于FPGA容量和處理能力,更適用于原型系統(tǒng)驗(yàn)證以及網(wǎng)絡(luò)實(shí)驗(yàn)系統(tǒng)構(gòu)建等方面。
網(wǎng)絡(luò)處理器是目前構(gòu)建商用路由器系統(tǒng)采用最廣泛的器件,其試圖將精簡(jiǎn)指令集處理器的低成本、靈活性以及ASIC專用網(wǎng)絡(luò)處理芯片的高性能有效結(jié)合,滿足網(wǎng)絡(luò)設(shè)備在硬件加速和軟件可編程兩方面的設(shè)計(jì)需求。早期,主流網(wǎng)絡(luò)處理器體系結(jié)構(gòu)通常采用應(yīng)用特定指令集處理器 ASIP[12]方式實(shí)現(xiàn),針對(duì)網(wǎng)絡(luò)任務(wù)優(yōu)化設(shè)計(jì)的指令集有利于網(wǎng)絡(luò)業(yè)務(wù)處理能力的有效提升。然而,ASIP方式通常要求開發(fā)人員使用低層的微碼進(jìn)行編程和優(yōu)化,要求程序員對(duì)網(wǎng)絡(luò)處理器硬件體系結(jié)構(gòu)有較為深入的了解,對(duì)開發(fā)人員要求較高。
基于高性能通用多核的網(wǎng)絡(luò)處理器[13,14]作為通用微處理器技術(shù)在網(wǎng)絡(luò)處理領(lǐng)域的延伸,因其通用指令集體系結(jié)構(gòu)帶來(lái)強(qiáng)大的可編程性和易于使用的設(shè)計(jì)開發(fā)環(huán)境近期得到更為廣泛地關(guān)注。該體系結(jié)構(gòu)大幅降低了網(wǎng)絡(luò)處理器應(yīng)用程序設(shè)計(jì)門檻,卻在一定程度上阻礙了系統(tǒng)性能調(diào)優(yōu)。為有效提升網(wǎng)絡(luò)報(bào)文處理性能,基于高性能通用多核的網(wǎng)絡(luò)處理器通常集成多個(gè)硬件加速器,用于加速網(wǎng)絡(luò)特定業(yè)務(wù)處理。然而,這種固化的硬件加速器不具備重構(gòu)能力,難以針對(duì)可重構(gòu)路由器報(bào)文處理功能需求演化提供有效支撐。
基于上述相關(guān)研究,可重構(gòu)路由器的設(shè)計(jì),尤其是數(shù)據(jù)轉(zhuǎn)發(fā)平面,面臨著性能與靈活性(可重構(gòu)能力)的兩難選擇。一方面,可重構(gòu)能力的提升往往會(huì)以降低報(bào)文處理性能為代價(jià);另一方面,為獲得高性能報(bào)文轉(zhuǎn)發(fā)能力則通常必須對(duì)路由器系統(tǒng)進(jìn)行特定優(yōu)化設(shè)計(jì),而調(diào)優(yōu)過(guò)程則意味著路由器功能的固化及靈活性的降低。
針對(duì)可重構(gòu)路由器在性能和靈活性方面的兩難問(wèn)題,本文在分析路由器報(bào)文轉(zhuǎn)發(fā)處理工作特點(diǎn)的基礎(chǔ)上,提出一種新型異構(gòu)報(bào)文轉(zhuǎn)發(fā)引擎構(gòu)件重構(gòu)模型。通過(guò)將不同業(yè)務(wù)功能類型優(yōu)化映射到報(bào)文轉(zhuǎn)發(fā)引擎的不同處理構(gòu)件,可以在保證報(bào)文處理性能的前提下,有效支撐可重構(gòu)路由器系統(tǒng)服務(wù)及業(yè)務(wù)的承載重構(gòu)能力。
通用路由器報(bào)文轉(zhuǎn)發(fā)平面處理功能主要由程序功能和電路功能構(gòu)成。程序功能(又稱軟件功能)指依賴于處理器指令集實(shí)現(xiàn)的邏輯功能,以軟件代碼形式呈現(xiàn),適合于控制流較為復(fù)雜的非線性任務(wù)處理,通常難以達(dá)到較高的處理性能。
電路功能指依賴于硬件部件(ASIC加速芯片、硬件加速器、FGPA邏輯等)實(shí)現(xiàn)的邏輯功能(如CRC校驗(yàn)、加解密處理等),這些邏輯功能對(duì)處理性能要求較高,較適于線性任務(wù)的并行處理,從而可以高效利用硬件在并發(fā)處理資源方面的優(yōu)勢(shì)實(shí)現(xiàn)報(bào)文處理性能加速。
可重構(gòu)路由器路由轉(zhuǎn)發(fā)平面功能實(shí)現(xiàn)同樣依賴于多種程序功能與電路功能的協(xié)同,但在針對(duì)業(yè)務(wù)時(shí)空性的可重構(gòu)能力支撐方面提出了更高要求。
針對(duì)上述需求,本文提出了一種報(bào)文轉(zhuǎn)發(fā)引擎重構(gòu)模型,該模型通過(guò)程序/電路構(gòu)件到構(gòu)件運(yùn)行環(huán)境的按需映射可有效支撐網(wǎng)絡(luò)業(yè)務(wù)應(yīng)用的演化部署。
如圖2所示,網(wǎng)絡(luò)業(yè)務(wù)應(yīng)用通常由一組較小的“功能應(yīng)用”即任務(wù)構(gòu)成,例如報(bào)文分類、IP轉(zhuǎn)發(fā)等,這些處理任務(wù)可以采用任務(wù)圖形式表示,圖中節(jié)點(diǎn)表示報(bào)文處理任務(wù),邊表示任務(wù)間的數(shù)據(jù)控制通道。
任務(wù)圖中各任務(wù)可由不同構(gòu)件實(shí)現(xiàn),構(gòu)件可以有多種實(shí)現(xiàn)實(shí)例,例如輸出調(diào)度構(gòu)件,可以有公平隊(duì)列、優(yōu)先級(jí)調(diào)度和先進(jìn)先出等多種調(diào)度構(gòu)件實(shí)例。構(gòu)件庫(kù)用于存儲(chǔ)多種按標(biāo)準(zhǔn)接口開發(fā)的電路及程序構(gòu)件實(shí)例,需要注意的是,同一構(gòu)件可以有一個(gè)或多個(gè)電路或程序構(gòu)件實(shí)例。為打破傳統(tǒng)路由平臺(tái)封閉性束縛,可重構(gòu)路由器為程序/電路構(gòu)件制定了相應(yīng)的標(biāo)準(zhǔn)化接口,不同構(gòu)件實(shí)例只需滿足標(biāo)準(zhǔn)化接口要求,即可納入構(gòu)件庫(kù)管理,從而有效支持第三方用戶程序/電路構(gòu)件的動(dòng)態(tài)加載、安裝、升級(jí)及卸載功能。
圖2 報(bào)文轉(zhuǎn)發(fā)引擎構(gòu)件重構(gòu)模型
業(yè)務(wù)構(gòu)件選擇用于根據(jù)系統(tǒng)功能性能需求及約束,確定任務(wù)圖中各節(jié)點(diǎn)對(duì)應(yīng)的電路/程序構(gòu)件實(shí)例。構(gòu)件運(yùn)行環(huán)境為構(gòu)件實(shí)例在可重構(gòu)路由轉(zhuǎn)發(fā)引擎中的運(yùn)行提供標(biāo)準(zhǔn)接口和運(yùn)行所需資源。為支持程序及電路功能的動(dòng)態(tài)加載和替換升級(jí),可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎相應(yīng)提供2種構(gòu)件運(yùn)行環(huán)境,即程序構(gòu)件運(yùn)行環(huán)境及電路構(gòu)件運(yùn)行環(huán)境。可重構(gòu)路由器報(bào)文處理能力生成基于構(gòu)件實(shí)例到構(gòu)件運(yùn)行環(huán)境的有效映射,構(gòu)件映射方案必須滿足以下約束:
CR1(資源約束):用于構(gòu)件到構(gòu)件運(yùn)行環(huán)境的映射的邏輯/存儲(chǔ)資源不得超過(guò)該構(gòu)件運(yùn)行環(huán)境剩余可用資源;
CR2(功能約束):構(gòu)件到構(gòu)件運(yùn)行環(huán)境的映射必須匹配構(gòu)件運(yùn)行環(huán)境功能規(guī)范要求,例如流量控制構(gòu)件不可映射到網(wǎng)絡(luò)處理器加/解密處理引擎;
CR3(相關(guān)性約束):對(duì)于任意2個(gè)構(gòu)件,若它們有直接或間接的數(shù)據(jù)控制通道連接,則僅可映射到同一運(yùn)行環(huán)境或具有同向數(shù)據(jù)控制通道的不同運(yùn)行環(huán)境中。
滿足上述約束的映射方案稱為可行映射,不可行映射的性能及資源消耗信息則可以用于反饋調(diào)整業(yè)務(wù)構(gòu)件實(shí)例的選擇,以實(shí)現(xiàn)構(gòu)件系統(tǒng)的性能迭代調(diào)優(yōu)。
報(bào)文轉(zhuǎn)發(fā)引擎重構(gòu)模型中,程序/電路構(gòu)件運(yùn)行環(huán)境是承載網(wǎng)絡(luò)處理構(gòu)件化任務(wù)實(shí)現(xiàn)的核心,除應(yīng)為報(bào)文轉(zhuǎn)發(fā)等業(yè)務(wù)處理提供資源和性能優(yōu)化支撐外,還應(yīng)提供足夠的靈活性以支持多樣化構(gòu)件的動(dòng)態(tài)加載、升級(jí)和部署,滿足可重構(gòu)路由器功能及性能的時(shí)空性要求。
針對(duì)上述需求,構(gòu)件運(yùn)行環(huán)境采用面向網(wǎng)絡(luò)處理特定業(yè)務(wù)優(yōu)化設(shè)計(jì)的網(wǎng)絡(luò)處理器和具有快速電路可重構(gòu)能力的FPGA相結(jié)合的方式構(gòu)建。其中,基于馮·諾依曼模型的NP線程具有強(qiáng)大的控制流處理能力,較適合非線性構(gòu)件(帶有反饋回路的)實(shí)現(xiàn),而其并發(fā)處理能力受限于線程數(shù)目,內(nèi)部固化的硬件加速器則僅限定于特定業(yè)務(wù)構(gòu)件的加速處理。FPGA處理引擎(協(xié)處理器)具有較強(qiáng)的業(yè)務(wù)并行處理及可重構(gòu)能力,適合線性構(gòu)件實(shí)現(xiàn),而其對(duì)構(gòu)件功能的支撐則受限于內(nèi)部邏輯及存儲(chǔ)資源。
為有效滿足多樣化程序及電路構(gòu)件環(huán)境在功能、性能以及可重構(gòu)等方面的需求,將NP與FPGA有機(jī)結(jié)合為構(gòu)件功能提供優(yōu)化的運(yùn)行環(huán)境。圖3給出了基于NP和FPGA器件實(shí)現(xiàn)可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎構(gòu)件運(yùn)行環(huán)境的2種設(shè)計(jì)選擇。其中,程序構(gòu)件運(yùn)行環(huán)境主要包括NP中多核線程池;而電路構(gòu)件運(yùn)行環(huán)境則主要由NP中固化的硬件加速部件(HA, hardware accelerator)和可重構(gòu)FPGA器件等構(gòu)成。
傳統(tǒng)Look-Aside模式[15,16]將FPGA作為從設(shè)備旁路掛載在NP上,輸入報(bào)文進(jìn)入NP后被分配到空閑線程處理,對(duì)應(yīng)線程采用 Run-to-Complete方式負(fù)責(zé)報(bào)文的大部分處理任務(wù)。在處理過(guò)程中,對(duì)于需要加速的特定任務(wù),相應(yīng)線程調(diào)用內(nèi)部集成的硬件加速器(HA)或者外部協(xié)處理器完成。
基于FPGA實(shí)現(xiàn)的外部協(xié)處理器可以根據(jù)變化的任務(wù)功能進(jìn)行重構(gòu),有效支持多樣化業(yè)務(wù)的演化和部署。然而,Look-Aside模式下(圖3(a)),實(shí)現(xiàn)協(xié)處理的可重構(gòu)FPGA與網(wǎng)絡(luò)處理器間的控制交互及數(shù)據(jù)傳遞開銷嚴(yán)重阻礙了報(bào)文處理性能的提升。雖然網(wǎng)絡(luò)處理器論壇(NPF)專門針對(duì)該模式制定了高速LA-1接口標(biāo)準(zhǔn)[17],實(shí)際性能測(cè)試結(jié)果反映Look-Aside模式訪問(wèn)延遲等關(guān)鍵性能指標(biāo)依然難以滿足高速報(bào)文處理需求。本文基于典型的 Netlogic XLR網(wǎng)絡(luò)處理器[18],采用6核多線程實(shí)現(xiàn)基于LA-1接口進(jìn)行32bit TCAM查表報(bào)文轉(zhuǎn)發(fā)處理,報(bào)文轉(zhuǎn)發(fā)率最高僅為 12.42Mbit/s,與不采用 TCAM 查表的報(bào)文轉(zhuǎn)發(fā)性能相比,降低約26%。
圖3 構(gòu)件運(yùn)行環(huán)境設(shè)計(jì)模式
針對(duì)傳統(tǒng)Look-Aside模式存在的問(wèn)題,本文提出了一種基于Pass-Through模式的可重構(gòu)構(gòu)件運(yùn)行環(huán)境。如圖 3(b)所示,Pass-Through模式將 FPGA處理引擎引入報(bào)文處理數(shù)據(jù)通路,可有效避免程序構(gòu)件與可重構(gòu)電路構(gòu)件間的控制及數(shù)據(jù)交互開銷,有效提升網(wǎng)絡(luò)業(yè)務(wù)應(yīng)用處理性能。與Look-Aside不同,Pass-Through模式通過(guò)提供重構(gòu)管理接口,可支持多樣化構(gòu)件到構(gòu)件運(yùn)行環(huán)境的動(dòng)態(tài)映射,實(shí)現(xiàn)系統(tǒng)功能及性能按需重構(gòu)。此外,Pass-Through模式還具有以下優(yōu)勢(shì)。
1) 網(wǎng)絡(luò)業(yè)務(wù)構(gòu)件優(yōu)化映射:通過(guò)在數(shù)據(jù)通路引入FPGA可重構(gòu)邏輯處理能力,擴(kuò)展了業(yè)務(wù)構(gòu)件優(yōu)化映射空間,可有效支撐程序/電路構(gòu)件到相應(yīng)構(gòu)件運(yùn)行環(huán)境的優(yōu)化映射,支持具有時(shí)空性的業(yè)務(wù)構(gòu)件動(dòng)態(tài)重構(gòu)。
2) 支持交換網(wǎng)絡(luò)拓?fù)鋭?dòng)態(tài)配置:位于輸出端FPGA處理引擎的集成可以有效支持交換網(wǎng)絡(luò)拓?fù)鋭?dòng)態(tài)可配置。利用 FPGA處理引擎的邏輯可重構(gòu)能力,可以配置線卡交換單元中交換開關(guān)的交換方式,將交換網(wǎng)絡(luò)配置成冗余或負(fù)載均衡等工作模式。此外,還可以有效實(shí)現(xiàn)交換網(wǎng)絡(luò)吞吐率的動(dòng)態(tài)可調(diào)整。
3) 解耦NP網(wǎng)絡(luò)及交換接口:Pass-Through模式下,F(xiàn)PGA處理引擎實(shí)現(xiàn)了NP與網(wǎng)絡(luò)接口及交換單元接口的解耦,使系統(tǒng)可靈活支持豐富的網(wǎng)絡(luò)接口以及交換接口類型,F(xiàn)PGA提供的可重構(gòu)能力則進(jìn)一步為構(gòu)件運(yùn)行環(huán)境支持新型網(wǎng)絡(luò)及交換接口邏輯提供了可行性。
可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎基于Pass-Through模型設(shè)計(jì)實(shí)現(xiàn),主要由輸入/輸出控制FPGA(Altera公司Stratix II GX EP2SGX60EF1152C4器件)、2片高性能多核網(wǎng)絡(luò)處理器 XLR732及其配套外圍器件、QDR接口TCAM以及管理配置EPLD等部件組成,為程序/電路構(gòu)件提供靈活的可重構(gòu)運(yùn)行環(huán)境?;谏鲜鲶w系結(jié)構(gòu)實(shí)現(xiàn)的單引擎的路由轉(zhuǎn)發(fā)能力可達(dá)20Gbit/s,相應(yīng)實(shí)現(xiàn)框圖如圖4所示。
多核 XLR網(wǎng)絡(luò)處理器是報(bào)文轉(zhuǎn)發(fā)引擎的核心,基于同時(shí)多線程的高性能處理器核為報(bào)文轉(zhuǎn)發(fā)功能提供了強(qiáng)大的程序構(gòu)件運(yùn)行環(huán)境。NP中集成或外置的多樣化硬件加速部件(如加解密、壓縮以及查表等),則可以有效實(shí)現(xiàn)功能相對(duì)穩(wěn)定的特定電路構(gòu)件的有效映射和加速。QDR接口TCAM是NP查表加速部件,用于增強(qiáng)報(bào)文轉(zhuǎn)發(fā)引擎查表性能。ICF連接NP與網(wǎng)絡(luò)接口卡,ECF則實(shí)現(xiàn)XLR與核心交換單元的連接。I/O總線控制EPLD主要實(shí)現(xiàn)NP的I/O總線和局部總線功能,支持NP的BootFlash管理、復(fù)位、啟動(dòng)以及對(duì)其他器件的管理。
報(bào)文轉(zhuǎn)發(fā)引擎數(shù)據(jù)通路用于實(shí)現(xiàn)報(bào)文路由查表、轉(zhuǎn)發(fā)決策和QoS控制等功能。以輸入側(cè)為例,數(shù)據(jù)通路對(duì)于報(bào)文的基本處理流程如下。
網(wǎng)絡(luò)接口輸入報(bào)文經(jīng)過(guò)ICF的預(yù)處理后,將根據(jù)預(yù)設(shè)規(guī)則分派到特定NP上進(jìn)行處理,該NP調(diào)度線程池中空閑線程負(fù)責(zé)輸入報(bào)文的處理工作;在需要時(shí),處理線程調(diào)用相應(yīng)硬件加速器HA對(duì)報(bào)文處理任務(wù)進(jìn)行加速;報(bào)文處理完成后,NP將報(bào)文發(fā)送到ECF進(jìn)行報(bào)文輸出相關(guān)處理工作,通過(guò)交換單元接口發(fā)送到交換矩陣轉(zhuǎn)發(fā)。
為支持上述報(bào)文處理流程,ICF預(yù)置基本的網(wǎng)絡(luò)接口邏輯和報(bào)文分派邏輯,ECF則預(yù)置輸出流量處理邏輯以及交換接口邏輯。除基本預(yù)置處理邏輯外,ICF和ECF剩余可用的邏輯及存儲(chǔ)資源用于實(shí)現(xiàn)可重構(gòu)電路構(gòu)件運(yùn)行環(huán)境,為電路構(gòu)件加載、升級(jí)或重構(gòu)提供相應(yīng)資源。
可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎的控制通路主要由吉比特以太網(wǎng)實(shí)現(xiàn),如圖4所示,XLR 0和XLR 1分別通過(guò)RGMII接口與ICF連接,ICF通過(guò)背板基于吉比特SerDes接口連接主/備份控制CPU,實(shí)現(xiàn)主/備控制CPU與NP間控制信息交互。
根據(jù)構(gòu)件類型的不同,重構(gòu)管理控制也分為程序重構(gòu)管理控制和電路重構(gòu)管理控制。其中,程序重構(gòu)主要基于NP軟件代碼的更新與加載,實(shí)現(xiàn)較簡(jiǎn)單,而基于FPGA的電路重構(gòu)的控制實(shí)現(xiàn)則相對(duì)復(fù)雜。
可重構(gòu)報(bào)文轉(zhuǎn)發(fā)引擎電路重構(gòu)的實(shí)現(xiàn)結(jié)構(gòu)如圖5所示,由重構(gòu)代理、配置引擎、配置文件存儲(chǔ)器和待配置功能部件(即ICF/ECF FPGA)4部分組成。
在本路由轉(zhuǎn)發(fā)引擎中,重構(gòu)代理由網(wǎng)絡(luò)處理器XLR的一個(gè)線程實(shí)現(xiàn),主要完成配置命令解析、配置文件的讀/寫、更新以及啟動(dòng)配置;配置引擎基于EPLD器件實(shí)現(xiàn),該器件通過(guò)局部總線與XLR連接,主要完成 FPGA的配置控制以及配置文件存儲(chǔ)器(flash)的讀寫控制;配置文件存儲(chǔ)器為非易失性flash,用于存儲(chǔ)FPGA的重構(gòu)配置文件。
在電路重構(gòu)中,用戶首先根據(jù)應(yīng)用需求從構(gòu)件庫(kù)選擇對(duì)應(yīng)的電路構(gòu)件,針對(duì)FPGA類型生成并配置比特流文件。重構(gòu)代理根據(jù)用戶命令調(diào)度選擇對(duì)應(yīng)構(gòu)件的配置比特流文件,通過(guò)FPGA配置引擎加載該配置文件,從而實(shí)現(xiàn)FPGA的靜態(tài)重構(gòu)。
需要注意的是,在系統(tǒng)加電運(yùn)行過(guò)程中,通過(guò)配置控制邏輯主動(dòng)加載FPGA的配置文件,需要中斷系統(tǒng)運(yùn)行,僅可實(shí)現(xiàn)FPGA靜態(tài)重構(gòu)。在需要系統(tǒng)在線動(dòng)態(tài)重構(gòu)的情況下,可選擇采用Xilinx 或Altera等公司支持部分可重構(gòu)功能的高端 FPGA實(shí)現(xiàn) ICF和ECF,從而在不中斷系統(tǒng)運(yùn)行的前提下實(shí)現(xiàn)電路構(gòu)件的運(yùn)行時(shí)更新,提供更高靈活性和重構(gòu)性能。
在部分動(dòng)態(tài)可重構(gòu)中,重構(gòu)管理控制方式與靜態(tài)重構(gòu)類似。前期,用戶需要首先按照模塊化設(shè)計(jì)方法,將整個(gè)設(shè)計(jì)分解為固定部分和重構(gòu)部分。然后分別對(duì)固定模塊和可重構(gòu)模塊進(jìn)行整體設(shè)計(jì)綜合,根據(jù)應(yīng)用需求生成一個(gè)缺省全局配置比特流文件,同時(shí)生成所有可重構(gòu)模塊的部分配置比特流文件。在初始配置過(guò)程中,重構(gòu)代理選擇加載FPGA缺省全局配置文件,在動(dòng)態(tài)部分可重構(gòu)過(guò)程中,可重構(gòu)代理根據(jù)用戶命令選擇加載對(duì)應(yīng)的部分可重構(gòu)模塊配置文件。重構(gòu)控制機(jī)制具體實(shí)現(xiàn)可參見文獻(xiàn)[19]。
圖4 報(bào)文轉(zhuǎn)發(fā)引擎實(shí)現(xiàn)
圖5 電路重構(gòu)控制機(jī)制實(shí)現(xiàn)
圖6 業(yè)務(wù)流量識(shí)別與控制組件
業(yè)務(wù)流量識(shí)別與控制組件是863 “開放式構(gòu)件化通用路由器研制” 課題中用于支撐電信網(wǎng)、廣電網(wǎng)以及互聯(lián)網(wǎng)三網(wǎng)融合傳輸業(yè)務(wù)及其演進(jìn)的關(guān)鍵部件。業(yè)務(wù)流量識(shí)別與控制組件用于通過(guò)深度報(bào)文檢測(cè)(DPI)技術(shù)識(shí)別廣電TS over UDP、電信RTP over UDP等多種業(yè)務(wù),并將不同的業(yè)務(wù)映射到不同優(yōu)先級(jí)上,實(shí)現(xiàn)面向業(yè)務(wù)的流量管理和服務(wù)質(zhì)量保證。課題基于可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎構(gòu)建了支持多種業(yè)務(wù)識(shí)別構(gòu)件的運(yùn)行驗(yàn)證環(huán)境,在此基礎(chǔ)上完成相應(yīng)的時(shí)序仿真、功能驗(yàn)證和性能評(píng)估。
如圖6所示,業(yè)務(wù)流量識(shí)別與控制組件主要包括預(yù)處理構(gòu)件、業(yè)務(wù)識(shí)別構(gòu)件、識(shí)別結(jié)果控制構(gòu)件、轉(zhuǎn)發(fā)業(yè)務(wù)構(gòu)件和流量控制構(gòu)件等。
1) 預(yù)處理構(gòu)件:主要負(fù)責(zé)從網(wǎng)絡(luò)接口接收輸入報(bào)文流、進(jìn)行報(bào)文緩沖、鏈路層識(shí)別及歸一化處理等工作。具體包括:識(shí)別以太網(wǎng)或 POS封裝的MPLS、IPv4及IPv6報(bào)文;剝離鏈路層頭部,IP報(bào)文送識(shí)別構(gòu)件,非IP報(bào)文對(duì)應(yīng)的報(bào)文處理控制信號(hào)直接送識(shí)別結(jié)果控制模塊。
2) 業(yè)務(wù)識(shí)別構(gòu)件:進(jìn)行廣電TS over UDP、電信RTP over UDP、IPv4、IPv6等業(yè)務(wù)協(xié)議識(shí)別。各構(gòu)件同時(shí)接收?qǐng)?bào)文數(shù)據(jù),并行進(jìn)行協(xié)議業(yè)務(wù)識(shí)別工作,匹配結(jié)果同時(shí)送識(shí)別結(jié)果控制模塊。
3) 識(shí)別結(jié)果控制構(gòu)件:負(fù)責(zé)接收預(yù)處理模塊輸出的報(bào)文控制信息及各識(shí)別構(gòu)件的匹配結(jié)果信息,將識(shí)別結(jié)果與報(bào)文統(tǒng)一送NP轉(zhuǎn)發(fā)處理線程。
4) 轉(zhuǎn)發(fā)業(yè)務(wù)構(gòu)件:負(fù)責(zé)根據(jù)輸入報(bào)文和識(shí)別結(jié)果構(gòu)建查表關(guān)鍵字,進(jìn)行路由查表,并將查表轉(zhuǎn)發(fā)結(jié)果與報(bào)文一起發(fā)送到流量控制構(gòu)件。
5) 流量控制構(gòu)件:采用基于令牌桶的流量管理機(jī)制,根據(jù)預(yù)設(shè)的流量?jī)?yōu)先級(jí)控制策略和報(bào)文識(shí)別結(jié)果,確定報(bào)文的控制處理規(guī)則。
業(yè)務(wù)流量識(shí)別與控制組件的預(yù)處理、業(yè)務(wù)識(shí)別以及識(shí)別結(jié)果控制構(gòu)件映射到ICF構(gòu)件運(yùn)行環(huán)境,轉(zhuǎn)發(fā)業(yè)務(wù)構(gòu)件分別映射到 NP程序構(gòu)件運(yùn)行環(huán)境中多個(gè)線程,流量控制構(gòu)件映射到ECF構(gòu)件運(yùn)行環(huán)境。
本文采用基于Spirent AX/4000測(cè)試儀,對(duì)業(yè)務(wù)流量識(shí)別與控制組件的性能進(jìn)行了測(cè)試。測(cè)試儀TX端發(fā)送測(cè)試流量 10Gbit/s至報(bào)文轉(zhuǎn)發(fā)引擎,報(bào)文轉(zhuǎn)發(fā)引擎實(shí)現(xiàn)業(yè)務(wù)流量識(shí)別,并按設(shè)定流量進(jìn)行速率控制,轉(zhuǎn)發(fā)到測(cè)試儀的輸入RX端口。表1給出了對(duì)廣電業(yè)務(wù)進(jìn)行流量識(shí)別控制的性能測(cè)試結(jié)果。
表1 業(yè)務(wù)流量識(shí)別與控制組件性能
由表可知,該功能組件可以有效映射到報(bào)文轉(zhuǎn)發(fā)引擎程序/電路構(gòu)件環(huán)境,實(shí)現(xiàn)不同業(yè)務(wù)流量高效識(shí)別,以及基于設(shè)定流量速率的精確流量控制,誤差可控制在3%以內(nèi)。
表2給出了ICF中實(shí)現(xiàn)主要業(yè)務(wù)識(shí)別構(gòu)件的資源占用情況。
基于上述典型應(yīng)用,本文對(duì)可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎在多種條件下的轉(zhuǎn)發(fā)性能進(jìn)行測(cè)試。測(cè)試條件包括如下。
1) 單板轉(zhuǎn)發(fā)性能測(cè)試:主要測(cè)試報(bào)文轉(zhuǎn)發(fā)引擎單板全10GE端口全雙工報(bào)文轉(zhuǎn)發(fā)性能;
表2 業(yè)務(wù)識(shí)別構(gòu)件資源占用情況
2) 跨板性能測(cè)試:主要測(cè)試報(bào)文轉(zhuǎn)發(fā)引擎板間全雙工報(bào)文轉(zhuǎn)發(fā)性能;
3) 大路由表性能測(cè)試:主要測(cè)試報(bào)文轉(zhuǎn)發(fā)引擎在100K FIB表項(xiàng)下全雙工報(bào)文轉(zhuǎn)發(fā)性能;
4) 路由振蕩條件性能測(cè)試:主要測(cè)試報(bào)文轉(zhuǎn)發(fā)引擎在100K FIB表項(xiàng)、10K路由振蕩下全雙工報(bào)文轉(zhuǎn)發(fā)性能。
圖7給出了上述多種測(cè)試條件下(測(cè)試時(shí)間為 30s)報(bào)文轉(zhuǎn)發(fā)引擎轉(zhuǎn)發(fā)延遲性能測(cè)試結(jié)果。由圖可知,報(bào)文轉(zhuǎn)發(fā)延遲基本保持在微秒級(jí)別,與報(bào)文長(zhǎng)度不存在線性關(guān)系。在路由震蕩條件下,報(bào)文轉(zhuǎn)發(fā)延遲相對(duì)較大,原因在于:一方面路由表頻繁更新會(huì)造成轉(zhuǎn)發(fā)線程對(duì)路由表的訪問(wèn)沖突增多、延遲增大;另一方面,路由表震蕩導(dǎo)致的計(jì)算開銷也會(huì)對(duì)網(wǎng)絡(luò)處理器線程處理性能帶來(lái)負(fù)面影響。
圖7 報(bào)文轉(zhuǎn)發(fā)引擎性能測(cè)試結(jié)果
此外,在上述測(cè)試條件下測(cè)試結(jié)果表明,可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎對(duì)于不同報(bào)文長(zhǎng)度都可獲得 100%的轉(zhuǎn)發(fā)吞吐率,即保證報(bào)文線速轉(zhuǎn)發(fā),由此可見,可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎能夠在提供構(gòu)件化可重構(gòu)能力的基礎(chǔ)上,有效實(shí)現(xiàn)報(bào)文線速轉(zhuǎn)發(fā)和低延遲處理,實(shí)現(xiàn)性能與靈活性的良好折中。
為支持面向三網(wǎng)融合的多種新型網(wǎng)絡(luò)體制和業(yè)務(wù)體系的實(shí)驗(yàn)和驗(yàn)證,并為各種先進(jìn)網(wǎng)絡(luò)架構(gòu)及網(wǎng)絡(luò)新技術(shù)研究提供有力支撐平臺(tái),“新一代高可信網(wǎng)絡(luò)”項(xiàng)目組于 2011年在上海構(gòu)建了一個(gè)可重構(gòu)柔性實(shí)驗(yàn)床。本文研制的可重構(gòu)路由器系統(tǒng)與其他合作單位的研制設(shè)備一起,在該實(shí)驗(yàn)床上進(jìn)行了IPv4、IPv6、廣電網(wǎng)絡(luò)、電信網(wǎng)絡(luò)等多種網(wǎng)絡(luò)場(chǎng)景下,分組業(yè)務(wù)承載能力、服務(wù)承載重構(gòu)能力、網(wǎng)絡(luò)重構(gòu)能力以及網(wǎng)絡(luò)傳輸性能等方面的測(cè)試。測(cè)試結(jié)果表明,該可重構(gòu)路由器系統(tǒng),按照平臺(tái)化支撐下的構(gòu)件化實(shí)現(xiàn)思想,基于數(shù)據(jù)/控制平面分離的原則,具有開放性、構(gòu)件化和可重構(gòu)等特點(diǎn),其基于Pass-Through模式設(shè)計(jì)實(shí)現(xiàn)的軟硬件協(xié)同的異構(gòu)可重構(gòu)路由轉(zhuǎn)發(fā)引擎可以在保證高性能報(bào)文處理的前提下,獲得高度靈活性,能有效支持新型協(xié)議轉(zhuǎn)發(fā)模塊的快速開發(fā)及部署,有效支撐可重構(gòu)柔性實(shí)驗(yàn)床的各種實(shí)驗(yàn)。
隨著多樣化網(wǎng)絡(luò)業(yè)務(wù)和應(yīng)用的迅猛發(fā)展,路由器處理功能的時(shí)空變化特性更趨顯著,傳統(tǒng)基于網(wǎng)絡(luò)處理器實(shí)現(xiàn)的路由轉(zhuǎn)發(fā)引擎難以有效滿足程序/電路功能靈活部署和重構(gòu)。為此,本文提出了可有效支持網(wǎng)絡(luò)業(yè)務(wù)重構(gòu)的路由轉(zhuǎn)發(fā)引擎構(gòu)件重構(gòu)模型,在此基礎(chǔ)上,設(shè)計(jì)了基于Pass-Through模式的程序/電路構(gòu)件運(yùn)行環(huán)境,通過(guò)將可重構(gòu)FPGA器件引入到報(bào)文數(shù)據(jù)通路處理,有效降低程序/電路構(gòu)件間控制及數(shù)據(jù)開銷,為構(gòu)件映射提供更廣闊的設(shè)計(jì)選擇空間。系統(tǒng)實(shí)現(xiàn)和測(cè)試結(jié)果表明,可重構(gòu)報(bào)文轉(zhuǎn)發(fā)引擎可以在滿足報(bào)文高速處理的前提下,為網(wǎng)絡(luò)業(yè)務(wù)提供優(yōu)化映射環(huán)境,滿足多樣化業(yè)務(wù)對(duì)性能和靈活性的要求。下一步工作主要研究可重構(gòu)路由器報(bào)文轉(zhuǎn)發(fā)引擎對(duì)網(wǎng)絡(luò)虛擬化以及OpenFlow技術(shù)的支持。
[1] 李玉峰, 邱菡, 蘭巨龍. 可重構(gòu)路由器研究的現(xiàn)狀與展望[J]. 中國(guó)工程科學(xué), 2008, 10(7): 82-89.LI Y F, QIU H, LAN J L. Status quo and outlook of reconfigurable research[J]. Engneering Science, 2008, 10(7):82-89.
[2] HU C C, WU C, X W, et al. On the design of green reconfigurable router toward energy efficient internet[J]. IEEE Communications Magazine, 2011, 49(6):83-87.
[3] 龔正虎, 傅彬,盧澤新. 軟件集群路由器體系結(jié)構(gòu)研究[J]. 國(guó)防科學(xué)技術(shù)大學(xué)學(xué)報(bào), 2006, 28(3):40-43.GONG Z H, FU B, LU Z X. Research on the architecture of software based cluster routers[J]. Journal of National University of Dependence Technology, 2006, 28(3): 40-43.
[4] LEE D C, MIDKIFF S F. Reconfigurable routers: a new paradigm for switching device architecture[EB/OL]. http://www.ccm.ece.vt.edu/papers/, 1998.
[5] KOHLER E, MORRIS R, CHEN B, et al. The click modular router[A].Proceedings of the ACM Symposium on Operating Systems Principles(SOSP)[C]. 1999.217-231.
[6] DAN D, ZUBIN D, GURU P, et al. Router plugins: a software architecture for next generation routers[A]. Proc of ACM SIGCOMM[C].1998. 229-240.
[7] HAN S, JANG K, PARK K, et al. Packet shader: a GPU-accelerated software router[A]. ACM SIGCOMM[C]. New Delhi, India, 2010.195-206.
[8] LEE D, HARPER S, ATHANAS P, et al. A stream-based reconfigurable router prototype[A]. IEEE International Conference on Communications[C]. Vancouver, BC, 1999. 581-585.
[9] LOCKWOOD J, NAUFEL N, TURNER J, et al. Reprogrammable network packet processing on the field programmable port extender(FPX)[A]. ACM International Symposium on Field Programmable Gate Arrays (FPGA)[C]. Monterey, CA, USA, 2001. 87-93.
[10] NAOUS J, GIBB G, BOLOUKI S, et al. NetFPGA: reusable router architecture for experimental research[A]. Proceedings of the ACM Workshop on Programmable Routers for Extensible Services of Tomorrow (PRESTO ’08)[C]. New York, NY, USA, 2008. 1-7.
[11] ANWER B, TARIQ M, MOTIWALA M, et al. Switch blade: a platform for rapid deployment of network protocols on programmable hardware[A]. Proceedings of the ACM SIGCOMM 2010[C]. New Delhi, India, 2010. 183-194.
[12] KURT K, SHARAD M, RICHARD A. From ASIC to ASIP: the next design discontinuity[A]. International Conference on Computer Design[C]. 2002. 84-90.
[13] LIU D, HUA B, HU X, et al. High-performance packet classification algorithm for many-core and multithreaded network processor[A].Proc of the 6th IEEE International Conference on CASES[C]. 2006.
[14] FRANKE H, XENIDIS J, BASSO C, et al. Introduction to the wire-speed processor and architecture[J]. IBM Journal of Research and Development, 2010, 54(1): 27-37.
[15] SEDA O, MEMIK G, WILLIAM H, et al. Design and analysis of a layer seven network processor accelerator using reconfigurable logic[A]. IEEE Symposium on Field-programmable Custom Computing Machines[C]. Napa Valley, CA, 2002.
[16] ALBRECHT C, FOAG J, KOCH R, et al. DynaCORE – a dynamically reconfigurable coprocessor architecture for network processors[A]. Proc of the Euromicro Conference on Parallel, Distributed and Network-centric Processing[C]. 2006.
[17] BHUGRA H, CHAPMAN D. Look-Aside (LA-1) Interface Implementation Agreement[S]. 2004.
[18] NetLogic Corp. XLR 732 datsheet [EB/OL]. http://www.netlogicmicro.com/ Products/MultiCore/XLR.asp.
[19] 陳一驕, 盧澤新, 孫志剛. 基于 FPGA 的可重構(gòu)硬件實(shí)現(xiàn)技術(shù)研究[J].信息工程大學(xué)學(xué)報(bào), 2009, 10(1):94-97.CHEN Y J, LU Z X, SUN Z G. Implementation research of reconfigurable hardware based-on FPGA[J]. Journal of Information Engineering University, 2009, 10(1): 94-97.