作者:Kenton Williston
投稿人:DigiKey 北美編輯
資源受限的嵌入式系統對可配置邏輯的需求與日俱增。邊緣 AI、機器視覺和工業自動化等應用需要靈活的應用特定邏輯,以滿足不斷變化的性能需求,同時在嚴格的功耗、尺寸和成本限制內運行?,F代現場可編程門陣列 (FPGA) 可以滿足這些相互競爭的需求。
本文回顧了為資源受限型應用選擇 FPGA 時需要考慮的關鍵設計標準。然后,以 [Altera] 經過[功率和成本優化的 FPGA] 產品組合為例,說明不同產品線如何與應用特定場景相匹配。最后重點介紹了可用于設計概念原型開發和驗證的開發套件和評估板。
選擇 FPGA 時應注意的事項
為資源受限型系統選擇 FPGA 需要考慮多種設計要求,并按照這些要求匹配正確的解決方案。有多個關鍵的 FPGA 特性需要考慮:
邏輯元件 (LE) 容量 :作為 FPGA 的基本構件,邏輯元件的數量決定了可以實現多少定制邏輯。數量越高設計就越復雜:折衷的辦法是增加功率、成本和封裝尺寸。
I/O 和存儲器 :FPGA 通常用于連接系統中的不同組件,因此 I/O 引腳的數量是一個重要的考慮因素。為了提高 I/O 性能,許多 FPGA 為 PCI Express (PCIe)、高速存儲器和千兆位收發器等接口集成了強化的固定邏輯塊。
此外,一些 FPGA 還集成了模數轉換器 (ADC) 和閃存等元件。這些增強元件可減少對配套芯片的需要,從而節省了電路板空間并提高了能效。
處理器集成: 可以在 FPGA 內實現“軟”微處理器單元 (MPU),而不是使用外部處理器。這種方法可以減少系統的尺寸,但最適合對 MPU 工作負載要求不高的應用。
對于需要 MPU 具有更快速度、更高效率的應用,設計人員可以考慮使用帶有硬核處理器系統 (HPS) 的 FPGA,將 MPU 作為 FPGA 中的固定邏輯塊來實現。
硬件加速器: FPGA 通常包含專用數字信號處理 (DSP) 塊,可有效處理像運動控制這樣的計算密集型任務。高端設備可能會配備專門用于 AI 工作負載的張量塊。這些加速器塊的功能在不同的 FPGA 系列中差別很大,會極大地影響系統的整體性能。
封裝和功率優化 :有些 FPGA 專門設計用于最大限度地減少物理和電氣占用空間。例如,它們可以提供低功耗睡眠模式。
工具 :創建自定義邏輯是一項艱巨的挑戰,尤其是對于新手設計人員而言。Altera 的 [Quartus Prime] 設計軟件等工具的出現簡化了這一過程。
Quartus Prime 提供了對開發人員友好的體驗、廣泛的預建邏輯塊目錄以及自動將這些邏輯塊互連的能力,從而使 FPGA 設計更加易于實現。該工具集成了常用的 AI 和機器學習 (ML) 工作流,能夠讓使開發人員在 FPGA 上部署 Linux 和 Zephyr 等流行的操作系統 (OS)。
上述功能可大大加快 FPGA 的設計速度,因此在選擇器件時,工具功能也是一個重要的考慮因素。
面向高級嵌入式工作負載的高性能計算
為了說明設計要求如何影響 FPGA 的選擇,不妨從需要超高計算密度、帶寬和集成度的高端應用入手。下面我們以高級邊緣 AI 應用和高性能工業網關為例作詳細分析。
[Agilex 3] FPGA(圖 1)專為滿足這些應用需求而設計,可提供最高 135K LE。這些芯片有純 FPGA 和片上系統 (SoC) 兩種類型。SoC 器件集成了雙核 800 兆赫 (MHz) [Arm?] Cortex?-A55,能夠讓 FPGA 處理復雜的軟件堆棧,如人機界面 (HMI) 或網絡堆棧。
這種可編程結構具有 AI 張量塊,能夠提供高達每秒 2.8 萬億次 INT8 運算 (TOPS)。這些張量塊支持各種計算格式,包括 FP16、FP19、FP32 和 BFLOAT16,并進行了優化,實現了對 AI 工作負載的高效執行。此外,還包括可變精度 DSP 塊,為通用信號處理提供高達每秒 180 千兆次浮點運算 (GFLOPS) 的性能。
圖 1:Agilex 3 以其高性能 DSP 和 AI 張量模塊而著稱。(圖片來源:Altera)
高速連接是 Agilex 3 架構的另一個優勢。收發器支持高達每秒 12.5 千兆比特 (Gb/s) 的數據傳輸速率,并提供用于 PCIe 3.0、萬兆位以太網 (GbE) 和 LPDDR4 存儲器接口的強化 I/O 塊。對 IEEE 1588 精確時間同步的支持進一步增強了其對實時工業網絡的適用性。
[A3CZ135BB18AE7S] 器件展示了該系列的功能。它包括 135K LE、184 個 DSP 塊,并提供 2.54 TOPS。
復雜系統的高級集成
對于工業自動化和中程視覺系統等應用而言,原始計算能力的重要性可能不如對帶有大量定制邏輯和 I/O 的復雜配置的支持能力。[Cyclone V] FPGA 非常適合這些應用場景,提供最高 300K LE 和廣泛的高速接口。與 Agilex 3 一樣,這些芯片也有純 FPGA 和 SoC 兩種變型。其中 SoC 器件集成了雙核 Arm Cortex-A9。
這些芯片中的可編程結構包括可變精度 DSP 塊,支持三重 9 × 9 和雙重 18 × 18 定點乘法,以及 27 × 27 定點或浮點乘法。這些塊可用于高級信號處理和 AI。
廣泛的 I/O 組合支持多種電壓等級和接口類型。強化邏輯塊可實現先進的高速連接,包括 PCIe 2.0、DDR3 控制器和收發器,運行速度高達 6.144 Gb/s。
開發人員可以使用 [DK-DEV-5CSXC6N-B 開發套件] 評估 Cyclone V SoC 系列(圖 2)。該套件專為快速開發復雜的高吞吐量系統原型而設計。
圖 2:DK-DEV-5CSXC6N-B Cyclone V 開發套件支持高性能原型開發。(圖片來源:Altera)
該套件有幾個顯著特性:
- 雙以太網端口、PCIe x4 連接器和高速夾層卡 (HSMC),每個方向有 16 個 LVDS 通道
- USB 2.0 OTG、CAN、UART 和雙行文本 LCD 接口
- FPGA 側和 HPS 側各 1 千兆字節 (Gb) DDR3 SDRAM、128 兆字節 (Mb) 四通道 SPI 閃存和 4 Gb microSD 卡
該電路板采用 [5CSXFC5D6F31C8N] 器件,包括一個運行頻率為 600 MHz 的雙核 Arm Cortex-A9 處理器、85K LE、87 個 DSP 塊和 288 個 I/O 引腳,封裝為 31 mm × 31 mm 的 896-FBGA。
采用緊湊型封裝的高能效可配置邏輯器件
許多應用都受到空間和功耗的嚴格限制。例如傳感器接口、電源定序和外設控制。[MAX 10] 系列等 FPGA 為這些情況提供了有效的解決方案。MAX 10 器件的配置從 2K LE 到 50K LE 不等,封裝尺寸小至 3 mm × 3 mm。
主要功能包括多達兩個集成式 12 位 ADC、一個 DDR3 存儲器接口以及支持 18 × 18 和雙重 9 × 9 定點模式的乘法器模塊。支持雙圖像存儲的片上閃存允許 FPGA 在沒有外部存儲設備的情況下進行自我配置。
省電功能是 MAX 10 系列最顯著的屬性之一。內置睡眠模式可將動態功耗降低 95% 。借助片上閃存,器件還可在 10 毫秒 (ms) 內完全斷電并恢復運行。
單電源選項進一步簡化了供電。這使得 MAX 10 器件特別適合用于功率域可能需要先于系統其他部分聯機的監控場合。
對 MAX 10 感興趣的開發人員可以使用 [EK-10M08E144] MAX 10 FPGA 評估板(圖 3)對該系列進行評估。該電路板可通過 [Arduino] UNO R3 連接器和測試點訪問外部信號,其布局設計可支持對 ADC 性能和整體電源行為的測量。
圖 3:EK-10M08E144 MAX 10 FPGA 評估板可輕松訪問關鍵 I/O。(圖片來源:Altera)
電路板采用 [10M08SAE144C8G] 器件,包括 8K LE 和一個 ADC,封裝為 144 引腳 LQFP。除內置硬件資源外,該 FPGA 還支持基于 RISC-V 的 Nios V 軟處理器,無需外部微控制器單元 (MCU),設計人員即可實現輕量級控制功能。
適合中程應用的均衡性能
有些應用需要更大的邏輯和 I/O 容量,而入門級 FPGA 無法提供。例如傳感器融合、運動控制和芯片到芯片橋接。[Cyclone 10 LP] FPGA 為滿足這些要求,在器件中提供了多達 120K 的 LE 和 525 個 I/O 引腳,并針對成本敏感型應用中的功率和帶寬平衡進行了優化。
與 MAX 10 一樣,該系列包括適用于濾波、控制回路和基本 AI 推斷等工作負載的 DSP 塊。與 MAX 10 不同,Cyclone 10 LP 器件集成了真正的 LVDS 收發器和片上終端 (OCT),以支持高速數字接口。
對 Cyclone 10 LP 感興趣的開發人員可以使用 [EK-10CL025U256] Cyclone 10 評估套件(圖 4)對該系列進行評估。該電路板提供 Arduino UNO R3 和 [Digilent] Pmod 連接器,擴展方便簡單。其他特性包括 GbE、USB 2.0、128 Mb SDRAM 和 64 Mb 閃存。
圖 4:EK-10CL025U256 Cyclone 10 評估套件支持輕松外設擴展。(圖片來源:Altera)
該電路板采用 [10CL025YU256C8G] 器件,包括 25K LE、66 個 DSP 塊和 150 個 I/O 引腳,封裝尺寸為 14 mm × 14 mm。與 MAX 10 一樣,Cyclone 10 LP 系列也支持 Nios V 軟處理器。
結語
現在,設計人員在嵌入式系統中實現定制邏輯時要比以往任何時候都更加靈活。高性能應用可從集成了 AI 加速器的 FPGA 中獲益。低功耗設計可以利用具有睡眠模式的器件。I/O 密集型系統可以利用具有大量引腳數和高速接口的芯片。重要的是,所有這些功能都可以通過易于使用的工具包,在資源受限型嵌入式系統的嚴格限制下實現。
-
FPGA
+關注
關注
1662文章
22469瀏覽量
638236 -
嵌入式系統
+關注
關注
41文章
3790瀏覽量
133807
發布評論請先 登錄
如何在S32K322的ADC1中使用mcal,通過硬件觸發同時獲得正常ADC和注入ADC的值?
【創芯工坊】PowerWriter 0048 如何在其他IDE中使用PowerWriter的Debugger(燒錄器常見使用問題)
如何在 S32 DS 中使用 BMS GEN2 SDK?
如何在AMD Vitis Unified IDE中使用系統設備樹
Altera全新推出MAX 10 FPGA封裝新選擇
如何調用FPGA板上的按鍵資源的
如何在vivadoHLS中使用.TLite模型
如何在FPGA部署AI模型
如何在智多晶FPGA上使用MIPI接口
基于FPGA的壓縮算法加速實現
Xilinx Ultrascale系列FPGA的時鐘資源與架構解析
如何在資源受限型應用中使用 FPGA
評論