CN107797929A - 可编程逻辑仿真测试功能覆盖率的统计方法和装置 - Google Patents

可编程逻辑仿真测试功能覆盖率的统计方法和装置 Download PDF

Info

Publication number
CN107797929A
CN107797929A CN201711014421.XA CN201711014421A CN107797929A CN 107797929 A CN107797929 A CN 107797929A CN 201711014421 A CN201711014421 A CN 201711014421A CN 107797929 A CN107797929 A CN 107797929A
Authority
CN
China
Prior art keywords
test
sva
item
design
assert
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711014421.XA
Other languages
English (en)
Other versions
CN107797929B (zh
Inventor
吴飞
江国进
孙永滨
白涛
黄君龙
曹宗生
冀建伟
齐敏
吕秀红
郄永学
董玲玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China General Nuclear Power Corp
China Techenergy Co Ltd
Original Assignee
China General Nuclear Power Corp
China Techenergy Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China General Nuclear Power Corp, China Techenergy Co Ltd filed Critical China General Nuclear Power Corp
Priority to CN201711014421.XA priority Critical patent/CN107797929B/zh
Publication of CN107797929A publication Critical patent/CN107797929A/zh
Application granted granted Critical
Publication of CN107797929B publication Critical patent/CN107797929B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明属于安全级仪控系统仿真测试的技术领域,为了解决现有技术中仿真测试功能覆盖率不能准确得到的技术问题,本发明提供一种可有效提高可编程逻辑仿真测试功能覆盖率的统计方法和装置,所述统计方法包括:S1、对HPD需求规格书中的需求项进行形式化描述,并按照预定的编码规则对各需求项建立唯一的编号;S2、建立待测试系统的追踪矩阵;S3、编写测试规程中的每条测试通过准则相应的SVA断言代码;S4、按照所述测试用例对应的测试激励,执行完成后通过SVA断言自动生成测试结果。能够通过在仿真测试过程中增加对编码环节进行有效的追踪和监控,从而直观的体现功能覆盖率,使可编程逻辑的仿真测试过程更严谨、更符合高可靠性的要求。

Description

可编程逻辑仿真测试功能覆盖率的统计方法和装置
技术领域
本发明涉及安全级仪控系统仿真测试的技术领域,尤其涉及一种可编程逻辑仿真测试功能覆盖率的统计方法和装置。
背景技术
在一些对可靠性和安全性要求较高的行业,如核、军工、航空航天等领域,非常重视测试的完整性和可靠性。现有技术中,通常的统计方法是将需求、设计、测试等环节条目化,建立自上而下的追踪关系,以保证从需求到最终交付成果之间的一致性。
例如,HPD(HDL-programmed device的简称,即HDL可编程器件;而HDL是hardwaredescription language的简称,中文翻译为硬件描述语言)白盒验证方法除代码审查外主要有仿真测试和形式化验证两种:仿真统计方法根据设计说明书编写测试激励,将仿真波形与设计进行比较后,记录测试结果;形式化验证方法根据设计编写约束,将输入信号限制在一个可控的范围内,再通过断言判断被测对象的响应是否正确。但是但前者的缺点是功能覆盖率无法统计;后者缺点是机器自动执行运行效率低下,无法根据实际功能调整和优化测试用例。
为了解决上述两种方法存在的不足,申请号为CN201410178300.9的中国专利公开了一种采用“功能仿真加断言”的方式开展仿真测试,具体地:通过手动编制测试向量或通过测试工具自动生成随机测试向量的方式产生测试激励,再通过断言判断被测对象输出的响应是否符合预期结果。
但是发明人在实现本发明的过程中发现:上述方法虽然能兼顾仿真测试和形式化验证各自的优点,例如,可以提高测试效率,尤其对于回归测试和重复测试效果非常明显,并且测试结果的自动判断还可以减少人为判断失误导致的错漏检。上述技术方案虽然从一定程度上提高了测试效率和可重用性,但由于功能覆盖率得不到根本性的保证,因此无法从根本上解决从需求项到最终交付成果之间的一致性和完整性问题,也不便于审查和监管,很难达到核行业对于高可靠性和监管的要求。
发明内容
为了解决现有技术中仿真测试功能覆盖率不能准确得到的技术问题,本发明的目的是提供一种有效提高可编程逻辑仿真测试功能覆盖率的统计方法和装置,能够通过在仿真测试过程中增加对编码环节进行有效的追踪和监控,并对HPD需求(设计)项进行形式化描述,从而直观的体现功能覆盖率,使可编程逻辑的仿真测试过程更严谨、更符合高可靠性的要求。
为了实现上述目的,本发明提供的技术方案包括:
一种可编程逻辑仿真测试功能覆盖率的统计方法,其特征在于,包括:
S1、对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号;
S2、通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵;
S3、在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;
S4、按照所述测试用例对应的测试激励,自动执行测试;测试执行过程中,若某条断言没有通过,自动提示设计人员修改设计;若某条断言没有被遍历到,自动提示设计人员对应测试项功能覆盖率不足,需要补充测试激励;并且所有测试用例执行完成后通过SVA断言自动生成测试结果。
本发明实施例优选地,所述方法还包括:S5、步骤S4测试执行完成后,通过所述SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。
本发明实施例优选地,所述方法还包括:S6、当某个所述测试项中的测试结论为不通过的,需判断所述测试项目不通过是测试激励的问题还是被测设计的问题,修订所述测试激励或所述被测设计后重新执行测试用例,直至得到测试结论为通过。
本发明实施例优选地,所述步骤S3中的测试通过准则包括:如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
本发明实施例优选地,所述SVA断言用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,所述内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。
本发明了另一方面提供一种可编程逻辑仿真测试功能覆盖率的统计装置,其特征在于,包括:
编码生成模块,用于对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号;
追踪矩阵生成模块,用于通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵;
仿真测试环境生成模块,用于在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;
测试结果生成模块,用于按照所述测试用例对应的测试激励;测试执行过程中,若某条断言没有通过,自动提示设计人员修改设计;若某条断言没有被遍历到,自动提示设计人员对应测试项功能覆盖率不足,需要补充测试激励;自动执行测试,并且所有测试用例执行完成后通过SVA断言自动生成测试结果。
本发明实施例优选地,所述统计装置还包括:统计报告生成模块,用于在测试执行完成后,通过所述SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。
本发明实施例优选地,所述统计装置还包括:测试结果诊断模块,当某个所述测试项中的测试结论为不通过的,需判断所述测试项目不通过是测试激励的问题还是被测设计的问题,修订所述测试激励或所述被测设计后重新执行测试用例,直至得到测试结论为通过。
本发明实施例优选地,所述仿真测试环境生成模块设置成如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
本发明实施例优选地,所述SVA断言用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,所述内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。
采用本发明提供的上述技术方案,可以获得以下有益效果中的至少一种:
1、通过断言将形式化的设计和验证思想与核行业的全生命周期可追踪性相结合,使得产品验证过程中的功能覆盖率指标可以被量化;进而有效提高HPD测试活动完备性,使测试过程更严谨、测试结果更具有说服力。
2、将断言及其判断结果作为测试记录的一部分,测试执行过程中依据SVA自动生成测试结果。测试结果自动化分析可有效提高测试效率,避免人工操作产生的测试结果误判断。
3、追踪矩阵和SVA代码编写可以根据用户需求自行拓展,所以针对典型设计开发的SVA代码具有一定的可重用性。
发明的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书变得显而易见,或者通过实施本发明的技术方案而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构和/或流程来实现和获得。
附图说明
图1为本发明实施例提供一种可编程逻辑仿真测试功能覆盖率的统计方法的流程图。
图2为本发明实施例提供一种可编程逻辑仿真测试功能覆盖率的统计装置的结构框图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,这些具体的说明只是让本领域普通技术人员更加容易、清晰理解本发明,而非对本发明的限定性解释;并且只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组控制器可执行指令的控制系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
下面通过附图和具体实施例,对本发明的技术方案进行详细描述:
实施例
如图1所示,本实施例提供一种可编程逻辑仿真测试功能覆盖率的统计方法,该统计方法包括:
S1、对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号。保证所有的需求项不会在设计和测试过程中出现遗漏,同时保证代码实现阶段没有产生与系统需求不相关的冗余逻辑。
S2、通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵;本实施例提及的待测试系统通常是针对FPGA(英文全称Field-Programmable Gate Array,现场可编程门阵列)类型逻辑编辑器的测试,并且该步骤中建立的追踪矩阵,是指搭建矩阵的框架,矩阵中部分参数需要待后续步骤完成后,再将运行结果填充至追踪矩阵中;本实施例提及的追踪矩阵追踪矩阵的建立方法包括,首先是对需求文档中的需求项进行编号,当然编号肯定是有规则的,通常是三段式,中间用“-”隔开;第一段是阶段名称,比如用FRE表示需求项,用FDE表示设计项,用FIT表示测试项,以此类详细请见下文的表4;第二段是芯片名称或板卡名称如表4中的AFABB01,用来与其他产品进行区分;第三段表示功能,像表4中举例的nnet指的是nnet接口功能。
S3、在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;本实施例优选地,规则描述性语言为SVA类型的描述性语言,用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。具体地,SVA(英文全称为System Verilog Assertion)语言,是一种简洁的过程语言,可以更好的控制时序,这种描述性语言,本身简洁移动,维护容易;并且提供内嵌的机制来提供功能覆盖的数据,当断言失败时,仿真系统会根据;断言(Assertion)是设计的属性的描述(如果一个在模拟中被检查的属性不像我们期望的那样表现,那么这个断言失败;如果一个被禁止在设计中出现的属性在模拟过程中发生,那么这个断言失败);并且步骤S3中的测试通过准则与前述步骤S1中的预定规则相对应,下文还有详细的描述。
S4、按照测试用例对应的测试激励,自动执行测试;测试执行过程中,若某条断言没有通过,自动提示设计人员修改设计;若某条断言没有被遍历到,自动提示设计人员对应测试项功能覆盖率不足,需要补充测试激励;并且所有测试用例执行完成后通过SVA断言自动生成测试结果;即测试执行过程中,按照预定脚本注入测试激励,并自动执行测试用例,测试过程无测试人员干预,所有测试用例执行完成后通过SVA断言自动生成测试结果。
因此,通过上述统计方法中的步骤S1-S4可以与核行业的全生命周期可追踪性相结合,更好的实现功能覆盖的测试。
本实施例优选地,上述统计方法还包括:S5、步骤S4测试执行完成后,通过SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。由于SVA断言(包括但不限于SVA)实现在测试规格中从自然语言到机器语言的转化过程,并且测试结果还能通过自然语言直观的体现。
本实施例进一步优选地,上述统计方法还包括:S6、当某个测试项中的测试结论为不通过的,需判断测试项目不通过是测试激励的问题还是被测设计的问题,修订测试激励或被测设计后重新执行测试用例,直至得到测试结论为通过。具体地,通过规则描述性语言中的描述和内嵌函数,能够快速定位到具体哪个测试结果不通过,然后修订测试激励或被测设计。
本实施例优选地,步骤S3中的测试通过准则包括:如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
采用上述统计方法,可以利用形式化断言,链接测试规程、测试执行和测试记录,自动化的进行结果分析。为了本领域技术人员更容易理解本实施例中的技术方案,下面进一步解释如下:
1)、本实施例优选的一种测试规程,如表1所示,规则编号即步骤S1中“编号”的一种体现方式,其中,测试规程是测试向量的上一个阶段;追踪矩阵的覆盖范围和顺序是:需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录,其中SVA描述需与表1中的判定标准完全一致;具体过程是将需求文件中的各需求项进行条目化,之后对这些需求项进行编号;下文中表4的例子中为了节省篇幅只列了一个需求项,实际会有很多;对这些需求项分别进行逐级追踪,按照上面的顺序一直追踪到测试记录,这样就保证了过程可控。
表1.统计方法中的一种测试规则示例
2)、在测试代码中与表1中的测试规程相对应的测试向量和SVA部分描述如下:
需要说明的是,上述代码只是针对表1中这种特定规则的SVA描述,assertproperty为SVA的关键字,描述属性;$error为SVA的内嵌函数,用于定位错误位置。
3)、下面结合表3,示意一种测试结果形成的测试记录:
表3.与表1中测试规定对应的一种测试结果
4)、生成追踪矩阵,其中,追踪矩阵的意义在于证明所有需求规格书中的需求项都在研发生命周期过程中进行了有效的设计和验证,并且各研发过程满足一致性和正确性:
表4.追踪矩阵局部示意图
如图2所示,本实施例还提供一种可编程逻辑仿真测试功能覆盖率的统计装置,该统计装置包括:
编码生成模块110,用于对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号;
追踪矩阵生成模块120,用于通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵。具体地,SVA(英文全称为System Verilog Assertion),是一种简洁的过程语言,可以更好的控制时序,这种描述性语言,本身简洁移动,维护容易;并且提供内嵌的机制来提供功能覆盖的数据,当断言失败时,仿真系统会根据;
仿真测试环境生成模块130,用于在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;
测试结果生成模块140,用于按照测试用例对应的测试激励,自动执行测试,并且所有测试用例执行完成后通过SVA断言自动生成测试结果。
本实施例优选地,统计装置还包括:统计报告生成模块,用于在测试执行完成后,通过SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。
本实施进一步例优选地,统计装置还包括:测试结果诊断模块,当某个测试项中的测试结论为不通过的,需判断测试项目不通过是测试激励的问题还是被测设计的问题,修订测试激励或被测设计后重新执行测试用例,直至得到测试结论为通过。
本实施例优选地,仿真测试环境生成模块设置成如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
本实施例优选地,上述SVA断言,用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。
需要说明的是,本实施例提及的不同模块为分别加载执行与相应模块功能对应程序的控制器,并且可以是同一个控制器中加载在存储器中保存的不同应用程序,也可以是不同控制器中加载不同的应用程序。
采用本发明实施例提供的上述技术方案,可以获得以下有益效果中的至少一种:
1、通过断言将形式化的设计和验证思想与核行业的全生命周期可追踪性相结合,使得产品验证过程中的功能覆盖率指标可以被量化;进而有效提高HPD测试活动完备性,使测试过程更严谨、测试结果更具有说服力。
2、将断言及其判断结果作为测试记录的一部分,测试执行过程中依据SVA自动生成测试结果;测试结果自动化分析可有效提高测试效率,避免人工操作产生的测试结果误判断。
3、追踪矩阵和SVA代码编写可以根据用户需求自行拓展,所以针对典型设计开发的SVA代码具有一定的可重用性。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后需要说明的是,上述说明仅是本发明的最佳实施例而已,并非对本发明做任何形式上的限制。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围内,都可利用上述揭示的做法和技术内容对本发明技术方案做出许多可能的变动和简单的替换等,这些都属于本发明技术方案保护的范围。

