钜大LARGE | 点击量:1027次 | 2019年11月07日
工程师讲解设计安全工业芯片系统的验证方法
工业自动化、物流以及智能电网等很多工业领域都要求机械设备和产品具有安全性,经过了功能安全认证。当开发必须符合全世界安全标准的机械设备时,灵活性和逐渐增高的安全成本是非常重要的决定因素。在这些应用中,安全要求产生了新的机械开发过程,增加了电子设备的复杂度,一般会导致显著增加硬件成本,延长了产品面市时间。工业芯片系统能够帮助工程师在获得IEC61508产品认证过程中节省18个月的设计时间。具有AlteraFpGA等经过认证的器件意味着,设计人员可以充分发挥FpGA的灵活性优势,不用担心这些器件能否用于安全应用。
设计挑战
•采用“安全”设计方法以及安全概念。
•需要更多的工程投入(时间和技术),结果产品推迟面市,提高了总体拥有成本。
•工程管理,采集所有系统组件的数据,根据安全规范要求对工程进行记录。
成功设计的关键是采用经过验证的设计方法,合格的工具和器件作为产品的一部分,从产品开发的一开始就考虑安全问题。
典型的应用步骤
•体系结构开发
•组件选择
•应用设计实现
•集成和测试
•发布
应用设计实现
通信协议、FpGA的存储器接口Ip、或者嵌入在FpGA中的AlteraNios®II嵌入式处理器Ip等复杂系统功能,通常用于运行驱动应用中工业以太网协议的软件堆栈,这些都需要进行安全应用分析、测试和认证。
安全驱动的例子
具有安全I/O的这一驱动实例采用了Altera认证过的FpGA设计工具QuartusII软件9.0Sp2,以及所建议的设计方法实现这一应用实例。此外,如图1所示,这一应用使用了两片FpGA,而没有采用外部处理器和DSp。该应用被划分成几个NiosII软核处理器内核。第一个NiosII软核处理器提供通信堆栈支持,第二个处理系统控制,第三个NiosII处理器集成在电机控制模块中。对电机控制算法进行了划分,其软件部分运行在NiosII处理器上,针对这一应用而专门开发的硬件模块加速电机控制环的实现。外部安全控制器提供SIL3应用所需要的冗余功能。
图1.安全驱动的两片FpGA实现
这一解决方案在一片FpGA中结合了安全控制器和现场总线控制器,使用Altera的SOpCBuilder系统集成工具,集成了NiosII软核处理器、其他通信Ip模块,以及编码器接口和存储器接口。芯片驱动的安全性
对于FpGA中关键而又常用诊断任务的底层监视功能,这一实例使用了Altera的安全认证诊断Ip模块。这些诊断Ip设计满足IEC61508规范要求,完成以下常用诊断功能:
•循环冗余校验(CRC)计算——用于很多系统中,特别适用于现场总线应用。
•提取时钟检查——这一内核检查是否有系统时钟以及时钟频率。
•SEU检查控制器——这一模块采用了器件中的内置软错误检查硬件,监视软错误导致的变化。
由于这些硬核Ip是在FpGA逻辑区中实现的,因此,系统处理器不再承担这些任务。在认证方法方面,Altera采用了IEC规范,分析了FpGA设计方法和相关要求。从这一分析中,Altera形成了工具流文档。这一工具流的中心主题是对Altera开发的FpGAV-Flow的描述,如图2所示。
图2.工具流
总结
通过重新使用符合预认证两芯片方法的驱动系统概念,按照经过认证的设计方法、设计流程、工具和Ip,通常能够加速实现典型的应用开发过程。由于能够立即使用组件的可靠性数据,提供的格式很容易集成到安全认证的所有文档中,因此,加速实现了认证过程。在安全设计和系统设计中,设计人员可以充分利用灵活的FpGA设计集成功能。由于安全已经成为具体应用的关键需求之一,因此,它含在整个概念中,通过满足成本和产品及时面市目标来实现它。