当前位置:首页 > EDA > 电子设计自动化
[导读]目前,汽车中使用的复杂电子系统越来越多,而汽车系统的任何故障都会置乘客于险境,这就要求设计出具有“高度可靠性”的系统。同时,由于FPGA能够集成和实现复杂的功能,因而系统设计人员往往倾向于在这些

目前,汽车中使用的复杂电子系统越来越多,而汽车系统的任何故障都会置乘客于险境,这就要求设计出具有“高度可靠性”的系统。同时,由于FPGA能够集成和实现复杂的功能,因而系统设计人员往往倾向于在这些系统中采用 FPGA。不过,将FPGA用于汽车系统时需要关注两个主要问题:确保用于FPGA初始化的配置代码正确无误;防止器件工作时SRAM的内容遭到损坏。只有这些问题得到彻底解决,FPGA才能成为高度可靠汽车系统的组成部分。幸运的是,目前通过AEC-Q100认证的FPGA已加入先进的特性,能够有效解决上述问题。本文介绍的几个方案可用于解决保护初始化配置和防止潜在的SRAM内容损坏的问题。

保护FPGA的配置

随着系统上电,基于SRAM的FPGA将从外部源加载其配置。引导源可以是存储器件,如串行EEPROM或Flash ,也可以是智能器件,如微控制器。针对初始化位流,所有的FPGA都具有某种类型的循环冗余校验(CRC),在启动结束时进行测试,检验传送是否完整。如果在位流中检测到一个差错,FPGA将无法初始化。这可以防止系统产生错误的(也可能是危险的)操作。大多数的FPGA将通过对一个外部引脚置位,来告知系统控制器初始化失败,请求另一个初始化序列,以期取得配置成功。在遇到以下几种情况时,会发生初始化位流的损坏情况:

* 引导存储器的硬件故障

* 存储器内容保存的问题

* 蓄意篡改

* 存储器内容被擦除

* 电气噪声

利用FPGA设计高可靠性的汽车系统时,为了正确处理这些情况,必须遵循以下四个基本步骤:

第一步是使用具有片上闪存的非易失性SRAM FPGA。这改变了从外部存储器引导配置载入FPGA内部的方式。采用将引导源移入同一块芯片的方法消除了许多常见的初始化失败模式。这种类型的集成设计还提升了初始化速度,可在即时启动系统中使用这种FPGA。

第二步是添加一个可靠的外部自行引导器件(图1) 。FPGA的一个主要特点是能够现场重复编程。对汽车系统而言,这一特性允许下载新的程序,用于授权的现场更新,修复设计错误或添加额外的功能。不过,在传输和对存储器编程期间,数据流可能被损坏,而且损坏的数据流会阻止正确的FPGA初始化。为了应对更新过程中的损坏,在外部存储器件中已复制了初始化代码,称为“golden”的厂家备份。即便有任何问题,存储在内部存储器的配置代码都可以使该系统得到恢复。通过添加第二个引导器件,就能够保证厂家备份,或至少可以具有“间接恢复”系统的功能。

图1 FPGA双引导系统

第三步是保护存储在外部存储器件中的位流备份,采用位流加密来保护引导配置代码(图2)。许多车用FPGA系列支持128位AES位流加密,以防止逆向工程和未经授权地对设计进行更改。在外部引导器件中存储着加密的配置代码,可以在初始化时译码,然后再移入SRAM单元。同样的加密机制也可以用来将一个新的配置代码载入内部闪存。

图2 外部引导的AEC译码或Flash编程位流

第四个也是最后一个步骤是“锁定”FPGA,以防止未经许可进入存储配置。用非易失性FPGA内部的可编程寄存器控制对内部配置存储器的访问。可能的组合情况如下:1)解锁。 2)可解密锁定-通过编程接口提供的128位密钥能够使器件解锁。3)永久锁定-器件被永久锁定。

为了进一步加强器件的安全性,可用一次性可编程(OTP)模式。一旦器件设置成这个模式,就不可能擦除闪存的内容或对器件再次编程。

选择车用级的通过AEC - Q100认证的非易失性FPGA时,审查制造商的非易失闪存的耐久性和数据保存指标是很重要的,这将确保车辆运行时和处于贮藏温度时FPGA都能正确保存其存储器内容。例如,LatticeXP2是唯一非易失性的通过AEC - Q100认证的SRAM /Flash FPGA,它能满足所有这些系统的要求。LatticeXP2的片上闪存允许大范围地对整个器件进行存储器测试,确保即使器件在最高温度下连续工作,至少10年内存储器的内容都不会丢失。

SRAM软错误损坏检测(SED)

来自宇宙射线的中子和封装材料中的带电α粒子的辐射会造成软错误,它会改变存储单元的存储内容。这种现象首先成为DRAM中的一个问题,要求能对高可靠性应用中的大容量存储系统进行错误检测和纠错。由于器件的尺寸不断缩小,对某些系统而言,SRAM中的软错误概率已相当大。