Claims (10)

1.一种可编程逻辑仿真测试功能覆盖率的统计方法,其特征在于,包括:
S1、对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号;
S2、通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵;
S3、在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;
S4、按照所述测试用例对应的测试激励,自动执行测试;测试执行过程中,若某条断言没有通过,自动提示设计人员修改设计;若某条断言没有被遍历到,自动提示设计人员对应测试项功能覆盖率不足,需要补充测试激励;并且所有测试用例执行完成后通过SVA断言自动生成测试结果。
2.根据权利要求1所述的统计方法,其特征在于,所述方法还包括:S5、步骤S4测试执行完成后,通过所述SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。
3.根据权利要求2所述的统计方法,其特征在于,所述方法还包括:S6、当某个所述测试项中的测试结论为不通过的,需判断所述测试项目不通过是测试激励的问题还是被测设计的问题,修订所述测试激励或所述被测设计后重新执行测试用例,直至得到测试结论为通过。
4.根据权利要求1所述的统计方法,其特征在于,所述步骤S3中的测试通过准则包括:如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
5.根据权利要求1-4中任意一种所述的统计方法,其特征在于,所述SVA断言用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,所述内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。
6.一种可编程逻辑仿真测试功能覆盖率的统计装置,其特征在于,包括:
编码生成模块,用于对研发生命周期中的需求规格书、设计说明书、测试设计、测试用例、测试规程、SVA断言和测试记录进行形式化描述,并按照预定的编码规则对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录建立唯一的编号;
追踪矩阵生成模块,用于通过形式化描述,并按照预定的编码规则,建立对各个需求项、设计项、测试项、测试用例、测试规程、SVA断言和测试记录之间的追踪矩阵;
仿真测试环境生成模块,用于在构建仿真测试环境中,编写测试规程中的每条测试通过准则相应的SVA断言代码;
测试结果生成模块,用于按照所述测试用例对应的测试激励;测试执行过程中,若某条断言没有通过,自动提示设计人员修改设计;若某条断言没有被遍历到,自动提示设计人员对应测试项功能覆盖率不足,需要补充测试激励;自动执行测试,并且所有测试用例执行完成后通过SVA断言自动生成测试结果。
7.根据权利要求6所述的统计装置,其特征在于,所述统计装置还包括:统计报告生成模块,用于在测试执行完成后,通过所述SVA断言内嵌的统计功能得到各测试项的测试覆盖情况,以及是否测试通过;并且形成测试记录和功能覆盖率的统计报告。
8.根据权利要求7所述的统计装置,其特征在于,所述统计装置还包括:测试结果诊断模块,当某个所述测试项中的测试结论为不通过的,需判断所述测试项目不通过是测试激励的问题还是被测设计的问题,修订所述测试激励或所述被测设计后重新执行测试用例,直至得到测试结论为通过。
9.根据权利要求6所述的统计装置,其特征在于,所述仿真测试环境生成模块设置成如果一个在测试中被检查的属性与测试通过准则不一致,则断言为失败;或者果一个被禁止在设计中出现的属性在测试过程中发生,则断言为失败。
10.根据权利要求6-9中任意一种所述的统计装置,其特征在于,所述SVA断言用于描述和控制时序相关的内容,并且还提供多个内嵌的函数,所述内嵌的函数用于测试时序关系和自动收集功能覆盖率数据。
CN201711014421.XA 2017-10-26 2017-10-26 可编程逻辑仿真测试功能覆盖率的统计方法和装置 Active CN107797929B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711014421.XA CN107797929B (zh) 2017-10-26 2017-10-26 可编程逻辑仿真测试功能覆盖率的统计方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711014421.XA CN107797929B (zh) 2017-10-26 2017-10-26 可编程逻辑仿真测试功能覆盖率的统计方法和装置

