0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >工业控制 > 如何将 FPGA SoC 用于安全和连接的硬实时系统

如何将 FPGA SoC 用于安全和连接的硬实时系统

来源: digikey
2023-02-20
类别:工业控制
eye 43
文章创建人 拍明芯城

  现场可编程门阵列 (FPGA)、支持 Linux 的 RISC-V 微控制器单元 (MCU) 子系统、高级存储器架构和高性能通信接口是设计人员的重要工具。对于安全连接系统、安全关键系统以及人工智能 (AI) 和机器学习 (ML) 等各种硬实时确定性系统的设计人员来说尤其如此。

  然而,将这些不同的元件集成到一个安全、互联和确定性的系统中可能是一项具有挑战性和耗时的活动,为各种系统元件布置高速互连也是如此。设计人员需要包括存储器管理单元、存储器保护单元、安全启动功能和千兆级收发器,以实现高速连接。该设计将需要有源和静态电源管理以及对浪涌电流的控制。某些设计需要在0°C至+100°C结温(TJ),而工业环境中的系统将需要在 T 下运行J 从 -40°C 到 +100°C。

  为了应对这些和其他挑战,设计人员可以转向 FPGA 片上系统 (SoC) 器件,这些器件结合了低功耗、热效率和国防级安全性,适用于智能、互联和确定性系统。

  本文回顾了此类FPGA SoC的架构,以及它如何支持连接和确定性系统的高效设计。然后简要介绍EEMBC CoreMark-Pro处理功耗与功耗基准测试,以及代表性FPGA SoC的基准性能视图。它着眼于如何将安全性融入这些FPGA SoC中,并详细介绍了示例性 FPGA 固态硬盘 从 微芯片技术,以及 开发平台 以加快设计过程。最后简要列出了来自 MikroElektronika 可用于实现一系列通信接口,以及全球导航卫星系统(GNSS)定位功能。

  采用 FPGA 架构构建的 SoC

  该SoC的“芯片”是一个FPGA结构,其中包含系统元素,从FPGA到使用硬化FPGA逻辑构建的RISC-V MCU子系统。MCU 子系统包括一个四核 RISC-V MCU 集群、一个 RISC-V 监控内核、一个系统控制器和一个确定性 2 级 (L2) 内存子系统。这些 SoC 中的 FPGA 包括高达 460 K 的逻辑元件、高达 12.7 Gbps 的收发器以及其他输入/输出 (I/O) 模块,包括通用 I/O (GPIO) 和高速外围组件互连 (PCIe) 2。整体架构专为可靠性而设计。它包括所有存储器上的单错误校正和双错误检测 (SECDED)、差分功率分析 (DPA)、物理内存保护和 128 kbs 闪存启动存储器(图 1)。

  

在FPGA结构上实现的RISC-V子系统的图像(点击放大)


  图 1:该 FPGA SoC 中的所有元件(包括 RISC-V 子系统)都在 FPGA 架构上实现。(图片来源:微芯科技)

  Microchip提供其Mi-V(发音为“我的五”)第三方工具和设计资源的生态系统,以支持RISC-V系统的实施。它旨在加速 RISC-V 指令集架构 (ISA) 用于强化 RISC-V 内核和 RISC-V 软内核。Mi-V 生态系统的元素包括访问:

  知识产权 (IP) 许可

  硬件

  操作系统和中间件

  调试器、编译器和设计服务

  FPGA SoC 中的强化型 RISC-V MCU 包括多种调试功能,如无源运行时可配置高级可扩展接口 (AXI) 和指令跟踪。AXI 使设计人员能够监控写入或读取各种存储器的数据,并了解何时写入或读取数据。

  RISC-V MCU 子系统使用五级单问题有序流水线。它不容易受到Spectre或Meltdown漏洞的攻击,这些漏洞可能会影响无序架构。所有五个MCU都与存储器子系统一致,支持确定性非对称多处理(AMP)模式实时系统和Linux的混合。RISC-V子系统的功能包括(图2):

  运行 Linux 和硬实时操作

  将 L1 和 L2 配置为确定性存储器

  DDR4 内存子系统

  禁用/启用分支预测器

  按顺序管道操作

  

RISC-V子系统示意图包括多个处理器和内存元件


  图 2:RISC-V 子系统包括多个处理器和内存元件。(图片来源:微芯科技)

  以更少的能源实现更多的处理

  除了系统操作优势(包括支持硬实时处理)外,这些 FPGA SoC 还具有高能效。EEMBC CoreMark-PRO基准测试是比较嵌入式系统中MCU效率和性能的行业标准。它专门设计用于基准测试硬件性能并取代Dhrystone基准测试。

  CoreMark-PRO 工作负载包括基于四个浮点工作负载和五个常见整数工作负载的各种性能特征、指令级并行性和内存利用率。浮点工作负载包括派生自 LINPACK 的线性代数例程、快速傅里叶变换、用于模式评估的神经网络算法以及 Livermore 循环基准测试的改进版本。JPEG 压缩、XML 解析器、ZIP 压缩和 256 位安全哈希算法 (SHA-256) 构成了整数工作负载的基础。

  这些 SoC FPGA 的 MPFSO95T 模型,如 MPFS095TL-FCSG536E,可在 1.3 瓦时提供多达 6,500 个 Co备注(图 3)。

  