用于汽车应用的高性能FPGA将逻辑配置数据存储在SRAM单元。由于FPGA中SRAM单元数量和密度的增加,软错误改变系统可编程逻辑行为的概率也随之增加。设计者已经采取了各种办法来解决该问题,其中大部分涉及用户用于设计的知识产权(IP)核。虽然这种方法提供了一个解决方案,但它也占用了宝贵的可编程资源,并可能会影响性能。然而,这些缺陷是可以避免的。例如,LatticeXP2 FPGA内有用硬件实现的软错误检测器,它不会影响系统性能或器件的热耗散。

在这些非易失性FPGA中的SED硬件有一个访问FPGA SRAM配置存储器的接口,还有SED控制器电路和一个存储当前位流CRC的32位寄存器(图3)。SED功能需要使用几个I/O引脚,要占用4个专用的输入引脚和4个专用的输出引脚。这些引脚用于使能和启动SED检测,还能指明SED的工作状态。

图3、LatticeXP2 FPGA具有SRAM软错误监测功能

SED工作期间,控制电路从FPGA的SRAM配置存储器读取串行数据流数据,并计算CRC。然后,计算出的CRC与预期的存储在32位寄存器中的CRC进行比较。如果这两个CRC值不匹配,说明配置存储器中有差错,并设置一个外部信号为高电平,指明有差错。对应出错信号,用户可以有几种选择:忽略这个差错;使用外部处理器记录这个差错;或从原来的引导器件重新载入SRAM配置。

LatticeXP2 FPGA能够满足所有这些系统的要求。其片上闪存允许统一的系统测试,保证器件即使在最高温度下连续工作,最少10年不会引起存储内容的丢失或产生系统故障。此外,双引导功能和硬件实现的SED检测功能对SRAM内容损坏提供了安全保证,不会影响器件性能或用户逻辑的运行。

 

应用上述四种配置保护技术的FPGA设计具有高度可靠的启动和初始化功能,可以保护更新,阻止下载、删除或修改初始化配置的企图。此外,整合SED管理逻辑的设计还增加了保护措施,防止由带电粒子导致的改变运行配置的情况。将启动和SED保护进行整合的方法使汽车系统设计人员能够构建完整可靠的FPGA设计,同时不必担心配置被蓄意篡改或环境对器件造成的损坏。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

近日举办的GTC大会把人工智能/机器学习(AI/ML)领域中的算力比拼又带到了一个新的高度,这不只是说明了通用图形处理器(GPGPU)时代的来临,而是包括GPU、FPGA和NPU等一众数据处理加速器时代的来临,就像GPU...

关键字: FPGA AI 图形处理器

当我们提到成本优化型FPGA,往往与简化逻辑资源、有限I/O和较低制造工艺联系在一起。诚然,在成本受限的系统设计中,对于价格、功耗和尺寸的要求更为敏感;但随着一系列创新应用的发展、随着边缘AI的深化,成本优化型FPGA也...

关键字: AMD FPGA Spartan 边缘计算

全球领先的高性能现场可编程门阵列(FPGA)和嵌入式FPGA(eFPGA)半导体知识产权(IP)提供商Achronix Semiconductor公司宣布,该公司参加了由私募股权和风险投资公司Baird Capital举...

关键字: FPGA 智能汽车 eFPGA

全新 FPGA 能为嵌入式视觉、医疗、工业互联、机器人与视频应用提供高数量 I/O、功率效率以及卓越的安全功能

关键字: FPGA 嵌入式视觉 机器人

Altera致力于为客户提供端到端的FPGA、易于使用的AI、软件和弹性供应链。

关键字: FPGA AI

在半导体领域,大部分对于AI的关注都集中在GPU或专用AI加速器芯片(如NPU和TPU)上。但事实证明,有相当多的组件可以直接影响甚至运行AI工作负载。FPGA就是其中之一。

关键字: FPGA AI 半导体

半导体产品老化是一个自然现象,在电子应用中,基于环境、自然等因素,半导体在经过一段时间连续工作之后,其功能会逐渐丧失,这被称为功能失效。半导体功能失效主要包括:腐蚀、载流子注入、电迁移等。其中,电迁移引发的失效机理最为突...

关键字: 半导体 电迁移 FPGA

这款较低成本的开发平台可帮助学生、初学者和经验丰富的设计人员采用新兴技术

关键字: RISC-V FPGA 嵌入式

进一步扩展旗下IEEE®-1588主时钟产品组合,可实现小于1纳秒的精确时间精度

关键字: 主时钟 数字合成器 FPGA

中国上海——2024年1月22日——莱迪思半导体(NASDAQ:LSCC),低功耗可编程器件的领先供应商,今日宣布莱迪思的中端FPGA系列莱迪思Avant-E™ FPGA荣获国际科技创新节(STIF)“年度产品创新奖”,...

关键字: 可编程器件 FPGA AI
关闭
关闭