Publications (2)

Publication Number Publication Date
CN107797929A true CN107797929A (zh) 2018-03-13
CN107797929B CN107797929B (zh) 2021-01-22

Family

ID=61547883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711014421.XA Active CN107797929B (zh) 2017-10-26 2017-10-26 可编程逻辑仿真测试功能覆盖率的统计方法和装置

Country Status (1)

Country Link
CN (1) CN107797929B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563545A (zh) * 2018-04-11 2018-09-21 北京计算机技术及应用研究所 一种覆盖率驱动软硬件协同的sopc功能验证方法和系统
CN108920374A (zh) * 2018-07-11 2018-11-30 郑州云海信息技术有限公司 一种快速统计需求测试覆盖率的方法及系统
CN109444726A (zh) * 2018-10-12 2019-03-08 盛科网络(苏州)有限公司 测试激励行为一致性的检查方法及检查装置
CN109446098A (zh) * 2018-11-09 2019-03-08 贵州医渡云技术有限公司 一种对象的测试方法、装置、介质及电子设备
CN109902021A (zh) * 2019-03-13 2019-06-18 北京国舜科技股份有限公司 一种信息系统安全测试质量评价方法及系统
CN110502441A (zh) * 2019-08-12 2019-11-26 中国核动力研究设计院 基于vba的dcs单体测试用例自动生成方法
CN110688296A (zh) * 2019-02-25 2020-01-14 上海核工程研究设计院有限公司 一种针对计算机化规程组态的自动化测试方法
CN111031015A (zh) * 2019-11-29 2020-04-17 天津市滨海新区信息技术创新中心 混合协议转换设计的验证方法、装置、设备及存储介质
CN113157574A (zh) * 2021-04-19 2021-07-23 上海湃星信息科技有限公司 一种软件实物测试覆盖率收集方法及装置、电子设备
CN114091388A (zh) * 2021-12-01 2022-02-25 广东工业大学 一种断言属性构造方法和系统与断言验证方法和系统
CN114661615A (zh) * 2022-04-11 2022-06-24 成都迪真计算机科技有限公司 一种fpga软件测试方法和设备
CN114781668A (zh) * 2022-04-15 2022-07-22 北京广利核系统工程有限公司 核电站安全级仪控系统的需求管理方法、装置及相关设备
CN114817015A (zh) * 2022-04-14 2022-07-29 芯天下技术股份有限公司 测试用例的覆盖率统计方法、装置、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007053634A2 (en) * 2005-11-01 2007-05-10 Aberro, Inc. Functional testing and verification of software application
CN102736973A (zh) * 2011-04-07 2012-10-17 中国科学技术大学 不变量指导的随机测试用例自动化生成方法
CN103365770A (zh) * 2012-04-09 2013-10-23 陆兵 移动终端软件测试系统及软件测试方法
US20140282321A1 (en) * 2013-03-15 2014-09-18 Atrenta, Inc. System and method for a hybrid clock domain crossing verification
CN104408264A (zh) * 2014-12-12 2015-03-11 浪潮电子信息产业股份有限公司 一种基于断言的嵌入式存储控制器验证系统及方法
CN105404572A (zh) * 2015-12-08 2016-03-16 北京时代民芯科技有限公司 一种基于遍历搜索存储模型的Cache系统形式化验证方法
CN106294148A (zh) * 2016-08-08 2017-01-04 清华大学 基于扩展符号变迁系统的c语言程序软件验证方法及装置
CN106773785A (zh) * 2016-12-26 2017-05-31 中核控制系统工程有限公司 一种基于fpga技术的核安全级智能仿真验证平台的实现方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007053634A2 (en) * 2005-11-01 2007-05-10 Aberro, Inc. Functional testing and verification of software application
CN102736973A (zh) * 2011-04-07 2012-10-17 中国科学技术大学 不变量指导的随机测试用例自动化生成方法
CN103365770A (zh) * 2012-04-09 2013-10-23 陆兵 移动终端软件测试系统及软件测试方法
US20140282321A1 (en) * 2013-03-15 2014-09-18 Atrenta, Inc. System and method for a hybrid clock domain crossing verification
CN104408264A (zh) * 2014-12-12 2015-03-11 浪潮电子信息产业股份有限公司 一种基于断言的嵌入式存储控制器验证系统及方法
CN105404572A (zh) * 2015-12-08 2016-03-16 北京时代民芯科技有限公司 一种基于遍历搜索存储模型的Cache系统形式化验证方法
CN106294148A (zh) * 2016-08-08 2017-01-04 清华大学 基于扩展符号变迁系统的c语言程序软件验证方法及装置
CN106773785A (zh) * 2016-12-26 2017-05-31 中核控制系统工程有限公司 一种基于fpga技术的核安全级智能仿真验证平台的实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张运涛 等: "功能覆盖率统计用于核级可编程逻辑仿真验证", 《自动化博览(核电仪控)》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563545A (zh) * 2018-04-11 2018-09-21 北京计算机技术及应用研究所 一种覆盖率驱动软硬件协同的sopc功能验证方法和系统
CN108563545B (zh) * 2018-04-11 2021-06-08 北京计算机技术及应用研究所 一种覆盖率驱动软硬件协同的sopc功能验证方法和系统
CN108920374A (zh) * 2018-07-11 2018-11-30 郑州云海信息技术有限公司 一种快速统计需求测试覆盖率的方法及系统
CN109444726B (zh) * 2018-10-12 2021-01-26 盛科网络(苏州)有限公司 测试激励行为一致性的检查方法及检查装置
CN109444726A (zh) * 2018-10-12 2019-03-08 盛科网络(苏州)有限公司 测试激励行为一致性的检查方法及检查装置
CN109446098A (zh) * 2018-11-09 2019-03-08 贵州医渡云技术有限公司 一种对象的测试方法、装置、介质及电子设备
CN110688296A (zh) * 2019-02-25 2020-01-14 上海核工程研究设计院有限公司 一种针对计算机化规程组态的自动化测试方法
CN109902021A (zh) * 2019-03-13 2019-06-18 北京国舜科技股份有限公司 一种信息系统安全测试质量评价方法及系统
CN110502441A (zh) * 2019-08-12 2019-11-26 中国核动力研究设计院 基于vba的dcs单体测试用例自动生成方法
CN110502441B (zh) * 2019-08-12 2022-02-18 中核控制系统工程有限公司 基于vba的dcs单体测试用例自动生成方法
CN111031015A (zh) * 2019-11-29 2020-04-17 天津市滨海新区信息技术创新中心 混合协议转换设计的验证方法、装置、设备及存储介质
CN111031015B (zh) * 2019-11-29 2022-05-06 天津市滨海新区信息技术创新中心 混合协议转换设计的验证方法、装置、设备及存储介质
CN113157574A (zh) * 2021-04-19 2021-07-23 上海湃星信息科技有限公司 一种软件实物测试覆盖率收集方法及装置、电子设备
CN114091388A (zh) * 2021-12-01 2022-02-25 广东工业大学 一种断言属性构造方法和系统与断言验证方法和系统
CN114661615A (zh) * 2022-04-11 2022-06-24 成都迪真计算机科技有限公司 一种fpga软件测试方法和设备
CN114661615B (zh) * 2022-04-11 2024-01-30 成都迪真计算机科技有限公司 一种fpga软件测试方法和设备
CN114817015A (zh) * 2022-04-14 2022-07-29 芯天下技术股份有限公司 测试用例的覆盖率统计方法、装置、电子设备及存储介质
CN114781668A (zh) * 2022-04-15 2022-07-22 北京广利核系统工程有限公司 核电站安全级仪控系统的需求管理方法、装置及相关设备
CN114781668B (zh) * 2022-04-15 2024-09-20 北京广利核系统工程有限公司 核电站安全级仪控系统的需求管理方法、装置及相关设备

