首页 军用可编程逻辑器件测试过程研究-软件技术

军用可编程逻辑器件测试过程研究-软件技术

举报
开通vip

军用可编程逻辑器件测试过程研究-软件技术军用可编程逻辑器件测试过程研究-软件技术军用可编程逻辑器件测试过程研究胡胜旺何建安郑丹(中国电子科技集团公司第三十二研究所上海200233)摘要近年来,随着可编程逻辑器件在我国军用武器装备中的广泛应用,针对军用可编程逻辑器件的测试过程和方法亟需研究和规范。本文分析了军用可编程逻辑器件测试现状,结合DO-254标准要求及工程实践,针对可编程逻辑器件设计特点,阐述了适用于军用可编程逻辑器件测试的过程、方法和环境,对军用可编程逻辑器件测试工作的开展具有实际参考价值。关键词可编程逻辑器件,DO-254,测试过程,测试环境 ...

军用可编程逻辑器件测试过程研究-软件技术
军用可编程逻辑器件测试过程研究-软件技术军用可编程逻辑器件测试过程研究胡胜旺何建安郑丹(中国电子科技集团公司第三十二研究所上海200233)摘要近年来,随着可编程逻辑器件在我国军用武器装备中的广泛应用,针对军用可编程逻辑器件的测试过程和方法亟需研究和规范。本文分析了军用可编程逻辑器件测试现状,结合DO-254 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 要求及工程实践,针对可编程逻辑器件 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 特点,阐述了适用于军用可编程逻辑器件测试的过程、方法和环境,对军用可编程逻辑器件测试工作的开展具有实际参考价值。关键词可编程逻辑器件,DO-254,测试过程,测试环境   doi:10.3969/j.issn.1674-7933.2015.06.001   作者简介:胡胜旺,男,1978年生,硕士,工程师,主要研究方向:嵌入式软件测试、可编程逻辑器件测试;何建安,硕士,工程师,测评中心副主任;郑丹,硕士,工程师。   0引言可编程逻辑器件是一种通过特殊方式使用的数字逻辑器件,常见的有CPLD和FPGA两大类型,CPLD(ComplexProgrammableLogicDevice)即复杂可编程逻辑器件,FPGA(FieldProgrammableGateArray)即现场可编程门阵列,均属于半定制的超大规模专用集成电路ASIC(Application-SpecificIntegratedCircuits)。在这种芯片内,按一定排列顺序集成着大量的由逻辑门、触发器等构成的基本逻辑单元。使用时,可利用某种开发工具对其进行再设计,然后通过编程的方式将其片内的逻辑单元按照设计要求连接起来,使之可以完成某种逻辑电路或系统的功能,以达到满足使用之目的。随着我国军用装备信息化建设的不断发展,越来越多的武器装备作为高技术集成系统,正朝着高集成度、高可靠性、高精度等方向发展。可编程逻辑器件由于其具有集成度高、体积小、功耗低、速度快等诸多优点,在各种武器装备中得到了广泛的应用。然而,由于可编程逻辑器件作为一种可编程使用的半定制芯片,与硬件联系紧密,其软件编程也是采用硬件软件化的设计方法,在以往的军用软件研制和设计定型过程中,一直按照硬件的标准对其进行管理和测试。经过多年的积累,目前型号产品定型已经形成了一套严谨而规范的体系,需要完成软件定型测评、设计定型试验、装备试验试用等项目,其中软件定型测评主要完成型号产品对研制总要求或其他等效文档中规定的功能需求和战技指标的满足情况的验证并提交测评报告。软件定型测评机构开展定型测评时,首先需要确定测评范围,通常将可编程逻辑器件排除在外,毕竟它们属于硬件电路[1];然而作为可编程逻辑器件的主要实现方式—硬件描述语言(HDL),又和软件一样是人脑复杂思维的逻辑产物,同样存在着不希望或不可接受的人为错误,具有鲜明的软件特征。随着设计复杂程度以及可编程逻辑器件应用比重的提高,由HDL引入的缺陷成为影响可编程逻辑器件以及武器装备可靠运行的关键因素[2],排除可编程逻辑器件单纯进行传统软件测试,往往会面临测试充分性难以保证的情况。为了切实确保其在安全关键领域的可靠应用,原本在军用领域中作为硬件管理不作测试要求的可编程逻辑器件已逐渐纳入测试范围,有关的行业主管机关为此建立或者正在建立严格的可编程逻辑器件设计和测评规范,以此来制约可编程逻辑器件的设计并且指导测评机构规范有序地开展工作。同DO-178B/C《机载系统和设备合格审定中的软件考虑》一样,作为一个可靠的、成功的、被业内所公认的标准,DO-254《机载电子硬件设计保证指南》同样可以为国内军工领域工程实践提供有益的借鉴和参考。在适用范围上,DO-178B/C面向机载设备中运行的软件程序,而DO-254面向硬件可编程逻辑器件(如CPLD、FPGA)上的硬件语言(依照DO-254标准定义,DO-254适用于整个机载电子设备,但在具体实践工程中,主要针对于客户化可编程逻辑器件[3])。DO-254标准描述了机载电子硬件全生命周期的目标要求,规定了全生命周期定义和阶段的划分,针对器件全生命周期提出机构职责、 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 、每个阶段的目标及技术要求[4]。本文参考DO-254对机载电子硬件全生命周期中设计过程、确认和验证过程要求,结合大量工程实践 经验 班主任工作经验交流宣传工作经验交流材料优秀班主任经验交流小学课改经验典型材料房地产总经理管理经验 ,针对可编程逻辑器件的测试过程、方法和环境进行了探索,希望能够为军用可编程逻辑器件相关测评项目提供参考。   1基于DO-254的可编程逻辑器件设计过程   DO-254标准将硬件设计生命周期划分为三个过程,包括策划过程、硬件设计过程、支持过程。策划过程控制硬件项目开发,在该阶段产生硬件计划,包含具体硬件设计生命周期过程的标准文件,如硬件开发计划、配置管理计划、过程保证计划等。策划过程定义和协调了硬件设计活动和支持过程。硬件设计过程生成设计数据,产生硬件项目,是整个硬件生命周期的主体。设计过程涵盖了可编程逻辑器件顶层设计、RTL行为设计、综合、布局布线、比特流生成、测试和调试等内容。支持过程产生硬件设计生命周期数据,保证硬件设计生命周期及其输出的正确性及可控性,包括确认和验证过程、配置管理过程、过程保证、认证联络过程。如图1硬件设计生命周期过程所示,可编程逻辑器件的硬件设计过程可分为:硬件需求获取、硬件概要设计、硬件详细设计、硬件实现和生产转化五个阶段。①需求获取过程识别和记录项目需求(包括系统需求、派生需求和安全性需求等)并形成文件,可对应于可编程逻辑器件设计流程中的设计定义阶段;②概要设计过程形成一个高层级描述输出,通过对输出的高层次设计原理进行评估以确定最终设计实现满足需求的可能性,对应于可编程逻辑器件设计流程中的形成功能框图、设计和结构描述阶段;③详细设计过程以项目需求和概要设计数据作为基础,输出详细设计数据,对应于可编程逻辑器件设计流程中的HDL开发、综合、布局和布线阶段;④实现过程使用详细设计数据形成可编程文件,对应于可编程逻辑器件设计流程中的编程下载、测试和调试阶段;⑤生产转化过程完成代码版本的板级固化工作[6]。   DO-254标准覆盖了可编程逻辑器件开发设计整个生命周期,对可编程逻辑器件设计的验证工作在验证过程中进行定义。其目标包括:①能提供硬件实现满足其需求的证据;②在硬件需求、实现与验证过程和结果之间建立可追溯性;③验收测试准则得到确定并可执行,且与硬件功能的设计保证级别一致;④遗漏和错误反馈给相应的过程进行纠正。   2可编程逻辑器件测试阶段划分可编程逻辑器件设计是基于VHDL或者VerilogHDL高级语言实现的,所以可编程逻辑器件设计从本质上是一种软件设计,但可编程逻辑器件设计又是一种特殊的软件设计即面向硬件的软件设计,因而具有硬件的显著特征。结合DO-254标准中的可编程逻辑器件的硬件设计过程和验证过程要求,参照传统软件测评过程阶段划分,可编程逻辑器件测试过程的划分同样可包括:测试需求分析、测试策划、测试设计和实现、测试执行、测试总结五个过程。但由于可编程逻辑器件的自身特性,在测试的各个过程阶段中,又有其独特需要关注的部分。   2.1测试需求分析阶段测试需求分析阶段的工作主要是依据相应的需求文档定义建立需求树,进而形成具体测试需求的层次结构,定义项目的测试类型,通过明确测试内容和要求确定测试工作的范围。在开展测试需求分析时,依据可编程逻辑器件研制任务书、需求规格说明,芯片手册等技术文件分析被测件的测试需求,编写测试需求规格说明,明确测试需求项以及可编程逻辑器件的外围电路的接口时序。可编程逻辑器件与软件相比要更接近硬件的行为,因此更需要关注芯片的接口功能的实现及信号的时序要求,在需求分析过程中,不仅应充分的分析可编程逻辑器件文档中的功能要求,同时还应对芯片手册或是电路原理图中外围接口芯片的信号特点及时序要求予以关注。   2.2测试策划阶段开展测试策划时,应制定测试策略,明确测试需要的技术方法和测试的资源要求,对测试工作量进行估计,规划测试进度,制定测试过程各个测试项的具体安排,规定每个测试项的测试要求、进度安排、人员安排,明确正在测试的项目、要测试的特性、要执行的测试任务,分析和评估测试过程中存在的风险(如技术风险、人员风险、资源风险和进度风险)等。   2.3测试设计和实现阶段测试设计和实现过程包含设计过程和实现过程。测试设计过程中,依据测试计划和测试需求规格说明编写测试说明,对测试需求规格说明中的每个测试项,说明测试用例设计思路和方法,设计测试用例。在实现过程中,应依据测试用例的要求,建立可编程逻辑器件运行的外围环境。针对不同的测试对象和测试方法,外围环境包含如下两种类型:   1)若采用仿真的测试方法开展测试,则此处应编制testbench,模拟可编程逻辑器件的外围接口电路,构建仿真测试平台。构建仿真测试平台时,应关注两方面情况:依据测试用例所需要的输入信号功能和时序的要求,在Testbench中设计相应的测试激励信号,使测试平台能够激励被测设计运行相应功能。依据测试用例的要求,在Testbench中对部分仿真结果信号进行自动判别。   2)若采用系统测试的方法开展测试,则此处应构建真实的硬件平台。   2.4测试执行阶段测试执行过程应按照测试计划和测试说明的内容和要求,根据所选定的测试环境、测试工具和设计的测试用例、测试方法执行测试。在执行测试的过程中,可根据测试情况补充测试用例(功能覆盖率、代码覆盖率未达到要求)。与传统软件测试执行过程不同,可编程逻辑器件测试执行阶段需要开展的工作包括代码静态分析(包括静态规则检查、跨时钟域分析)、功能仿真、门级仿真、静态时序分析、逻辑等效性分析、时序仿真等。通过在仿真工具中运行testbench文件,执行测试用例,记录仿真结果,并根据每个测试用例的期望测试结果、实际测试结果和评估准则,判定测试用例是否通过。根据测试用例所测试对象的不同可以灵活的选择功能仿真、门级仿真、时序仿真等适当的仿真测试方法,以达到最佳的测试验证效果。   2.5测试总结阶段测试总结过程应根据可编程逻辑器件测评任务书、被测件文档、测试需求规格说明、测试计划、测试说明、测试记录、问题报告及变更报告单等,对测试工作和被测可编程逻辑器件进行分析和评价,评估功能仿真中未覆盖到的语句、分支及替代的分析方法,总结被测可编程逻辑器件与需求的符合性,对测试结果和问题进行分类和总结,对被测可编程逻辑器件设计和实现提出改进建议,按所确定的文档要求编写测试报告或测评报告。   3可编程逻辑器件测试流程和环境   3.1测试流程   DO-254标准中的验证过程要求的是硬件设计过程中的内部测试,手段包括行为和门级仿真、时序分析、验证测试、测试覆盖率分析等。根据可编程逻辑器件开发过程特点不同,从第三方测试的角度出发,梳理针对不同设计阶段产品的测试流程和方法,可编程逻辑器件测试流程与开发过程结构关系如图4所示。具体测试流程和方法如下:设计输入是设计师依据设计文档相关要求,进行代码实现的过程,可利用VHDL语言、VerilogHDL语言、原理图、状态图等方式,将文档中的相关要求在EDA工具中进行实现。在设计输入阶段,产生的输出文件是RTL级代码。针对本阶段的输出文件,采用的测试方法包括:编码规则检查、代码审查和功能仿真。本阶段采用的测试方法,主要是测试RTL代码的规范性及逻辑功能的正确性。逻辑综合是将原理图、状态图或硬件描述语言等设计输入翻译成由基本门、RAM、触发器等基本逻辑单元组成的逻辑网表,并根据时序与面积约束优化所生成的逻辑网表,输出标准格式的网表文件,供可编程逻辑器件厂商的布局布线器进行实现的过程。在逻辑综合阶段,产生的输出文件是逻辑综合后的网表文件。针对本阶段的输出文件,采用门级仿真和静态时序分析开展测试,测试目的是测试逻辑综合后的文件的逻辑正确性和时序的收敛性。布局布线是利用逻辑综合生成的网表,结合指定的约束条件,在可编程逻辑器件内部进行布局布线,生成可用于配置的位流文件的过程。在布局布线阶段,产生的输出文件是布局布线后的网表文件和标准延时格式文件,以及可加载至底层芯片中的位流文件。针对本阶段输出的网表文件和标准延时格式文件,采用时序仿真和静态时序分析来开展测试,测试目的是验证布局布线后的文件逻辑正确性和时序正确性。在逻辑综合和布局布线阶段,相应的工具对RTL级代码进行理解、翻译和转化后,生成逻辑综合和布局布线后的网表文件。为了测试逻辑综合和布局布线后的网表文件和之前的RTL级代码的逻辑一致性,使用逻辑等效性分析的方法对RTL级代码、逻辑综合后网表文件、布局布线后网表文件开展逻辑的一致性检查。加载位流文件是将布局布线后生成的位流文件通过JTAG接口烧录到板级的存储芯片中,实现可编程逻辑器件与硬件的结合。本阶段开展的测试为实物测试,测试位流文件在真实硬件环境中运行时功能、性能和时序的正确性和准确性。综合上述流程,形成可重复、基于需求的测试流程,组成了完整的可编程逻辑器件测试实施 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 ,整个可编程逻辑器件测试流程如图5所示。在可编程逻辑器件完整测试流程中,涵盖了静态测试(包含文档审查、代码审查、代码规则检查、静态时序分析等测试类型)和动态测试。动态测试根据运行环境不同可分为动态仿真和在系统测试。动态仿真包括功能仿真、时序仿真、覆盖率测试等,能发现实际运行环境下难以发现的问题。在系统测试为实装环境测试,在可编程逻辑器件设计比特流下载至可编程逻辑器件板后进行,可沿用软件测试中一般采用的功能、性能、接口测试等测试类型,检验可编程逻辑器件在实装环境下的运行状态。   3.2测试环境搭建不同于传统软件测试环境,可编程逻辑器件测试环境也有其特殊性,首先测试平台需要专业的EDA软件技术,要能够兼容目前行业主流的可编程逻辑器件设计环境,其次要高于目前主流的可编程逻辑器件设计环境,这样才能确保测试工作的顺利开展以及测试的权威性和可靠性。结合可编程逻辑器件测试流程,可编程逻辑器件测试环境如图6所示。其中,静态测试环境中主要应用编码规则检查工具、跨时钟域分析工具、逻辑等效性分析工具、静态时序分析工具等测试工具,仿真测试环境下主要应用动态仿真工具、形式验证工具,实装测试环境下可采用逻辑分析仪等进行辅助分析测试。结合静态测试环境、仿真测试环境和实装测试环境,构建形成统一、完整的验证测试环境,可对可编程逻辑器件展开完整有效测试,体现了测试过程的完备性和可靠性。   4结束语本文结合大量工程实践对军用可编程逻辑器件测试工作进行了探索,提出了相适应的测试过程、方法和环境。在军用可编程逻辑器件实际测试过程中,考虑到冗长的仿真过程,应针对不同安全关键等级的可编程逻辑器件项目,结合研制单位军用可编程逻辑器件项目现实情况(如:可提供仿真设计和结果自测/举证),对测试过程和要求进行合理剪裁和调整,在保证军用可编程逻辑器件测试质量的同时,适应项目进度和成本上的实际需要。此外,针对相关过程的有效性、必要性(可替代性)以及前端、后端验证侧重仍需进一步研究。随着军用可编程逻辑器件测试项目的广泛开展,希望我们的工作能为相关测试过程提供些许参考。参考文献封亮,吴振宇.航空机载设备中可编程逻辑器件的第三方测评方法研究[J].软件产业与工程,2013(5):46-50.   刘子宜,刘畅,郑军.基于软件测试技术的FPGA测试研究[J].电子技术应用,2011,37(5):28-30.   王鹏,田毅.DO-254标准在机载电子硬件审定中的应用[J].中国民航大学学报,2010,28(5):17-20.   高虎,刘媛,刘子宜.DO-254标准中的确认与验证过程分析[J].航空标准化与质量,2014(2):10-13.   RTCA.DesignAssuranceGuidanceforAirborneElectronicHardware,DO-254[S].WashingtonDC:RTCAInc,2000.   马珂,李大超.基于DO-254的可编程逻辑器件设计的质量保证研究[J].软件产业与工程,2014(5):19-23. 
本文档为【军用可编程逻辑器件测试过程研究-软件技术】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_721103
暂无简介~
格式:doc
大小:234KB
软件:Word
页数:0
分类:
上传时间:2021-08-10
浏览量:30