微芯片MPFS095T FPGA芯片芯片协同作用图


  图 3:MPFS095T FPGA SoC(橙色线)以 1.3 瓦的功率提供 6500 个协同作用。(图片来源:微芯科技)

  安全注意事项

  这些 FPGA SoC 的安全关键型和硬实时应用除了需要高能效和强大的处理能力外,还需要强大的安全性。这些 FPGA SoC 的基本安全功能包括抗差分功耗分析 (DPA) 比特流编程、真随机数发生器 (TRNG) 和物理不可克隆功能 (PUF)。它们还包括标准和用户定义的安全启动、物理内存保护,提供与计算机特权状态相关的内存访问限制,包括计算机、管理引擎或用户模式, 以及对崩溃和幽灵攻击的免疫力。

  安全性始于安全的供应链管理,包括在晶圆测试和封装期间使用硬件安全模块(HSM)。在每个 FPGA SoC 中嵌入使用 768 字节数字签名的 x.509 FPGA 证书,增加了供应链保证。

  这些 FPGA SoC 中包含许多片上篡改检测器,以确保安全可靠的运行。如果检测到篡改,则会发出篡改标志,使系统能够根据需要做出响应。一些可用的篡改检测器包括:

  电压监视器

  温度传感器

  时钟毛刺和时钟频率检测器

  JTAG有源探测器

  网状主动检测器

  通过 256 位高级加密标准 (AES-256) 对称分组密码相关功率攻击 (CPA) 对策、确保数据完整性的集成加密摘要功能、用于密钥存储的集成 PUF 以及用于 FPGA 结构和所有片上存储器的归零功能,进一步确保了安全性。

  FPGA SoC 示例

  Microchip Technology 将这些功能和技术结合到其具有多种速度等级、温度额定值和各种封装尺寸的 PolarFire FPGA SoC 中,以支持设计人员对具有 25 K 至 460 K 逻辑元件的各种解决方案的需求。提供四种温度等级(均额定温度为 TJ)、0°C 至 +100°C 扩展商用范围、-40°C 至 +100°C 工业范围、-40°C 至 +125°C 汽车范围和 -55°C 至 +125°C 军用范围。

  设计人员可以选择标准速度等级器件,也可以选择速度快 15% 的 -1 级器件。这些 FPGA SoC 可在 1.0 V 电压下运行以实现最低功耗运行,或以 1.05 V 电压运行以实现更高性能。它们提供多种封装尺寸,包括 11 x 11 毫米 (mm)、16 x 16 mm 和 19 x 19 mm。

  对于需要扩展商用温度操作、标准速度操作和 19 x 19 mm 封装中的 254 K 逻辑元件的应用,设计人员可以使用 MPFS250T-FCVG484EES.对于需要 23 K 逻辑元件的更简单解决方案,设计人员可以转向 MPFS025T-FCVG484E,还具有扩展的商业温度操作和标准速度等级,采用 19 x 19 mm 封装。这 MPFS250T-1FCSG536T2 具有 254 K 逻辑元件,专为高性能汽车系统而设计,工作温度范围为 -40 至 125°C,速度等级为 -1,时钟速度提高了 15%,采用紧凑的 16 x 16 mm 封装,间距为 0.5 mm 的 536 个球(图 4)。

  

微芯片汽车温度MPFS250T-1FCSG536T2的图像


  图 4:汽车温度 MPFS250T-1FCSG536T2 采用 16 x 16 mm 封装,球数为 536,间距为 0.5 mm。(图片来源:微芯科技)

  FPGA SoC 开发平台

  为了加快使用PolarFire FPGA SoC的系统设计,Microchip提供了 强积金-冰柱-套件-ES PolarFire SoC Icicle套件,支持探索具有低功耗实时执行功能的五核支持Linux的RISC-V微处理器子系统。该套件包括评估设计所需的免费Libero Silver许可证。它支持单一语言的编程和调试功能。

  这些 FPGA SoC 受 矢量布洛克斯 加速器软件开发套件 (SDK),支持低功耗、小尺寸 AI/ML 应用。重点是简化设计过程,使设计人员不需要具有先前的FPGA设计经验。VectorBlox加速器SDK使开发人员能够使用C / C++对高能效神经网络进行编程。Icicle 套件具有众多功能,可提供全面的开发环境,包括用于监控各种电源域的多轨电源传感器系统、PCIe 根端口和板载存储器(包括 LPDDR4、QSPI 和 eMMC 闪存)以运行 Linux 和 Raspberry Pi,以及用于大量有线和无线连接选项的 mikroBUS 扩展端口,以及 GNSS 定位功能等功能扩展(图 5)。

  

Microchip综合FPGA SoC开发环境图片(点击放大)


  图 5:这个全面的 FPGA SoC 开发环境包括用于 Raspberry Pi(右上)和 mikroBUS(右下)扩展板的连接器。(图片来源:微芯科技)

  扩展板

  mikroBUS 扩展板的一些示例包括:

  米克罗-986,用于使用串行外设接口 (SPI) 添加 CAN 总线连接。

  米克罗-1582,用于 MCU 和 RS-232 总线之间的接口。

  米克罗-989,用于连接 RS422/485 通信总线。

  米克罗-3144,支持 LTE Cat M1 和 NB1 技术,可实现与 3GPP 物联网设备的可靠和简单的连接。

  米克罗-2670,通过同时接收 GPS 和伽利略星座以及北斗或 GLONASS 实现 GNSS 功能,从而在城市峡谷信号较弱或干扰的情况下实现高定位精度。

  结论

  设计人员在开发互联、安全关键和硬实时确定性系统时可以求助于 FPGA SoC。FPGA SoC 提供广泛的系统元件,包括 FPGA 结构、具有高性能存储器的 RISC-V MCU 子系统、高速通信接口和众多安全功能。为了帮助设计人员入门,我们提供了包含所有必要元素的开发板和环境,包括可用于实现各种通信和定位功能的扩展板。


责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