一文读懂 FPGA 在功能安全应用中的机遇与挑战
FPGA(现场可编程门阵列)作为一种极为有用的器件,常与 ADI 公司的 ADC 或功率 IC 等一同被设计到客户的产品中。它能够实现微控制器以及所需的任何胶合逻辑。在这篇博客中,我们将深入探讨功能安全与 FPGA 相关的诸多问题。
FPGA 的基本概念
FPGA 是一种集成电路,但其并非专用的片上逻辑。它由可重新配置的逻辑以及通常包含的诸如 ARM Cortex 或 A9 系列的硬宏 uC 组成(部分 uC 也提供 HDL / 软格式)。可重构逻辑一般呈逻辑块数组的形式。常见的 FPGA 制造商有 Xilinx、Altera(现属英特尔)、莱迪思半导体和 Microsemi。可重新配置这一特性赋予了硬件灵活性,这种灵活性以往通常仅在软件解决方案中可见。比如,使用 FPGA 能够快速更改 “硬件”,若采用分立 IC,这一过程可能需要数周甚至更久;若使用 ASIC,则需数月时间。然而,从安全角度来看,这也意味着会面临一些类似软件的棘手问题。
对于某些 FPGA,其配置存储在片上闪存或 EEPROM 中;而对于较大型的 FPGA,配置则存储在片外闪存中,并在启动时加载到 FPGA 上的 RAM 里。FPGA 上的可重构逻辑通常借助 HDL(硬件描述语言),如 Verilog 或 VHDL 来完成,其语法与软件颇为相似(“Verilog 是软件吗?” 这个问题已被列入我即将发布的博客列表)。
FPGA 与功能安全标准
IEC 61508 - 2:2010 的附录 F 为设计数字 ASIC(表 F.1)和 FPGA(表 F.2)时避免系统错误提供了指导。实际上,表 F.1 主要与设计 FGPA 芯片的人员相关,例如 Xilinx 或 Micro - semi 的工程师;表 F.2 则与设计将在 FPGA 中实现内容的客户相关。
这两个表都给出了类似的度量列表,并根据 SIL 排名标注为 HR 或 R。HR 标准表示强烈推荐,R 表示推荐。不过,对于 R 或 HR 的含义,不同人存在不同的解读。在我看来,如果一个问题被标记为 “R”,那么应该给出不实施该措施的简短理由;对于标记为 “HR” 的内容,则需要更详细地解释为何自身的判断比编写标准的专家更合理。有些项目被标记为 “HR*”,可理解为必须执行,没有借口(暂且忽略这只是一个信息丰富的附件,不应包含任何 “应” 声明这一事实)。“R”“HR” 等标注下的参考文献旨在表明实施此技术的工作量,但标准并未明确说明这在实际操作中具体意味着什么。
FPGA 实现的设计流程
- 创建电路描述:在 HDL 中创建所需电路的描述(也可基于模型的输入)。
- 选择目标 FPGA:挑选具有足够可重配置逻辑的目标 FPGA,以处理编写好的 HDL 代码。
- 代码合成:运用软件工具将行为代码合成到 FPGA 中可用的可重新配置资源上。
- 生成比特流:使用软件工具生成上述配置的比特流表示,以便加载到 FPGA 中。
FPGA 在安全应用中的问题
软错误问题
软错误在之前的 “安全问题” 博客中已有介绍。这类错误由包装材料中存在的 α 粒子或来自太空的中子粒子引发,会导致 RAM 单元和 FF 中存储的值改变状态。虽然 ASIC 和 FPGA 都可能包含 RAM,软错误问题有相似之处,但 FPGA 的特殊之处在于,当可编程逻辑的配置存储在 RAM 单元中时,单个位的扰动就可能有效地改变硬件。对于硬连线 ASIC,其逻辑功能是固定的,不受 α 和中子粒子的影响,而 FPGA 却实实在在地面临这一问题。若软错误率为 1000 FIT / 兆位(参照 IEC 61508 - 7:2010),那么具有 1 万配置位的 FPGA 的软 FIT 将达到 1000。值得注意的是,IEC 62380:2004 允许计算 FPGA 的硬 FIT,且其中 λ1 每个晶体管的 20e - 5/h 值高于 uC 和 DSP 的 3.4e - 6。
其他问题
- 过时风险:FPGA 通常处于技术前沿,可能会迅速过时。例如,为了实现 65nm 上 ASIC 的性能,可能需要在 20nm 上设计 FPGA,因为可重新配置逻辑会带来额外开销。
- 单比特和多比特翻转:由电源排序和 EMC 引发的单比特和多比特翻转问题。
- 硬件容错实现:如何实现片上硬件容错(可参考 IEC 13 - 61508:2010 中的注释)。
- 故障覆盖率:实现高数字故障覆盖率方面存在挑战。表 F.1 要求数字 ASIC 的故障覆盖率 > 98.5%,但 FPGA 一旦编程,却没有最低要求。
- 标准相关性:IEC TS 61508 - 3 - 1:2016 的相关性问题。
- 成本问题:与实现类似功能的 ASIC 相比,FPGA 成本可能较高。
- HDL 编码责任:FPGA 用户在 HDL 编码方面可能面临额外责任,尤其当 HDL 编码并非公司核心竞争力时。
- 温度范围:与专用工业或汽车 IC 相比,FPGA 的温度范围有限。
- 功率问题:相对较高的功率(这可能导致可靠性指标变差)。
- 网络安全问题:与串行接口上的逻辑可编程性相关的网络安全隐患。
FPGA 的优势
尽管存在上述诸多担忧,但 FPGA 凭借其灵活性在许多场景中极具价值。尤其是在快速原型设计和追求快速上市时间方面,一个硬件解决方案能够针对多个终端应用进行定制,且无需重新设计 PCB,并且几乎能够连接到任何设备。这在小批量和概念验证设计中表现得尤为突出。例如,要找到一个带有 MIPI 接口的优质工业处理器并非易事,但对于 FPGA,只需在 HDL 中实现胶合逻辑即可解决。
"愿我的文字能带给您一丝美好"
分享海报

一文读懂 FPGA 在功能安全应用中的机遇与挑战
FPGA(现场可编程门阵列)作为一种极为有用的器件,常与ADI公司的ADC或功率IC等一…
FPGA线上课程平台|最全栈的FPGA学习平台|FPGA工程师认证培训
FPGA在线学习平台
评论
A 为本文作者,G 为游客总数:0