邊緣 AI融合多功能工作負載,致使傳統架構面臨低延遲與確定性的挑戰。當FPGA結合專用張量區塊與熟悉工具鏈,可協助開發者突破軟硬體壁壘,實現高效能、長壽命的智慧邊緣部署。
網路邊緣的人工智慧(邊緣 AI)幾乎不僅限於推論功能。實際部署通常會涉及高速輸入/輸出(I/O)、訊號調節以及即時控制迴路,且這些全都會同時運作。這些多功能工作負載要求嚴密的協調以及不同等級的確定性,因此設計人員不容易以主流 AI 硬體滿足需求。
有兩個因素會讓問題更加複雜。首先,AI模型正以極快的速度演進,因此設計人員必須採用可支援快速演算法更新的平台。此外,許多邊緣系統會在現場運作長達十年甚至更久,因此確保長期適應能力並不容易。其次,從模型的訓練到系統的部署,這過程仍雜亂無章。資料科學家會使用PyTorch和TensorFlow,但嵌入式團隊則使用完全不同的工具鏈,這在交接過程中會造成摩擦,導致生產時間變慢。
應對這些挑戰所需的平台,要結合高吞吐量AI處理、確定性行為、彈性 I/O 以及長期適應性,而且必須在邊緣部署常見的受限功耗範圍內運作。
本文將重點介紹促使設計人員探索新型邊緣 AI架構的應用與相關需求。接著會介紹具備邊緣AI功能的現場可編程閘陣列(FPGA)裝置及來自Altera的軟體工具,並展示如何用來滿足這些應用在各種效能與功率點上的需求。
邊緣AI演進催生架構創新
邊緣系統日益採用多樣化的AI技術,包括用於偵測異常的傳統機器學習(ML)、用於感知的卷積神經網路(CNN),以及用於大型語言模型(LLM)的轉換器。這些運算密集型演算法通常與要求嚴格的非AI功能共存,例如訊號處理、連網和即時控制。
自主系統(Autonomous Systems)就是絕佳例子之一。經常要從多種感測器模態 (如視訊、音訊、雷達、LiDAR 和運動/位置回饋) 擷取資料、以高吞吐量進行預處理、使用先進的AI分析結果,然後管理高精度控制迴路,而且所有流程皆需具備可靠的確定性。
在工業自動化、醫療造影、國防和電信應用中,可找到許多類似的範例。有個常見的情況是,傳統架構難以配合融合式工作負載。
FPGA契合邊緣AI需求
相較之下,這些需求與FPGA的能力非常匹配。從本質上講,FPGA提供可配置的邏輯,可達到真正的並行運算,其時序行為在設計階段即已確定,不會在運行時波動。此架構可達到低延遲確定性,這對邊緣AI來說相當關鍵。此彈性邏輯同時利用強大的I/O:FPGA通常可提供大量高速I/O,能與多種感測器和致動器介接,能與AI處理緊密結合。
FPGA也包含分散式內部記憶體,可將資料保留在靠近資料運算的邏輯所在之處。這可減少多個處理階段必須爭用共用記憶體匯流排時所產生的瓶頸,這在處理器架構中是一項常見的限制。
許多FPGA也包含專門的數位訊號處理(DSP)硬體。這些強化電路比起一般用途架構,可在訊號處理工作負載上提供更高的效能與更優異的能源效率。某些FPGA也整合了固線式處理器系統,可以運行標準軟體堆疊,包括Linux,因此可針對像是連網、裝置管理與使用者介面等任務,達到傳統的軟體開發。
簡而言之,單一FPGA就可統整原本可能需要個別 I/O晶片、AI加速器、DSP及控制平面處理器的功能。如此一來,就可減少物料清單(BOM)、縮小電路板佔用面積,並且降低功耗,同時維持邊緣 AI應用所需的低延遲和確定性。
AI張量區塊的加入開啟全新可能
傳統的FPGA DSP硬體就已經非常適合許多邊緣工作負載,但 AI 推論往往以高密度但低精度的乘加運算為主。為了解決這個問題,Altera的Agilex 3 和 Agilex 5 裝置配備了增強型DSP及AI張量區塊。這是專門用於矩陣對矩陣、以及向量對矩陣相乘的專用硬體,這類運算在 AI 運算圖中會反覆出現。
這種做法的核心是純量積以及加法器/累加器引擎(圖一)。在張量模式中,固線式點積引擎會使用 8位元輸入和預載的8位元權重,執行10元素點積。為了擴大動態範圍,資料路徑也可以使用共享的「共用指數」來進行區塊浮點式縮放,以解決AI推論通常需要高動態範圍但低精度的情況。
|
點積結果為 32 位元 (定點或單精度浮點),並且可以串接至額外的加法器/累加器階段,以計算跨鄰近區塊的較大點積。每個AI張量區塊包含兩個點積欄位,可達到多種運算模式。
在典型使用情境中,有些增強型數學硬體會用於傳統的DSP功能,例如對雷達資料執行快速傅立葉轉換(FFT)。其他則當作AI張量區塊使用,例如用CNN進行物件偵測。這種靈活性對於必須同時處理AI與其他高運算密集功能的邊緣系統來說相當關鍵。
滿足不同AI工作負載的FPGA產品線
Agilex系列在效能擴展上提供極大的彈性,其產品陣容涵蓋了從尺寸僅有12×12 mm、主打極致效率的元件,到能夠提供高達152.6 TOPS峰值算力的高效能變體,且在I/O與記憶體介面能力上也提供同等幅度的擴展性。
高效能元件的代表如Agilex 5 A5ED065BB32AE4SR0,在 32×32 mm的封裝中可提供22.17 TOPS的算力。而主打效率的代表則如Agilex 3 A3CW135BM16AE6S,在16×16 mm的封裝中提供2.8 TOPS的算力。
這兩個系列均有傳統 FPGA 版本,或是搭載整合式Arm處理器的系統單晶片(SoC)版本。Agilex 3 SoC 含有雙核心、800 MHz 的 Arm Cortex-A55。Agilex 5 SoC 具有非對稱叢集搭配雙核心1.8 GHz Cortex-A76 以及雙核心 1.5 GHz Cortex-A55。這兩種配置都支援 Linux,因此能針對連網、裝置管理與使用者介面進行傳統的軟體開發。
用熟悉工具簡化邊緣AI在FPGA上部署
AI 模型通常會在以軟體為中心的框架中開發,且迭代週期迅速,而 FPGA 實作歷來都需要具備硬體開發技能且整合週期較長。Altera的FPGA AI Suite(圖二)提供更直接的途徑,能以相容於業界標準 AI 工具的流程,將訓練好的模型轉換成可部署的 FPGA 推論智慧財產權(IP)。
|
該工作流程簡述如下:
‧ 開發模型:在 PyTorch、TensorFlow 或 ONNX 等標準框架中開發推論模型。
‧ 模型轉換:使用 OpenVINO 工具套件將模型轉換為中間表示(IR),其中包含圖形檔案(.xml)與權重(.bin)。
‧ 圖形編譯:將 IR 檔案送入 FPGA AI Graph Compiler(圖形編譯器),由其將模型映射到可用的 FPGA 資源上。這些資源可配置為主機處理器、內部處理器或無本機顯示(Headless)的配置。
‧ 編譯與部署:使用 Quartus Prime 專業版進行最後的編譯與部署,並透過推論引擎執行時期堆疊與專屬的 FPGA AI API 來管理記憶體搬移與硬體排程。
‧ 架構優化:在編譯過程中,可利用 Architecture Optimizer(架構優化器)來平衡效能與資源調配。例如確保該硬體實作在滿足推論吞吐量目標的同時,仍為其他 FPGA 邏輯留有足夠空間。
在實務上,這種做法的價值在於可將「在 FPGA 上部署」轉變為一個整合過程,而非加速器的設計工作。資料科學家可以專注在既定的模型開發工作流程中,同時 FPGA 和嵌入式團隊會收到自然適合建置與部署週期的作品,因此可隨著模型與需求演進加快迭代速度。可利用OpenVINO 工具組的 Open Model Zoo 提供的預訓練模型進一步加速開發。
利用易用的開發套件快速上手
為了讓設計人員能快速探索 FPGA上的邊緣 AI,市場上已有多款現成的開發套件。
對於高效能應用,Terasic P0775 Atum A5 開發套件(圖三)圍繞 Agilex 5 A5ED065BB32AE4SR0晶片打造,提供了豐富、適合邊緣級系統的介面,其核心規格包括 8 GB DDR4、QSFP+與 2.5 GbE網路埠、PCIe Gen 3 x4、雙 MIPI 相機接頭及HDMI輸出。
|
若是注重效率的應用,設計人員可轉用DK-A3W135BM16AEA Agilex 3 FPGA與SoC C系列開發套件(圖四)。此套件以 Agilex 3 A3CW135BM16AE6S 為核心,強調具備生態系統友善擴充的緊湊型原型設計。此板件提供 4 GB 的 LPDDR4、GbE、DisplayPort 和 USB 2.0,並配備Raspberry Pi HAT連接器,以及Digilent Pmod介面,可順利進行擴充。
|
結論
邊緣端引進LLM及其他新型 AI 工作負載,促使開發人員尋求新的作法。FPGA 可提供獨特的解決方案,不僅具備低延遲且確定性的效能,還能處理其他許多系統功能。透過具備 AI 功能的 Agilex FPGA 及 FPGA AI Suite,開發人員可輕鬆快速地運用這些功能,開創新的架構可能性,達到高度適應且生命週期長久的設計。
(本文作者Barley Li為DigiKey亞太區技術應用工程經理)


