CN115481588A - 一种图形化的总线验证平台 - Google Patents
一种图形化的总线验证平台 Download PDFInfo
- Publication number
- CN115481588A CN115481588A CN202211203464.3A CN202211203464A CN115481588A CN 115481588 A CN115481588 A CN 115481588A CN 202211203464 A CN202211203464 A CN 202211203464A CN 115481588 A CN115481588 A CN 115481588A
- Authority
- CN
- China
- Prior art keywords
- module
- graphical
- verification
- library
- apb
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/31—Design entry, e.g. editors specifically adapted for circuit design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及芯片总线验证技术领域,且公开了一种图形化的总线验证平台,包括库模块以及仿真模块,用于将数据直接编译运行代码输送至仿真模块,还包括图形化模块,所述图形化模块分别与所述库模块以及仿真模块电连接,在使用时,所述图形化模块和所述库模块的信息实现相互转换,且所述图形化模块将从所述库模块中获取的信息以文本的形式发送至仿真模块进行仿真验证;支持图形化界面的同时可以代码编辑,满足各种开发需求、减少了总线验证IP的开发时间,验证人员工作重心转移到测试用例的编写中、平台采用模块化方式搭建,易于扩展。
Description
技术领域
本发明涉及芯片总线验证技术领域,具体为一种图形化的总线验证平台。
背景技术
随着大规模集成电路技术的发展,芯片实现功能也变得复杂多样,给芯片验证带来了极大的挑战。芯片验证环节是整个芯片设计阶段消耗时间和人力最多的环节,也是决定芯片抢占芯片市场的关键一环。因此,更加高效和高质量的完成验证显得尤为重要。
总线作为芯片中重要的组件,它是各个单元的信息通路,而一个合格的总线验证IP应该有多种特性来满足不同的测试需求。现在主流的验证方法是基于Systemverilog语言的UVM(Universal Verification Methodology,通用验证方法学),大部分验证平台都是基于UVM搭建的,传统的UVM验证平台都是采用手写代码的方式,效率比较低,拖慢了芯片验证的进度。因此可以采用图形化方法提高总线验证IP的开发速度,但是Systemverilog是硬件描述语言,本身不具有软件开发能力。为了能够实现验证平台的图形化,需要可以实现图形化编辑能力和仿真能力的语言作为底层来搭建验证平台。
因此,为了能够实现总线的图形化验证IP的开发,本发明使用支持C++的uvm-systemc和Qt开发图形化验证平台,提出一种图形化的总线验证平台。
发明内容
本发明的目的在于提供一种图形化的总线验证平台,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种图形化的总线验证平台,包括库模块以及仿真模块,用于将数据直接编译运行代码输送至仿真模块,还包括图形化模块,所述图形化模块分别与所述库模块以及仿真模块电连接,在使用时,所述图形化模块和所述库模块的信息实现相互转换,且所述图形化模块将从所述库模块中获取的信息以文本的形式发送至仿真模块进行仿真验证。
作为优选,所述图形化模块基于Qt框架进行构建。
作为优选,所述库模块包括VIP模型库/数据库,且所述库模块基于uvm-systemc语言构建而成。
作为优选,所述仿真模块基于uvm-systemc构建而成,且所述仿真模块的外接有功能接口。
作为优选,所述功能接口包括Verilog接口以及SystemC接口。
作为优选,所述总线验证平台进行验证的具体步骤如下:
步骤一:项目的建立;
步骤二:放置待验证的模型文件;
步骤三:导入待验证的DUT;
步骤四:配置配置interface以及模块中相应的参数;
步骤五:运行工程进行验证。
与现有技术相比,本发明提供了一种图形化的总线验证平台,具备以下有益效果:
1、支持图形化界面的同时可以代码编辑,满足各种开发需求。
2、减少了总线验证IP的开发时间,验证人员工作重心转移到测试用例的编写中。
3、平台采用模块化方式搭建,易于扩展。
附图说明
图1为本发明的架构示意图;
图2为本发明实施例中APB总线验证平台的具体结构示意图;
图3为本发明中总线验证IP的图形化开发流程示意图。
图中:1、APB总线验证平台;10-apb_env模块;11-apb_agent模块;110-apb_sqr单元;111-apb_drv单元;112-apb_mon单元;12-apb_seq模块;13-apb_if模块;14-DUT模块;S1-步骤一;S2-步骤二;S3-步骤三;S4-步骤四;100-图形化模块;101-库模块;102-仿真模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示的一种图形化总线验证平台,包括图形化模块100、库模块101以及仿真模块102;
其中,所述图形化模块100基于Qt框架进行构建,提供了用于显示整个平台信息的主窗口,用于显示存放验证IP模型和其他功能模型的库窗口,用于编辑图形的图形编辑窗口,用于显示和编辑验证IP代码的代码窗口,用于显示平台运行信息和打印信息的信息窗口,以便于开发人员有针对性的根据实际所需进行组合处理。
另外,在本实施例中,所述图形化模块100和所述库模块101二者电连接,实现了相关数据信息的互通有无,值得一提的是,库模块101具备能够直接编译运行代码的功能,但其相对来说对于研发人员而言需要较高的要求,且在整个开发流程中也会对整体的进度带来一定的阻碍,为了解决这个问题,图形化模块100根据对应验证的IP组件生成文本,实现图形和代码的转化,
更进一步来说,本实施例中的所述库模块101采用的是目录式的分类管理方法,即将具有相似功能的组件会被归纳到同一文件或者相应的子文件中,同时,所述库模块101中预存有AXI、AHB、APB总线验证IP模型。
为了更进一步阐述本发明构思的具体方案,选择以APB总线验证IP为例,介绍不同组件的搭建步骤:
参考图2可知,包括apb_env模块10,所述apb_env模块10内置有apb_agent模块11,所述apb_agent模块11中内置有apb_sqr组件110、apb_drv组件111以及apb_mon组件112,且三者依次连接,需要注意的是,apb_drv组件111还连接有apb_if模块13,用于将apb_drv组件111和DUT模块14连接;
其中,apb_seq模块12用于产生激励,所有的sequence都被放置在sequence数据库中,数据库和代码是暴露在图形化模块100中的,这样可以快速创建测试数据;
apb_seq模块12派生自uvm_sequence,数据类型是apb_trsf,apb_trsf派生自uvm_sequence_item,这个类的作用是对验证IP的数据进行约束,并将数据进行数据包化,apb_seq模块12中定义的函数用于产生读、写状态下的激励。
另外,图形化的sequence组件还支持数据写入,通过设置正则表达式的解析函数,可以将EXCEL、XML、JSON、文本格式的文件作为激励源,使sequence产生规定的激励。
apb_sqr组件110用于启动apb_seq模块12,并将apb_trsf产送给apb_drv组件111,它派生自uvm_sequencer。
apb_drv组件111将transaction驱动到DUT模块14上,apb_drv组件111派生自uvm_driver,该组件实例化了apb_if模块13,用于连接apb_drv组件111和DUT模块14,apb_if模块13中使用两个phase函数,分别是build_phase构建函数以及run_phase函数,其中,所述run_phase函数用于按照apb协议方式传输请求数据或者响应数据,这里的数据使用了seq_item_port->get_next_item(apb_trsf)任务向apb_sqr组件110申请transaction。
apb_mon组件112用于采集激励和响应数据,apb_mon组件112派生自uvm_monitor,apb_mon组件112内设置了正则表达式函数用于收集的数据输出到EXCEL、XML、文本文档格式。
apb_env模块10用于封装apb_agent模块11,且apb_env模块10派生于uvm_env将各组件进行有关连的分层处理。
apb_top中run_test创建实例并运行平台。
更进一步来说,库模块101中还会提供空壳的sequencer、driver、monitor组件,可以根据个人需求,编辑相应的空壳组件实现对应的功能。
外部的待验证的模型会被导入进DUT模块,如果是C++或者SystemC模型,只需要配置相应的interface文件;如果是verilog代码,平台会提基于API的工具,配置两侧的接口文件来完成验证。
验证平台的波形信息,通过在apb_top函数中加入sc_trance函数生成波形文件,然后平台会调用vcs+verdi或者gtkwave工具显示波形。
在另一实施例中,还基于QChart设计了图表工具,该工具可以将关键信息和指定的信号只输出图表,支持饼状图、曲线图、折线图,该工具还通过定时的槽和获取接口数据方法,实时反应关键信息。
仿真模块102使用了uvm-systemc的仿真核,仿真模块102控制和协调整个平台的运行。
仿真模块102中的仿真层中提供了基于API的接口,以实现符合标准的Verilog的RTL模型的导入和运行。
验证IP设置出现异常时会提供错误窗口和报错信息,包括:组件名称、错误类型、错误序号、解决方案。
平台运行异常提供错误窗口和报错信息,包括:错误类型,错误序号,解决方案
如图3创建完整验证工程的步骤:
1.工具栏选择新建文件,填写文件名并选择保存路径和配置信息;
2.在库窗口选择要验证的VIP模型文件,拖拽相应的组件放置在编辑窗口中;
3.导入待验证的verilog/systemc代码,配置DUT,并进行代码检测
4.配置interface和模块中的参数、激励,通过连线连接各组件
5.运行工程,观察打印信息、波形、图表信息了解验证情况。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (6)
1.一种图形化的总线验证平台,包括库模块(101)以及仿真模块(102),用于将数据直接编译运行代码输送至仿真模块(102),其特征在于,还包括图形化模块(100),所述图形化模块(100)分别与所述库模块(101)以及仿真模块(102)电连接,在使用时,所述图形化模块(100)和所述库模块(101)的信息实现相互转换,且所述图形化模块(100)将从所述库模块(101)中获取的信息以文本的形式发送至仿真模块(102)进行仿真验证。
2.如权利要求1所述的一种图形化的总线验证平台,其特征在于,所述图形化模块(100)基于Qt框架进行构建。
3.如权利要求1所述的一种图形化的总线验证平台,其特征在于,所述库模块(101)包括VIP模型库/数据库,且所述库模块(101)基于uvm-systemc语言构建而成。
4.如权利要求1所述的一种图形化的总线验证平台,其特征在于,所述仿真模块(102)基于uvm-systemc构建而成,且所述仿真模块(102)的外接有功能接口。
5.如权利要求4所述的一种图形化的总线验证平台,其特征在于,所述功能接口包括Verilog接口以及SystemC接口。
6.如权利要求1-5中任一项所述的一种图形化的总线验证平台,其特征在于,所述总线验证平台进行验证的具体步骤如下:
步骤一(S1):项目的建立;
步骤二(S2):放置待验证的模型文件;
步骤三(S3):导入待验证的DUT;
步骤四(S4):配置配置interface以及模块中相应的参数;
步骤五(S5):运行工程进行验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211203464.3A CN115481588A (zh) | 2022-09-29 | 2022-09-29 | 一种图形化的总线验证平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211203464.3A CN115481588A (zh) | 2022-09-29 | 2022-09-29 | 一种图形化的总线验证平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115481588A true CN115481588A (zh) | 2022-12-16 |
Family
ID=84394086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211203464.3A Pending CN115481588A (zh) | 2022-09-29 | 2022-09-29 | 一种图形化的总线验证平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115481588A (zh) |
-
2022
- 2022-09-29 CN CN202211203464.3A patent/CN115481588A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100399341C (zh) | 一种矢量模式软硬件协同仿真/验证方法 | |
CN107247859B (zh) | 逻辑电路设计的验证方法、装置、电子设备及存储介质 | |
CN102508753B (zh) | Ip核验证系统 | |
CN104750603B (zh) | 一种多核dsp软件仿真器及其物理层软件测试方法 | |
CN108038294B (zh) | Uvm环境搭建方法和系统 | |
US20220292248A1 (en) | Method, system and verifying platform for system on chip verification | |
CN106649085A (zh) | 一种基于云计算的软件测试系统 | |
CN115828839A (zh) | 一种soc芯片系统级验证系统及方法 | |
CN111552636B (zh) | 一种应用fmi协议支持aadl集成仿真的方法 | |
CN103927219A (zh) | 可重构专用处理器核的周期精确的仿真模型及其硬件架构 | |
CN102012673A (zh) | 复杂反应型系统控制器设计方法 | |
CN102480467A (zh) | 一种基于网络通讯协议的soc软硬件协同仿真验证方法 | |
CN109582294B (zh) | 一种内嵌式机器学习系统的软件体系结构设计方法 | |
CN102231132B (zh) | 一种基于SystemC的AADL软构件模型仿真测试实例生成方法 | |
CN101719177A (zh) | 系统建模和仿真的方法及装置 | |
CN102184290A (zh) | 一种嵌入式微处理器的周期精确和位精确系统级模型 | |
CN101609614A (zh) | 一种半实物仿真系统的仿真平台及对目标系统进行在线调参的方法 | |
CN115481588A (zh) | 一种图形化的总线验证平台 | |
Feng et al. | Design and application of reusable SoC verification platform | |
CN103017815A (zh) | 一种可视化的通用测试系统及测试方法 | |
CN114489861A (zh) | 目标组件转化方法、装置、电子设备及可读存储介质 | |
CN102760097B (zh) | 一种计算机体系结构性能模拟方法及系统 | |
CN105068908A (zh) | 一种用于kvm asic的功能验证平台的搭建方法 | |
Cordibella et al. | A HW/SW co-simulation framework for the verification of multi-CPU systems | |
CN110414097A (zh) | Ima系统资源配置验证方法和系统、计算机可读存储介质 |
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 |