在選擇合適的 SoC FPGA 時(shí)體系結(jié)構(gòu)的重要性
在大部分嵌入式系統(tǒng)中,處理器和現(xiàn)場(chǎng)可編程門陣列(FPGA)完成最繁重的工作。處理器和 FPGA通常單獨(dú)工作,如果兩種技術(shù)能夠一起出色的協(xié)同工作,將形成功能更強(qiáng)大的嵌入式計(jì)算平臺(tái)。
本文引用地址:http://butianyuan.cn/article/201612/326148.htm在這些系統(tǒng)中,處理器一般提供高級(jí)管理功能,而 FPGA 完成嚴(yán)格的實(shí)時(shí)操作,大量的數(shù)據(jù)處理,或者處理器不太容易支持的接口功能。
SoC FPGA 器件在一個(gè)器件中成功集成了處理器和 FPGA 體系結(jié)構(gòu)。將兩種技術(shù)合并起來(lái)具有很多優(yōu)點(diǎn),包括更高的集成度、更低的功耗、更小的電路板面積,以及處理器和 FPGA 之間帶寬更大的通信,等等。這一同類最佳的器件發(fā)揮了處理器與 FPGA 系統(tǒng)融合的優(yōu)勢(shì),同時(shí)還保留了獨(dú)立處理器和 FPGA 的優(yōu)點(diǎn)。
與以前的器件設(shè)計(jì)相比,SoC FPGA 的功能和性能相當(dāng)甚至是更好,但是減小了電路板面積,降低了功耗和系統(tǒng)成本——高達(dá) 50%以上。通過(guò)在一個(gè)硅片上集成這些技術(shù),系統(tǒng)開(kāi)發(fā)人員避免了塑料封裝的成本問(wèn)題。如果設(shè)計(jì)中的 CPU 和 FPGA 使用分立的外部存儲(chǔ)器,那么,設(shè)計(jì)人員應(yīng)該將這些合并到一個(gè)存儲(chǔ)器件中,進(jìn)一步降低系統(tǒng)成本和功耗,減小電路板面積。處理器和 FPGA之間的信號(hào)現(xiàn)在是在同一個(gè)硅片中,它們之間通信消耗的能耗要比使用分立芯片低很多。而且,處理器和 FPGA 之間有數(shù)千路內(nèi)部連接,與兩芯片解決方案相比,集成解決方案能夠有效的提高帶寬,降低延時(shí)。
嵌入式開(kāi)發(fā)人員在為自己的應(yīng)用選擇最佳 SoC FPGA 時(shí),需要考慮很多設(shè)計(jì)問(wèn)題和工程決定。這些選擇標(biāo)準(zhǔn)包括系統(tǒng)性能、系統(tǒng)可靠性、功耗、開(kāi)發(fā)工具和未來(lái)發(fā)展路線圖等。
采用 SoC FPGA 提高系統(tǒng)性能
最終,SoC FPGA 中的系統(tǒng)性能是由能否在四個(gè)主要 SoC 功能之間高效移動(dòng)數(shù)據(jù)來(lái)決定的,即處理器、FPGA 邏輯、互聯(lián),以及片內(nèi)和片外存儲(chǔ)器。
在各種應(yīng)用中,系統(tǒng)性能主要是由數(shù)據(jù)通路性能決定的,器件應(yīng)能夠以“線速”處理連續(xù)數(shù)據(jù)流,很少出現(xiàn)失速或者中斷。在這些應(yīng)用中,F(xiàn)PGA 邏輯處理關(guān)鍵數(shù)據(jù)通路,而處理器對(duì)控制通路進(jìn)行高級(jí)管理。處理器解釋一小部分到達(dá)數(shù)據(jù),盡量不參與數(shù)據(jù)通路的工作。
為完成這種協(xié)調(diào)的合作,現(xiàn)代 SoC FPGA 采用了 ARM 雙核 Cortex-A9 應(yīng)用處理器,集成到高級(jí)28nm FPGA 架構(gòu)中。與其他應(yīng)用處理器相比,Cortex-A9 非常理想的同時(shí)實(shí)現(xiàn)了低功耗、功能、帶寬和性能。
專門設(shè)計(jì)了 Cyclone V SoC 中的互聯(lián),F(xiàn)PGA 邏輯和處理器之間的吞吐量高達(dá) 100 Gbps 以上,從而提高了系統(tǒng)性能,圖 1。FPGA 邏輯和 Cortex-A9 處理器之間的 100 Gbps 互聯(lián)保證了系統(tǒng)有足夠的互聯(lián)性能,支持大吞吐量數(shù)據(jù)流。
圖 1.Cyclone V SoC,F(xiàn)PGA 和處理器之間>100 Gbps 互聯(lián)
能夠有效的訪問(wèn)片內(nèi)和片外存儲(chǔ)器也使得 SoC FPGA 提高了系統(tǒng)性能。Cyclone V SoC 中的硬核存儲(chǔ)器控制器采用了復(fù)雜算法,盡可能提高您存儲(chǔ)器的效率。這些算法使用缺陷權(quán)重羅賓帶等復(fù)雜算法,管理會(huì)話優(yōu)先級(jí)、對(duì)命令和數(shù)據(jù)重新排序、調(diào)度未完成的會(huì)話,從而提高了存儲(chǔ)器帶寬。
其他的性能源自通過(guò)軟件定制存儲(chǔ)器控制器,與定制數(shù)據(jù)指標(biāo)非常符合。
評(píng)估存儲(chǔ)器控制器性能時(shí),重要的是不僅僅要關(guān)注總線寬度和速度。LMbench 等系統(tǒng)級(jí)基準(zhǔn)測(cè)試適用于查看存儲(chǔ)器子系統(tǒng)的總體性能。在67MHz Cyclone V SoC 系統(tǒng)上運(yùn)行 LMbench 基準(zhǔn)測(cè)試表明,具有智能存儲(chǔ)器控制器的 Cyclone V SoC 的存儲(chǔ)器帶寬更高——比競(jìng)爭(zhēng) SoC 器件高出17%,而且存儲(chǔ)器工作頻率降低了 25%。這種在效率上的優(yōu)勢(shì)支持 Cyclone V SoC 以更低的時(shí)鐘速率實(shí)現(xiàn)更大的帶寬,降低了系統(tǒng)功耗。
采用 SoC FPGA 提高系統(tǒng)可靠性
隨著存儲(chǔ)器容量的不斷增長(zhǎng),對(duì)錯(cuò)誤探測(cè)和糾正的需求已經(jīng)成為當(dāng)今設(shè)計(jì)的發(fā)展趨勢(shì)。大部分現(xiàn)代系統(tǒng)包括專用硬件來(lái)幫助實(shí)現(xiàn)數(shù)據(jù)完整性。這包括糾錯(cuò)碼(ECC)保護(hù)——不僅僅是存儲(chǔ)器控制器的一部分,而且還集成在處理器的片內(nèi)存儲(chǔ)器、高速緩存、外設(shè)緩沖以及 FPGA 中。錯(cuò)誤檢查和糾正電路使系統(tǒng)更可靠,系統(tǒng)不受意外數(shù)據(jù)錯(cuò)誤或者數(shù)據(jù)損壞的影響。
存儲(chǔ)器保護(hù)是通常與高級(jí)處理器中的存儲(chǔ)器控制器相關(guān)的特性,稱之為存儲(chǔ)器管理單元(MMU)或者存儲(chǔ)器保護(hù)單元(MPU)。處理器的存儲(chǔ)器保護(hù)單元防止了錯(cuò)誤或者非法的處理器會(huì)話讀取甚至損壞其他存儲(chǔ)器區(qū)。在 Cortex-A9 處理器中,ARM 的 TrustZone 技術(shù)擴(kuò)展了這一保護(hù)概念,為安全敏感的系統(tǒng)提供了系統(tǒng)級(jí)方法。
使用 Cyclone V SoC,為操作系統(tǒng)和嵌入式應(yīng)用軟件指定了特定的存儲(chǔ)器區(qū)域,而其他存儲(chǔ)器區(qū)域可以專門用于基于 FPGA 的功能,如圖 2 所示。通過(guò)存儲(chǔ)器保護(hù),F(xiàn)PGA 主機(jī)功能不會(huì)損壞操作系統(tǒng)或者嵌入式軟件區(qū)域。
圖 2.SoC 應(yīng)用中的 DDR 存儲(chǔ)器保護(hù),處理器和 FPGA 共享公共的存儲(chǔ)器。
集成降低功耗
新電子應(yīng)用對(duì)功耗的要求越來(lái)越高——不僅僅是手持式設(shè)備,而且還有汽車應(yīng)用,甚至是服務(wù)器機(jī)架等,這些都有很大的功耗和散熱預(yù)算。SoC FPGA 器件是可行的解決方案,幫助嵌入式開(kāi)發(fā)人員實(shí)現(xiàn)其功耗預(yù)算。
如圖 3 所示,在一片 SoC FPGA 中集成處理器和 FPGA 組件能夠把系統(tǒng)功耗降低 10%到 30%。I/O在器件之間傳送信號(hào),通常需要較高的電壓,是應(yīng)用中最耗能的組件。
圖 3.在一片 SoC FPGA 中集成處理器和 FPGA,共享外部存儲(chǔ)器接口,減少了高功耗的芯片間I/O 連接。
簡(jiǎn)單的集成不但降低了功耗,Cyclone V SoC 還具有時(shí)鐘選通和調(diào)整等低功耗模式。處理器和FPGA 還有獨(dú)立的電源平面,支持應(yīng)用程序完全關(guān)斷 FPGA 供電,而保持處理器工作,監(jiān)視任何中斷。
為優(yōu)化功耗,SoC 設(shè)計(jì)與電源設(shè)計(jì)的關(guān)系越來(lái)越密切。在系統(tǒng)級(jí),電源供電設(shè)計(jì)有時(shí)候要比 SoC器件本身功耗更大。這些系統(tǒng)的難點(diǎn)在于怎樣在減小電源供電布局和提高供電效率之間達(dá)到均衡。有很多電源供電選擇為Cyclone V SoC 提供支持,高級(jí) DC-DC 電源轉(zhuǎn)換器技術(shù)也為其提供支持,支持設(shè)計(jì)人員滿足嚴(yán)格的功耗預(yù)算和空間限制要求。Altera 提供 Enpirion 電源模塊新產(chǎn)品,非常適合滿足基于 SoC FPGA 的嵌入式系統(tǒng)的空間和效率限制要求。
熟悉的開(kāi)發(fā)工具支持 SoC FPGA
集成了前沿 ARM 應(yīng)用處理器和 FPGA 架構(gòu)的新一類 SoC 器件,能夠以更低的成本,更迅速的實(shí)現(xiàn)低功耗電子產(chǎn)品,打開(kāi)了新的應(yīng)用空間。但是,伴隨著硬件創(chuàng)新,F(xiàn)PGA 工具、片內(nèi)調(diào)試、軟件調(diào)試和分析工具也應(yīng)該不斷創(chuàng)新。軟件最終決定了設(shè)計(jì)人員能否成功的使用這些器件。為實(shí)現(xiàn)更廣泛的應(yīng)用,軟件開(kāi)發(fā)人員必須找到合適的 SoC FPGA,掌握其特性,就像獨(dú)立處理器軟件開(kāi)發(fā)那樣輕松高效的使用它們。
來(lái)自 Altera 的 SoC FPGA 由 SoC 嵌入式設(shè)計(jì)套裝(EDS)提供支持,套裝包括全套的 ARM 兼容工具包,支持在 Altera SoC 器件上開(kāi)發(fā)嵌入式軟件。它包括開(kāi)發(fā)工具、實(shí)用工具程序、運(yùn)行時(shí)軟件,以及應(yīng)用實(shí)例,幫助您迅速開(kāi)始 SoC 嵌入式系統(tǒng)的固件和應(yīng)用軟件開(kāi)發(fā)。Altera 和 ARM 之間這種非常重要的關(guān)系導(dǎo)致 SoC EDS 提供了獨(dú)特的 Altera 版 ARM Development Studio 5 (DS-5?)工具包。ARM DS-5 高級(jí)多核調(diào)試功能與 FPGA 自適應(yīng)功能相結(jié)合——能夠立即看到 FPGA 硬件中的改動(dòng),無(wú)縫鏈接至 Altera 的 SignalTap 邏輯分析器,這一 SoC EDS 工具包幫助嵌入式軟件開(kāi)發(fā)人員獲得了前所未有的全芯片可視化和控制能力。
當(dāng)調(diào)試出現(xiàn)問(wèn)題時(shí),開(kāi)發(fā)團(tuán)隊(duì)必須能夠確定這是硬件還是軟件問(wèn)題。支持 Altera SoC FPGA 的工具實(shí)現(xiàn)了處理器子系統(tǒng)和 FPGA 子系統(tǒng)之間代碼和波形的交叉觸發(fā),或者從波形到代碼的觸發(fā),很容易找到導(dǎo)致這些問(wèn)題的原因。結(jié)果,開(kāi)發(fā)團(tuán)隊(duì)能夠找到并跟蹤系統(tǒng)中某一狀態(tài)是怎樣出現(xiàn)的,為什么出現(xiàn)。交叉觸發(fā)、跟蹤和全局時(shí)間戳是 IP 驗(yàn)證、定制驅(qū)動(dòng)開(kāi)發(fā)以及工程中系統(tǒng)集成部分非常重要的特性。
除了找到故障位置之外, SoC EDS 還幫助嵌入式系統(tǒng)開(kāi)發(fā)人員知道系統(tǒng)為什么會(huì)進(jìn)入這種故障狀態(tài),是怎樣進(jìn)入的。ARM 系統(tǒng)跟蹤模塊(STM)支持跟蹤基于 CPU 的軟件事件。當(dāng)系統(tǒng)執(zhí)行時(shí),應(yīng)用軟件可以發(fā)出硬件和軟件事件“探測(cè)”信號(hào),以監(jiān)視系統(tǒng)行為,深入探查其工作。在“FPGA自適應(yīng)”調(diào)試環(huán)境中,STM 支持 CPU 和 FPGA 域的事件監(jiān)視,不要求系統(tǒng)停止工作。
未來(lái)的 SoC FPGA 路線圖
當(dāng)選擇 SoC FPGA 時(shí),必須確定供應(yīng)商的產(chǎn)品路線圖.如圖 4 所示,從長(zhǎng)期看,這將保持您的系統(tǒng)競(jìng)爭(zhēng)力,支持軟件前向移植。開(kāi)始時(shí),所有硅片發(fā)展路線圖的基礎(chǔ)都是硅片工藝技術(shù)。目前Altera 提供的 Cyclone V 和 Arria V SoC 采用了 28 nm 低功耗工藝制造,幫助工業(yè)、汽車、醫(yī)療和通信等對(duì)功耗要求較高的應(yīng)用降低了功耗。
Altera 的下一代 Arria 10 SoC 優(yōu)化了中端應(yīng)用的性能,提高了功效,減小了外形封裝,降低了成本,適合多種中端無(wú)線基礎(chǔ)設(shè)施、廣播、軍事,以及計(jì)算機(jī)和存儲(chǔ)應(yīng)用。Arria 10 SoC 基于 TSMC的 20 nm 工藝技術(shù),結(jié)合了雙核 Cortex-A9 處理器系統(tǒng)和業(yè)界領(lǐng)先的可編程邏輯技術(shù)。實(shí)現(xiàn)雙核Cortex-A9 處理器系統(tǒng)簡(jiǎn)化了第一代 SoC FPGA 的軟件移植,尺寸更小的工藝技術(shù)將性能提升至1.5 GHz。
在先進(jìn)通信、軍事和數(shù)據(jù)中心應(yīng)用中,第三代 Stratix 10 SoC 將進(jìn)一步突破性能和帶寬。Stratix 10SoC 基于 Intel 14nm 三柵極工藝技術(shù),具有 64 位四核 ARM Cortex-A53 處理器。Cortex-A53 支持32 位兼容模式,如果需要,很容易實(shí)現(xiàn)現(xiàn)有軟件的移植。
圖 4.Stratix 10 SoC 是 Altera 的第三代 SoC,采用 Intel 的 14 nm 三柵極工藝技術(shù),集成了四核Cortex-A53 處理器。
SoC FPGA 是功能強(qiáng)大的新一類可編程器件,適用于多種電子設(shè)計(jì)。最流行的商用器件集成了標(biāo)準(zhǔn) ARM 雙核 Cortex-A9——具有豐富的外設(shè)、片內(nèi)存儲(chǔ)器、高速內(nèi)部互聯(lián)體系結(jié)構(gòu)、分層片內(nèi)存儲(chǔ)器,還有前沿的 FPGA 架構(gòu)。創(chuàng)新軟件設(shè)計(jì)和調(diào)試工具支持開(kāi)發(fā)人員同時(shí)查看并交叉觸發(fā)芯片的兩部分(處理器和 FPGA)組成。市場(chǎng)上的這些器件表面上看起來(lái)非常相似,但實(shí)際上底層體系結(jié)構(gòu)卻不盡相同。
評(píng)論