Also Published As

Publication number Publication date
CN107797929B (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN107797929A (zh) 可编程逻辑仿真测试功能覆盖率的统计方法和装置
CN114065677B (zh) 用于集成电路硬件设计的故障注入测试的方法和系统
CN110221975B (zh) 创建接口用例自动化测试脚本的方法及装置
Wiels et al. Formal verification of critical aerospace software
US20230273775A1 (en) Remote application modernization
WO2012032890A1 (ja) ソースコード変換方法およびソースコード変換プログラム
CN105975269B (zh) 一种基于流程模型的需求验证方法
CN103530228A (zh) 一种基于模型的软件测试方法
US20120246612A1 (en) System and method for verification and validation of redundancy software in plc systems
CN105589837B (zh) 一种电子文档的自动查错方法
CN104899141B (zh) 一种面向网络应用系统的测试用例选择与扩充方法
CN113348418A (zh) 用于生成组合不同抽象层的多组件系统的混合层故障树的计算机实现的方法
CN101263498A (zh) 用于集成电路设计仿真的断言的开发
Maerani et al. Software verification process and methodology for the development of FPGA-based engineered safety features system
Jung et al. Development of field programmable gate array-based reactor trip functions using systems engineering approach
US20070266349A1 (en) Directed random verification
CN107526861A (zh) 半导体lsi设计装置以及设计方法
CN113454471A (zh) 用于多个链缺陷的单次通过诊断
CN105512372B (zh) 模型化的星载数据处理仿真测试方法
Hecht et al. Verification and Validation of SysML models
CN105758648A (zh) 车辆性能的测试方法和装置
Lahtinen Hardware failure modelling methodology for model checking
CN110717305A (zh) 适用于fpga的验证与确认的方法、系统、设备及介质
CN103593179B (zh) 用于在并行计算环境中开发软件的方法
Jung et al. An evaluation and acceptance of COTS software for FPGA-based controllers in NPPs

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant