CN104408264A - 一种基于断言的嵌入式存储控制器验证系统及方法 - Google Patents
一种基于断言的嵌入式存储控制器验证系统及方法 Download PDFInfo
- Publication number
- CN104408264A CN104408264A CN201410763227.1A CN201410763227A CN104408264A CN 104408264 A CN104408264 A CN 104408264A CN 201410763227 A CN201410763227 A CN 201410763227A CN 104408264 A CN104408264 A CN 104408264A
- Authority
- CN
- China
- Prior art keywords
- verification
- code
- checking
- duv
- embedded
- 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
Links
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开一种基于断言的嵌入式存储控制器验证系统及方法,涉及集成电路逻辑验证领域,该验证系统主要包括:(1)DUV代码分析提取单元(2)验证断言及激励生成单元(3)综合验证单元;通过对DUV设计代码进行自动分析提取,结合存储控制器验证断言库和激励产生库,高效地产生验证断言代码和激励生成代码,可以同时把验证代码应用于模拟验证和形式验证两种验证手段,并且能够在综合验证单元中实现对DUV设计的自动加载验证,极大地缩短了验证调试的时间,提高了验证效率。与传统的单独通过逻辑模拟验证相比较,在验证效率以及覆盖率等方面都有诸多优势。
Description
技术领域
本发明涉及集成电路逻辑验证领域,具体地说是一种基于断言的嵌入式存储控制器验证系统及方法。
背景技术
随着集成电路设计规模的不断增长,嵌入式存储器的类型和容量也不断上升,其中存储控制器的验证成为芯片设计的一项重要环节。特别是对控制协议复杂、存储容量大的存储控制器的功能验证已成为某些设计验证工作的重点,要实现高覆盖率验证,需要大量的人力开销和时间开销。对这一类逻辑的功能验证单靠逻辑模拟存在两方面的问题:一是设计规模的增大导致模拟测试激励数据量庞大,逻辑模拟的时间和人力成本也呈指数增长;二是逻辑模拟的验证完备性很难得到准确的判断。
断言技术用于在代码中捕捉假设,在编写代码时会做出一些假设。使用断言可以创建更稳定、品质更好且不易出错的代码。当需要在一个值为FALSE时中断当前操作的话,可以使用断言。单元测试必须使用断言(Junit/JunitX)。除了类型检查和单元测试外,断言还提供了一种确定各种特性是否在程序中得到维护的极好的方法。而传统的嵌入式存储控制器验证方法,必须人工对DUV设计中的每一个存储控制器进行验证断言代码的设计,以及验证激励文件的编写,工程量随存储体规模、控制器协议复杂度急剧增长。
发明内容
本方明针对现有技术存在的技术问题,提供一种基于断言的嵌入式存储控制器验证系统及方法。
本发明所述一种基于断言的嵌入式存储控制器验证系统及方法,解决所述技术问题采用的技术方案如下:提出了一种利用SystemVerilog断言技术对嵌入式存储控制器进行逻辑验证的系统,充分利用SystemVerilog断言验证技术所具有的代码简洁、可以快速定位设计缺陷等优点,采用芯片设计Verilog代码分析提取、SystemVerilog断言生成、模拟验证与形式验证相结合的方法,实现对芯片设计中规模不断增长的嵌入式存储控制器逻辑的高效高覆盖率的测试验证,从而缩短设计周期,降低设计成本。
所述基于断言的嵌入式存储控制器验证系统主要包括:(1)DUV代码分析提取单元,(2)验证断言及激励生成单元,(3)综合验证单元;其中,(1)DUV代码分析提取单元:采用结构化的代码分析方式,完成对DUV设计Verilog代码的全面覆盖,以及对其中嵌入式存储信息、控制器协议信息的高效提取;(2)验证断言及激励生成单元:基于存储控制器验证断言库和激励产生库,以及嵌入式存储配置信息,产生存储控制器逻辑验证的验证断言代码和激励生成代码;(3)综合验证单元:根据嵌入式存储配置信息,自动完成DUV设计的测试平台构建,利用模拟验证或形式验证的方式,完成对其中的存储控制器的高效验证。
本发明的验证系统及方法对DUV设计代码进行自动分析提取,结合存储控制器验证断言库和激励产生库,高效地产生验证断言代码和激励生成代码,可以同时把验证代码应用于模拟验证和形式验证两种验证手段,并且能够在综合验证单元中实现对DUV设计的自动加载验证。
本发明的一种基于断言的嵌入式存储控制器验证系统及方法与现有技术相比具有的有益效果是:对DUV设计中包含的所有存储体类型、容量,采用的控制协议等信息提供高效的提取,这有利于提高控制器验证的功能覆盖率。同时可以自动、高效地产生存储控制器的验证断言代码和激励生成代码,用于逻辑模拟或形式化验证,大大降低了验证工作的人力开销。而且能够自动完成验证平台构建、验证平台控制文件模板的产生以及完整的逻辑验证过程,并输出验证报告,极大地缩短了验证调试的时间,提高了验证效率。与传统的单独通过逻辑模拟验证相比较,在验证效率以及覆盖率等方面都有诸多优势;因此在控制协议复杂、存储容量大的嵌入式存储控制器的功能验证方面具有很高的技术价值和广阔的应用前景。
附图说明
附图1为所述基于断言的嵌入式存储控制器验证系统的示意图;
附图2为所述基于断言的嵌入式存储控制器验证方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参考附图,对本发明所述一种基于断言的嵌入式存储控制器验证系统及方法进一步详细说明。
实施例1:
本实施例所述基于断言的嵌入式存储控制器验证系统, 其结构包括:(1)DUV代码分析提取单元,(2)验证断言及激励生成单元,(3)综合验证单元;这里,DUV表示被验证设计;其中,(1)DUV代码分析提取单元:采用结构化的代码分析方式,完成对DUV设计Verilog代码的全面覆盖,以及对其中嵌入式存储信息、控制器协议信息的高效提取;(2)验证断言及激励生成单元:基于存储控制器验证断言库和激励产生库,以及嵌入式存储配置信息,产生存储控制器逻辑验证的验证断言代码和激励生成代码;(3)综合验证单元:根据嵌入式存储配置信息,自动完成DUV设计的测试平台构建,利用模拟验证或形式验证的方式,完成对其中的存储控制器的高效验证。
本实施例所述验证系统的结构示意如附图1所示,该验证系统的结构包括DUV代码分析提取单元、验证断言及激励生成单元、综合验证单元;其中验证断言及激励生成单元包含验证断言库和激励产生库。通过DUV代码分析提取单元分析DUV设计的verilog代码,自动提取代码中嵌入式存储信息和控制器协议信息;同时输出作为嵌入式存储配置文件模板。通过验证断言及激励生成单元读取嵌入式存储配置文件,并在验证断言库和激励产生库中查找匹配存储信息和控制器协议信息,然后自动产生相应控制器的验证断言代码和激励生成代码。并且,所述验证断言代码和激励生成代码作为验证断言文件和激励生成文件模板。综合验证单元用于给附加验证断言代码的DUV设计中的存储控制器进行模拟验证或形式验证;通过综合验证单元读取嵌入式存储配置文件,产生验证平台控制文件模板,并构建出DUV设计中存储控制器的验证平台,验证输出的统计信息等保存在验证结果文件里。
根据上述基于断言的嵌入式存储控制器验证系统的技术方案可知,提出了一种基于断言的嵌入式存储控制器验证方法,在使用该验证方法时会产生嵌入式存储配置文件、断言验证文件、激励生成文件、验证平台控制文件以及验证结果文件;
其中,嵌入式存储配置文件详细表述DUV设计中每一嵌入式存储器及其控制器的配置信息,包括存储器的类型、存储器的容量规格、存储器的接口信号、存储器的行为模式、控制器的协议类型、控制器访存模式、控制器访存接口信号等;
断言验证文件能够完成DUV设计中存储控制器的所有断言验证代码;激励生成文件能够完成DUV设计中存储控制器模拟验证的所有激励生成代码;
验证平台控制文件能够对综合验证单元完成验证平台配置,验证输入加载,验证启动运行的所有配置代码、控制脚本等;
验证结果文件包括模拟验证与形式验证生成的所有判断性结果、例证结果、统计结果等文件。
本实施例所述基于断言的嵌入式存储控制器验证系统所提出的验证方法,如附图2所示,该验证方法具体包括如下步骤:
第一、读入并分析DUV设计verilog代码,产生嵌入式存储配置文件模板;
第二、判断嵌入式存储配置文件模板是否符合规范 ,若不符合规范做出必要修改,并生成嵌入式存储配置文件;
第三、分别产生验证断言代码模板、激励生成代码模板和验证平台控制模板;
第四、判断验证断言代码模板、激励生成代码模板和验证平台控制模板是否符合规范,若不符合规范做出必要修改,并生成验证断言代码文件、激励生成代码文件和验证平台控制文件;
第五、加载DUV设计进行逻辑验证,产生验证结果文件并输出验证结果。
本实施例所述基于断言的嵌入式存储控制器验证方法,可以自动、高效的产生存储控制器的验证断言代码和激励生成代码,激励生成代码可用于模拟验证,大大节省了人力开销,验证断言代码可用于对DUV设计的形式验证;其采用穷举算法证明设计是否满足设计规范的要求,覆盖了嵌入式存储器输入的所有可能序列,不需要开发测试激励,检查所有的边角逻辑,提供了完整的存储空间测试覆盖率。同时其对DUV设计代码的分析提取技术,结合丰富的存储控制器验证断言库和激励产生库,能够对DUV设计中包含的所有存储器类型、容量,采用的控制协议等信息提供高效的提取,这有利于提高控制器验证的功能覆盖率。
与现有的ASIC设计验证不同,本实施中所述验证系统及方法能够自动产生存储控制器的验证断言代码和激励生成代码;而传统的验证方法必须人工对DUV设计中的每一个存储控制器进行验证断言代码的设计,以及验证激励文件的编写。并且所产生的验证断言文件和激励生成文件模板可用于验证工程师对比设计规范修改或添加验证项,形成最终的验证断言文件和激励生成文件,这样避免了由于DUV设计本身可能的不完善而导致验证断言文件或激励生成文件不符合规范要求的发生。所述验证系统的综合验证单元可以自动构筑验证平台,产生验证平台控制文件模板,这样都更方便验证工程师检查验证平台和过程是否正确,而且可以合理选择对DUV设计是进行模拟验证还是形式验证。在传统验证方法中,这些验证平台控制文件都需要验证工程师根据每一个具体的设计进行编写,而利用本实施例中验证系统及方法产生的这些格式化文件,将显著减少验证工程师编写时出错的概率,同时大大降低人工劳动量。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
Claims (4)
1.一种基于断言的嵌入式存储控制器验证系统,其特征在于,包括:(1)DUV代码分析提取单元,(2)验证断言及激励生成单元,(3)综合验证单元;其中,(1)DUV代码分析提取单元:采用结构化的代码分析方式,完成对DUV设计Verilog代码的全面覆盖,以及对其中嵌入式存储信息、控制器协议信息的高效提取;(2)验证断言及激励生成单元:基于嵌入式存储配置信息,产生存储控制器逻辑验证的验证断言代码和激励生成代码;(3)综合验证单元:根据嵌入式存储配置信息,自动完成DUV设计的测试平台构建,利用模拟验证或形式验证的方式,完成对其中的存储控制器的高效验证。
2.根据权利要求1所述一种基于断言的嵌入式存储控制器验证系统,其特征在于,所述验证断言及激励生成单元包含验证断言库和激励产生库。
3.一种基于断言的嵌入式存储控制器验证方法,其特征在于,
读入并分析DUV设计verilog代码,产生嵌入式存储配置文件模板;
判断嵌入式存储配置文件模板是否符合规范 ,若不符合规范做出必要修改,并生成嵌入式存储配置文件;
分别产生验证断言代码模板、激励生成代码模板和验证平台控制模板;
判断验证断言代码模板、激励生成代码模板和验证平台控制模板是否符合规范,若不符合规范做出必要修改,并生成验证断言代码文件、激励生成代码文件和验证平台控制文件;
加载DUV设计进行逻辑验证,产生验证结果文件并输出验证结果。
4.根据权利要求3所述一种基于断言的嵌入式存储控制器验证方法,其特征在于,采用穷举算法证明模板是否满足设计规范的要求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410763227.1A CN104408264B (zh) | 2014-12-12 | 2014-12-12 | 一种基于断言的嵌入式存储控制器验证系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410763227.1A CN104408264B (zh) | 2014-12-12 | 2014-12-12 | 一种基于断言的嵌入式存储控制器验证系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104408264A true CN104408264A (zh) | 2015-03-11 |
CN104408264B CN104408264B (zh) | 2018-01-09 |
Family
ID=52645895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410763227.1A Active CN104408264B (zh) | 2014-12-12 | 2014-12-12 | 一种基于断言的嵌入式存储控制器验证系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104408264B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105893202A (zh) * | 2016-04-26 | 2016-08-24 | 浪潮(北京)电子信息产业有限公司 | 一种基于uvm的存储控制器功能测试方法及系统 |
CN107506558A (zh) * | 2017-09-05 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种采用断言和脚本提高统计功能覆盖率效率的方法 |
CN107644128A (zh) * | 2017-09-08 | 2018-01-30 | 郑州云海信息技术有限公司 | 一种DC综合与Formality形式化验证协同的方法及系统 |
CN107797929A (zh) * | 2017-10-26 | 2018-03-13 | 北京广利核系统工程有限公司 | 可编程逻辑仿真测试功能覆盖率的统计方法和装置 |
CN108108306A (zh) * | 2018-02-09 | 2018-06-01 | 盛科网络(苏州)有限公司 | 一种提高报文解析测试覆盖率的方法及系统 |
CN110308387A (zh) * | 2019-07-01 | 2019-10-08 | 成都奥卡思微电科技有限公司 | 一种形式验证断言空泛性的测试和自动纠正方法、存储介质和终端 |
CN111031015A (zh) * | 2019-11-29 | 2020-04-17 | 天津市滨海新区信息技术创新中心 | 混合协议转换设计的验证方法、装置、设备及存储介质 |
CN111488723A (zh) * | 2020-04-01 | 2020-08-04 | 北京中电华大电子设计有限责任公司 | 一种基于脚本的soc芯片存储控制器自动化仿真验证方法 |
CN112632882A (zh) * | 2020-12-18 | 2021-04-09 | 海光信息技术股份有限公司 | 一种基于形式验证对仲裁器验证的装置以及方法 |
CN112749526A (zh) * | 2019-10-30 | 2021-05-04 | 瑞昱半导体股份有限公司 | 电源轨设计方法、装置及其非瞬时计算机可读介质 |
CN113342669A (zh) * | 2021-06-22 | 2021-09-03 | 无锡江南计算技术研究所 | 一种缩短芯片代码覆盖率收敛时间的验证方法及装置 |
CN113868046A (zh) * | 2021-09-03 | 2021-12-31 | 山东云海国创云计算装备产业创新中心有限公司 | 一种pad控制单元的功能验证方法、系统及相关组件 |
CN113947050A (zh) * | 2021-08-27 | 2022-01-18 | 芯华章科技股份有限公司 | 用于生成形式验证环境的方法、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286182A (zh) * | 2008-05-16 | 2008-10-15 | 浙江大学 | 一种用于嵌入式处理器功能验证的动态仿真平台方法 |
CN102622471A (zh) * | 2012-02-22 | 2012-08-01 | 山东华芯半导体有限公司 | 集成电路前端验证方法 |
CN103838653A (zh) * | 2012-11-27 | 2014-06-04 | 上海华虹集成电路有限责任公司 | 基于vmm ral的寄存器自动化验证方法 |
CN104050332A (zh) * | 2014-06-30 | 2014-09-17 | 北京索为高科系统技术有限公司 | 航空电子系统分布式实时综合仿真方法 |
-
2014
- 2014-12-12 CN CN201410763227.1A patent/CN104408264B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286182A (zh) * | 2008-05-16 | 2008-10-15 | 浙江大学 | 一种用于嵌入式处理器功能验证的动态仿真平台方法 |
CN102622471A (zh) * | 2012-02-22 | 2012-08-01 | 山东华芯半导体有限公司 | 集成电路前端验证方法 |
CN103838653A (zh) * | 2012-11-27 | 2014-06-04 | 上海华虹集成电路有限责任公司 | 基于vmm ral的寄存器自动化验证方法 |
CN104050332A (zh) * | 2014-06-30 | 2014-09-17 | 北京索为高科系统技术有限公司 | 航空电子系统分布式实时综合仿真方法 |
Non-Patent Citations (1)
Title |
---|
周德新等: "基于SystemVerilog的SRAM控制器IP核验证", 《电子器件》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105893202A (zh) * | 2016-04-26 | 2016-08-24 | 浪潮(北京)电子信息产业有限公司 | 一种基于uvm的存储控制器功能测试方法及系统 |
CN107506558A (zh) * | 2017-09-05 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种采用断言和脚本提高统计功能覆盖率效率的方法 |
CN107644128A (zh) * | 2017-09-08 | 2018-01-30 | 郑州云海信息技术有限公司 | 一种DC综合与Formality形式化验证协同的方法及系统 |
CN107797929A (zh) * | 2017-10-26 | 2018-03-13 | 北京广利核系统工程有限公司 | 可编程逻辑仿真测试功能覆盖率的统计方法和装置 |
CN108108306A (zh) * | 2018-02-09 | 2018-06-01 | 盛科网络(苏州)有限公司 | 一种提高报文解析测试覆盖率的方法及系统 |
CN110308387B (zh) * | 2019-07-01 | 2021-03-23 | 成都奥卡思微电科技有限公司 | 一种形式验证断言空泛性的测试和自动纠正方法、存储介质和终端 |
CN110308387A (zh) * | 2019-07-01 | 2019-10-08 | 成都奥卡思微电科技有限公司 | 一种形式验证断言空泛性的测试和自动纠正方法、存储介质和终端 |
CN112749526A (zh) * | 2019-10-30 | 2021-05-04 | 瑞昱半导体股份有限公司 | 电源轨设计方法、装置及其非瞬时计算机可读介质 |
CN112749526B (zh) * | 2019-10-30 | 2024-05-07 | 瑞昱半导体股份有限公司 | 电源轨设计方法、装置及其非瞬时计算机可读介质 |
CN111031015A (zh) * | 2019-11-29 | 2020-04-17 | 天津市滨海新区信息技术创新中心 | 混合协议转换设计的验证方法、装置、设备及存储介质 |
CN111031015B (zh) * | 2019-11-29 | 2022-05-06 | 天津市滨海新区信息技术创新中心 | 混合协议转换设计的验证方法、装置、设备及存储介质 |
CN111488723A (zh) * | 2020-04-01 | 2020-08-04 | 北京中电华大电子设计有限责任公司 | 一种基于脚本的soc芯片存储控制器自动化仿真验证方法 |
CN111488723B (zh) * | 2020-04-01 | 2023-12-26 | 北京中电华大电子设计有限责任公司 | 一种基于脚本的soc芯片存储控制器自动化仿真验证方法 |
CN112632882A (zh) * | 2020-12-18 | 2021-04-09 | 海光信息技术股份有限公司 | 一种基于形式验证对仲裁器验证的装置以及方法 |
CN113342669A (zh) * | 2021-06-22 | 2021-09-03 | 无锡江南计算技术研究所 | 一种缩短芯片代码覆盖率收敛时间的验证方法及装置 |
CN113342669B (zh) * | 2021-06-22 | 2022-12-30 | 无锡江南计算技术研究所 | 一种缩短芯片代码覆盖率收敛时间的验证方法及装置 |
CN113947050A (zh) * | 2021-08-27 | 2022-01-18 | 芯华章科技股份有限公司 | 用于生成形式验证环境的方法、电子设备及存储介质 |
CN113868046A (zh) * | 2021-09-03 | 2021-12-31 | 山东云海国创云计算装备产业创新中心有限公司 | 一种pad控制单元的功能验证方法、系统及相关组件 |
Also Published As
Publication number | Publication date |
---|---|
CN104408264B (zh) | 2018-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104408264A (zh) | 一种基于断言的嵌入式存储控制器验证系统及方法 | |
CN103308846B (zh) | 一种基于模型识别的集成芯片功能性能检测方法和装置 | |
CN105589993B (zh) | 微处理器功能验证设备及微处理器功能验证方法 | |
CN105022691B (zh) | 一种基于uml图的高度自动化软件测试方法 | |
CN105975726A (zh) | 一种基于SystemVerilog语言的验证方法及平台 | |
CN106133537A (zh) | 一种fpga功能模块仿真验证方法及其系统 | |
CN104793171A (zh) | 一种基于故障仿真的智能电表故障检测方法 | |
CN111950212A (zh) | 高效的多模式验证平台及方法 | |
CN107797929A (zh) | 可编程逻辑仿真测试功能覆盖率的统计方法和装置 | |
CN105070321B (zh) | 存储器件的快速测试电路及方法 | |
CN105302573A (zh) | 一种用于功能验证平台的功能点匹配设置自动化平台的搭建方法 | |
CN104515947A (zh) | 可编程逻辑器件在系统编程的快速配置与测试方法 | |
CN104569794A (zh) | 一种基于边界扫描结构的fpga在线测试仪及测试方法 | |
CN105279092A (zh) | 一种软件测试的方法及装置 | |
CN102565683B (zh) | 一种测试向量的生成与验证方法 | |
CN106610879B (zh) | 提高芯片cpu噪声测试效率的方法 | |
CN105426915A (zh) | 基于支持向量机的预测方法及系统 | |
CN108897652B (zh) | 一种基于rtl级功耗分析的错误定位方法及系统 | |
CN103293410B (zh) | 服务器功耗检测方法与装置 | |
TW201218008A (en) | Intelligent architecture creator | |
CN101916305A (zh) | 一种复杂管脚芯片的验证方法 | |
CN103796009A (zh) | 一种fpga质量诊断测试系统 | |
US8341579B2 (en) | Method, apparatus, and system for analyzing operation of semiconductor integrated circuits | |
CN102169160B (zh) | 一种集成电路的管脚复用的验证装置和验证方法 | |
CN103165405A (zh) | 一种通过gpib接口实时生成多维变量密码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |