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