鹰龙数据中心
RSS订阅 | 匿名投稿
您的位置:网站首页 > 高可靠系 > 正文

如何利用FPGA新特性实现高可靠性汽车系统设计高可靠系

作者:小联 来源: 日期:2014-9-24 19:23:30 人气: 标签:高可靠系

  目前,汽车中使用的复杂电子系统越来越多,而汽车系统的任何故障都会置乘客于险境,这就要求设计出具有“高度可靠性”的系统。同时,由于FPGA能够集成和实现复杂的功能,因而系统设计人员往往倾向于在这些系统中采用FPGA。不过,将FPGA用于汽车系统时需要关注两个主要问题:确保用于FPGA初始化的配置代码正确无误;防止器件工作时SRAM的内容遭到损坏。只有这些问题得到彻底解决,FPGA才能成为高度可靠汽车系统的组成部分。幸运的是,目前通过AEC-Q100认证的FPGA已加入先进的特性,能够有效解决上述问题。本文介绍的几个方案可用于解决初始化配置和防止潜在的SRAM内容损坏的问题。FPGA的配置随着系统上电,基于SRAM的FPGA将从外部源加载其配置。引导源可以是存储器件,如串行EEPROM或Flash ,也可以是智能器件,如微控制器。针对初始化位流,所有的FPGA都具有某种类型的循环冗余校验(CRC),在启动结束时进行测试,检验传送是否完整。如果在位流中检测到一个差错,FPGA将无法初始化。这可以防止系统产生错误的(也可能是的)操作。大多数的FPGA将通过对一个外部引脚置位,来告知系统控制器初始化失败,请求另一个初始化序列,以期取得配置成功。在遇到以下几种情况时,会发生初始化位流的损坏情况:引导存储器的硬件故障存储器内容保存的问题存储器内容被擦除电气噪声利用FPGA设计高可靠性的汽车系统时,为了正确处理这些情况,必须遵循以下四个基本步骤:第一步是使用具有片上闪存的非易失性SRAM。这改变了从外部存储器引导配置载入FPGA内部的方式。采用将引导源移入同一块芯片的方法消除了许多常见的初始化失败模式。这种类型的集成设计还提升了初始化速度,可在即时启动系统中使用这种FPGA。第二步是添加一个可靠的外部自行引导器件(图1)。FPGA的一个主要特点是能够现场重复编程。对汽车系统而言,这一特性允许下载新的程序,用于授权的现场更新,修复设计错误或添加额外的功能。不过,在传输和对存储器编程期间,数据流可能被损坏,而且损坏的数据流会正确的FPGA初始化。为了应对更新过程中的损坏,在外部存储器件中已复制了初始化代码,称为“golden”的厂家备份。即便有任何问题,存储在内部存储器的配置代码都可以使该系统得到恢复。通过添加第二个引导器件,就能够厂家备份,或至少可以具有“间接恢复”系统的功能。

  图1:FPGA双引导系统。

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

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

延伸内容:
读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址: