您的位置 首页 方案

如何为根据FPGA的嵌入式体系进行安全晋级?

如何防止器件ldquo;砖头化rdquo;,只发出警告就够了吗?ldquo;系统正在更新,请勿关闭电源。rdquo;我们都看到过这个警告,它通常在电子器件要在闪存

怎么避免器材“砖头化”,只宣布正告就够了吗?

“体系正在更新,请勿封闭电源。”咱们都看到过这个正告,它一般在电子器材要在闪存装置代码更新时呈现。假如更新被中止,闪存将无法正确更新,代码将会损坏,而器材无法运转,即“砖头化” (bricked)。这种我们了解的正告存在的原因,是由于运用闪存的大多数半导体器材在编程或擦除操作期间需求一向供电。明显,避免器材“砖头化”是非常重要的。可是,只宣布正告就够了吗?有些嵌入式器材乃至都没有用户显示器,因而无法产生正告。在规划中怎么才干保证牢靠且安全的长途体系更新呢?

嵌入式体系长途晋级的重要性

长途晋级对衔接的嵌入式体系日益重要。经过互联网长途修正缝隙或添加新特性,能够节约许多的维护费用;当布置数千个嵌入式体系时,维护便是一个大问题了。跟着嵌入式体系安全问题的不断添加,经过长途安全定向代码晋级来修正潜在安全缝隙变得益发重要。明显,晋级有必要安全地完结,不然,进犯算法便很简单运用不安全的更新来损坏体系。下面是一个典型体系的示例,有助于更好地了解安全牢靠的长途晋级设备的要求。

体系示例——操控平面桥

通讯或网络机箱内的操控平面桥(Control Plane Bridge),是需求长途更新的常见体系示例。这种子体系汇集了许多低速外设,比方模仿传感器、电源办理模块、电扇、毛病记载存储器和运用I2C、 SPI和GPIO接口的状况输出。然后,能够选用速度更快的总线——或许是通讯和连网机箱内很常见的子体系接口PCIe,与低速外设直接通讯。这种机箱操控子体系能够施行智能会聚功用,当规则发动点被激活,例如抵达最高温度或最低电压水平常,便会“推动”通讯。图1所示便是这样一个体系,它是用装备片上微操控器的FPGA (一般称为SoC FPGA) 完成的。


图1 经PCIe长途晋级的机箱操控平面桥

FPGA和闪存

在上面的比如中,长途更新经由PCIe总线完成,但并未对编程期间或许呈现的断电进行维护。让咱们看看常见的FPGA施行类型,然后更好地防备闪存长途更新进程中忽然断电时或许呈现的严重毛病。

简直每个根据FPGA的体系都需求选用某种方式的非易失性存储器来贮存装备存储。一般说来,装备存储器坐落芯片外或芯片上。根据SRAM的FPGA需求外部闪存,用于上电时的装备。根据闪存的FPGA能够运用嵌在FPGA结构(结构嵌入闪存FPGA)内的装备存储器,或运用根据SRAM的结构,但将一个闪存块放在芯片上(旁边面闪存FPGA)。

根据SRAM的FPGA一般运用NOR SPI闪存,由于它耗费的引脚数最少,几家供货商有相同的引脚输出,并且密度高达1 Gb。现在的NOR SPI闪存器材具有32位地址挑选,可扩展成为4GB器材,并且不需求改动指令和操控协议。当这种SPI闪存处于程序或擦除形式 (电荷泵发动) 且电力消失时,会产生什么事情呢?电荷在哪里消失?是否有电路检测到这些闪存的电力毛病并将电荷安全地引导到地上?一般说来,正被写入的页面将呈现数据损坏。


图2 三种FPGA装备图:带外部装备闪存的根据SRAM的FPGA、旁边面闪存FPGA和嵌入闪存FPGA

旁边面闪存FPGA体系选用较宽的片上数据总线在上电时载入根据SRAM的装备存储。一般,这种办法载入装备比根据SRAM的FPGA要快,由于后者是选用外部闪存来装备器材的。可是,这种办法存在程序或擦除周期期间功率丢失的问题。电荷去了哪里?闪存是否被损坏?是否仅写入页面被损坏?整个闪存都存在危险?FPGA是否能够检测被损坏的片上存储器,或许,在上电期间,被损坏的数据是否被载入到装备存储器内?

闪存的损坏是个问题,怎么保证长途数据的安全也非常重要。当嵌入式产品可由终端用户拜访时,就存在被篡改的或许。为了避免进犯,有必要一起选用软件和硬件的安全功用。仅对长途装备数据文件进行加密远远不够。尽管这种软件加密安全有用,可是还有必要将解密数据的硬件 (FPGA) 置于安全维护内。当用户拜访嵌入式器材时,加密数据文件很简单被提取。运用价格便宜的电磁探针和进行差分功耗剖析 (DPA) 即可完成这一点。选用这种办法提取FPGA安全密匙的比如许多。假如FPGA并未内置DPA对立办法,则任何长途更新都存在安全危险。当用户能够拜访嵌入式产品时,假如没有DPA对立办法,便好像中门大开,没有安全可言。

在嵌入闪存的FPGA中,装备贮存在芯片上,并严密集成在FPGA结构内。例如,在美高森美SmartFusion2和IGLOO2 flash FPGA上,可经由外部通讯端口如USB、PCIe或JTAG等进行编程,整个编程进程由片上专用编程接口办理。此外,SmartFusion2和 IGLOO2 FPGA运用了一种称为“在运用中编程”(IAP)的高档编程机制,即使在编程期间有功率损耗的情况下,仍可供给牢靠且安全的编程。让咱们看看怎么选用 IAP机制来完成现在嵌入式体系需求的牢靠长途晋级的才能。

在根据FPGA的嵌入式体系中完成牢靠且安全的长途更新

嵌入闪存的FPGA能够供给更简单支撑安全牢靠的长途更新所需的要害功用。例如,SmartFusion2具有施行要害桥接功用及安全和IAP功用需求的一切干流FPGA特色。如图3所示,低速接口能够选用I2C和GPIO衔接。高速主机接口PCIe则作为不需求FPGA结构的专用端口。


图3 SmartFusion2“在运用中编程”(IAP)支撑机箱操控平面桥,以完成安全牢靠的长途更新

片上处理器能够运用高速存储子体系(HSMS)拜访大型内部闪存来进行代码贮存,拜访大型内部SRAM来进行数据缓冲,而专用DDR操控器则在有需求时拜访其它外部存储器。专用体系操控器供给编程期间运用的安全功用,以及长途更新期间运用的IAP功用。图4详细描述了SmartFusion2 FPGA上能够供给的要害功用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/147293.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部