目前嵌入式系統開發要求包括快速上市、更長的產品週期、更低的設計成本與更多元的功能等,為設計工程師帶來嚴峻的新挑戰。若使用多晶片或軟體核心解決方案,雖然易於導入設計,但卻將面臨成本過高、設計彈性低與效能不佳的問題,因此促使整合ARM處理器核心與FPGA的SoC FPGA元件應運而生。
當今的嵌入式系統(Embedded System)開發人員面臨前所未有的挑戰。直到最近,大部分已實現的嵌入式系統還局限於需要大量軟體,而且功耗非常高的多晶片系統,或者昂貴的系統單晶片(SoC)特定應用積體電路(ASIC)。
但是,越來越多的設計團隊感受到市場壓力及資源限制的影響,因此基於安謀國際(ARM)的嵌入式處理器、現場可編程閘陣列(FPGA)、智慧財產權(IP)及設計工具所開發而成的SoC FPGA,愈來愈受到市場重視。SoC FPGA不但克服傳統方法的缺點,而且在嵌入式系統實現上,具有明顯的優勢。
ARM處理器應用廣泛
幾年前,處理器市場還是四分五裂。PowerPC、精簡指令集(RISC)、美普思(MIPS)、可擴充處理器架構(SPARC),以及很多其他平台都在競爭市場主導地位。但是,隨著市場的成熟,且越來越專業化,某些平台在一些應用領域中脫穎而出,特別是嵌入式系統應用領域的ARM處理器。
在發展迅速的嵌入式系統市場上應用廣泛的ARM處理器適合設計人員使用。原因在於,首先,發展成熟的軟體、開發工具和ARM相容元件輔助系統實現能協同工作的解決方案工具箱,其次,受迅速發展的ARM市場規模經濟因素的影響,出現了更好、更先進的系統實現選擇。
高性價比嵌入式系統帶來設計挑戰
與以往相比,目前嵌入式系統開發人員必須建立高性價比系統。迅速擴張的全球市場對設計人員的要求日益嚴苛,但中國、印度和拉丁美洲等新興市場領域的機會也越來越多,市場也極為重要。為滿足越來越高的使用者基本需求,須要支援各種標準和價格、性能及特性的平台。而且,競爭在全球展開,這對設計團隊的壓力更大,因須推出特性更豐富的產品。
然而,對嵌入式產品的要求如此之高,設計團隊人數卻不斷縮減。經濟壓力迫使很多公司縮減規模,設計資源也由此受到影響。結果導致,開發團隊的規模在縮小,但工作負擔卻在增加。對成本非常關注、基於ARM的嵌入式系統設計人員越來越明顯的感受到這一壓力,並認知傳統實現方法的缺點。多晶片解決方案實現起來相對容易一些,但是成本高、缺乏靈活性,且性能/功耗指標達不到目前應用的需求。
採用軟核處理器的單晶片解決方案實現起來也相對容易一些,但是難以達到功耗和性能目標。ASIC SoC具有板上ARM內核,功耗和性能表現非常出色,但是設計時間長、不靈活,對於大部分應用而言成本過高。為提高競爭力,嵌入式系統開發人員需要一種能開發獨具優勢產品的解決方案,此方案須具備非常靈活、效率也非常高的特性。
FPGA SoC優勢多
在過去10年中,FPGA內置嵌入式處理器的應用在穩步增長(圖1)。由於FPGA技術上的進步,出現了新一類SoC元件,滿足了目前嵌入式系統應用的多種功能需求。基於ARM的SoC FPGA在一個SoC中結合了硬核ARM處理器、記憶體控制器,以及外設和可訂製FPGA架構。這些SoC FPGA解決了設計人員面臨的很多難題,突顯了產品優勢、價格和性能達到最優、產品能夠及時面市,並延長產品使用壽命。
|
資料來源:Gartner(2010) 圖1 1999~2014年FPGA中處理器的發展 |
基於ARM的SoC FPGA(圖2)在單片FPGA中緊密結合經過優化的「硬核」處理器系統模組(HPS)。HPS包括雙核ARM處理器、多埠記憶體控制器以及多個外設單元,處理器性能達到4,000 DMIPS(Dhrystones 2.1基準測試),功耗不到1.8瓦(W)。這些硬核IP模組在提高性能的同時,也降低功耗和成本,減少對邏輯資源的占用並突顯產品優勢。使用者可以訂製片內FPGA架構開發專用邏輯,可程式設計功能支援採用新的或者修改後的通訊標準和網路通訊協定進一步調整性能。
|
圖2 處理器與FPGA架構緊密整合 |
與傳統的解決方案相比,SoC FPGA在性能上有明顯的優勢。硬核單元相對於軟核IP進行了很大的優化,在所採用的製程節點上,實現了最好的性能、最低的功耗以及最高的密度。FPGA通常是新製程節點最先推出的元件,因此,設計人員透過SoC FPGA能使用最新、最好的半導體技術。而且,與基於電路板的解決方案相比,片內匯流排緊密連接各個單元,進一步提高性能和功效。從系統整體角度看,SoC FPGA縮小系統體積、降低功耗和成本。
‧ |
|
|
通過現場可程式設計平台,使用現成的元件開發基於ARM的訂製SoC FPGA,其開發時間和成本只是其他訂製元件的一小部分。可靠的FPGA設計工具、直觀的系統整合工具,以及成熟的ARM輔助系統相結合,加速開發過程,並降低風險。即使是第一次實現FPGA的設計人員,也可輕鬆的重新使用已有的軟體、IP和其他設計內容。使用SoC FPGA平台,利用開發基礎支撐條件,開發人員能夠很快抓住嵌入式系統市場的商機。 |
‧ |
|
|
在嵌入式系統市場上應對競爭需要很高的靈活性,網路和通訊應用必須適應新的或者變化的標準。工業和醫療供應商不一定需要大批量產品,但是對專業化產品有很大的需求。不考慮特殊應用領域,嵌入式系統開發人員必須能夠靈活的應對激烈的競爭,利用最新的技術,很快跟上新的市場機會。
基於ARM的SoC FPGA邏輯部分容易應對各種變動,適用性較強。在SoC FPGA中,邏輯是現場可程式設計的,意味著很容易迅速修改,以突顯產品優勢進行更新或者重製某一產品型號。在有保證的情況下,即使設備在現場部署後,也可進行重新配置。 |
‧ |
|
|
設計重用是管理成本、提高設計資源利用率的關鍵手段。能在多個元件和系列中調整並重新使用設計內容,這種能力是無價的。當把現有設計或者IP模組應用到體積、功耗和性能需求都不同的元件上時,借助這種方法,設計人員毋須從頭開始進行設計。由於越來越多的設計團隊分散在世界各地,重新使用功能不但提升效能,而且提供共用和利用現有內容的好方法。
SoC FPGA體系結構支援多個IP內核,靈活的適應不同的元件系列。很多應用都有不同的價格、性能、功耗和其他限制,採用可重用和可更新內容很容易滿足這些需求。隨著製程技術的進步,採用這類FPGA系列,通過在下一代產品中導入IP,能夠方便的移植到下一製程節點。
|
‧ |
|
|
對於很多應用而言,產品壽命長是要考慮的重要因素。產品生命週期,特別是醫療、工業和軍用元件,須長達10~15年,甚至更長,但是,IC供應商的產品一般只供應較短的時間。當這類產品的生命週期超過其IC元件時,設計人員須花費寶貴的設計資源進行設計移植或者重製,會有很大的成本代價。
為避免產品過時或者失效的不利影響,建議嵌入式系統開發人員選擇經過嚴格可靠性測試的實作方案,由於其壽命長並且容易移植,且供應商在預期的產品生命週期內都能夠提供支援,因此工業、軍事、航空航太、汽車及醫療應用一直在採用FPGA。元件壽命長意味著在現場進行產品維護的機會少,從而降低維護成本,並可將設計資源應用到新產品上。
|
業者積極開發SoC FPGA
以FPGA供應商Altera為例,其於2011年啟動一項「嵌入式計畫」,並為嵌入式系統市場提供28奈米(nm)、基於ARM的SoC FPGA,該元件具有硬核ARM處理器、高速互聯、片內FPGA架構、第二個記憶體控制器及PCI Express(PCIe)介面,還支援已有內容和IP整合的設計工具,以及採用或者不採用矽片加速軟體發展的模擬環境。
在28奈米製程節點,Altera使用訂製方法,在Arria V和Cyclone V FPGA系列中提供ARM處理器,以滿足多種嵌入式應用需求。在相同的台積電(28LP)28奈米低功耗製程上,此兩種系列產品都能夠滿足嵌入式系統的系統低功耗和低成本需求。Cyclone V FPGA系列適合對功耗和體積要求較高的應用;而Arria V FPGA系列為滿足高性能嵌入式應用而量身打造。
|
圖3 基於ARM的硬核處理器系統簡介 |
Altera ARM HPS(圖3)在全功能HPS中結合雙核Cortex-A9 MPCore處理器、記憶體控制器及外設IP。28奈米製程的高性能雙核Cortex-A9 MPCore處理器工作速率高達800MHz,其性能可進一步滿足未來的需求,實現靈活的SoC FPGA產品。內置NEON媒體處理引擎和雙精度浮點單元為多媒體和訊號處理應用提供標準化加速功能。每個內核具備三十二個32kB Level-1快取記憶體,在512kB共用Level-2快取記憶體的支援下,通過減小延時和記憶體存取時間,有助於提升性能。
除ARM內核本身,HPS還包括靜態隨機存取記憶體(SDRAM)控制器子系統、通用外設陣列,以及高速片內互聯。外設組包括增強快閃記憶體控制器、MMC、DMA、USB 2.0、乙太網、通用異步收發器(UART)、序列周邊介面(SPI)和通用輸入與輸出(GPIO)介面。最後,片內匯流排體系結構透過高速互聯連接HPS和FPGA,總頻寬大於125Gbit/s。此外,SoC FPGA在正常工作條件下,使用壽命一般能夠達到20年以上。
SoC FPGA廠商並提供相關軟體開發工具。Quartus II開發軟體提供高效的設計環境,讓開發人員迅速實現基於ARM的SoC。該套開發工具所包含的Qsys系統整合工具,可在IP功能和子系統之間自動生成互聯邏輯,從而顯著縮短設計階段、減輕設計工作量。對於使用AMBA等通用介面標準和協定編寫的IP,Qsys可自動識別IP,將其與SoC連接。利用此一工具,易於實現重用功能,在SoC FPGA中同時使用已有或協力廠商IP單元,以及不同的標準介面。此外,開發人員也可輕易利用現有的內容,迅速實現FPGA開發。
軟體為嵌入式系統開發重點
軟體發展是開發嵌入式系統時非常重要的工作。出於這一原因,嵌入式軟體發展人員一般使用名為「虛擬目標」的模擬環境,能在矽晶圓布線之前,編寫、模擬並調試軟體。利用SoC FPGA虛擬目標模擬環境,開發人員即使在拿到第一個矽片之前,也能開始暫存器和二進位相容軟體的發展。設計人員透過使用虛擬目標,可提前完成大部分軟體發展工作,降低設計風險,更迅速的將產品推向市場。
與以往相比,目前的嵌入式系統開發人員必須面對激烈的競爭,迅速應對多變的標準、協定,以更少的資源滿足越來越高的各種市場需求。含有硬核處理器核心的SoC FPGA不但支援設計人員解決這些設計難題,而且讓工程師獲得明顯的產品及時面市、價格/性能、產品特點及產品生命週期長等優勢。與傳統方案相比,基於FPGA的SoC已成為可行的方法,未來將在市場上獲得廣泛應用。
(本文作者為Altera嵌入式產品高級經理)