GJB 5000B在FPGA工程中的应用分析

2024-02-26 03:25张鹏
船舶标准化工程师 2024年1期
关键词:布线成熟度时序

张鹏

(扬州船用电子仪器研究所,江苏扬州 225101)

0 引言

现阶段,随着硬件性能的不断提升,以及硬件平台的高度集成化、通用化、标准化,软件开发在武器装备研发过程中的重要性越来越强。此外,由于近年来软件问题导致的装备质量问题频发,中央军委装备发展部对软件越来越重视,陆续颁布了GJB 5000B—2021、GJB 8000—2013等标准,将软件研制资格与软件研制能力成熟度挂钩,并将GJB 5000B作为强制推行的标准。

微电子技术的发展创造了解决上述问题的良好机遇。现场可编程逻辑门阵列(Field Programmable Gate Array, FPGA)以其功能密度高、体积小、功耗低、配置能力灵活等特点,受到电子信息产品设计者的青睐。在军用领域,可编程逻辑器件可应用于多个在研的武器装备中,能实现伺服控制、信号处理等关键功能。随着FPGA等可编程逻辑器件的发展,在进行系统设计时,设计者越来越偏向使用FPGA来完成系统中部分硬件和软件功能。

1 GJB 5000B成熟度模型

相较于二级能力成熟度模型,GJB 5000B三级能力成熟度模型增加了9个实践域:组织实践改进(Organizational Performance Improvement, OPI)、组织资产开发(Organization Analysis and Design,OAD)、组织培训(Organize Training, OT)、风险与机遇管理(Risk and Opportunity Management, ROM)、技术解决方案(Technical Solution, TS)、产品集成与交付(Product Integration and Delivery, PID)、同行评审(Peer Review, PR)、决策分析(Decision And Analysis, DAA)、原因分析(Cause Analysis, CA)[1-2]。

OPI、OAD、OT属于实践管理类实践。OPI要求组织根据自身的强项和弱项,策划组织实践改进工作。OAD要求组织根据组织目标及自身要求建立标准实践集,并对实践实施后的测量数据、实践制品、经验教训纳入组织资产库中。OT要求组织针对标准实施实践中的必要技能进行培训,制定培训大纲并考核培训大纲实施的有效性。

ROM属于项目管理类实践。风险与机遇管理要求组织以前瞻性、持续性的方法来管控风险和把握机遇,包括对识别分析机遇、标识风险参数、评估风险和降低风险等实践活动。

DAA、CA属于支持类实践。决策分析与决定要求组织确定实施正式评价实践,针对组织存在的确定性问题,以支持所有的实践域;原因分析要求组织识别分析选定结果的原因,采取明确的动作,以得到正面的响应或防止同样的问题重复发生。

PID、TS、PR属于工程类实践。PID实践域要求项目组创建最优的集成序列,并依据顾客需求对产品部件进行集成,并将产品交付顾客;需求开发实践域要求项目组标记用户需求并将其转化为项目需求,包括对项目需求集进行分析、建立、分配项目部件的各初始需求集,使得项目开发人员能够理解产品的功能、性能及验证要求等;TS实践域要求项目组为产品集成实践域或供方协议管理实践域提供产品部件数据包的开发;PR实践域要求项目组为确保开发的产品满足技术要求,而针对产品采取要求同行专家进行确认的验证方法[3-4]。

2 FPGA工程开发模型

目前FPGA研制已引起各科研院所的重视,但是由于没有统一的行业标准,各单位在研制过程中的要求与水平参差不齐,部分单元采用了通用的开发模型,但未采取相关的配套管理措施。

FPGA项目一般通用的设计开发过程见图1,主要包含任务分析、需求分析、设计验证实现、功能验证、综合布局布线、时序验证、编程下载、设计确认、第三方验证、验收、固化落焊、交付维护等阶段[5],根据任务实际要求可适当进行调整。

图1 FPGA项目一般通用的设计开发过程

FPGA开发实践通常存在以下缺陷:

1)编码缺陷,如语法错误、缺少注释、继承性差、不能综合理解电路等。

2)需求管理不足,如用户需求功能点遗漏、代码冗余、功能与用户需求不匹配等。

3)配置管理缺陷,如没有完整的设计文档、无版本说明记录、配置管理不规范等。

3 GJB 5000B在FPGA工程中的应用

