<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 汽車(chē)電子 > 設計應用 > 在FPGA中置入可配置的32位處理器增加設計靈活度

在FPGA中置入可配置的32位處理器增加設計靈活度

——
作者: 時(shí)間:2008-01-06 來(lái)源: 收藏

  系統與桌面PC結構非常不同,但其底層技術(shù)發(fā)展卻是一樣的,而且遵循著(zhù)類(lèi)似發(fā)展趨勢。當桌面PC轉向64位架構來(lái)滿(mǎn)足不斷增長(cháng)的存儲器要求時(shí),系統也由于同樣的原因快速轉向32位。桌面/服務(wù)器計算市場(chǎng)主要是圍繞x86架構,大多數創(chuàng )新和差異都在系統級,如雙核、四核或多核中央處理架構、集成圖像單元和存儲器控制器等等。同樣,系統則主要圍繞簡(jiǎn)單的32位RISC,多核架構、集成外設以及可配置處理等系統級發(fā)展,使得設計人員能夠快速適應不斷變化的應用要求。

  根據iSuppli的研究報告,2007年32位微控制器(MCU)市場(chǎng)將超過(guò)8位MCU市場(chǎng)。如圖1所示,32位MCU市場(chǎng)的增長(cháng)速度超過(guò)了半導體市場(chǎng)其它部分的增長(cháng)速度,而8位MCU市場(chǎng)的份額過(guò)去幾年時(shí)間里則有所下降。

  這一趨勢的主要推動(dòng)力是嵌入式系統中軟件內容和復雜性的不斷增加,因此直接產(chǎn)生的后果是需要更寬的存儲器總線(xiàn)(32位)來(lái)滿(mǎn)足軟件程序所使用的代碼和數據要求。與傳統微處理器不同,32位處理器不需要分段等存儲器管理技巧就可以處理更大的存儲器空間,因此使編程更容易。8位MCU必須采用難學(xué)難用的匯編語(yǔ)言來(lái)滿(mǎn)足小存儲器空間限制(少于32K字節),而許多32位嵌入式應用則可以利用C/C++來(lái)編程,從而提高了嵌入式軟件開(kāi)發(fā)人員生產(chǎn)力。更為重要的是,越來(lái)越多的操作系統(實(shí)時(shí)和非實(shí)時(shí))都提供現成的驅動(dòng)程序和軟件庫,從而使軟件開(kāi)發(fā)人員能夠集中于應用本身的開(kāi)發(fā)。

  集成降低成本

  在摩爾定律的指引下,越來(lái)越細的硅工藝線(xiàn)寬使得32位嵌入式解決方案的成本不斷降低,從而可以滿(mǎn)足更多的應用對價(jià)格的要求。此外,集成外設和片上存儲器進(jìn)一步降低了元器件和總體材料清單成本。通過(guò)集成針對手機和游戲機等垂直應用而優(yōu)化的外設,許多器件的價(jià)格大大降低,直接推動(dòng)了市場(chǎng)增長(cháng)。

  價(jià)格壓力還導致只能在這些系統中集成一組固定的外設,因此通常的外設組合是面向大批量應用的。然而,不可能有適用于所有應用的萬(wàn)能器件,因此許多小批量、中等規模甚至大批量應用都無(wú)法直接利用成品集成解決方案。其結果是設計人員必須采用額外的芯片來(lái)擴展外設、分流處理器的負擔,或增加膠合邏輯。這也是可配置處理解決方案產(chǎn)生的原因。

  可配置32位處理

  根據Gartner Dataquest的報告,如圖2所示,基于嵌入式處理方案的應用正在增長(cháng),到2010年,約40%的設計將包括嵌入式處理器。因為能夠定制滿(mǎn)足特定應用或產(chǎn)品的要求,嵌入系統設計人員正在越來(lái)越多地采用基于的可配置處理解決方案。這一方法的主要優(yōu)點(diǎn)是可通過(guò)集成降低成本,同時(shí)還可實(shí)現產(chǎn)品在市場(chǎng)上的差異化。

  通過(guò)選擇同一FPGA系列中的不同器件,或者將設計重新適配到新的FPGA器件中,能夠針對更高性能、更低成本、或者不同的I/O標準進(jìn)行個(gè)性設計。這樣可以降低設計過(guò)時(shí)的風(fēng)險,從而保證設計是未來(lái)可用的。對于必須有長(cháng)使用壽命的產(chǎn)品(如汽車(chē)或工業(yè)應用),這是特別關(guān)鍵的一個(gè)因素。

  

32位MCU市場(chǎng)的增長(cháng)速度超過(guò)了其它類(lèi)型的MCU的增長(cháng)速度

  圖1:32位MCU市場(chǎng)的增長(cháng)速度超過(guò)了其它類(lèi)型的MCU的增長(cháng)速度。

{{分頁(yè)}}

  

基于FPGA嵌入式處理方案的應用正在增長(cháng)

  圖2:基于FPGA嵌入式處理方案的應用正在增長(cháng)。

  可配置處理系統的配置(或定制)的層面包括:

  處理器配置

  1. 乘法器、除法器、浮點(diǎn)單元以及其它。

  2. 指令或數據緩沖配置。

  3. 協(xié)處理器或硬件加速器。

  系統配置

  1. I/O外設選擇、定制、DMA選擇。

  2. 存儲器外設選擇、定制。

  應用配置

  1. RTOS選擇、定制。

  2. 應用庫/中間件定制。

  許多產(chǎn)品都包括需要某種形式網(wǎng)絡(luò )或通信接口的嵌入式系統。由于以太網(wǎng)成本低、幾乎無(wú)處不在,并且可以利用TCP/IP等互聯(lián)網(wǎng)協(xié)議連接互聯(lián)網(wǎng),因此以太網(wǎng)是目前在嵌入式產(chǎn)品中應用最廣泛的網(wǎng)絡(luò )接口之一。根據目標應用的不同,網(wǎng)絡(luò )子系統的要求變化也相當大。簡(jiǎn)單的遠程控制和監控應用只需要每秒數千比特的傳輸能力,而高端存儲或視頻應用則需要持續的千兆比特級的吞吐能力。

  為簡(jiǎn)單起見(jiàn),我們將使用TCP載荷吞吐能力做為性能比較的主要指標。表1列出了一些典型應用以及相應的TCP/IP載荷吞吐能力要求。

{{分頁(yè)}}

  表一:不同應用的網(wǎng)絡(luò )吞吐量要求

  

