CN109740250B - 基于uvm的fpga软件验证结果仿真波形的获取方法和系统 - Google Patents

基于uvm的fpga软件验证结果仿真波形的获取方法和系统 Download PDF

Info

Publication number
CN109740250B
CN109740250B CN201811644705.1A CN201811644705A CN109740250B CN 109740250 B CN109740250 B CN 109740250B CN 201811644705 A CN201811644705 A CN 201811644705A CN 109740250 B CN109740250 B CN 109740250B
Authority
CN
China
Prior art keywords
simulation
fpga software
uvm
measurement interval
interval information
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.)
Active
Application number
CN201811644705.1A
Other languages
English (en)
Other versions
CN109740250A (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.)
General Designing Institute of Hubei Space Technology Academy
Original Assignee
General Designing Institute of Hubei Space Technology Academy
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 General Designing Institute of Hubei Space Technology Academy filed Critical General Designing Institute of Hubei Space Technology Academy
Priority to CN201811644705.1A priority Critical patent/CN109740250B/zh
Publication of CN109740250A publication Critical patent/CN109740250A/zh
Application granted granted Critical
Publication of CN109740250B publication Critical patent/CN109740250B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于UVM的FPGA软件验证结果仿真波形的获取方法和系统,涉及FPGA软件验证领域,该方法包括监测被测FPGA软件的信号,判断所述信号是否满足预设的触发事件,并根据所述触发事件生成被测FPGA软件的测量区间信息,使用EDA数字仿真工具对被测FPGA软件的程序进行仿真,得到仿真文件,根据所述测量区间信息在所述仿真文件中选择相应区间的仿真数据,生成所述测量区间仿真波形图。本发明提供的一种基于UVM的FPGA软件验证结果仿真波形的获取方法和系统,通过监测被测FPGA的信号,预设触发事件,根据触发条件自动生成被测FPGA软件的测量区间信息,在仿真结束后,通过软件即可自动生成各个验证时刻的波形图文件。

Description

基于UVM的FPGA软件验证结果仿真波形的获取方法和系统
技术领域
本发明涉及FPGA软件验证领域,具体涉及一种基于UVM的FPGA软件验证结果仿真波形的获取方法和系统。
背景技术
UVM即通用验证方法学(Universal Verification Methodology,UVM),是一个以SystemVerilog类库为主体的验证平台开发框架,涵盖了从模块级到芯片级,ASIC到FPGA,以及控制逻辑、数据通路到处理器验证对象的全部场景。
目前,验证工程师在进行验证时,往往需要花费大量的精力编写参考模型,以对验证结果进行确认。验证结果的判断采用验证时刻的期望结果与被测件输出结果对比的方式,其主要包括观察验证时刻的波形图或打印验证时刻的相关信号数据。观察验证时刻的波形图的方式,需要验证工程师在EDA数字仿真工具上手动抓取验证时刻的波形图,该方法会耗费大量人力成本和时间成本,在设计规模大的情况下,其工作量将无法忍受;而打印验证时刻的相关信号数据的方式又缺乏直观性。
当前,UVM广泛应用于IC验证和FPGA测试领域,但并没有一种自动获取验证结果仿真波形图的方法,这使得验证工作的繁琐程度居高不下,因此,急需设计基于UVM的自动获取验证结果仿真波形图的方法。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于UVM的FPGA软件验证结果仿真波形的获取方法和系统,通过监测被测FPGA的信号,预设触发条件,根据触发条件自动生成被测FPGA软件的测量区间信息,在仿真结束后,通过软件即可自动生成各个验证时刻的波形图文件。
为达到以上目的,本发明采取的技术方案是:
监测被测FPGA软件的信号;
判断所述信号是否满足预设的触发条件,并根据所述触发条件生成所述被测FPGA软件的测量区间信息;
使用EDA数字仿真工具对所述被测FPGA软件的程序进行仿真,得到仿真文件;
根据所述测量区间信息在所述仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。
在上述技术方案的基础上,使用基于UVM平台的监测函数监测所述被测FPGA软件的信号,且所述监测函数还用于对比所述信号是否满足所述预设的触发条件。
在上述技术方案的基础上,使用基于UVM平台的记录函数记录满足所述预设的触发条件的时间段或相邻时间点,并生成所述测量区间信息。
在上述技术方案的基础上,所述的预设的触发条件包括:所述被测FPGA软件的信号的输出值与UVM平台中该所述FPGA软件的参考模型的输出值不同。
在上述技术方案的基础上,所述的预设的触发条件包括:所述被测FPGA软件的一个信号或多个信号发生满足预设条件的变化。
在上述技术方案的基础上,所述的预设的触发条件包括:
设定区间的所述信号达到预设的值。
在上述技术方案的基础上,所述测量区间信息至少包括时间范围参数,所述测量区间信息还包括信号名称和信号路径。
在上述技术方案的基础上,生成所述被测FPGA软件的所述测量区间信息后,将多个所述测量区间信息封装为配置文件,每个所述测量区间信息均包括信号名称、信号路径和时间范围参数。
在上述技术方案的基础上,根据所述测量区间信息在所述仿真文件中选择相应区间的仿真数据,生成所述测量区间仿真波形图包括:
解析所述配置文件,得到多个所述测量区间信息;
根据多个所述测量区间信息,在所述仿真文件中选择相应区间的仿真数据,根据所述相应区间的仿真数据生成多张所述测量区间仿真波形图。
本发明还包括一种基于UVM的FPGA软件验证结果仿真波形的获取系统,其包括:
监测模块,其用于监测被测FPGA软件的信号;
判断模块,其用于判断所述信号是否满足预设的触发条件,并根据所述触发条件生成所述被测FPGA软件的测量区间信息;
仿真模块,其用于使用EDA数字仿真工具对所述被测FPGA软件的程序进行仿真,得到仿真文件;
图形生成模块,其用于根据所述测量区间信息在所述仿真文件中选择相应区间的仿真数据,生成所述测量区间仿真波形图。
与现有技术相比,本发明的优点在于:
本发明提供的一种基于UVM的FPGA软件验证结果仿真波形的获取方法和系统,与基于UVM的验证平台紧密结合,使用基于UVM平台的监测函数监测被测FPGA的信号,且通过监测函数还用于对比信号是否满足预设的触发条件,根据触发条件生成被测FPGA软件的测量区间信息。测量区间信息生成用户配置文件,根据测量区间信息在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。该方法记录了某个验证时刻一定范围内各个相关信号的变化情况,使验证工程师避免了手动抓取波形图的繁琐工作,提高了工作效率。在后续多轮回归验证中,均可根据首轮测试的配置,自动获取该轮次的测量区间仿真波形图,实现一次设置,反复使用,从而避免了大量手动操作,具有良好的应用前景。
附图说明
图1为本发明实施例中的基于UVM的FPGA软件验证结果仿真波形的获取方法的流程图。
具体实施方式
以下结合附图对本发明的实施例作进一步详细说明。
参见图1所示,本发明实施例提供一种基于UVM的FPGA软件验证结果仿真波形的获取方法,方法包括首先监测被测FPGA软件的信号,判断信号是否满足预设的触发条件,并根据触发条件生成被测FPGA软件的测量区间信息,使用EDA数字仿真工具对被测FPGA软件的程序进行仿真,得到仿真文件和用户配置文件,最后根据测量区间信息在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。其中,仿真和监测是同步的,当开始仿真时,监测也开始,当监测并判断信号满足预设的触发条件时,则根据触发条件生成被测FPGA软件的测量区间信息,当仿真结束的同时,生成仿真文件和用户配置文件,用户配置文件即由多个测量区间信息构成。
进一步的,使用基于UVM平台的监测函数监测被测FPGA软件的信号,且监测函数还用于对比信号是否满足预设的触发条件。这里,UVM是一种新一代的基于System Verilog语言的高级验证方法学,工程师用它可创建易开发、可重用、自动化的验证组件和验证平台。UVM以System Verilog语言为基础,具有面向对象编程的特性,并且提供了DPI(DirectProgramming Interface)接口,可以方便的完成UVM中的验证组件和C模型的无缝对接。利用UVM验证方法学的思想和架构,并使用C模型完成复杂测试激励数据的生成,便可以为数字波束形成器模块提供一种优秀、全面、高效、可重用的验证方法。
进一步的,使用基于UVM平台的记录函数记录满足预设的触发条件的时间段或相邻时间点,并生成测量区间信息。这里,时间段指的是一个持续的过程或事件,开始时有一个起始的起点,结束时,有一个终止的终点。
在进行生成测量区间信息和仿真前,操作人员会根据实际的需求来预设触发条件,这里预设的触发条件主要包括一下三种情况:1.被测FPGA软件的信号的输出值与UVM平台中该FPGA软件的参考模型的输出值不同,一般操作人员会比较关注于不同或是期望结果与输出结果不匹配的信息,因此,将此作为其中一预设触发条件,在后续仿真的过程中,若被测FPGA软件的信号的输出值与UVM平台中该FPGA软件的参考模型的输出值不同,则使用基于UVM平台的记录函数记录,并生成测量区间信息,记录其信号名称和信号路径。2.被测FPGA软件的一个信号或多个信号发生满足预设条件的变化,则使用基于UVM平台的记录函数记录,并生成测量区间信息,记录其信号名称和信号路径。3.设定区间的信号达到预设的值。例如当仿真运行十秒后,此时的信息是操作人员需要的,于是同样的,使用基于UVM平台的记录函数记录,并生成测量区间信息,记录其信号名称和信号路径。
进一步的,测量区间信息还包括信号名称和信号路径。由于仿真得到的仿真文件包括了被测FPGA软件仿真生成的所有信息,数据量很庞大,根据生成的测量区间信息,在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。然而在整个仿真文件中,有些信息存在名称相同的情况,于是,测量区间信息还包括了信号路径,能保证后期根据测量区间信息在仿真文件中准确的选择相应正确时间区间的仿真数据,确保测量区间仿真波形图的准确性。
进一步的,生成被测FPGA软件的测量区间信息后,将至少一个测量区间信息封装为配置文件,配置文件中可以包括一个或多个不同的测量区间信息。具体的,根据用户的实际需求,可以在开始阶段生成多个测量区间信息,多个测量区间信息均包括信号名称、信号路径和时间范围参数,被封装为配置文件,再根据测量区间信息在仿真文件中选择相应区间的仿真数据,每一个测量区间信息均能生成一个测量区间仿真波形图。
进一步的,生成被测FPGA软件的测量区间信息后,将多个测量区间信息封装为配置文件,每个测量区间信息均包括信号名称、信号路径和时间范围参数。再根据测量区间信息在仿真文件中选择相应区间的仿真数据,每一个测量区间信息均能生成一个对应的测量区间仿真波形图。
具体的,在生成测量区间仿真波形图时,根据测量区间信息在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图的步骤包括,首先解析配置文件,得到多个测量区间信息,然后根据多个测量区间信息,对仿真文件进行分析,将其内的与多个测量区间信息分别对应时间段的变化情况提取出来,再根据提取出来的数据依次分别进行图形绘制,得到用户需要的测量区间仿真波形图。
进一步的,EDA数字仿真工具为QuestaSim或Modelsim中的一种。目前,EDA的软件有很多种,例如Mentor公司的QuestaSim和Modelsim仿真软件,Synopsys公司的VCS,而这里仅仅针对Mentor公司的QuestaSim和Modelsim仿真软件,Modelsim是工业界最优秀的语言仿真器,能提供友好的调试环境,是作FPGA和ASIC设计的RTL级和门级电路仿真的首选,而QuestaSim是第一个基于标准的单核验证引擎,集成了一个HDL模拟器,一个约束求解器,一个判断引擎和功能覆盖,以及一个通用的用户界面。
本发明还提供了一种基于UVM的FPGA软件验证结果仿真波形的获取系统,系统包括监测模块、判断模块、仿真模块和图形生成模块。
具体的,监测模块用于监测被测FPGA软件的信号,判断模块用于判断信号是否满足预设的触发条件,并根据触发条件生成被测FPGA软件的测量区间信息,仿真模块用于使用EDA数字仿真工具对被测FPGA软件的程序进行仿真,得到仿真文件,图形生成模块用于根据测量区间信息在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。
进一步的,监测模块用于使用基于UVM平台的监测函数,在仿真的过程中,从始至终监测被测FPGA软件的信号,且监测函数还用于对比信号是否满足预设的触发条件。若监测到信号满足预设的触发条件时,监测函数则会调用基于UVM平台的记录函数来记录满足预设的触发条件的时间段或相邻时间点,并生成测量区间信息。每个测量区间信息均包括信号名称、信号路径和时间范围参数,在仿真结束时,会同时生成配置文件和仿真文件,配置文件即为多个测量区间信息封装而成。最后图形生成模块根据测量区间信息在仿真文件中选择相应区间的仿真数据,每一个测量区间信息均能生成一个测量区间仿真波形图。
与基于UVM的验证平台紧密结合,使用基于UVM平台的监测函数监测被测FPGA的信号,且通过监测函数还用于对比信号是否满足预设的触发条件,根据触发条件生成被测FPGA软件的测量区间信息。测量区间信息生成用户配置文件,根据测量区间信息在仿真文件中选择相应区间的仿真数据,生成测量区间仿真波形图。该方法记录了某个验证时刻一定范围内各个相关信号的变化情况,使验证工程师避免了手动抓取波形图的繁琐工作,提高了工作效率。在后续多轮回归验证中,均可根据首轮测试的配置,自动获取该轮次的测量区间仿真波形图,实现一次设置,反复使用,从而避免了大量手动操作,具有良好的应用前景。
本发明不仅局限于上述最佳实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本发明相同或相近似的技术方案,均在其保护范围之内。

Claims (8)

1.一种基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于,其包括:
监测被测FPGA软件的信号;
判断所述信号是否满足预设的触发条件,并根据所述触发条件生成所述被测FPGA软件的测量区间信息,将多个所述测量区间信息封装为配置文件,每个所述测量区间信息均包括信号名称、信号路径和时间范围参数;
使用EDA数字仿真工具对所述被测FPGA软件的程序进行仿真,得到仿真文件;
解析所述配置文件,得到多个所述测量区间信息;
根据多个所述测量区间信息,在所述仿真文件中选择相应区间的仿真数据,根据所述相应区间的仿真数据生成多张所述测量区间仿真波形图片,以作为验证记录和测试证据。
2.如权利要求1所述的基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于:
使用基于UVM平台的监测函数监测所述被测FPGA软件的信号,且所述监测函数还用于对比所述信号是否满足所述预设的触发条件。
3.如权利要求2所述的基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于:
使用基于UVM平台的记录函数记录满足所述预设的触发条件的时间段或相邻时间点,并生成所述测量区间信息。
4.如权利要求1-3中任意一项所述的基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于,
所述的预设的触发条件包括:所述被测FPGA软件的信号的输出值与UVM平台中该所述FPGA软件的参考模型的输出值不同。
5.如权利要求1-3中任意一项所述的基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于,
所述的预设的触发条件包括:所述被测FPGA软件的一个信号或多个信号发生满足预设条件的变化。
6.如权利要求1-3中任意一项所述的基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于,
所述的预设的触发条件包括:
设定区间的所述信号达到预设的值。
7.如权利要求1所述的一种基于UVM的FPGA软件验证结果仿真波形的获取方法,其特征在于:所述测量区间信息至少包括时间范围参数,所述测量区间信息还包括信号名称和信号路径。
8.一种基于UVM的FPGA软件验证结果仿真波形的获取系统,其特征在于,其包括:
监测模块,其用于监测被测FPGA软件的信号;
判断模块,其用于判断所述信号是否满足预设的触发条件,并根据所述触发条件生成所述被测FPGA软件的测量区间信息,还用于将多个所述测量区间信息封装为配置文件,每个所述测量区间信息均包括信号名称、信号路径和时间范围参数;
仿真模块,其用于使用EDA数字仿真工具对所述被测FPGA软件的程序进行仿真,得到仿真文件;
图形生成模块,其用于解析所述配置文件,得到多个所述测量区间信息,还用于根据多个所述测量区间信息,在所述仿真文件中选择相应区间的仿真数据,并根据所述相应区间的仿真数据生成多张所述测量区间仿真波形图片,以作为验证记录和测试证据。
CN201811644705.1A 2018-12-29 2018-12-29 基于uvm的fpga软件验证结果仿真波形的获取方法和系统 Active CN109740250B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811644705.1A CN109740250B (zh) 2018-12-29 2018-12-29 基于uvm的fpga软件验证结果仿真波形的获取方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811644705.1A CN109740250B (zh) 2018-12-29 2018-12-29 基于uvm的fpga软件验证结果仿真波形的获取方法和系统

Publications (2)

Publication Number Publication Date
CN109740250A CN109740250A (zh) 2019-05-10
CN109740250B true CN109740250B (zh) 2022-03-18

Family

ID=66362793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811644705.1A Active CN109740250B (zh) 2018-12-29 2018-12-29 基于uvm的fpga软件验证结果仿真波形的获取方法和系统

Country Status (1)

Country Link
CN (1) CN109740250B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400983A (zh) * 2020-03-04 2020-07-10 上海介方信息技术有限公司 一种基于fpga动态重配置的波形组件加载实现方法
CN111523283B (zh) * 2020-04-16 2023-05-26 北京百度网讯科技有限公司 一种验证处理器的方法、装置、电子设备及存储介质
CN112148617A (zh) * 2020-10-09 2020-12-29 中国科学技术大学 一种用于远程实验平台的波形采样调试方法
CN114662427B (zh) * 2022-03-08 2023-07-18 芯华章科技股份有限公司 一种逻辑系统设计的调试方法及设备
CN114510902B (zh) * 2022-04-20 2022-07-26 北京芯愿景软件技术股份有限公司 仿真结果的验证方法、装置、设备及计算机存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1491385A (zh) * 2001-08-14 2004-04-21 ���ܿ���ϵͳ���޹�˾ 随选vcd系统和方法
CN101719170A (zh) * 2009-11-27 2010-06-02 深圳国微技术有限公司 集成电路的仿真测试方法
CN105446859A (zh) * 2014-09-01 2016-03-30 上海华虹集成电路有限责任公司 功耗分析的软件条件监测及波形文件自动生成方法
CN107463473A (zh) * 2017-09-01 2017-12-12 珠海泰芯半导体有限公司 基于uvm和fpga的芯片软硬件仿真环境
CN108121842A (zh) * 2016-11-30 2018-06-05 深圳市中兴微电子技术有限公司 多处理器系统芯片的低功耗工作方式的验证方法和装置
CN108984403A (zh) * 2018-07-09 2018-12-11 天津芯海创科技有限公司 Fpga逻辑代码的验证方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1491385A (zh) * 2001-08-14 2004-04-21 ���ܿ���ϵͳ���޹�˾ 随选vcd系统和方法
CN101719170A (zh) * 2009-11-27 2010-06-02 深圳国微技术有限公司 集成电路的仿真测试方法
CN105446859A (zh) * 2014-09-01 2016-03-30 上海华虹集成电路有限责任公司 功耗分析的软件条件监测及波形文件自动生成方法
CN108121842A (zh) * 2016-11-30 2018-06-05 深圳市中兴微电子技术有限公司 多处理器系统芯片的低功耗工作方式的验证方法和装置
CN107463473A (zh) * 2017-09-01 2017-12-12 珠海泰芯半导体有限公司 基于uvm和fpga的芯片软硬件仿真环境
CN108984403A (zh) * 2018-07-09 2018-12-11 天津芯海创科技有限公司 Fpga逻辑代码的验证方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于UVM方法的FPGA验证技术";习建;《电子科学技术》;20160531;全文 *