针对FPGA开发实践中的存在的编码缺陷、需求管理不足、配置管理缺陷等问题,本节主要对GJB 5000B在FPGA工程中的应用进行介绍和分析。

3.1 任务分析阶段

任务分析阶段需要完成如下工作:

1)分析产品的系统结构、功能需求、性能需求、工作环境需求及外部时序接口要求等。

2)分析FPGA产品的设计需求、功耗要求、可靠性要求等,以及单机分配给FPGA产品的合理性。

3)调研是否有可以选用的满足质量等级、抗辐射等级、成本、设计门数、工作频率、封装等要求的FPGA器件。

4)下达设计任务书。

此阶段可参照RDM、TS以及DAR的相关要求进行实施。

3.2 需求分析阶段

需求分析阶段需要完成如下工作:

1)确定FPGA设计输入方式和IP核资源,细化任务书要求并形成需求规格说明。

2)对需求进行跟踪,包括对功能、性能、可靠性、安全性等进行追踪。

3)确认FPGA选用是否满足质量等级、抗辐射等级、封装要求等。

此阶段可参照需求开发与管理的相关要求进行实施。

3.3 设计验证实现阶段

设计验证实现阶段需要完成如下工作:

1)根据需求规格说明进行功能、模块分解,并制定模块间的接口关系,形成概要设计,功能分解实践中尽量对成熟度高的IP核进行复用。

2)根据概要设计形成详细设计,并编制设计报告和使用说明。

3)根据详细设计内容完成代码编写,完成代码自查,并提前进行综合布线以及仿真验证以保证设计的正确性。

4)制定验证策略及验证计划,确认验证工具、验证代码的编写语言。

此阶段可参照PID、TS、验证与确认(Verification and Validation, VV)的相关要求进行实施。

3.4 功能验证、综合布局布线、时序验证阶段

功能验证、综合布局布线、时序验证阶段需要完成如下工作:

1)采用自动化工具进行代码规范性检查。

2)人工检查代码。

3)完善代码验证,在电子设计自动化(Electronic Design Automation, EDA)平台下完成功能仿真,并对设计的功能进行验证。

4)编制仿真验证报告。

5)完成EDA平台的设计和布局布线。

6)完成EDA平台的时序仿真,对设计功能、时序等进行验证,并编制仿真验证报告。

此阶段可参照TS、VV的相关要求进行实施。

3.5 编程下载、设计确认阶段

编程下载、设计确认阶段需要完成FPGA编码工作及配置芯片的编码工作,并参照FPGA产品使用说明完成设计确认。此阶段可参照VV的相关要求进行实施。

3.6 验收、固化落焊、运行维护阶段

验收、固化落焊、运行维护阶段需要完成如下工作:

1)检查技术文件完整性,完成FPGA产品的验收和交付工作。

2)完成对FPGA芯片配置的编程固化和落焊。

3)进行FPGA产品的使用维护工作,包括记录问题、上报问题、问题分析、配置管理、回归验证等工作。此阶段可参照VV的相关要求进行实施。

4 映射关系分析

由上述分析可知,GJB 5000B工程域的目标与实践同样适用于FPGA。在FPGA开发实践中,RDM实践域主要关注芯片型号的选择,产品集成(Product Integration, PI)实践域主要关注功能验证、设计实现阶段的验证计划制定、EDA平台下的仿真验证、代码审查等。FPGA工程活动与GJB 5000B工程实践的映射关系见表1。

表1 FPGA工程活动映射关系表

5 结论

本文结合GJB 5000B体系要求,梳理、比对和分析了现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)的设计开发流程和GJB 5000B的工程实践要求,并提出一套FPGA开发管理在GJB 5000B推进实践中的实施办法。希望能为GJB 5000B在FPGA工程中的应用提供一定参考。

猜你喜欢
布线成熟度时序
基于时序Sentinel-2数据的马铃薯遥感识别研究
基于Sentinel-2时序NDVI的麦冬识别研究
产品制造成熟度在型号批生产风险管理中的应用
整机产品成熟度模型研究与建立
摆脱繁琐布线,重定义家庭影院 Klipsch Reference Wireless 5.1
面向目标的主动绕障PCB布线算法
电子布线系统在工程中的应用
不同成熟度野生水茄果实的种子萌发差异研究
刚好够吃6天的香蕉
一种毫米波放大器时序直流电源的设计