不同應用的網(wǎng)絡(luò

  可配置的嵌入式網(wǎng)絡(luò )

  基于FPGA的處理解決方案提供的強大靈活性允許您根據需要開(kāi)啟或禁止處理器、IP內核以及軟件平臺的高級功能,并且可以對許多獨立參數進(jìn)行精細調整,直到在軟件一級滿(mǎn)足應用的要求。此外,利用建模工具可以識別任何性能關(guān)鍵的軟件功能并將其分流至適當的硬件加速器或協(xié)處理器來(lái)完成。

  讓我們來(lái)分別看一下可利用IP內核滿(mǎn)足典型應用性能要求的三種以太網(wǎng)子系統的例子。每種設計具有不同的系統架構:包括處理器配置、以太網(wǎng)MAC IP配置以及存儲器接口。此外,這些例子還突出了可與這些硬件子系統配合使用的不同TCP/IP軟件協(xié)議棧。由于硬件構建模塊和軟件層都是可定制的,因此您可以根據應用的需要對這些系統進(jìn)行增減。

  簡(jiǎn)化以太網(wǎng)子系統

  對于遠程監視或控制應用中所需要的簡(jiǎn)單網(wǎng)絡(luò )接口來(lái)說(shuō),如圖3所示的最小化網(wǎng)絡(luò )子系統就足夠了。在此類(lèi)應用中,TCP/IP性能要求較低(<1Mbps),因此LwIP(簡(jiǎn)化版互聯(lián)網(wǎng)協(xié)議棧)這樣的小TCP/IP協(xié)議棧(不需要RTOS實(shí)時(shí)操作系統)就足夠了。

  

規模最小的以太網(wǎng)系統

  圖3:規模最小的以太網(wǎng)系統。

  這可以使用不間斷的以太網(wǎng)Lite IP在簡(jiǎn)單的查詢(xún)模式下實(shí)現。全部軟件,包括簡(jiǎn)單的應用層,可全部存儲在FPGA中的本地存儲器中。如圖3中所示,其它需要的I/O接口,RS-232 UART和GPIO,可以增加到基本子系統中。

{{分頁(yè)}}

  

典型的10/100以太網(wǎng)系統架構

  圖4:典型的10/100以太網(wǎng)系統架構。

  通過(guò)對圖3中的最小系統做一定的修改,可以實(shí)現更高TCP/IP吞吐能力(10-50Mbps),并轉向如圖4所示的更為典型的10/100以太網(wǎng)解決方案。主要的變化有:

  1. 為以太網(wǎng)MAC增加直接存儲器訪(fǎng)問(wèn)(DMA)引擎,實(shí)現中斷驅動(dòng);

  2. 為系統增加外部存儲器,為處理器增加緩存;

  3. 更復雜的TCP/IP棧,如Linux(Clinux)系統TCP/IP協(xié)議棧。

  對于需要100Mbps以上TCP/IP吞吐能力的應用,可以考慮硬IP或軟IP內核方式提供的三模式以太網(wǎng)MAC(圖5)。為獲得高端應用所需要的500Mbps以上的吞吐能力,需要像分散/匯聚DMA(SGDMA)等高級DMA技術(shù),以及包括數據重排引擎(DRE)和校驗和卸載(CSO)等FPGA硬件加速器技術(shù)。

  

千兆級以太網(wǎng)系統架構

  圖5:千兆級以太網(wǎng)系統架構。

{{分頁(yè)}}

  為滿(mǎn)足千兆以太網(wǎng)對更高數據吞吐率的需求,可能需要更高性能的嵌入式(硬)處理器或FPGA上實(shí)現的可定制軟處理器,以及更大的緩沖容量、如16Kbit指令和數據緩存。就軟件平臺來(lái)說(shuō),Linux、VxWorks、Integrity和QNX等軟件平臺中的高級TCP/IP棧支持諸如零拷貝和校驗和旁路等功能。

  包括硬件和軟件在內的許多因素都會(huì )影響到TCP性能,并進(jìn)而影響系統TCP吞吐能力。這些因素包括:

  1. 處理器,包括頻率、功能和緩存

  a. 頻率:TCP/IP協(xié)議通常需要將載荷從用戶(hù)緩存拷貝到協(xié)議??刂频木彺?,然后再將其拷貝到以太網(wǎng)MAC的FIFO中去。這些存儲器拷貝操作有些是以軟件方式完成的,因此需要處理器的處理周期。同時(shí)處理器還參與TCP校驗和的計算,計算過(guò)程中需要將整個(gè)數據包從存儲器讀出。更快的處理器配合更快的存儲器能在更短的時(shí)間內完成這些操作,從而可以保持較高的數據速率;

  b. 功能:TCP/IP協(xié)議棧需要對數據包的包頭和載荷進(jìn)行訪(fǎng)問(wèn)處理。做為包頭處理的一部分,典型的訪(fǎng)問(wèn)包括讀取包頭信息的特定位。因此每個(gè)數據包的處理過(guò)程都需要相當多的移位操作。此外在處理每個(gè)數據包時(shí)都需要進(jìn)行乘法操作。在可配置的處理器中,必須開(kāi)啟完成移位或乘法的指令才能獲得更高的性能;

  c. 緩存:數據包從以太網(wǎng)MAC被拷貝到存儲器中之后,將會(huì )通過(guò)TCP/IP協(xié)議棧的不同層。然后TCP/IP棧中的數據包處理代碼會(huì )被執行。將所有代碼和數據包讀到緩存中會(huì )大大提高處理器效率并提高以太網(wǎng)帶寬。

  2. 存儲器

  存儲器訪(fǎng)問(wèn)時(shí)間和延遲對于系統性能有巨大的影響。典型應用中,TCP/IP應用并不存儲在本地存儲器中,程序和數據存儲在外部存儲器中。存取數據和指令所花費的時(shí)間對于性能有很大影響。存儲器因素通常與緩存大小有關(guān)。提高指令和數據緩存大小有助于減輕外部存儲器延遲和存取時(shí)間所帶來(lái)的影響。

  3. 以太網(wǎng)MAC

  在FPGA中實(shí)現的以太網(wǎng)MAC外設提供了很大的靈活性,特別是在工作模式(無(wú)DMA與SGDMA)、數據包FIFO深度、DRE支持、CSO支持以及超大幀支持方面。每一項都會(huì )影響到MAC所需要的資源,以及其能夠從處理器分流的功能多少,從而對整體性能造成影響。

  4. TCP/IP協(xié)議棧

  靈活的優(yōu)化TCP/IP協(xié)議棧是影響系統性能的重要因素。對硬件CSO和零拷貝API(數據不需要從應用拷貝到協(xié)議棧緩存)以及可配置棧選項等TCP/IP棧功能的支持可幫助提高系統性能。

  5. 信息多少

  信息(應用數據)的大小是影響性能的另一個(gè)因素。隨著(zhù)信息減少,TCP/IP協(xié)議頭(如TCP、IP和以太網(wǎng)頭)的開(kāi)銷(xiāo)增加,從而會(huì )減小總體的數據載荷吞吐能力。

  大多數應用對于成本、性能和功能都有一組基本的需求。當為特定應用設計產(chǎn)品時(shí),設計人員必須在這些需求之間進(jìn)行正確的折衷,然而,為了適應市場(chǎng)條件,這些要求在產(chǎn)品生命周期內可能會(huì )發(fā)生變化。采用靈活可配置的平臺能夠在不改變設計平臺或供應商的情況下根據需要對這些要求進(jìn)行重新平衡。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

tcp/ip相關(guān)文章:tcp/ip是什么




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>