CN117910400A - 一种数据比对验证方法、系统、设备及介质 - Google Patents
一种数据比对验证方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN117910400A CN117910400A CN202311776062.7A CN202311776062A CN117910400A CN 117910400 A CN117910400 A CN 117910400A CN 202311776062 A CN202311776062 A CN 202311776062A CN 117910400 A CN117910400 A CN 117910400A
- Authority
- CN
- China
- Prior art keywords
- data
- component
- curve
- target data
- uvm
- 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
- 238000012795 verification Methods 0.000 title claims abstract description 185
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012360 testing method Methods 0.000 claims abstract description 90
- 230000000007 visual effect Effects 0.000 claims abstract description 55
- 238000012800 visualization Methods 0.000 claims abstract description 50
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000006870 function Effects 0.000 claims description 115
- 238000004088 simulation Methods 0.000 claims description 42
- 238000013461 design Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 25
- 238000013524 data verification Methods 0.000 claims description 20
- 238000004458 analytical method Methods 0.000 claims description 7
- 230000007246 mechanism Effects 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 238000007689 inspection Methods 0.000 claims description 5
- 238000007639 printing Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 13
- 239000003795 chemical substances by application Substances 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种数据比对验证方法、系统、设备及介质,包括:将可视化组件增加至UVM验证环境,编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;以及,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;通过曲线生成组件分别绘制生成对应的目标数据曲线和期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线。本发明通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,能够支持量大、维度多的数据处理。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据比对验证方法、系统、设备及介质。
背景技术
在芯片验证领域,现有的数据比对验证方案,往往是使用手动计算或者使用仿真工具手动加载对应波形去观察数据误差。但在芯片验证的时候,对于量大、维度多的数据,仅通过查看原始数据或波形很难或无法观察到趋势,特别是输出数据和期待数据之间的关系变化。因此,如何直观地实现芯片数据比对验证,是当前亟需解决的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种数据比对验证方法、系统、设备及介质,用于解决现有技术中存在的技术问题。
为实现上述目的及其他相关目的,本发明提供一种数据比对验证方法,包括以下步骤:
将可视化组件增加至预先或实时建立的数据验证环境中,所述数据验证环境包括UVM(Universal Verification Methodology,通用验证方法学,简称UVM)验证环境;
利用所述UVM验证环境中的测试组件编写测试用例,并基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境;以及,
将待进行数据比对验证的目标数据与对应的期望数据写入至所述UVM验证环境,并通过所述UVM验证环境中的图像绘制函数调用曲线生成组件;其中,所述目标数据包括待测设计的输出数据;
通过所述曲线生成组件分别绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数,以对比显示所述目标数据曲线和所述期望数据曲线;其中,所述目标数据曲线和所述期望数据曲线的可视化参数不同。
于本发明的一实施例中,若所述曲线生成组件为matlab模块组件,则通过所述matlab模块组件绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数的过程包括:
将包含所述目标数据与所述期望数据的文本文档传输给所述matlab模块组件;
通过所述matlab模块组件中的第一函数绘制出所述文本文档中第一期望数据的曲线,记为第一期望数据曲线;以及,通过修改所述第一函数的内部参数,调整所述第一期望数据曲线的可视化参数;其中,所述第一函数包括plot函数;
通过所述matlab模块组件中的第二函数维持所述第一期望数据曲线在当前时刻的状态,并使用第一函数绘制出所述文本文档中第一目标数据的曲线,记为第一目标数据曲线;以及,通过修改所述第一函数的内部参数,调整所述第一目标数据曲线的可视化参数;其中,所述第二函数包括hold on函数,所述第一目标数据与所述第一期望数据是同一组对比显示数据;
按照不同的可视化参数对比显示所述目标数据的曲线和所述期望数据的曲线。
于本发明的一实施例中,所述UVM验证环境的建立过程包括:
获取用于建立所述UVM验证环境的组件,包括:测试组件、环境组件、计分板组件、代理组件、监视器组件、虚拟序列器组件和驱动组件;其中,所述可视化组件与所述计分板组件连接;
将所述代理组件、所述监视器组件、所述虚拟序列器组件和驱动组件进行组合,得到第一分层组件;以及,
将所述可视化组件、所述计分板组件和所述第一分层组件进行组合,得到第二分层组件;以及,
将所述测试组件、所述第二分层组件进行组合,得到第三分层组件;以及,
将待测设计和所述第三分层组件进行组合,得到顶层组件。
于本发明的一实施例中,所述UVM验证环境的建立过程还包括:
进行数据建模,并按照序列条目由序列产生参考模型,以及将所述参考模型传输至所述虚拟序列器组件中;
通过序列条目端口将所述虚拟序列器组件与所述驱动组件进行连接,并将序列条目端口的信息驱动至待测设计的端口上;
通过所述监视器组件接收待测设计的输出数据,并通过所述代理组件的分析端口传输至所述计分板组件,比对参考模型和所述监视器组件分别发送的数据,根据比对结果确定所述待测设计是否正确工作。
于本发明的一实施例中,基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境的过程包括:
按照阶段机制对所述UVM验证环境进行仿真运行层次化,并将所述可视化组件添加至计分板阶段;
进入构建阶段,创建UVM树,并基于所述测试用例实例化所述UVM验证环境中的每个组件;
进入连接阶段,按照自底向上执行,通过内置端口连接完成实例化后所述UVM验证环境中的每个组件;
进入阐述阶段,显示测试台拓扑结构,并对所述测试台进行检测;
进入仿真开始阶段,对所述测试台拓扑结构进行打印;
进入仿真运行阶段,对待测设计进行仿真运行测试;
进入提取阶段,分别提取所述待测设计和所述测试台的最终状态;
进入检查阶段,对所述仿真结果进行分析;
进入计分板阶段中的报告阶段,添加所述可视化组件,并基于分析后的仿真结果形成报告。
于本发明的一实施例中,所述可视化参数包括以下至少之一:曲线颜色、曲线宽度。
于本发明的一实施例中,将包含所述目标数据与所述期望数据的文本文档传输给所述matlab模块组件前,所述方法还包括:通过第三函数将需要进行图形化处理的目标数据和期望数据写入文本文档中;
其中,所述第三函数写入文本文档中的数据参数包括:内存地址、数据长度、数据类型和文件指针。
本发明还提供一种数据比对验证系统,所述系统包括有:
验证环境模块,用于将可视化组件增加至预先或实时建立的数据验证环境中,所述数据验证环境包括UVM验证环境;
测试用例模块,用于利用所述UVM验证环境中的测试组件编写测试用例,并基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境;
仿真运行模块,将待进行数据比对验证的目标数据与对应的期望数据写入至所述UVM验证环境,并通过所述UVM验证环境中的图像绘制函数调用曲线生成组件;其中,所述目标数据包括待测设计的输出数据;
比对验证模块,用于通过所述曲线生成组件分别绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数,以对比显示所述目标数据曲线和所述期望数据曲线;其中,所述目标数据曲线和所述期望数据曲线的可视化参数不同。
本发明还提供一种数据比对验证设备,包括:
处理器;和,
存储有指令的计算机可读介质,当所述处理器执行所述指令时,使得所述设备执行如上述中任一所述的数据比对验证方法。
本发明还提供一种计算机可读介质,其上存储有指令,所述指令由处理器加载并执行如上述中任一所述的数据比对验证方法。
如上所述,本发明提供一种数据比对验证方法、系统、设备及介质,具有以下有益效果:首先将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;其次利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;以及,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;最后通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。由此可知,本发明提出了一种在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
附图说明
图1为应用本发明中一个或多个实施例中技术方案的示例性系统架构的示意图;
图2为本发明中一实施例提供的数据比对验证方法的流程示意图;
图3为本发明中一实施例提供的UVM验证环境的框架结构示意图;
图4为本发明中一实施例提供的UVM仿真运行时的阶段机制示意图;
图5为本发明中一实施例提供的可视化组件的具体处理流程示意图;
图6为本发明中一实施例提供的matlab组件的具体处理流程示意图;
图7为本发明中一实施例提供的数据比对验证系统的硬件结构示意图;
图8为适用于实现本发明中一个或多个实施例的数据比对验证设备的硬件结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
matlab,是一种数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。
图1示出了一种可以应用本发明中一个或多个实施例中技术方案的示例性系统架构的示意图。如图1所示,系统架构100可以包括终端设备110、网络120和服务器130。终端设备110可以包括智能手机、平板电脑、笔记本电脑、台式电脑等各种电子设备。服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。网络120可以是能够在终端设备110和服务器130之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路或者无线通信链路。
根据实现需要,本发明实施例中的系统架构可以具有任意数目的终端设备、网络和服务器。例如,服务器130可以是由多个服务器设备组成的服务器群组。另外,本发明实施例提供的技术方案可以应用于终端设备110,也可以应用于服务器130,或者可以由终端设备110和服务器130共同实施,本发明对此不做特殊限定。
在本发明的一个实施例中,本发明的终端设备110或服务器130可以将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;其次利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;以及,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;最后通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。利用终端设备110或服务器130执行数据比对验证方法,可以在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
以上部分介绍了应用本发明技术方案的示例性系统架构的内容,接下来继续介绍本发明的数据比对验证方法。
图2示出了本发明一实施例提供的数据比对验证方法流程示意图。具体地,在一示例性实施例中,如图2所示,本实施例提供一种数据比对验证方法,该方法包括以下步骤:
S210,将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;
S220,利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;
S230,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;
S240,通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。作为示例,本实施例中的可视化参数包括但不限于:曲线颜色、曲线宽度。
由此可知,本实施例提出了一种在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
根据上述记载,在一示例性实施例中,若曲线生成组件为matlab模块组件,则通过matlab模块组件绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数的过程包括:
将包含目标数据与期望数据的文本文档传输给matlab模块组件;
通过matlab模块组件中的第一函数绘制出文本文档中第一期望数据的曲线,记为第一期望数据曲线;以及,通过修改第一函数的内部参数,调整第一期望数据曲线的可视化参数;其中,第一函数包括plot函数。在本实施例中,plot函数是matlab中的二维线画图函数,本实施例使用基本调用格式plot(y,linewidth,MarkerEdgeColor)。可以通过配置linewidth来设置曲线宽度、配置MarkerEdgeColor来设置曲线颜色。
通过matlab模块组件中的第二函数维持第一期望数据曲线在当前时刻的状态,并使用第一函数绘制出文本文档中第一目标数据的曲线,记为第一目标数据曲线;以及,通过修改第一函数的内部参数,调整第一目标数据曲线的可视化参数;其中,第二函数包括holdon函数,第一目标数据与第一期望数据是同一组对比显示数据。在本实施例中,hold on函数在matlab中的基本语法为“hold on”。当绘制图形时,可以先使用hold on函数来保持当前图形不被清除,然后在后续的绘制过程中,使用其他绘图函数来绘制曲线或图形,从而可以将多个曲线或图形绘制在同一张图上。
按照不同的可视化参数对比显示目标数据的曲线和期望数据的曲线。在本实施例中,曲线绘制完成后,可以批量保存成png格式,以方便查看、监测和分析数据,并自动关掉matlab。
根据上述记载,在一示例性实施例中,UVM验证环境的建立过程包括:获取用于建立UVM验证环境的组件,包括:测试组件、环境组件、计分板组件、代理组件、监视器组件、虚拟序列器组件和驱动组件;其中,可视化组件与计分板组件连接;将代理组件、监视器组件、虚拟序列器组件和驱动组件进行组合,得到第一分层组件;以及,将可视化组件、计分板组件和第一分层组件进行组合,得到第二分层组件;以及,将测试组件、第二分层组件进行组合,得到第三分层组件;以及,将待测设计和第三分层组件进行组合,得到顶层组件。在本实施例中,UVM验证环境中自底向上的组件分别是第一分层组件、第二分层组件、第三分层组件和顶层组件。此外,UVM验证环境的建立过程还包括:进行数据建模,并按照序列条目由序列产生参考模型,以及将参考模型传输至虚拟序列器组件中;通过序列条目端口将虚拟序列器组件与驱动组件进行连接,并将序列条目端口的信息驱动至待测设计的端口上;通过监视器组件接收待测设计的输出数据,并通过代理组件的分析端口传输至计分板组件,比对参考模型和监视器组件分别发送的数据,根据比对结果确定待测设计是否正确工作。
根据上述记载,在一示例性实施例中,基于测试用例和可视化组件仿真运行UVM验证环境的过程包括:按照阶段机制对UVM验证环境进行仿真运行层次化,并将可视化组件添加至计分板阶段;进入构建阶段,创建UVM树,并基于测试用例实例化UVM验证环境中的每个组件;进入连接阶段,按照自底向上执行,通过内置端口连接完成实例化后UVM验证环境中的每个组件;进入阐述阶段,显示测试台拓扑结构,并对测试台进行检测;进入仿真开始阶段,对测试台拓扑结构进行打印;进入仿真运行阶段,对DUT进行仿真运行测试;进入提取阶段,分别提取DUT和测试台的最终状态;进入检查阶段,对仿真结果进行分析;进入计分板阶段中的报告阶段,添加可视化组件,并基于分析后的仿真结果形成报告。
根据上述记载,在一示例性实施例中,将包含目标数据与期望数据的文本文档传输给matlab模块组件前,方法还包括:通过第三函数将需要进行图形化处理的目标数据和期望数据写入文本文档中;其中,第三函数写入文本文档中的数据参数包括:内存地址、数据长度、数据类型和文件指针。在本实施例中,第三函数可以是$fwrite函数,其中,$fwrite函数是一种SystemVerilog函数,用于将数据写入到文件中。它可以将内存中的数据写入到磁盘文件中,也可以将磁盘文件中的数据写入到内存中。它的语法为:$fwrite(),其中参数有:内存地址、要写入的数据长度、要写入的数据类型、文件指针。可以实现从内存到文件的数据传输,也可以读取文本文件、二进制文件等,这样就可以从文件中获取所需要的数据。
在本发明另一示例性实施例中,如图3至图6所示,该实施例还提供一种基于UVM验证环境的数据比对验证方法,包括以下步骤:
步骤1:UVM验证环境基本框架搭建。具体地,本发明中UVM验证环境基本框架搭建结构如图3所示,包括:
①首先进行数据建模sequence_item(transaction);
②建好之后由序列Sequence产生,传输到对应的虚拟序列器Sequencer中;
③然后由序列条目端口seq_item_port将虚拟序列器Sequencer与驱动器Driver连接起来,并且将序列条目sequence_item里的信息驱动到DUT(Design Under Test,待测设计,简称DUT)的端口interface上;
④由监视器monitor接受DUT的输出,由分析端口analysis_port送到计分板Scoreboard里,比较参考模型reference model和监视器Monitor分别发送来的数据,根据比较结果判断DUT是否正确工作。
其中,Test(测试):是UVM的顶层Component(组成)组件,主要完成例化和配置顶层Env,并通过Env调用Sequence(序列)产生激励从而给到DUT。
Env(环境):主要用于将UVM组件进行有关联的分层。一般在Env里例化Agent、Scoreboard,设置是其他的Env,顶层的Env用于封装用来对DUT测试的环境。
Scoreboard(计分板):用于比较待测设计输出和期望输出,并生成测试结果。通过agent的analysis port(分析端口)来接收DUT的输入和输出的transaction(事务)。将输入transaction灌入到reference model(参考模型)来产生期望的结果,然后与DUT实际的输出结果作比较。和一般操作不同的是,此处增加了将输出数据和期望数据写入文本文档(.txt)的功能。用来为后续的数据处理做准备。
Agent(代理):负责与待测设计进行通信,并生成和接收待测设计信号。Agent通常包括一个或多个驱动程序和一个或多个监视器。
Monitor(监视器):用于监视待测设计中的模块或接口的数据传输情况。
Sequencer(虚拟序列器):用于生成测试序列。虚拟序列器通常包括一个或多个虚拟序列生成器和一个或多个虚拟序列分配器。
Driver(驱动):用于向待测设计中的模块或接口发送数据。
步骤2,测试用例的编写。根据验证计划编写对应测试用例。
步骤3,UVM仿真运行。在本实施例中,UVM仿真运行的时候会有不同的阶段Phase,Phase机制的意义是使得UVM的运行层次化,使得各种例化先后次序正确。将本发明中的可视化组件添加到report_phase中,从而实现自动化的目的。具体地,Phase机制按照图4对应的顺序进行执行。首先,创建各个组件的对象,最先执行build_phase(构建阶段);然后,执行connect_phase(连接阶段),进行各个组件的连接,执行顺序是自底向上的;再然后,测试激励在run_phase(运行阶段)被发送到DUT中,run_phase和其他run time phase(运行时间阶段)之间都是并行的;在run_phase中完成一些等待、激励、采样的任务;比如上电和复位、寄存器配置、发送测试的内容、等待DUT完成测试。
其中:build_phase(构建阶段):自顶向下执行,创建UVM树,实例化所有组件。
connet:自底向上执行,通过内置端口连接组件。
end_of_elaboration(阐述完成阶段):自底向上执行,显示试验台拓扑结构;检查测试台的正确性。
start_of_simulation(仿真开始阶段):自底向上执行,测试台拓扑打印。
run:自底向上执行,唯一的任务阶段。大部分任务都在这个阶段执行。Reset(复位阶段)、configure(配置阶段)、main(主运行阶段)、shutdown(关闭阶段)四个phase是核心,这四个phase通常模拟DUT的正常工作方式:①在reset_phase对DUT进行复位、初始化等操作。②在configure_phase则进行DUT的配置。③在main_phase主要是DUT的运行。④在shutdown_phase主要是一些与DUT断电相关的操作。
通过这种细分,本实施例可以实现对DUT更加精确的控制,同时也可以实现在phase间的跳转,更便于去构建一些场景。
Extract(提取阶段):自底向上执行,提取测试台的最终状态;提取DUT的最终状态(后门)。
Check(检查阶段):自底向上执行,对仿真结果进行分析。
Report(报告阶段):自底向上执行,报告模拟结果。将本发明中的可视化组件添加到此处,从而实现自动化的目的。
Final(最终阶段):自顶向下执行,最后一个阶段。
根据上述记载,本实施例中的可视化组件的具体处理流程如图5所示。包括:
①数据预处理单元:运行基于UVM框架的验证环境,在Scoreboard(计分板)中将需要对比的输出数据和期望数据记录到UVM内部的数组中。可以通过不同条件触发记录动作,比如通过时间触发可以选择给定时间内(比如可以选择1~3s时间内的数据去记录)的数据记录、通过事件触发可以选择某个条件下(比如接收到给定数据)的数据记录;
②通过$fwrite函数将需要图形化处理的输出数据和期望数据写入文本文档(.txt);
$fwrite函数:$fwrite函数是一种SystemVerilog函数,用于将数据写入到文件中。它可以将内存中的数据写入到磁盘文件中,也可以将磁盘文件中的数据写入到内存中。它的语法为:$fwrite(),其中参数有:内存地址、要写入的数据长度、要写入的数据类型、文件指针。可以实现从内存到文件的数据传输,也可以读取文本文件、二进制文件等,这样就可以从文件中获取所需要的数据。
③在UVM的report_phase里用$system函数调用matlab模块,同时控制matlab自动打开图形界面;
$system函数:在SystemVerilog中,$system()是一个系统任务,用于执行外部系统命令。它接受一个字符串参数,表示要执行的系统命令,并且可以返回一个整数值,表示命令的执行结果。$system()任务会将命令发送到系统,然后等待命令执行完毕。它可以用于执行外部工具、调用脚本文件或者进行任何需要调用系统命令的操作。
④UVM控制单元:通过控制单元内部参数设置数据对比组数,可以实现一组输出数据和期望数据对比,或多组输出数据和多组对应的期望数据绘制在一张图内进行对比。
⑤对比数据绘制生成单元:将文本文档(.txt)传递给matlab模块,并使用plot函数将第一组期望数据绘制完成并通过修改plot函数内部参数来调整曲线的颜色为红色、宽度为3;然后使用hold on函数保持第一组曲线不变,在此基础上继续使用plot函数绘制第二组实际输出数据并通过修改plot函数内部参数来调整曲线的颜色为蓝色、宽度为5。若UVM控制单元设置多组数据对比,则继续绘制。在本实施例中,plot函数,是matlab中的二维线画图函数,这里使用基本调用格式plot(y,linewidth,MarkerEdgeColor)。可以通过配置linewidth来设置曲线宽度、配置MarkerEdgeColor来设置曲线颜色。hold on函数:在matlab中,hold on函数的基本语法为“hold on”。当绘制图形时,可以先使用hold on函数来保持当前图形不被清除,然后在后续的绘制过程中,使用其他绘图函数来绘制曲线或图形,这样就可以将多个曲线或图形绘制在同一张图上。在本实施例中,可以根据需求通过修改plot函数内部参数来调整曲线的颜色、宽度等,增加对比度及易读性。
⑥绘制结果存放单元:绘图完成,批量保存成.png格式方便查看、监测和分析数据。并自动关掉matlab。
根据上述记载,本实施例中的matlab模块具体处理流程如图6所示。具体地,
①将文本文档(.txt)传递给matlab模块;
②使用plot函数将第一组期望数据绘制完成并通过修改plot函数内部参数来调整曲线的颜色为红色、宽度为3;
③然后使用hold on函数保持第一组曲线不变,在此基础上继续使用plot函数绘制第二组实际输出数据并通过修改plot函数内部参数来调整曲线的颜色为蓝色、宽度为5;若UVM控制单元设置多组数据对比,则继续绘制。
④绘制完成,保存成.png格式方便查看;
⑤自动关掉matlab。
步骤4,UVM结果分析。显示输出数据和期望数据的误差大小以及变化趋势。
由此可知,本实施例提出了一种在UVM验证环境中使用matlab全自动化处理数据、绘制曲线的方法,可以支持量大、维度多的数据处理,将输出数据和期待数据之间的趋势和关系变化可视化。可以在UVM验证环境中使用matlab全自动化处理数据、绘制曲线。可以调整曲线的颜色、宽度等,增加对比度及易读性。并且使用仿真语言自带的$system函数调用matlab以实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观。
综上所述,本发明提供一种数据比对验证方法,首先将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;其次利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;以及,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;最后通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。由此可知,本方法提出了一种在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
在本发明另一示例性实施例中,如图7所示,该实施例还提供一种数据比对验证系统,包括有:
验证环境模块710,用于将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;
测试用例模块720,用于利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;
仿真运行模块730,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;
比对验证模块740,用于通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。作为示例,本实施例中的可视化参数包括但不限于:曲线颜色、曲线宽度。
由此可知,本实施例提出了一种在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
根据上述记载,在一示例性实施例中,若曲线生成组件为matlab模块组件,则通过matlab模块组件绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数的过程包括:
将包含目标数据与期望数据的文本文档传输给matlab模块组件;
通过matlab模块组件中的第一函数绘制出文本文档中第一期望数据的曲线,记为第一期望数据曲线;以及,通过修改第一函数的内部参数,调整第一期望数据曲线的可视化参数;其中,第一函数包括plot函数。在本实施例中,plot函数是matlab中的二维线画图函数,本实施例使用基本调用格式plot(y,linewidth,MarkerEdgeColor)。可以通过配置linewidth来设置曲线宽度、配置MarkerEdgeColor来设置曲线颜色。
通过matlab模块组件中的第二函数维持第一期望数据曲线在当前时刻的状态,并使用第一函数绘制出文本文档中第一目标数据的曲线,记为第一目标数据曲线;以及,通过修改第一函数的内部参数,调整第一目标数据曲线的可视化参数;其中,第二函数包括holdon函数,第一目标数据与第一期望数据是同一组对比显示数据。在本实施例中,hold on函数在matlab中的基本语法为“hold on”。当绘制图形时,可以先使用hold on函数来保持当前图形不被清除,然后在后续的绘制过程中,使用其他绘图函数来绘制曲线或图形,从而可以将多个曲线或图形绘制在同一张图上。
按照不同的可视化参数对比显示目标数据的曲线和期望数据的曲线。在本实施例中,曲线绘制完成后,可以批量保存成png格式,以方便查看、监测和分析数据,并自动关掉matlab。
根据上述记载,在一示例性实施例中,UVM验证环境的建立过程包括:获取用于建立UVM验证环境的组件,包括:测试组件、环境组件、计分板组件、代理组件、监视器组件、虚拟序列器组件和驱动组件;其中,可视化组件与计分板组件连接;将代理组件、监视器组件、虚拟序列器组件和驱动组件进行组合,得到第一分层组件;以及,将可视化组件、计分板组件和第一分层组件进行组合,得到第二分层组件;以及,将测试组件、第二分层组件进行组合,得到第三分层组件;以及,将待测设计和第三分层组件进行组合,得到顶层组件。在本实施例中,UVM验证环境中自底向上的组件分别是第一分层组件、第二分层组件、第三分层组件和顶层组件。此外,UVM验证环境的建立过程还包括:进行数据建模,并按照序列条目由序列产生参考模型,以及将参考模型传输至虚拟序列器组件中;通过序列条目端口将虚拟序列器组件与驱动组件进行连接,并将序列条目端口的信息驱动至待测设计的端口上;通过监视器组件接收待测设计的输出数据,并通过代理组件的分析端口传输至计分板组件,比对参考模型和监视器组件分别发送的数据,根据比对结果确定待测设计是否正确工作。
根据上述记载,在一示例性实施例中,基于测试用例和可视化组件仿真运行UVM验证环境的过程包括:按照阶段机制对UVM验证环境进行仿真运行层次化,并将可视化组件添加至计分板阶段;进入构建阶段,创建UVM树,并基于测试用例实例化UVM验证环境中的每个组件;进入连接阶段,按照自底向上执行,通过内置端口连接完成实例化后UVM验证环境中的每个组件;进入阐述阶段,显示测试台拓扑结构,并对测试台进行检测;进入仿真开始阶段,对测试台拓扑结构进行打印;进入仿真运行阶段,对DUT进行仿真运行测试;进入提取阶段,分别提取DUT和测试台的最终状态;进入检查阶段,对仿真结果进行分析;进入计分板阶段中的报告阶段,添加可视化组件,并基于分析后的仿真结果形成报告。
根据上述记载,在一示例性实施例中,将包含目标数据与期望数据的文本文档传输给matlab模块组件前,方法还包括:通过第三函数将需要进行图形化处理的目标数据和期望数据写入文本文档中;其中,第三函数写入文本文档中的数据参数包括:内存地址、数据长度、数据类型和文件指针。在本实施例中,第三函数可以是$fwrite函数,其中,$fwrite函数是一种SystemVerilog函数,用于将数据写入到文件中。它可以将内存中的数据写入到磁盘文件中,也可以将磁盘文件中的数据写入到内存中。它的语法为:$fwrite(),其中参数有:内存地址、要写入的数据长度、要写入的数据类型、文件指针。可以实现从内存到文件的数据传输,也可以读取文本文件、二进制文件等,这样就可以从文件中获取所需要的数据。
综上所述,本发明提供一种数据比对验证系统,首先将可视化组件增加至预先或实时建立的数据验证环境中,数据验证环境包括UVM验证环境;其次利用UVM验证环境中的测试组件编写测试用例,并基于测试用例和可视化组件仿真运行UVM验证环境;以及,将待进行数据比对验证的目标数据与对应的期望数据写入至UVM验证环境,并通过UVM验证环境中的图像绘制函数调用曲线生成组件;其中,目标数据包括待测设计的输出数据;最后通过曲线生成组件分别绘制生成目标数据对应的目标数据曲线、期望数据对应的期望数据曲线,并调整目标数据曲线和期望数据曲线的可视化参数,以对比显示目标数据曲线和期望数据曲线;其中,目标数据曲线和期望数据曲线的可视化参数不同。由此可知,本系统提出了一种在UVM验证环境中全自动化处理数据、绘制曲线的方案,通过调整曲线的可视化参数,例如曲线颜色、曲线宽度等,可以增加曲线对比度及易读性,从而可以将待测设计的输出数据和期待数据之间的趋势和关系变化进行可视化显示,并且使用仿真语言自带的函数调用曲线生成组件来实现全自动化流程,大大的提高了待验证数据的可视化及可读性,使验证简单、高效、直观,从而能够支持量大、维度多的数据处理。
需要说明的是,上述实施例所提供数据比对验证系统与上述实施例所提供的数据比对验证方法属于同一构思,其中数据比对验证方法执行操作的具体方式已经在上述方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的数据比对验证系统在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以通过上述方法实施例实现数据比对验证系统的全部或者部分功能,本处也不对此进行限制。
本发明实施例还提供了一种数据比对验证设备,该设备可以包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行图2所述的数据比对验证方法。图8示出了一种数据比对验证设备1000的结构示意图。参阅图8所示,数据比对验证设备1000包括:处理器1010、存储器1020、电源1030、显示单元1040、输入单元1060。
处理器1010是数据比对验证设备1000的控制中心,利用各种接口和线路连接各个部件,通过运行或执行存储在存储器1020内的软件程序和/或数据,执行数据比对验证设备1000的各种功能,从而对数据比对验证设备1000进行整体监控。本发明实施例中,处理器1010调用存储器1020中存储的计算机程序时执行如图2所述的数据比对验证方法。可选的,处理器1010可包括一个或多个处理单元;优选的,处理器1010可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用等,调制解调处理器主要处理无线通信。在一些实施例中,处理器、存储器、可以在单一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、各种应用等;存储数据区可存储根据数据比对验证设备1000的使用所创建的数据等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。
数据比对验证设备1000还包括给各个部件供电的电源1030(比如电池),电源可以通过电源管理系统与处理器1010逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及数据比对验证设备1000的各种菜单等,本发明实施例中主要用于显示数据比对验证设备1000中各应用的显示界面以及显示界面中显示的文本、图片等对象。显示单元1040可以包括显示面板1050。显示面板1050可以采用液晶显示屏(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置。
输入单元1060可用于接收用户输入的数字或字符等信息。输入单元1060可包括触控面板1070以及其他输入设备1080。其中,触控面板1070,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触摸笔等任何适合的物体或附件在触控面板1070上或在触控面板1070附近的操作)。
具体的,触控面板1070可以检测用户的触摸操作,并检测触摸操作带来的信号,将这些信号转换成触点坐标,发送给处理器1010,并接收处理器1010发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1070。其他输入设备1080可以包括但不限于物理键盘、功能键(比如音量控制按键、开关机按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
当然,触控面板1070可覆盖显示面板1050,当触控面板1070检测到在其上或附近的触摸操作后,传送给处理器1010以确定触摸事件的类型,随后处理器1010根据触摸事件的类型在显示面板1050上提供相应的视觉输出。虽然在图8中,触控面板1070与显示面板1050是作为两个独立的部件来实现数据比对验证设备1000的输入和输出功能,但是在某些实施例中,可以将触控面板1070与显示面板1050集成而实现数据比对验证设备1000的输入和输出功能。
数据比对验证设备1000还可包括一个或多个传感器,例如压力传感器、重力加速度传感器、接近光传感器等。当然,根据具体应用中的需要,上述数据比对验证设备1000还可以包括摄像头等其它部件。
本发明实施例还提供了一种计算机可读存储介质,该存储介质中存储有指令,当一个或多个处理器执行所述指令时,使得上述设备能够执行本发明中如图2所述的数据比对验证方法。
本领域技术人员可以理解的是,图8仅仅是数据比对验证设备的举例,并不构成对该设备的限定,该设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时,可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的,应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可应用至通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器中以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种数据比对验证方法,其特征在于,所述方法包括以下步骤:
将可视化组件增加至预先或实时建立的数据验证环境中,所述数据验证环境包括UVM验证环境;
利用所述UVM验证环境中的测试组件编写测试用例,并基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境;以及,
将待进行数据比对验证的目标数据与对应的期望数据写入至所述UVM验证环境,并通过所述UVM验证环境中的图像绘制函数调用曲线生成组件;其中,所述目标数据包括待测设计的输出数据;
通过所述曲线生成组件分别绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数,以对比显示所述目标数据曲线和所述期望数据曲线;其中,所述目标数据曲线和所述期望数据曲线的可视化参数不同。
2.根据权利要求1所述的数据比对验证方法,其特征在于,若所述曲线生成组件为matlab模块组件,则通过所述matlab模块组件绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数的过程包括:
将包含所述目标数据与所述期望数据的文本文档传输给所述matlab模块组件;
通过所述matlab模块组件中的第一函数绘制出所述文本文档中第一期望数据的曲线,记为第一期望数据曲线;以及,通过修改所述第一函数的内部参数,调整所述第一期望数据曲线的可视化参数;其中,所述第一函数包括plot函数;
通过所述matlab模块组件中的第二函数维持所述第一期望数据曲线在当前时刻的状态,并使用第一函数绘制出所述文本文档中第一目标数据的曲线,记为第一目标数据曲线;以及,通过修改所述第一函数的内部参数,调整所述第一目标数据曲线的可视化参数;其中,所述第二函数包括hold on函数,所述第一目标数据与所述第一期望数据是同一组对比显示数据;
按照不同的可视化参数对比显示所述目标数据的曲线和所述期望数据的曲线。
3.根据权利要求1所述的数据比对验证方法,其特征在于,所述UVM验证环境的建立过程包括:
获取用于建立所述UVM验证环境的组件,包括:测试组件、环境组件、计分板组件、代理组件、监视器组件、虚拟序列器组件和驱动组件;其中,所述可视化组件与所述计分板组件连接;
将所述代理组件、所述监视器组件、所述虚拟序列器组件和驱动组件进行组合,得到第一分层组件;以及,
将所述可视化组件、所述计分板组件和所述第一分层组件进行组合,得到第二分层组件;以及,
将所述测试组件、所述第二分层组件进行组合,得到第三分层组件;以及,
将待测设计和所述第三分层组件进行组合,得到顶层组件。
4.根据权利要求3所述的数据比对验证方法,其特征在于,所述UVM验证环境的建立过程还包括:
进行数据建模,并按照序列条目由序列产生参考模型,以及将所述参考模型传输至所述虚拟序列器组件中;
通过序列条目端口将所述虚拟序列器组件与所述驱动组件进行连接,并将序列条目端口的信息驱动至待测设计的端口上;
通过所述监视器组件接收待测设计的输出数据,并通过所述代理组件的分析端口传输至所述计分板组件,比对参考模型和所述监视器组件分别发送的数据,根据比对结果确定所述待测设计是否正确工作。
5.根据权利要求3或4所述的数据比对验证方法,其特征在于,基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境的过程包括:
按照阶段机制对所述UVM验证环境进行仿真运行层次化,并将所述可视化组件添加至计分板阶段;
进入构建阶段,创建UVM树,并基于所述测试用例实例化所述UVM验证环境中的每个组件;
进入连接阶段,按照自底向上执行,通过内置端口连接完成实例化后所述UVM验证环境中的每个组件;
进入阐述阶段,显示测试台拓扑结构,并对所述测试台进行检测;
进入仿真开始阶段,对所述测试台拓扑结构进行打印;
进入仿真运行阶段,对待测设计进行仿真运行测试;
进入提取阶段,分别提取所述待测设计和所述测试台的最终状态;
进入检查阶段,对所述仿真结果进行分析;
进入计分板阶段中的报告阶段,添加所述可视化组件,并基于分析后的仿真结果形成报告。
6.根据权利要求1或2所述的数据比对验证方法,其特征在于,所述可视化参数包括以下至少之一:曲线颜色、曲线宽度。
7.根据权利要求2所述的数据比对验证方法,其特征在于,将包含所述目标数据与所述期望数据的文本文档传输给所述matlab模块组件前,所述方法还包括:通过第三函数将需要进行图形化处理的目标数据和期望数据写入文本文档中;
其中,所述第三函数写入文本文档中的数据参数包括:内存地址、数据长度、数据类型和文件指针。
8.一种数据比对验证系统,其特征在于,所述系统包括有:
验证环境模块,用于将可视化组件增加至预先或实时建立的数据验证环境中,所述数据验证环境包括UVM验证环境;
测试用例模块,用于利用所述UVM验证环境中的测试组件编写测试用例,并基于所述测试用例和所述可视化组件仿真运行所述UVM验证环境;
仿真运行模块,将待进行数据比对验证的目标数据与对应的期望数据写入至所述UVM验证环境,并通过所述UVM验证环境中的图像绘制函数调用曲线生成组件;其中,所述目标数据包括待测设计的输出数据;
比对验证模块,用于通过所述曲线生成组件分别绘制生成所述目标数据对应的目标数据曲线、所述期望数据对应的期望数据曲线,并调整所述目标数据曲线和所述期望数据曲线的可视化参数,以对比显示所述目标数据曲线和所述期望数据曲线;其中,所述目标数据曲线和所述期望数据曲线的可视化参数不同。
9.一种数据比对验证设备,其特征在于,包括:
处理器;和,
存储有指令的计算机可读介质,当所述处理器执行所述指令时,使得所述设备执行如权利要求1至7中任意一项所述的数据比对验证方法。
10.一种计算机可读介质,其特征在于,其上存储有指令,所述指令由处理器加载并执行如权利要求1至7中任意一项所述的数据比对验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311776062.7A CN117910400A (zh) | 2023-12-21 | 2023-12-21 | 一种数据比对验证方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311776062.7A CN117910400A (zh) | 2023-12-21 | 2023-12-21 | 一种数据比对验证方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117910400A true CN117910400A (zh) | 2024-04-19 |
Family
ID=90692974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311776062.7A Pending CN117910400A (zh) | 2023-12-21 | 2023-12-21 | 一种数据比对验证方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117910400A (zh) |
-
2023
- 2023-12-21 CN CN202311776062.7A patent/CN117910400A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113312879B (zh) | 芯片电路功能验证系统、方法、设备及存储介质 | |
US9959376B2 (en) | Isolated debugging in an FPGA based emulation environment | |
US11175895B2 (en) | Code generation and simulation for graphical programming | |
CA2925015C (en) | System and method for testing data representation for different mobile devices | |
CN111858371A (zh) | 软件测试方法、系统、存储介质及计算机设备 | |
CN104915297B (zh) | 一种android设备的APP耗电量的自动化测试方法 | |
US20170168913A9 (en) | Method and system for testing of applications in asset management software | |
CN112561331A (zh) | 一种可视化的试验分析评估指标构建方法 | |
CN107533473A (zh) | 用于仿真的高效波形生成 | |
CN113051171A (zh) | 接口测试方法、装置、设备及存储介质 | |
CN115756373A (zh) | 一种显示验证方法、仿真平台、装置、介质和设备 | |
CN111949510B (zh) | 测试处理方法、装置、电子设备及可读存储介质 | |
CN112380800A (zh) | 自动评测的在线fpga实验平台及相关方法 | |
WO2023213094A1 (zh) | 应用于集成电路器件的数据区域动态选取方法、系统、设备和计算机可读存储介质 | |
CN117910400A (zh) | 一种数据比对验证方法、系统、设备及介质 | |
CN102043677B (zh) | 双操作系统平行处理的方法 | |
CN112445711A (zh) | 一种基于Web网页可视化拖拽生成模拟测试场景的测试方法 | |
CN110750452B (zh) | 自动化测试方法及装置 | |
US10740521B1 (en) | System and method for localized logic simulation replay using emulated values | |
CN111859985A (zh) | Ai客服模型测试方法、装置、电子设备及存储介质 | |
CN112306838A (zh) | 页面布局兼容性测试方法、装置、设备及可读存储介质 | |
TW576999B (en) | Flexible system simulation structure and interface thereof | |
CN118245268B (zh) | 一种基于硬件加速器平台测试程序报错定位方法及装置 | |
US20210173989A1 (en) | Simulation signal viewing method and system for digital product | |
CN115729218B (zh) | 一种多种换挡方式的模型测试方法、装置、设备和介质 |
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 |