【導(dǎo)讀】現(xiàn)場可編程門陣列 (FPGA)、支持 Linux 的RISC-V 微控制器單元 (MCU) 子系統(tǒng)、先進(jìn)的存儲器架構(gòu)和高性能通信接口,是設(shè)計人員的重要工具。對于安全互聯(lián)系統(tǒng)、安全關(guān)鍵型系統(tǒng),以及人工智能 (AI) 和機(jī)器學(xué)習(xí) (ML) 等各種硬實(shí)時確定性系統(tǒng)的設(shè)計人員,更是如此。
然而,將這些不同要素整合成一個安全、互聯(lián)且具確定性的系統(tǒng)可能極具挑戰(zhàn)性且非常耗時,為各種系統(tǒng)要素布設(shè)高速互連器件也是一樣。設(shè)計人員需要提供存儲器管理單元、存儲器保護(hù)單元、安全啟動能力以及用于高速連接的千兆級收發(fā)器。設(shè)計將需要活動和靜態(tài)功率管理以及涌流控制。一些設(shè)計要求能夠在 0°C 至 +100°C 結(jié)溫 (TJ) 的擴(kuò)展商用溫度范圍內(nèi)工作,而工業(yè)環(huán)境中的系統(tǒng)需要在 -40°C 至 +100°C 的 TJ 內(nèi)工作。
為了應(yīng)對這些和其他挑戰(zhàn),設(shè)計人員可以借助 FPGA 片上系統(tǒng) (SoC) 器件,這種器件具備低功耗、熱效率和國防級安全等特點(diǎn),可實(shí)現(xiàn)智能、互聯(lián)、確定性的系統(tǒng)。
本文回顧了此類 FPGA SoC 的架構(gòu),以及它如何支持高效設(shè)計互聯(lián)確定性系統(tǒng)。隨后,本文簡要介紹了EEMBC CoreMark-Pro 處理能力與功耗基準(zhǔn)的關(guān)系,并考察了一款代表性 FPGA SoC 的基準(zhǔn)性能。本文探討了如何將安全性植入這些 FPGA SoC,并詳細(xì)介紹了 Microchip Technology 的典范 FPGA SoC,以及能加速設(shè)計過程的開發(fā)平臺。最后,文中簡要列出了 MikroElektronika 的擴(kuò)展板,這些擴(kuò)展板可用于實(shí)現(xiàn)一系列通信接口和全球衛(wèi)星導(dǎo)航系統(tǒng)(GNSS) 定位能力。
用 FPGA 結(jié)構(gòu)構(gòu)建的 SoC
該 SoC 的“芯片”是 FPGA 結(jié)構(gòu),包含各種系統(tǒng)要素:從 FPGA 到用強(qiáng)化 FPGA 邏輯構(gòu)建的 RISC-V MCU 子系統(tǒng)。MCU 子系統(tǒng)包括一個四核 RISC-V MCU 集群、一個 RISC-V 監(jiān)視核心、一個系統(tǒng)控制器和一個確定性 2 級 (L2) 存儲器子系統(tǒng)。這些SoC 中的 FPGA 包含多達(dá) 460 K 的邏輯元件、高達(dá) 12.7 Gbps 的收發(fā)器以及其他輸入/輸出 (I/O) 模塊,包括通用 I/O (GPIO) 和外設(shè)快速互連標(biāo)準(zhǔn) (PCIe) 2 模塊。整體架構(gòu)設(shè)計可靠。其包括用于所有存儲器的單錯誤校正和雙錯誤檢測(SECDED)、差分功率分析 (DPA)、物理存儲器保護(hù)以及128 Kb 閃存啟動存儲器(圖 1)。
圖 1:該 FPGA SoC 的所有要素(包括 RISC-V 子系統(tǒng))都是在 FPGA 結(jié)構(gòu)上實(shí)現(xiàn)的。(圖片來源:Microchip Technology)
Microchip 提供由第三方工具和設(shè)計資源組成的 Mi-V(發(fā)音為“my five”)生態(tài)系統(tǒng),以支持 RISC-V 系統(tǒng)的實(shí)現(xiàn)。該生態(tài)系統(tǒng)的建立是為了加快 RISC-V 指令集架構(gòu) (ISA) 在強(qiáng)化 RISC-V 內(nèi)核和 RISC-V 軟內(nèi)核中的應(yīng)用。Mi-V 生態(tài)系統(tǒng)的要素包括:
● 知識產(chǎn)權(quán) (IP) 許可證
● 硬件
● 操作系統(tǒng)和中間件
● 調(diào)試器、編譯器和設(shè)計服務(wù)
FPGA SoC 中的強(qiáng)化 RISC-V MCU 包括多種調(diào)試功能,如無源運(yùn)行時可配置的高級可擴(kuò)展接口 (AXI) 和指令跟蹤。通過 AXI,設(shè)計人員可以監(jiān)控寫入各種存儲器或從中讀取的數(shù)據(jù),并知道數(shù)據(jù)被寫入或讀取的時間。
RISC-V MCU 子系統(tǒng)采用 5 級單發(fā)射有序流水線。此流水線不易受到 Spectre 或 Meltdown 漏洞(可能會導(dǎo)致亂序架構(gòu)遭受攻擊)的影響。所有 5 個 MCU 與存儲器子系統(tǒng)相一致,支持各種確定性非對稱多處理 (AMP) 模式實(shí)時系統(tǒng)和 Linux。RISC-V 子系統(tǒng)的功能包括(圖 2):
● 運(yùn)行 Linux 和硬實(shí)時操作
● 將 L1 和 L2 配置為確定性存儲器
● DDR4 存儲器子系統(tǒng)
● 禁用/啟用分支預(yù)測器
● 有序流水線操作
圖 2:RISC-V 子系統(tǒng)包括多個處理器和存儲器元件。(圖片來源:Microchip Technology)
以更低能耗提供更強(qiáng)大處理能力
這些 FPGA SoC 除了系統(tǒng)運(yùn)行優(yōu)勢(包括支持硬實(shí)時處理)之外,還具有非常高的能效。EEMBC CoreMark-PRO 基準(zhǔn)測試是比較嵌入式系統(tǒng)中 MCU 的效率和性能的一種行業(yè)標(biāo)準(zhǔn),專門設(shè)計用來衡量硬件性能,并取代 Dhrystone 基準(zhǔn)。
CoreMark-PRO工作負(fù)載包括 4 種浮點(diǎn)工作負(fù)載和 5 種流行的整數(shù)工作負(fù)載,其性能特點(diǎn)、指令級并行和存儲器利用率各不相同。浮點(diǎn)工作負(fù)載包括源自 LINPACK 的線性代數(shù)例程、快速傅里葉變換、用于模式評估的神經(jīng)網(wǎng)絡(luò)算法以及改進(jìn)版的Livermore 循環(huán)基準(zhǔn)測試。JPEG 壓縮、XML 解析器、ZIP 壓縮和 256 位安全哈希函數(shù)算法 (SHA-256) 構(gòu)成整數(shù)工作負(fù)載的基礎(chǔ)。
這些 SoC FPGA 的 MPFSO95T 模型,如 MPFS095TL-FCSG536E,可在 1.3 W 下實(shí)現(xiàn)高達(dá) 6500 Coremarks(圖 3)。
圖 3:MPFS095T FPGA SoC(橙線)在 1.3 W 下實(shí)現(xiàn) 6500 Coremarks。(圖片來源:Microchip Technology)
安全考慮
這些 FPGA SoC 的安全關(guān)鍵型和硬實(shí)時應(yīng)用除了需要高能效和強(qiáng)大的處理能力外,還需要強(qiáng)大的安全性。這些 FPGA SoC 的基本安全功能包括防差分功率分析 (DPA) 的位流編程、真隨機(jī)數(shù)發(fā)生器 (TRNG) 和物理不可克隆功能 (PUF)。安全功能還包括:標(biāo)準(zhǔn)和用戶自定義的安全啟動;物理存儲器保護(hù),其提供與機(jī)器的特權(quán)狀態(tài)相關(guān)的存儲器訪問限制,包括機(jī)器、超級用戶或用戶模式;以及免受 Meltdown 和 Spectre 攻擊的能力。
安全始于安全的供應(yīng)鏈管理,包括在晶圓測試和封裝期間使用硬件安全模塊 (HSM)。每個 FPGA SoC 中都嵌入了 768 字節(jié)的數(shù)字簽名 x.509 FPGA 證書,以增強(qiáng)供應(yīng)鏈的安全保證。
這些 FPGA SoC 中包含許多片上防篡改檢測器,以確保其安全可靠地運(yùn)行。如果檢測到篡改,就會發(fā)出一個篡改標(biāo)志信號,使系統(tǒng)能夠根據(jù)需要作出響應(yīng)。提供的一些防篡改檢測器包括:
● 電壓監(jiān)控器
● 溫度傳感器
● 時鐘毛刺和時鐘頻率檢測器
● JTAG 主動檢測器
● Mesh 主動檢測器
256位高級加密標(biāo)準(zhǔn) (AES-256) 對稱分組密碼相關(guān)性功耗攻擊 (CPA) 防范措施、確保數(shù)據(jù)完整性的集成加密摘要功能、用于密鑰存儲的集成 PUF,以及用于 FPGA 結(jié)構(gòu)和所有片上存儲器的歸零功能,進(jìn)一步確保了安全性。
FPGA SoC 實(shí)例
Microchip Technology 將這些能力和技術(shù)整合到其 PolarFire FPGA SoC 中,這些 SoC 提供多種速度等級、溫度等級和不同封裝尺寸,以支持設(shè)計人員對 25 K 至 460 K 邏輯元件的廣泛解決方案需求。有 4 個溫度等級可供選擇(均為 TJ 額定值):0°C 至 +100°C 的擴(kuò)展商用范圍、-40°C 至 +100°C 的工業(yè)范圍、-40°C 至 +125°C 的汽車范圍和 -55°C 至 +125°C 的軍用范圍。
設(shè)計人員可以選擇標(biāo)準(zhǔn)速度等級的器件,或選擇速度快 15% 的 -1 速度級器件。這些FPGA SoC 可以在 1.0 V 電壓下工作以實(shí)現(xiàn)最低功耗,或者在 1.05 V 電壓下工作以獲得更高性能。它們提供一系列封裝尺寸,包括 11 x 11 mm、16 x 16 mm 和 19 x 19 mm。
對于需要擴(kuò)展商用溫度范圍、標(biāo)準(zhǔn)速度、254 K 邏輯元件和 19 x 19 mm 封裝的應(yīng)用,設(shè)計人員可以使用 MPFS250T-FCVG484EES。對于需要 23 K 邏輯元件的更簡單解決方案,設(shè)計人員可以使用 MPFS025T-FCVG484E,該元件采用 19 x 19 mm 封裝,也能在擴(kuò)展商用溫度范圍內(nèi)以標(biāo)準(zhǔn)速度工作。具有 254 K 邏輯元件的 MPFS250T-1FCSG536T2 專為高性能汽車系統(tǒng)而設(shè)計,其工作溫度范圍為 -40 至 125°C,速度等級為 -1,時鐘速度快 15%,采用緊湊型16 x 16 mm 封裝,焊球數(shù)為 536,間距為 0.5 mm(圖 4)。
圖 4:汽車溫度 MPFS250T-1FCSG536T2 采用 16 x 16 mm 封裝,焊球數(shù)為 536,間距為 0.5 mm。(圖片來源:Microchip Technology)
FPGA SoC 開發(fā)平臺
為了加快采用 PolarFire FPGA SoC 的系統(tǒng)設(shè)計,Microchip 提供 MPFS-ICICLE-KIT-ES PolarFire SoC Icicle 套件,其支持探索低功耗實(shí)時執(zhí)行、可運(yùn)行 Linux 的五核 RISC-V 微處理器子系統(tǒng)。該套件包括一個免費(fèi)的 Libero Silver 許可證,能滿足評估設(shè)計需要。它支持單一語言編程和調(diào)試功能。
這些 FPGA SoC 在 VectorBlox 加速器軟件開發(fā)工具包 (SDK) 的支持下,可以實(shí)現(xiàn)低功耗、小尺寸的 AI/ML 應(yīng)用。該工具包旨在簡化設(shè)計過程,設(shè)計人員事先無需具備 FPGA 設(shè)計經(jīng)驗。VectorBlox 加速器 SDK 使開發(fā)人員可以使用 C/C++ 語言對高能效神經(jīng)網(wǎng)絡(luò)進(jìn)行編程。Icicle 套件提供一個全面的開發(fā)環(huán)境,具備眾多功能,包括:監(jiān)視各種功率域的多軌功率傳感器系統(tǒng),PCIe 根端口,用于運(yùn)行 Linux 和 Raspberry Pi 的板載存儲器(包括 LPDDR4、QSPI 和 eMMC 閃存),用于一系列有線和無線連接選項的 mikroBUS 擴(kuò)展端口,以及 GNSS 定位能力等功能擴(kuò)展(圖 5)。
圖 5:該 FPGA SoC 綜合開發(fā)環(huán)境包括用于連接 Raspberry Pi(右上方)和 mikroBUS(右下方)擴(kuò)展板的連接器。(圖片來源:Microchip Technology)
擴(kuò)展版
mikroBUS擴(kuò)展板的幾個例子包括:
MIKROE-986,使用串行外設(shè)接口 (SPI) 增加 CAN 總線連接。
MIKROE-1582,用于 MCU 和 RS-232 總線之間的接口。
MIKROE-989,用于與 RS422/485 通信總線連接。
MIKROE-3144,支持 LTE Cat M1 和 NB1 技術(shù),實(shí)現(xiàn)與 3GPP 物聯(lián)網(wǎng)設(shè)備的可靠簡單連接。
MIKROE-2670,支持 GNSS 功能,可同時接收 GPS 和Galileo 信號以及北斗或 GLONASS 信號,在城市峽谷中信號較弱或有干擾的情況下也能實(shí)現(xiàn)高定位精度。
總結(jié)
開發(fā)互聯(lián)、安全關(guān)鍵型和硬實(shí)時確定性系統(tǒng)時,設(shè)計人員可以采用 FPGA SoC。FPGA SoC 提供諸多系統(tǒng)要素,包括 FPGA 結(jié)構(gòu)、帶有高性能存儲器的 RISC-V MCU 子系統(tǒng)、高速通信接口和眾多安全功能。為了幫助設(shè)計人員開始工作,相關(guān)廠商提供了包含所有必要元件的開發(fā)板和環(huán)境,包括可用于實(shí)現(xiàn)廣泛通信和定位功能的擴(kuò)展板。
小編的話
設(shè)計一個高完整度的硬實(shí)時確定性系統(tǒng)面臨諸多挑戰(zhàn),相信有不少系統(tǒng)設(shè)計工程師朋友都有過在安全、互聯(lián)和高效及低功耗這些方面要如何配置子系統(tǒng)才能實(shí)現(xiàn)最佳性能的困擾。本文介紹的利用FPGA架構(gòu)進(jìn)行SoC設(shè)計的方法,提供了一個高效靈活的實(shí)現(xiàn)路徑。您認(rèn)為應(yīng)用FPGA架構(gòu)進(jìn)行系統(tǒng)芯片設(shè)計是一個理想的方法嗎?您是否有采用過文中提到的器件和開發(fā)平臺進(jìn)行系統(tǒng)開發(fā)?
作者:Jeff Shepard 來源:DigiKey
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。
推薦閱讀:
半導(dǎo)體器件擊穿機(jī)理分析及設(shè)計注意事項
為什么消費(fèi)類DRAM無法滿足工業(yè)應(yīng)用需求?
長電科技鄭力:高性能先進(jìn)封裝創(chuàng)新推動微系統(tǒng)集成變革