Also Published As

Publication number Publication date
CN109740250A (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
CN109740250B (zh) 基于uvm的fpga软件验证结果仿真波形的获取方法和系统
US7559045B2 (en) Database-aided circuit design system and method therefor
CN102928772B (zh) 时序测试系统及其测试方法
CN109710536B (zh) 一种自动提取fpga软件验证结果仿真波形的系统及方法
CN106934121B (zh) 一种测试器件模型仿真结果正确性的方法
US20020163351A1 (en) Method for producing test patterns for testing an integrated circuit
CN112444731B (zh) 芯片测试方法、装置、处理器芯片及服务器
US20070180411A1 (en) Method and apparatus for comparing semiconductor-related technical systems characterized by statistical data
US7404158B2 (en) Inspection method and inspection apparatus for semiconductor integrated circuit
US20200074040A1 (en) Hierarchical expression coverage clustering for design verification
CN116954624B (zh) 基于软件开发包的编译方法、软件开发系统及服务器
CN106405388A (zh) 一种数字芯片功能测试方法及系统
CN110109374B (zh) 液体火箭发动机推力调节系统的半实物仿真方法及装置
CN116415545A (zh) 一种对芯片信号模块的仿真验证方法、系统、设备及介质
CN117350208A (zh) 时序逻辑元件性能检查方法及设备
US6789239B2 (en) Program conversion system
CN107872358B (zh) 一种针对hdlc协议的自动化仿真测试方法
JPH1185828A (ja) 順序回路機能検証方法および順序回路機能検証システム
CN106250280B (zh) 一种时钟信号测试方法和装置
CN112613185A (zh) 一种复合电流源噪声的建模方法
van de Logt et al. Model-driven AMS test setup validation tool prepared for IEEE P1687. 2
US10060976B1 (en) Method and apparatus for automatic diagnosis of mis-compares
US7725276B2 (en) Signal waveform analyzing device
CN111967208B (zh) 一种测试性评估仿真模型的构建方法及装置
Papakostas et al. Analog fault detectability based on statistical circuit analysis

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