CN105512418A - 一种通过复用系统级模型验证环境实现模块级验证的方法 - Google Patents
一种通过复用系统级模型验证环境实现模块级验证的方法 Download PDFInfo
- Publication number
- CN105512418A CN105512418A CN201510952588.5A CN201510952588A CN105512418A CN 105512418 A CN105512418 A CN 105512418A CN 201510952588 A CN201510952588 A CN 201510952588A CN 105512418 A CN105512418 A CN 105512418A
- Authority
- CN
- China
- Prior art keywords
- module
- verification
- level
- checking
- system level
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种通过复用系统级模型验证环境实现模块级验证的方法,所述方法在系统级建模的过程中,采用与实际设计相一致的模块化建模,分别建立各个模块的功能模型,这样,在用来完成系统级的模型验证之后,通过用实际设计的一个或多个模块替换掉对应的模型,为模块级验证提供直接的验证环境。本发明在保证不影响系统级模型验证的前提下,通过前期建模时投入的时间和工作,能大幅地减少模块级验证搭建环境所需的时间,同时,大部分系统级验证的激励也可以直接复用,降低了构造模块验证激励的难度,能有效地缩短整个芯片的研发周期。
Description
技术领域
本发明涉及芯片设计技术领域,具体涉及一种通过复用系统级模型验证环境实现模块级验证的方法。
背景技术
随着工艺技术以及应用领域的不断发展,一方面芯片设计的复杂度不断提高,设计中对部分重要和复杂的模块进行模块级验证变得越来越有必要;而另一方面对芯片研发周期的要求越来越严格,这就要求对于芯片的各种验证工作需要尽早和高效地进行。
传统上的模块级验证,主要分为两种:一种是由设计人员自己进行简单的白盒测试;另一种是通过完整的设计需求文档,由验证人员搭建黑盒的验证平台,并通过覆盖率的方式保证验证的充分性。前者只能适用于简单的或者默认为已经比较稳定的模块,后者能用于比较复杂的模块,但为每个模块搭建不同的验证环境需要耗费大量的时间和工作量,尤其是当芯片中有多个需要进行模块验证的复杂模块时,完成这些彼此不相关的模块验证任务将很大程度地影响验证进度。
如图1所示的简单设计,该芯片有五个模块,其中模块1与模块2复杂度比较高,需要进行模块级验证。传统的做法是分别为模块1和模块2搭建单独的验证环境,再加上之前搭建的系统级模型验证环境,一共需要搭建3个不同的验证平台,以及对应的三套不同的“激励-结果监测”机制。
发明内容
本发明要解决的技术问题是:为了解决上述问题,本发明提出了一种通过复用系统级模型验证环境实现模块级验证的方法。
本发明所采用的技术方案为:
一种通过复用系统级模型验证环境实现模块级验证的方法,考虑到对于超大规模芯片仿真验证的需求,所述方法在系统级建模的过程中,采用与实际设计相一致的模块化建模,分别建立各个模块的功能模型,这样,在用来完成系统级的模型验证之后,通过用实际设计的一个或多个模块替换掉对应的模型,为模块级验证提供直接的验证环境。
所述方法配置过程如下:
1)选用能支持硬件描述的建模语言;
2)明确芯片设计的模块划分、功能描述和接口定义;
3)用建模语言按照功能分别实现各个模块,保证模块模型功能和接口时序与实际设计一致;这是为了满足之后的验证需要直接用模型和设计代码按模块混合验证的需求,而模块模型内部的实现方式,并不需要与实际设计符合;
4)将于模型内部的监测和控制机制分布于各个模块,保证任意数量的模块模型组合不会影响全局的监测和控制;
5)按照验证的类型和目标,对建好的模型进行替换,使用模型与设计代码按照模块进行混合,构造出系统,用系统级验证替代部分或全部的模块级验证。
因为需要实现大量可以直接与设计代码(硬件描述语言)有关的接口,包括需要在接口和模块模型内部进行一定程度的时序控制,所述建模余元采用emverilog或者systemC等带有硬件描述特征的语言进行建模,可以更加方便地实现和管理。
所述模块级的模型实现,使用参数化等方式,为之后的修改提供便利。正常情况下,总体设计完成之后,验证工作开始进行建模,到了这个阶段,模块划分和模块功能不会再有变化,但是接口定义与模块实际实现有关,也就是说在模块实现过程中可能会有所变动。
因为所有的模块模型都是独立可替换的,所以在各个模块中设置有独立的监测和控制机制,并都与一套总的监测和控制机制相连。
为了对单个模块进行更加充分的验证(要通过系统级仿真激励覆盖特定模块内部的所有功能点和代码,效率会比较低),所述方法采用在该模块的上游模块(输出激励到该模块的模块)添加直接注入和控制激励的方式。
本发明的有益效果为:
本发明在保证不影响系统级模型验证的前提下,通过前期建模时投入的时间和工作,能大幅地减少模块级验证搭建环境所需的时间,同时,大部分系统级验证的激励也可以直接复用,降低了构造模块验证激励的难度,能有效地缩短整个芯片的研发周期。
附图说明
图1为一个简单的芯片模块划分示例示意图;
图2为传统系统级模型验证环境示意图;
图3为传统模块级验证的验证环境示意图;
图4为本发明复用系统级模型验证环境的模块级验证环境示意图。
具体实施方式
下面根据说明书附图,结合具体实施方式对本发明进一步说明:
实施例1:
如图4所示,一种通过复用系统级模型验证环境实现模块级验证的方法,在搭建系统级验证模型的阶段,就考虑到了模块验证的需求,对各个模块分别建模。同时,用于模型内部的监测和控制机制分布于各个模块,保证任意数量的模块模型组合也不会影响全局的监测和控制。这样,在进行模块级验证的时候,只需要用待验证设计模块对建好的模块模型进行替换,使用模型与设计按照模块进行混合,构造出系统,用系统级验证替代部分或全部的模块级验证。这样的话,只需要搭建一套验证平台和验证环境,如果有需要,可以实现系统级模型验证,所有模块的模块验证,以及灵活的各种模块组合的集成验证。
随着需要进行模块验证的模块增加,两种方式需要的工作量差别会更加明显。
实施例2:
在实施例1的基础上,本实施例所述方法配置过程如下:
1)选用能支持硬件描述的建模语言;
2)明确芯片设计的模块划分、功能描述和接口定义;
3)用建模语言按照功能分别实现各个模块,保证模块模型功能和接口时序与实际设计一致;这是为了满足之后的验证需要直接用模型和设计代码按模块混合验证的需求,而模块模型内部的实现方式,并不需要与实际设计符合;
4)将于模型内部的监测和控制机制分布于各个模块,保证任意数量的模块模型组合不会影响全局的监测和控制;
5)按照验证的类型和目标,对建好的模型进行替换,使用模型与设计代码按照模块进行混合,构造出系统,用系统级验证替代部分或全部的模块级验证。
实施例3:
在实施例2的基础上,本实施例因为需要实现大量可以直接与设计代码(硬件描述语言)有关的接口,包括需要在接口和模块模型内部进行一定程度的时序控制,所述建模余元采用emverilog或者systemC等带有硬件描述特征的语言进行建模,可以更加方便地实现和管理。
实施例4:
在实施例2的基础上,本实施例所述模块级的模型实现,使用参数化等方式,可以为之后的修改提供便利。正常情况下,总体设计完成之后,验证工作开始进行建模,到了这个阶段,模块划分和模块功能不会再有变化,但是接口定义与模块实际实现有关,也就是说在模块实现过程中可能会有所变动。
实施例5:
在实施例2的基础上,本实施例因为所有的模块模型都是独立可替换的,所以在各个模块中设置有独立的监测和控制机制,并都与一套总的监测和控制机制相连。
实施例6:
在实施例2的基础上,本实施例为了对单个模块进行更加充分的验证(要通过系统级仿真激励覆盖特定模块内部的所有功能点和代码,效率会比较低),所述方法采用在该模块的上游模块(输出激励到该模块的模块)添加直接注入和控制激励的方式。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (6)
1.一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于:所述方法在系统级建模的过程中,采用与实际设计相一致的模块化建模,分别建立各个模块的功能模型,这样,在用来完成系统级的模型验证之后,通过用实际设计的一个或多个模块替换掉对应的模型,为模块级验证提供直接的验证环境。
2.根据权利要求1所述的一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于,所述方法配置过程如下:
1)选用能支持硬件描述的建模语言;
2)明确芯片设计的模块划分、功能描述和接口定义;
3)用建模语言按照功能分别实现各个模块,保证模块模型功能和接口时序与实际设计一致;
4)将于模型内部的监测和控制机制分布于各个模块,保证任意数量的模块模型组合不会影响全局的监测和控制;
5)按照验证的类型和目标,对建好的模型进行替换,使用模型与设计代码按照模块进行混合,构造出系统,用系统级验证替代部分或全部的模块级验证。
3.跟据权利要求2所述的一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于:所述建模余元采用emverilog或者systemC带有硬件描述特征的语言进行建模。
4.跟据权利要求2所述的一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于:所述模块级的模型实现,使用参数化方式。
5.跟据权利要求2所述的一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于:在各个模块中设置有独立的监测和控制机制,并都与一套总的监测和控制机制相连。
6.跟据权利要求2所述的一种通过复用系统级模型验证环境实现模块级验证的方法,其特征在于:所述方法采用在单个模块的上游模块添加直接注入和控制激励的方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510952588.5A CN105512418A (zh) | 2015-12-18 | 2015-12-18 | 一种通过复用系统级模型验证环境实现模块级验证的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510952588.5A CN105512418A (zh) | 2015-12-18 | 2015-12-18 | 一种通过复用系统级模型验证环境实现模块级验证的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105512418A true CN105512418A (zh) | 2016-04-20 |
Family
ID=55720398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510952588.5A Pending CN105512418A (zh) | 2015-12-18 | 2015-12-18 | 一种通过复用系统级模型验证环境实现模块级验证的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105512418A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106100920A (zh) * | 2016-05-27 | 2016-11-09 | 浪潮(北京)电子信息产业有限公司 | 一种网络互连芯片的可复用模型验证方法 |
CN107742022A (zh) * | 2017-10-12 | 2018-02-27 | 郑州云海信息技术有限公司 | 一种基于路由模型进行网络系统验证的方法 |
CN111859832A (zh) * | 2020-07-16 | 2020-10-30 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片仿真验证方法、装置及相关设备 |
CN112241347A (zh) * | 2020-10-20 | 2021-01-19 | 海光信息技术股份有限公司 | 实现SystemC验证的方法和验证平台组件架构 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567149A (zh) * | 2010-12-09 | 2012-07-11 | 上海华虹集成电路有限责任公司 | Soc系统验证方法 |
CN103150440A (zh) * | 2013-03-14 | 2013-06-12 | 福州瑞芯微电子有限公司 | 一种模块级电路网表仿真方法 |
US20140052430A1 (en) * | 2012-04-27 | 2014-02-20 | Mentor Graphics Corporation | Partitionless Multi User Support For Hardware Assisted Verification |
CN104598699A (zh) * | 2015-02-13 | 2015-05-06 | 上海交通大学 | 面向SystemC电路模型的软错误敏感度分析方法 |
-
2015
- 2015-12-18 CN CN201510952588.5A patent/CN105512418A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567149A (zh) * | 2010-12-09 | 2012-07-11 | 上海华虹集成电路有限责任公司 | Soc系统验证方法 |
US20140052430A1 (en) * | 2012-04-27 | 2014-02-20 | Mentor Graphics Corporation | Partitionless Multi User Support For Hardware Assisted Verification |
CN103150440A (zh) * | 2013-03-14 | 2013-06-12 | 福州瑞芯微电子有限公司 | 一种模块级电路网表仿真方法 |
CN104598699A (zh) * | 2015-02-13 | 2015-05-06 | 上海交通大学 | 面向SystemC电路模型的软错误敏感度分析方法 |
Non-Patent Citations (2)
Title |
---|
俞波: "模块级验证环境在顶层验证中的复用", 《电子设计引用》 * |
姚进: "基于 VMM 的 SWP 模块级验证平台的研究", 《西安电子科技大学硕士论文》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106100920A (zh) * | 2016-05-27 | 2016-11-09 | 浪潮(北京)电子信息产业有限公司 | 一种网络互连芯片的可复用模型验证方法 |
CN107742022A (zh) * | 2017-10-12 | 2018-02-27 | 郑州云海信息技术有限公司 | 一种基于路由模型进行网络系统验证的方法 |
CN111859832A (zh) * | 2020-07-16 | 2020-10-30 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片仿真验证方法、装置及相关设备 |
CN111859832B (zh) * | 2020-07-16 | 2022-07-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片仿真验证方法、装置及相关设备 |
CN112241347A (zh) * | 2020-10-20 | 2021-01-19 | 海光信息技术股份有限公司 | 实现SystemC验证的方法和验证平台组件架构 |
CN112241347B (zh) * | 2020-10-20 | 2021-08-27 | 海光信息技术股份有限公司 | 实现SystemC验证的方法和验证平台组件架构 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106371813B (zh) | 一种基于Simulink的电动汽车电机控制器软件生成方法 | |
CN105512418A (zh) | 一种通过复用系统级模型验证环境实现模块级验证的方法 | |
CN103019742B (zh) | 一种多dsp平台上的自动代码生成方法 | |
CN102156784B (zh) | 验证环境图形化的芯片验证方法与装置 | |
CN104573182A (zh) | 一种用于飞行器多模态控制系统的设计方法 | |
CN102522128A (zh) | 一种核电站dcs系统组态逻辑设计的测试方法和系统 | |
CN107944193A (zh) | 航电半实物仿真系统 | |
CN107368657B (zh) | 一种基于工艺仿真的生产资源快速配置方法 | |
CN105844066B (zh) | 一种用于无源标签芯片的设计验证方法 | |
CN109918820A (zh) | 复杂卫星仿真支撑平台 | |
CN108614443A (zh) | Phm系统模型开发和验证平台设计方法 | |
CN108508852A (zh) | 隔离管理系统与隔离管理方法 | |
CN110262794A (zh) | 一种基于规范与描述语言的aadl功能行为拓展方法及工具 | |
CN102012673A (zh) | 复杂反应型系统控制器设计方法 | |
CN108037913A (zh) | 一种xUML4MC模型到MSVL语言程序的转换方法、计算机程序 | |
CN109325900A (zh) | 一种算法的部署方法和系统 | |
CN110847111B (zh) | 基于半实物仿真的获取水电站闸门调度参数的方法 | |
CN106354967A (zh) | 一种涡轮盘结构设计分析一体化方法 | |
CN104156269A (zh) | 一种基于时间自动机的软硬件最优划分的可视化方法 | |
CN108984945A (zh) | 基于多核心联合仿真被验证设计的仿真验证平台 | |
Azzouzi et al. | A survey on systems engineering methodologies for large multi-energy cyber-physical systems | |
Winter et al. | Implementation strategy for the ITER plasma control system | |
CN110472351A (zh) | 一种基于Modelica语言的盾构主机仿真系统的设计方法 | |
CN105988786A (zh) | 利用uml与xml映射建立数据流程一体化模型的方法 | |
CN103810335A (zh) | 一种面向复杂系统并行仿真的组件式描述方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160420 |