国家标准计划《可编程逻辑器件软件安全性设计指南》由 TC28(全国信息技术标准化技术委员会)归口 ,主管部门为国家标准委。
主要起草单位 中国航天科工集团三院三〇四所 。
| 35 信息技术、办公机械 |
| 35.080 软件开发和系统文件 |
可编程逻辑器件(FPGA、CPLD等)由于具有集成度高,体积小,功耗低,性价比高等特性,能够实现越来越复杂的功能,日益广泛应用于电子产品中。
可编程逻辑器件的广泛应用使得可编程逻辑器件软件的安全性在电子产品的研制过程中变得越来越重要。
可编程逻辑器件软件主要是由人脑对可编程逻辑器件进行编程,由程序实现任务功能。
由于是脑力劳动过程,在本质上是无形的、难以控制的,且开发和测试过程中尚无有效的标准和方法可以参考,造成可编程逻辑器件软件开发质量主要依赖于设计师的水平。
并且,可编程逻辑器件软件和传统软件在技术背景、应用语言、开发过程、测试方法上有很大不同,软件的设计准则不完全适用于可编程逻辑器件软件。
因此,为保证可编程逻辑器件软件设计的质量,应对可编程逻辑器件软件设计提出严格的要求,针对可编程逻辑器件的特点,制定可编程逻辑器件软件设计的相关规范和标准。
1)范围 本指导性技术文件适用于可编程逻辑器件软件需求分析、设计和实现时的可编程逻辑器件软件安全性设计,可编程逻辑器件软件可靠性设计也可参考本指导性技术文件。 2)主要技术内容 可编程逻辑器件软件安全性工作贯穿于软件生命周期全过程,因此从可编程逻辑器件软件设计的全过程出发,分析可编程逻辑器件软件研制需求、设计和实现每个阶段的安全性要求,提炼可编程逻辑器件软件安全性设计准则。 (1) 需求阶段 需求分析阶段主要从FPGA的体系结构、技术选择、功能、性能、接口、环境等几个方面分析和描述可编程逻辑器件的安全性,分析和提炼可编程逻辑器件的软件安全性设计准则。 (2) 设计阶段 设计阶段主要完成可编程逻辑器件软件的设计。可编程逻辑器件软件的设计与计算机软件有很大的不同,与硬件关系紧密,结合国外的安全性设计准则及国内的已有经验,将从接口设计、冗余设计、余量设计、结构设计等几个方面分析可编程逻辑器件软件的安全性设计。 (3) 实现阶段 可编程逻辑器件的实现阶段除使用硬件语言完成RTL代码编写以外,还包含综合、代码映射、布局布线、配置文件生成等多个过程,整个实现过程有多个工具参与完成,这些工具的使用也会引入不同程度的安全性问题,为保证可编程逻辑器件软件质量,从编码要求、时钟设计、复位设计、状态机设计、约束设计、综合设计及属性设置等几个方面分析可编程逻辑器件软件的安全性设计。