作者:Clive "Max" Maxfield
編者按:
最佳處理解決方案常常是由RISC、CISC、圖形處理器與FPGA的組合提供,或由FPGA單獨(dú)提供,或以硬處理器內(nèi)核作為部分結(jié)構(gòu)的FPGA提供。然而,許多設(shè)計(jì)人員不熟悉FPGA的功能、其發(fā)展脈絡(luò)以及如何使用 FPGA。
現(xiàn)場(chǎng)可編程門(mén)陣列 (FPGA) 具有諸多特性,無(wú)論是單獨(dú)使用,抑或采用多樣化架構(gòu),皆可作為寶貴的計(jì)算資產(chǎn);但是許多設(shè)計(jì)人員并不熟悉FPGA,也不清楚如何將這類器件整合到設(shè)計(jì)中。
解決辦法之一是深入研究主要供應(yīng)商提供的FPGA架構(gòu)及相關(guān)工具。本文將介紹Microchip Technology的產(chǎn)品系列。
高級(jí)FPGA選型概覽
市場(chǎng)上有許多不同類型的FPGA,每種類型都有不同的功能和特性組合??删幊探Y(jié)構(gòu)是所有FPGA的核心,它以可編程邏輯塊陣列的形式呈現(xiàn),也稱為邏輯元件 (LE)(圖1a)。FPGA結(jié)構(gòu)可進(jìn)一步擴(kuò)展,以包括SRAM塊(稱為塊RAM (BRAM))、鎖相環(huán) (PLL) 和時(shí)鐘管理器之類的東西(圖1b)。此外,還可以添加數(shù)字信號(hào)處理 (DSP) 塊(稱為DSP切片)和高速串行器/解串器 (SERDES)(圖1c)。
圖1:最簡(jiǎn)單的FPGA僅包含可編程結(jié)構(gòu)和可配置通用IO (GPIO) (a);不同架構(gòu)是在此基本結(jié)構(gòu)上增加其他元件而形成:SRAM塊、PLL和時(shí)鐘管理器 (b);DSP塊和SERDES接口 (c);以及硬處理器內(nèi)核和外設(shè) (d)。(圖片來(lái)源:Max Maxfield)
外設(shè)接口功能(如CAN、I2C、SPI、UART和USB)可以作為可編程結(jié)構(gòu)中的軟內(nèi)核來(lái)實(shí)現(xiàn),但許多FPGA將其作為硬內(nèi)核在硅片中實(shí)現(xiàn)。同樣,微處理器也可以實(shí)現(xiàn)為可編程結(jié)構(gòu)中的軟內(nèi)核,或作為硬內(nèi)核在硅片中實(shí)現(xiàn)(圖1d)。具有硬處理器內(nèi)核的FPGA稱為片上系統(tǒng) (SoC) FPGA。不同F(xiàn)PGA針對(duì)不同的市場(chǎng)和應(yīng)用提供不同的功能、特性和容量集合。
FPGA供應(yīng)商有很多,包括Altera(被Intel收購(gòu))、Atmel(被Microchip Technology收購(gòu))、Lattice Semiconductor、Microsemi(也被Microchip Technology收購(gòu))和Xilinx。
所有這些供應(yīng)商都提供多個(gè)FPGA系列;有的提供SoC FPGA,有的則針對(duì)航天等高輻射環(huán)境提供耐輻射器件。由于產(chǎn)品系列眾多,每個(gè)系列提供不同的資源,因此為眼前的任務(wù)選擇最佳器件可能很棘手。
Microchip Technology的FPGA概覽
Microchip Technology的FPGA產(chǎn)品范圍覆蓋中低端,以具有優(yōu)異可靠性的低功耗、高安全性器件為主。Microchip的FPGA廣泛部署于有線和無(wú)線通信、國(guó)防和航空、工業(yè)嵌入式應(yīng)用,擁有強(qiáng)大的DSP和存儲(chǔ)器資源,并在硬件加速、人工智能、圖像處理、邊緣計(jì)算等應(yīng)用中展示出了一定價(jià)值。
Microchip推出了三個(gè)主要FPGA系列:
? IGLOO?2 FPGA:具有大量資源的低密度器件
? SmartFusion?2 SoC FPGA:具有大量資源和32位硬處理器內(nèi)核的低密度器件
? PolarFire? FPGA 和 SoC FPGA:成本經(jīng)過(guò)優(yōu)化的高性能器件,并采用28納米 (nm) 工藝技術(shù)實(shí)現(xiàn)
所有FPGA都有配置單元,它們決定了每個(gè)可編程邏輯塊的功能,以及邏輯塊彼此之間和邏輯塊與外部的連接方式。這些單元還可用于配置GPIO的接口標(biāo)準(zhǔn)、輸入阻抗、輸出壓擺率等。
有些FPGA使用基于SRAM的配置單元,但這些是易失性存儲(chǔ)器,當(dāng)系統(tǒng)斷電時(shí),其內(nèi)容會(huì)丟失。而且,當(dāng)系統(tǒng)上電時(shí),必須從外部來(lái)源(通常是閃存器件)加載配置數(shù)據(jù)。這些FPGA需要花費(fèi)非常長(zhǎng)的時(shí)間來(lái)完成上電和使用前的準(zhǔn)備工作。
有些FPGA使用片上閃存來(lái)存儲(chǔ)配置數(shù)據(jù),但仍有基于SRAM的配置單元。在這種情況下,當(dāng)上電時(shí),片上控制器將配置數(shù)據(jù)從閃存配置存儲(chǔ)器復(fù)制到SRAM配置單元。這些FPGA的上電速度比純SRAM產(chǎn)品要快。
Microchip的IGLOO2 FPGA和SmartFusion2 SoC FPGA采用不同的機(jī)制,片上配置存儲(chǔ)器和片上配置單元均采用閃存技術(shù)實(shí)現(xiàn)。在PolarFire器件中,配置單元基于硅氧化氮氧化硅 (SONOS) 非易失性存儲(chǔ)器 (NVM) 技術(shù),可以將其視為“類似閃存,但更好”。
由于配置數(shù)據(jù)存儲(chǔ)在非易失性閃存(或SONOS)單元中,因此Microchip的FPGA和SoC FPGA可以“即時(shí)啟動(dòng)”。也就是說(shuō),它們的上電速度比任何其他類型的FPGA都要快。這些器件也包含閃存配置存儲(chǔ)器的原因是,在將新配置加載到此配置中的同時(shí),F(xiàn)PGA可以使用其配置單元中的現(xiàn)有配置繼續(xù)運(yùn)行。一旦新配置下載完成并得到了驗(yàn)證(配置可以加密并附帶循環(huán)冗余校驗(yàn) (CRC)),便可將器件置于安全狀態(tài),同時(shí)使用配置存儲(chǔ)器中存儲(chǔ)的新配置覆蓋配置單元中存儲(chǔ)的原始配置。
傳統(tǒng)器件:IGLOO2 FPGA
IGLOO2是出色的綜合型中低端FPGA。許多設(shè)計(jì)人員認(rèn)為這些器件是“傳統(tǒng)”FPGA器件。這些閃存FPGA器件非常適合執(zhí)行通用功能,例如千兆位以太網(wǎng)或雙PCI Express控制平面、橋接功能、輸入/輸出 (I/O) 擴(kuò)展和轉(zhuǎn)換、視頻和圖像處理、系統(tǒng)管理以及安全連接。應(yīng)用范圍非常廣泛,包括通信、工業(yè)、醫(yī)療、國(guó)防和航空。
圖2:IGLOO2 FPGA非常適合執(zhí)行通用功能,例如千兆位以太網(wǎng)或雙PCI Express控制平面、橋接功能、I/O擴(kuò)展和轉(zhuǎn)換、視頻和圖像處理、系統(tǒng)管理以及安全連接。(圖片來(lái)源:Microchip Technology)
IGLOO2 FPGA提供5,000至150,000個(gè)LE(邏輯單元),具有高性能存儲(chǔ)子系統(tǒng)、高達(dá)512KB 的嵌入式閃存、2 x 32KB的嵌入式靜態(tài)隨機(jī)存取存儲(chǔ)器 (SRAM)、兩個(gè)直接存儲(chǔ)器訪問(wèn) (DMA) 引擎以及兩個(gè)雙倍數(shù)據(jù)速率 (DDR) 控制器。這些器件還有多達(dá)16個(gè)收發(fā)器通道、集成DSP處理器塊和抗/耐單粒子翻轉(zhuǎn) (SEU) 的存儲(chǔ)器。為了安全起見(jiàn),器件進(jìn)行了差分功率分析 (DPA) 加固,并使用AES256和SHA256加密以及按需NVM數(shù)據(jù)完整性檢查。
IGLOO2器件的典型例子是M2GL025-FGG484I,它有27,696個(gè)LE、1,130,496位RAM和267 個(gè)I/O。為使設(shè)計(jì)人員能夠研究和試驗(yàn)IGLOO2 FPGA系列的特性,Microchip還推出了相應(yīng)的IGLOO2評(píng)估套件M2GL-EVAL-KIT(圖3)。
圖3:M2GL-EVAL-KIT是用于IGLOO2的評(píng)估套件,功能集成度高,具有低功耗、高可靠性、高級(jí)安全性等特性。(圖片來(lái)源:Microchip Technology)
M2GL-EVAL-KIT有助于輕松開(kāi)發(fā)嵌入式應(yīng)用,涉及電機(jī)控制、系統(tǒng)管理、工業(yè)自動(dòng)化和高速串行I/O應(yīng)用、PCI Express和千兆位以太網(wǎng)。該套件具有很高的功能集成度,并提供低功耗、高可靠性、高級(jí)安全性等特性。該板也采用小巧尺寸、兼容PCIe的結(jié)構(gòu),開(kāi)發(fā)人員利用任何帶有PCIe槽的臺(tái)式PC或筆記本電腦即可進(jìn)行原型設(shè)計(jì)。
入門(mén)級(jí)SoC:SmartFusion2 SoC FPGA
SmartFusion2 SoC FPGA基于IGLOO2器件的傳統(tǒng)可編程結(jié)構(gòu),并增加了32位硬處理器核。由于該處理器是Arm?Cortex?系列的主打產(chǎn)品,因此SmartFusion2系列為進(jìn)入SoC FPGA世界提供了一個(gè)很好的切入點(diǎn)。
這些SoC FPGA提供5,000至150,000個(gè)LE和一個(gè)166兆赫茲 (MHz) Arm Cortex-M3處理器,并且包括嵌入式跟蹤宏單元 (ETM) 和指令緩存并帶有片上eSRAM與嵌入式NVM (eNVM);還包括完整的微控制器子系統(tǒng),并且配有CAN、TSE、USB等豐富的外設(shè)。
圖4:SmartFusion2 SoC FPGA提供5,000至150,000個(gè)LE和一個(gè)166MHz Arm Cortex-M3處理器,并且包括ETM和指令緩存并帶有片上eSRAM與eNVM;還包括完整的微控制器子系統(tǒng),并且配有CAN、TSE、USB等豐富的外設(shè)。(圖片來(lái)源:Microchip Technology)
這些閃存SoC FPGA器件非常適合執(zhí)行通用功能,例如千兆位以太網(wǎng)或雙PCI Express控制平面、橋接功能、I/O擴(kuò)展和轉(zhuǎn)換、視頻和圖像處理、系統(tǒng)管理以及安全連接。應(yīng)用范圍同樣很廣,包括通信、工業(yè)、醫(yī)療、國(guó)防和航空。
SmartFusion2器件的典型例子是M2S025-FCSG325I,它有25,000個(gè)LE、256KB閃存、64KB RAM和一個(gè)166MHz 32位Arm Cortex-M3處理器子系統(tǒng)。為使設(shè)計(jì)人員能夠研究和試驗(yàn)SmartFusion2 SoC FPGA系列的特性,Microchip還推出了相應(yīng)的SmartFusion2創(chuàng)客開(kāi)發(fā)板M2S010-MKR-KIT(圖5)。
圖5:SmartFusion2創(chuàng)客開(kāi)發(fā)板是用于SmartFusion2 SoC FPGA的低成本評(píng)估套件,它將Arm Cortex-M3處理器與基于閃存的FPGA結(jié)構(gòu)結(jié)合在一個(gè)芯片上,另有許多由SoC用戶慣常使用的外設(shè),例如RAM和DSP塊。(圖片來(lái)源:Microchip Technology)
低成本SmartFusion2創(chuàng)客開(kāi)發(fā)板由Digi-Key Electronics獨(dú)家銷售,為設(shè)計(jì)人員使用SmartFusion2系列提供了便利。這一特別的設(shè)備提供了一個(gè)基于閃存的FPGA架構(gòu),具有12,000個(gè)LE、一個(gè)32位166MHz Arm Cortex-M3處理器、DSP塊、SRAM、eNVM和GPIO接口,所有元件全都集成在單個(gè)芯片上。
SmartFusion2創(chuàng)客開(kāi)發(fā)板附加了以太網(wǎng)接口、環(huán)境光傳感器、SPI閃存、八個(gè)用戶LED和兩個(gè)用戶按鈕。該板還有兩個(gè)無(wú)載但已布局好的連接,支持ESP32和ESP8266Wi-Fi/藍(lán)牙模塊(不包括在內(nèi))。它支持通過(guò)USB端口進(jìn)行JTAG編程、UART通信和為電路板供電。此外,該板還有SPI閃存、50MHz時(shí)鐘源和Microchip的VSC8541物理層 (PHY),后者支持100Mbps或1Gbps以太網(wǎng)。
高性價(jià)比器件:PolarFire FPGA和SoC FPGA
PolarFire FPGA是成本經(jīng)過(guò)優(yōu)化且采用28nm工藝技術(shù)實(shí)現(xiàn)的高性能器件。這些器件提供中等密度,但功耗最低,并具有高度的安全性和可靠性。
該產(chǎn)品系列涵蓋100,000到500,000個(gè)LE,具有12.7Gb收發(fā)器,設(shè)計(jì)功耗最多比同類中端FPGA低50%。這些器件非常適合有線接入網(wǎng)絡(luò)和蜂窩基礎(chǔ)設(shè)施、國(guó)防和商業(yè)航空航天市場(chǎng)以及工業(yè)自動(dòng)化和物聯(lián)網(wǎng)市場(chǎng)中的廣泛應(yīng)用。
圖6:PolarFire FPGA具有100,000到500,000個(gè)LE和12.7Gb收發(fā)器,設(shè)計(jì)功耗最多比同類中端FPGA低50%。(圖片來(lái)源:Microchip Technology)
PolarFire FPGA的總功耗比同類FPGA降低多達(dá)50%的主要原因是,片上配置存儲(chǔ)器和片上配置單元均采用NVM技術(shù)。這使得配置單元之間的漏電流非常低。另外,這也意味著這些器件在上電時(shí)也能真正地“即時(shí)啟動(dòng)”,從而不會(huì)產(chǎn)生浪涌電流,配置電流也為零。
網(wǎng)絡(luò)安全是網(wǎng)絡(luò)邊緣互連器件的首要考慮因素,因此對(duì)于開(kāi)發(fā)人員而言,僅滿足設(shè)計(jì)的功能要求是不夠的,還要確保安全。安全性始于芯片制造,并一直持續(xù)到系統(tǒng)部署和運(yùn)行。Microchip推出的PolarFire FPGA是業(yè)界最先進(jìn)的安全可編程FPGA。
許多針對(duì)復(fù)雜電子設(shè)備的應(yīng)用在設(shè)計(jì)中都有一定程度的安全要求。PolarFire FPGA專為高可靠性、高可用性的安全和任務(wù)關(guān)鍵型系統(tǒng)而設(shè)計(jì),適用于工業(yè)、航空、軍事、通信等應(yīng)用。PolarFire 之所以適合這些應(yīng)用,是因?yàn)榫哂腥缦绿匦裕?br />
? 零失效率 (FIT) FPGA配置
? 抗SEU存儲(chǔ)器
? 具有單錯(cuò)誤糾正、雙錯(cuò)誤檢測(cè) (SECDED) 功能的存儲(chǔ)控制器
? 內(nèi)置自檢
? 無(wú)需外部配置器件
PolarFire器件的典型例子是MPF100T-FCSG325I,它有109,000個(gè)LE、7,782,400位RAM和170個(gè)I/O。為使設(shè)計(jì)人員能夠研究和試驗(yàn)PolarFire FPGA系列的特性,Microchip還推出了相應(yīng)的PolarFire FPGA評(píng)估套件MPF300-EVAL-KIT(圖7)。
圖7:為使設(shè)計(jì)人員能夠研究和試驗(yàn)PolarFire FPGA系列的特性,Microchip還推出了相應(yīng)的MPF300-EVAL-KIT FPGA評(píng)估套件。(圖片來(lái)源:Microchip Technology)
MPF300-EVAL-KIT可針對(duì)各類應(yīng)用提供高性能評(píng)估。它非常適合用于高速收發(fā)器評(píng)估、10Gb以太網(wǎng)、IEEE1588、JESD204B、SyncE、CPRI以及其他應(yīng)用。套件連接包括高引腳數(shù) (HPC) FPGA夾層卡 (FMC)、大量SMA、PCIe、雙千兆位以太網(wǎng)RJ45、SFP+和USB。PolarFire FPGA具有300,000個(gè)LE、DDR4、DDR3和SPI閃存,可用于開(kāi)發(fā)廣泛的高性能設(shè)計(jì)。
PolarFire產(chǎn)品線仍在進(jìn)一步發(fā)展。在撰寫(xiě)本文時(shí),Microchip Technology披露了有關(guān)即將推出的PolarFire SoC FPGA系列的詳細(xì)信息。該系列將擁有經(jīng)過(guò)強(qiáng)化且支持Linux、基于開(kāi)源64位RISC-V的實(shí)時(shí)微處理器子系統(tǒng)。
使用Microchip Technology的FPGA進(jìn)行設(shè)計(jì)與開(kāi)發(fā)
最常用的FPGA開(kāi)發(fā)技術(shù)之一是語(yǔ)言驅(qū)動(dòng)設(shè)計(jì) (LDD)。這涉及使用Verilog、VHDL或SystemVerilog等硬件描述語(yǔ)言 (HDL),在抽象級(jí)別(即寄存器傳送級(jí) (RTL))上捕獲設(shè)計(jì)意圖。通過(guò)邏輯仿真進(jìn)行驗(yàn)證之后,該表達(dá)式將連同目標(biāo)FPGA類型、引腳分配和時(shí)序約束(例如最大輸入到輸出延遲)等其他信息一并傳輸至合成引擎。合成引擎輸出配置文件,對(duì)于Microchip FPGA或SoC FPGA,配置文件直接加載到FPGA中,而對(duì)基于SRAM的器件而言,配置文件則是加載到外部存儲(chǔ)器件中(圖6)。
圖8:通過(guò)邏輯仿真進(jìn)行驗(yàn)證之后,RTL設(shè)計(jì)描述將與FPGA類型、引腳分配和時(shí)序約束等其他設(shè)計(jì)細(xì)節(jié)一并傳輸至合成引擎。合成引擎輸出的配置文件直接加載到FPGA中。(圖片來(lái)源:Max Maxfield)
Microchip的Libero SoC設(shè)計(jì)套件屬于此類工具。該軟件提供了一套全面的易學(xué)易用的集成開(kāi)發(fā)工具,支持使用Microchip的IGLOO2和PolarFire FPGA以及SmartFusion2和PolarFire SoC FPGA進(jìn)行設(shè)計(jì)。該套件將行業(yè)標(biāo)準(zhǔn)Synopsys Synplify Pro綜合、Mentor Graphics的ModelSim仿真與約束管理、編程和調(diào)試工具、安全生產(chǎn)編程支持集成在一起。
除了使用Verilog、VHDL或SystemVerilog以文本格式捕獲設(shè)計(jì)之外,該套件還包含圖形輸入功能,可以將系統(tǒng)定義為連接塊的層次結(jié)構(gòu),較低級(jí)的塊以用戶定義的HDL或第三方IP表示。
另外,還有System Builder,它是一種易于使用的設(shè)計(jì)工具,可引導(dǎo)用戶解決一系列高級(jí)問(wèn)題來(lái)定義目標(biāo)系統(tǒng)。System Builder首先詢問(wèn)有關(guān)目標(biāo)系統(tǒng)架構(gòu)的問(wèn)題,然后添加需要在可編程結(jié)構(gòu)中作為軟內(nèi)核實(shí)現(xiàn)的所有其他外設(shè),最后創(chuàng)建一個(gè)“設(shè)計(jì)即正確”的完整系統(tǒng)。
最后但并非最不重要的一點(diǎn)是SoftConsole集成開(kāi)發(fā)環(huán)境 (IDE);對(duì)于Microchip的FPGA和SoC FPGA中實(shí)例化的32位軟處理器,以及SmartFusion2和PolarFire SoC FPGA中的32位和64位硬處理器內(nèi)核來(lái)說(shuō),該IDE有利于快速開(kāi)發(fā)裸機(jī)和基于RTOS的C/C++軟件。
總結(jié)
最佳處理設(shè)計(jì)解決方案常常是由處理器與FPGA的組合提供,或由FPGA單獨(dú)提供,或以硬處理器內(nèi)核作為部分結(jié)構(gòu)的FPGA提供。作為一項(xiàng)技術(shù),F(xiàn)PGA多年來(lái)發(fā)展迅速,能夠滿足靈活性、處理速度、功耗等多方面的設(shè)計(jì)需求,非常適合智能接口、機(jī)器視覺(jué)和AI等眾多應(yīng)用。
如本文所述,Microchip Technology的FPGA和SoC FPGA產(chǎn)品范圍覆蓋中低端,以具有優(yōu)異可靠性的低功耗、高安全性器件為主。這些FPGA具有強(qiáng)大的信號(hào)處理和存儲(chǔ)器資源,是在通信、工業(yè)、軍事、航空等行業(yè)中開(kāi)發(fā)硬件加速、人工智能、圖像處理、邊緣計(jì)算等應(yīng)用的出色平臺(tái)。
編輯:hfy
-
FPGA
+關(guān)注
關(guān)注
1630文章
21769瀏覽量
604651 -
microchip
+關(guān)注
關(guān)注
52文章
1508瀏覽量
117645
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論