CN102222129A - 一种动态重配置仿真环境的方法 - Google Patents
一种动态重配置仿真环境的方法 Download PDFInfo
- Publication number
- CN102222129A CN102222129A CN2011101203777A CN201110120377A CN102222129A CN 102222129 A CN102222129 A CN 102222129A CN 2011101203777 A CN2011101203777 A CN 2011101203777A CN 201110120377 A CN201110120377 A CN 201110120377A CN 102222129 A CN102222129 A CN 102222129A
- Authority
- CN
- China
- Prior art keywords
- simulation
- file
- configuration
- emulation
- realistic model
- 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
Images
Abstract
一种动态重配置仿真环境的方法,包括步骤:(1)新建一个或多个二进制文件,其包括配置文件和仿真状态记录文件,建立和仿真模型的连接;(2)建立配置文件的数据和仿真模型的配置参数之间一一对应关系,完成对配置文件和仿真模型的初始化设置;(3)仿真模型开始仿真激励,将仿真过程中的各状态记录到仿真状态记录文件,根据仿真状态变化调整配置文件的参数设置;(4)仿真模型在仿真过程中定时读取配置文件,判断配置文件是否有数据变化,如有,则使用从配置文件读取的数据更新配置参数,调整仿真机制;如没有,则继续运行仿真;(5)重复(3)、(4)直至达到仿真目后结束仿真进程。该方法大大减少了仿真时间,避免造成仿真失败。
Description
技术领域
本发明涉及仿真技术领域,具体涉及在不重新编译仿真激励文件且不中断仿真进程的情况下的一种动态重配置仿真环境的方法。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)技术正处于高速发展时期,随着半导体制造工艺的不断提高,新型芯片的规模越来越大,速率等级越来越高,成本也越来越低,低端的FPGA已逐步代替了传统的数字元件,高端的FPGA也开始不断争夺ASIC(Application Specific Integrated Circuit,为专门目的而设计的集成电路)的市场份额。
随着FPGA芯片规模的扩大,设计的复杂度越来越高,仿真测试中需要验证的功能越来越多,造成了仿真模型的复杂程度也不断提高。传统仿真验证方法无法在仿真运行过程中根据仿真结果调整仿真配置,在设计仿真模型时就尽量考虑各种情况。
但是对于一个复杂的设计,特别是一些使用随机化参数配置的设计,很难一次就把所有需要的测试用例考虑周全。一旦发现仿真模型的设置不能满足仿真需求,就需要修改测试代码,重新编译并重启仿真环境,而对于一些大型设计,根据仿真结果调整仿真模型设计时,完成一个仿真激励过程往往需要花费数小时甚至数天的时间,浪费了大量的仿真和重启仿真环境的时间,这样就降低了工作效率。另外,由于无法及时根据仿真结果调整仿真模型,增加或减少测试用例的数量和策略,对于已达到仿真需要功能覆盖率的情况,白白浪费了仿真时间;而对于还未能达到仿真需要功能覆盖率的情况,则因为没有达到仿真目标而造成本次仿真失败的结果。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种动态重配置仿真环境的方法,可以在不修改测试代码的情况下完成仿真机制的调整,从而减少了停止仿真运行、重新编译测试代码、重启仿真环境和重新开始仿真运行的中间过程,大大减少了仿真时间,显著提高了工作效率,避免造成仿真失败。
为达到以上目的,本发明采取的技术方案是:一种动态重配置仿真环境的方法,包括以下步骤:
(1)新建一个或多个二进制文件,其包括配置文件和仿真状态记录文件,并建立和仿真模型的连接,令仿真模型实现对文件的读写控制;
(2)建立配置文件的数据和仿真模型的配置参数之间一一对应关系,并完成对配置文件和仿真模型的初始化设置;
(3)仿真模型按照配置参数对应的仿真机制开始仿真激励过程,仿真模型将仿真过程中的各种状态记录到仿真状态记录文件,并根据仿真运行过程中的状态变化调整配置文件的参数设置;
(4)仿真模型在仿真过程中定时读取配置文件,判断配置文件是否有数据变化,如果有,则使用从配置文件读取的数据更新配置参数,调整仿真机制;如果没有,则继续运行仿真;
(5)重复(3)、(4)直至达到仿真目后结束仿真进程。
在上述技术方案的基础上,步骤(1)通过systemverilog硬件测试语言提供的丰富文件读写接口,建立所述仿真模型和二进制文件的连接。
在上述技术方案的基础上,步骤(3)中,配置文件的参数配置通过仿真测试人员依据仿真记录文件的内容调整。
在上述技术方案的基础上,所述仿真模型从参数配置文件读取仿真配置信息,根据仿真配置信息为被测设备提供产生相应的激励信号,同时采集被测设备在激励信号作用下反馈的信息,将这些信息存储到仿真状态记录文件中。
在上述技术方案的基础上,步骤(2)将配置参数文件的参数默认初值写入配置文件中去,仿真模型的参数设置与配置文件一致。
在上述技术方案的基础上,步骤(3)中所述仿真状态记录文件的数据写入过程与配置文件一致。
在上述技术方案的基础上,步骤(4)中,判断定时是否到来,若定时时间到,则以只读方式打开配置文件,读取数据,并与当前配置比较,判断配置文件是否有数据变化;若定时时间没有到,则等待完成设定的仿真机制后,判断是否达到仿真目的。
在上述技术方案的基础上,所述判断是否达到仿真目的,如果已达到则结束仿真进程,否则转到步骤(3)。
本发明的有益效果在于:本发明通过systemverilog硬件测试语言提供的丰富文件读写接口功能,建立仿真模型和仿真环境外部的二进制文件的连接,使仿真模型可以直接读写这些二进制文件,并通过文件的内容更新仿真机制。与传统仿真方案相比,本方案通过连接外部的参数配置文件和仿真记录文件来实现对仿真模型的动态配置。仿真测试人员根据仿真记录文件的内容调整配置文件的参数配置,使仿真模型自动调整仿真策略,以达到动态配置的目的,从而减少仿真时间,显著提高了工作效率,避免造成仿真失败。
附图说明
图1为本发明动态重配置仿真环境的方法的系统框图;
图2为本发明动态重配置仿真环境的方法的软件流程图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
如图1所示,本发明通过连接外部的参数配置文件和仿真记录文件来实现对仿真模型的动态配置,图1中具有n个配置文件和n个仿真状态记录文件。采集被测设备在激励信号作用下反馈的信息,并将这些信息存储到仿真记录文件中去,仿真测试人员根据仿真记录文件的内容调整配置文件的参数配置,使仿真模型自动调整仿真策略,以达到动态配置的目的。
本发明动态重配置仿真环境的方法,包括以下步骤:
(1)新建一个或多个二进制文件,并建立和仿真模型的连接。所述二进制文件包括配置文件和仿真状态记录文件,通过systemverilog硬件测试语言提供的丰富文件读写接口,建立仿真模型和仿真环境外部的二进制文件的连接,使仿真模型可以直接读写这些二进制文件,并通过文件的内容更新仿真机制。建立二进制文件的时候,要根据设计的复杂程度,对于复杂设计,配置参数数量巨大且种类繁多,为了方便管理,可以按参数类型分类建立多个配置文件,每个文件对应一种类型的参数。
(2)建立配置文件的数据和仿真模型的配置参数之间一一对应关系,并完成对配置文件和仿真模型的初始化设置。配置文件负责通过在仿真环境外部修改仿真配置参数来实现调整仿真机制和策略的功能,保证仿真模型能在运行的过程中实现动态配置。仿真状态记录文件用来记录仿真过程中的状态变化,包括功能覆盖率、仿真运行所处的阶段、仿真过程中出现的各种告警错误等等,它是调整仿真机制的依据。
(3)仿真模型按照配置参数对应的仿真机制开始仿真激励过程,仿真模型将仿真过程中的各种状态记录到仿真状态记录文件,测试人员要根据仿真状态记录文件中记录的仿真状态变化来调整配置文件的内容。
(4)仿真模型在仿真过程中定时读取配置文件,判断配置文件是否有数据变化,如果有,则使用从配置文件读取的数据更新配置参数,调整仿真机制;如过没有,则继续运行仿真。判断定时是否到来时,若定时时间到,则以只读方式打开配置文件,读取数据,并与当前配置比较,判断配置文件是否有数据变化;若定时时间没有到,则等待完成设定的仿真机制后,判断是否达到仿真目的。
(5)重复(3)、(4)直至达到仿真目的后结束仿真进程。
如图2所示,本发明动态重配置仿真环境的方法的软件流程图,具体方法如下:
第一步:新建二进制配置文件和仿真状态记录文件。
第二步:将配置参数的默认初值写到配置文件中去,完成对配置文件和仿真模型的初始化参数配置。此时仿真模型的参数设置与配置文件一致,而当仿真模型模型发现配置文件的数据与当前设置不同时,配置文件有数据变化的判决条件成立。关闭配置文件,释放文件的操作权限,为在仿真环境外部修改文件提供条件。
第三步:按照参数配置对应的仿真机制运行仿真激励,并在仿真状态记录文件中记录仿真状态,仿真状态记录文件的数据写入过程与配置文件一致。
第四步:判断定时是否到来,如果定时时间到,则进入第五步;否则,等待完成设定的仿真机制后进入第六步。
第五步:以只读方式打开二进制配置文件,读取配置文件数据,并与当前配置比较,判断是否有数据更新,如有变化,则用从配置文件读取的数据更新仿真模型的参数配置;如无变化,关闭配置文件,回到第四步。
第六步:判断是否达到仿真目的,如果已达到则结束仿真进程;否则回到第四步继续仿真运行。
下面通过一个实施例对本发明做进一步说明,以FC协议数据仿真为例,实现步骤如下:
(1)新建两个二进制配置文件,分别为环境运行参数配置文件(用于配置仿真模式、各个激励运行的次数、仿真结束的条件等运行相关参数)和数据帧类型配置文件(用于配置帧头数据、载荷类型、帧长、校验方式等帧类型相关参数)。新建三个仿真状态记录文件,分别为仿真流程记录文件(用来监视仿真模型的运行状态,通过它判断仿真模型的功能覆盖率是否达到要求)、错误状态记录文件(用来定位仿真中出现的各种故障点)和收发包计数统计记录文件(用来监视被测设备的运行状态,通过它判断被测设备是否满足设计要求)。并建立和仿真模型的连接,使仿真模型可以实现对文件的读写控制。
(2)建立配置文件的数据和仿真模型的配置参数间的一一对应关系,并使用默认配置完成对配置文件和仿真模型配置参数的初始化设置。
(3)按照配置参数对应的仿真机制开始仿真激励过程,仿真模型将仿真过程中的各种状态记录到仿真状态记录文件,测试人员根据仿真运行过程中的状态变化调整配置文件的参数设置。例如:如果发现当前测试用例已经完成各种仿真需要状态的遍历,可通过修改运行参数配置文件中的仿真模式参数让仿真模型停止对当前的测试用例的使用,而进入下一测试用例的运行,以节省仿真时间;如果发现当前测试用例不能完成仿真需要状态的遍历,则可以加大激励运行的次数,让仿真模型继续运行当前测试用例,直至达到预期目标。
(4)仿真模型在仿真过程中定时读取配置文件,通过比较判断配置文件是否有数据变化,如果有则使用从配置文件读取的数据更新配置参数,调整仿真机制。如无变化则不作处理继续运行仿真。
(5)重复(3)、(4)直至达到仿真目的后结束仿真进程。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。
Claims (8)
1.一种动态重配置仿真环境的方法,其特征在于包括以下步骤:
(1)新建一个或多个二进制文件,其包括配置文件和仿真状态记录文件,并建立和仿真模型的连接,令仿真模型实现对文件的读写控制;
(2)建立配置文件的数据和仿真模型的配置参数之间一一对应关系,并完成对配置文件和仿真模型的初始化设置;
(3)仿真模型按照配置参数对应的仿真机制开始仿真激励过程,仿真模型将仿真过程中的各种状态记录到仿真状态记录文件,并根据仿真运行过程中的状态变化调整配置文件的参数设置;
(4)仿真模型在仿真过程中定时读取配置文件,判断配置文件是否有数据变化,如果有,则使用从配置文件读取的数据更新配置参数,调整仿真机制;如果没有,则继续运行仿真;
(5)重复(3)、(4)直至达到仿真目后结束仿真进程。
2.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:步骤(1)通过systemverilog硬件测试语言提供的丰富文件读写接口,建立所述仿真模型和二进制文件的连接。
3.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:步骤(3)中,配置文件的参数配置通过仿真测试人员依据仿真记录文件的内容调整。
4.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:所述仿真模型从参数配置文件读取仿真配置信息,根据仿真配置信息为被测设备提供产生相应的激励信号,同时采集被测设备在激励信号作用下反馈的信息,将这些信息存储到仿真状态记录文件中。
5.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:步骤(2)将配置参数文件的参数默认初值写入配置文件中去,仿真模型的参数设置与配置文件一致。
6.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:步骤(3)中所述仿真状态记录文件的数据写入过程与配置文件一致。
7.如权利要求1所述的动态重配置仿真环境的方法,其特征在于:步骤(4)中,判断定时是否到来,若定时时间到,则以只读方式打开配置文件,读取数据,并与当前配置比较,判断配置文件是否有数据变化;若定时时间没有到,则等待完成设定的仿真机制后,判断是否达到仿真目的。
8.如权利要求7所述的动态重配置仿真环境的方法,其特征在于:所述判断是否达到仿真目的,如果已达到则结束仿真进程,否则转到步骤(3)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101203777A CN102222129A (zh) | 2011-05-11 | 2011-05-11 | 一种动态重配置仿真环境的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101203777A CN102222129A (zh) | 2011-05-11 | 2011-05-11 | 一种动态重配置仿真环境的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102222129A true CN102222129A (zh) | 2011-10-19 |
Family
ID=44778679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101203777A Pending CN102222129A (zh) | 2011-05-11 | 2011-05-11 | 一种动态重配置仿真环境的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102222129A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799709A (zh) * | 2012-06-19 | 2012-11-28 | 中国电子科技集团公司第二十八研究所 | 基于xml的系统仿真试验环境构建与配置系统及方法 |
CN103544351A (zh) * | 2013-10-25 | 2014-01-29 | 北京世纪高通科技有限公司 | 一种对仿真模型调整参数的方法及装置 |
CN105204995A (zh) * | 2015-09-21 | 2015-12-30 | 上海斐讯数据通信技术有限公司 | 一种基于手机平台的动态调试关键参数的方法及系统 |
CN106020719A (zh) * | 2016-05-13 | 2016-10-12 | 广东电网有限责任公司信息中心 | 一种分布式存储系统的初始参数配置方法 |
CN106647323A (zh) * | 2015-10-30 | 2017-05-10 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种设备模拟运行控制方法和装置 |
CN108362996A (zh) * | 2013-10-12 | 2018-08-03 | 深圳市爱德特科技有限公司 | 一种“近距离测试”理论及方法 |
CN108733889A (zh) * | 2017-04-20 | 2018-11-02 | 三菱日立电力系统株式会社 | 涡轮机组装方法、涡轮机组装辅助系统以及记录介质 |
CN111400983A (zh) * | 2020-03-04 | 2020-07-10 | 上海介方信息技术有限公司 | 一种基于fpga动态重配置的波形组件加载实现方法 |
CN113238723A (zh) * | 2021-04-02 | 2021-08-10 | 福州智象信息技术有限公司 | 一种显示屏的动态旋转方法、装置、设备和介质 |
CN115495854A (zh) * | 2022-11-21 | 2022-12-20 | 苏州数算软云科技有限公司 | 计算机辅助工程模型的参数标定方法、装置、设备及介质 |
CN116992804A (zh) * | 2023-09-26 | 2023-11-03 | 深圳鲲云信息科技有限公司 | 芯片验证的方法及计算设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5425036A (en) * | 1992-09-18 | 1995-06-13 | Quickturn Design Systems, Inc. | Method and apparatus for debugging reconfigurable emulation systems |
CN2775778Y (zh) * | 2005-03-27 | 2006-04-26 | 陈璨 | 可重配置数字电路实验箱 |
CN1818912A (zh) * | 2005-02-11 | 2006-08-16 | 思尔芯(上海)信息科技有限公司 | 可扩展可重配置的原型系统及方法 |
-
2011
- 2011-05-11 CN CN2011101203777A patent/CN102222129A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5425036A (en) * | 1992-09-18 | 1995-06-13 | Quickturn Design Systems, Inc. | Method and apparatus for debugging reconfigurable emulation systems |
CN1818912A (zh) * | 2005-02-11 | 2006-08-16 | 思尔芯(上海)信息科技有限公司 | 可扩展可重配置的原型系统及方法 |
CN2775778Y (zh) * | 2005-03-27 | 2006-04-26 | 陈璨 | 可重配置数字电路实验箱 |
Non-Patent Citations (3)
Title |
---|
刘勇等: "《动态可重配置的星上嵌入式实时计算系统》", 《计算机应用研究》, no. 1, 31 December 2006 (2006-12-31), pages 204 - 205 * |
张旭: "《可重配置FPGA仿真验证平台的研究与设计》", 《湖南广播电视大学学报》, no. 31, 30 September 2007 (2007-09-30), pages 79 - 81 * |
李涛,刘培峰,杨愚鲁: "《动态部分重配置及其FPGA实现》", 《计算机工程》, vol. 32, no. 14, 31 July 2006 (2006-07-31), pages 224 - 226 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799709A (zh) * | 2012-06-19 | 2012-11-28 | 中国电子科技集团公司第二十八研究所 | 基于xml的系统仿真试验环境构建与配置系统及方法 |
CN108362995A (zh) * | 2013-10-12 | 2018-08-03 | 深圳市爱德特科技有限公司 | 一种创新的fpga的使用方法 |
CN108362996A (zh) * | 2013-10-12 | 2018-08-03 | 深圳市爱德特科技有限公司 | 一种“近距离测试”理论及方法 |
CN103544351A (zh) * | 2013-10-25 | 2014-01-29 | 北京世纪高通科技有限公司 | 一种对仿真模型调整参数的方法及装置 |
CN105204995A (zh) * | 2015-09-21 | 2015-12-30 | 上海斐讯数据通信技术有限公司 | 一种基于手机平台的动态调试关键参数的方法及系统 |
CN105204995B (zh) * | 2015-09-21 | 2017-12-22 | 上海斐讯数据通信技术有限公司 | 一种基于手机平台的动态调试关键参数的方法及系统 |
CN106647323A (zh) * | 2015-10-30 | 2017-05-10 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种设备模拟运行控制方法和装置 |
CN106020719A (zh) * | 2016-05-13 | 2016-10-12 | 广东电网有限责任公司信息中心 | 一种分布式存储系统的初始参数配置方法 |
CN108733889A (zh) * | 2017-04-20 | 2018-11-02 | 三菱日立电力系统株式会社 | 涡轮机组装方法、涡轮机组装辅助系统以及记录介质 |
CN108733889B (zh) * | 2017-04-20 | 2022-03-29 | 三菱动力株式会社 | 涡轮机组装方法、涡轮机组装辅助系统以及计算机存储介质 |
CN111400983A (zh) * | 2020-03-04 | 2020-07-10 | 上海介方信息技术有限公司 | 一种基于fpga动态重配置的波形组件加载实现方法 |
CN113238723A (zh) * | 2021-04-02 | 2021-08-10 | 福州智象信息技术有限公司 | 一种显示屏的动态旋转方法、装置、设备和介质 |
CN115495854A (zh) * | 2022-11-21 | 2022-12-20 | 苏州数算软云科技有限公司 | 计算机辅助工程模型的参数标定方法、装置、设备及介质 |
CN116992804A (zh) * | 2023-09-26 | 2023-11-03 | 深圳鲲云信息科技有限公司 | 芯片验证的方法及计算设备 |
CN116992804B (zh) * | 2023-09-26 | 2024-01-05 | 深圳鲲云信息科技有限公司 | 芯片验证的方法及计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102222129A (zh) | 一种动态重配置仿真环境的方法 | |
CN102662701B (zh) | Cpld在线升级方法、装置及业务单板 | |
US7848899B2 (en) | Systems and methods for testing integrated circuit devices | |
CN103809582B (zh) | 半导体制造工艺中控制系统仿真测试方法和系统及装置 | |
CN102521444A (zh) | 软硬件协同仿真/验证方法及装置 | |
CN102595184A (zh) | 智能电视自动化测试方法及系统 | |
CN106843983A (zh) | 远程升级现场可编程门阵列的系统及方法 | |
CN105069256A (zh) | 一种基于tmr的实现和故障注入仿真平台及仿真方法 | |
CN104020763A (zh) | 输入输出接口的自动测试方法及系统 | |
CN110941934A (zh) | 一种fpga原型验证开发板分割仿真系统、方法、介质及终端 | |
CN102662808B (zh) | 一种pcie硬件故障检测的实现方法与装置 | |
CN101604275A (zh) | Bios测试系统及其测试方法 | |
US20090153575A1 (en) | Method for sharing graphics card among multiple operation systems and computer system | |
CN109683470A (zh) | 一种软硬件自适应匹配方法、装置及驱动装置 | |
CN105144168A (zh) | 模拟装置以及模拟程序 | |
CN104572443A (zh) | 一种移动终端测试方法及装置 | |
US20080288233A1 (en) | Simulator and simulation method | |
US20050055190A1 (en) | Circuit operation verification device and method | |
CN116205174A (zh) | 一种基于uvm的异步微处理器验证方法及系统 | |
CN104765616B (zh) | 一种自动生成io模型的方法及系统 | |
CN113255287B (zh) | 一种基于ral的otp寄存器验证方法 | |
US7337103B2 (en) | Method and apparatus for the automatic correction of faulty wires in a logic simulation hardware emulator / accelerator | |
US8225244B2 (en) | Large scale integration device and large scale integration design method including both a normal system and diagnostic system | |
CN107479895A (zh) | 一种同平台项目的参数配置方法及装置 | |
CN103309781A (zh) | 基于dsp与fpga的单倍率同步动态内存的检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20111019 |