CN110109794A - 一种基于uvm的总线验证方法 - Google Patents
一种基于uvm的总线验证方法 Download PDFInfo
- Publication number
- CN110109794A CN110109794A CN201910225844.9A CN201910225844A CN110109794A CN 110109794 A CN110109794 A CN 110109794A CN 201910225844 A CN201910225844 A CN 201910225844A CN 110109794 A CN110109794 A CN 110109794A
- Authority
- CN
- China
- Prior art keywords
- bus
- slave
- host
- verification
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3027—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
Abstract
本发明涉及一种基于UVM的总线验证方法,其特征在于采用UVM验证方法学构建验证平台,并提出了一种对总线协议进行验证的方法。所述的验证平台包括:测试用例TEST、虚拟序列vseq、验证环境env、虚拟序列器vsqr、模仿总线主机行为的主机agent、模仿总线从机行为的从机agent、实现数据自动比对的记分板scoreboard和统计总线事务数据覆盖率的覆盖率模型。本发明运用UVM验证方法学实现了一个通用的总线验证平台,通过将主机事务数据发送给从机seq,从而约束从机seq产生的事务数据,实现了主机和从机之间的数据交互,并且具备结果自动比对和覆盖率收集等功能从而实现对总线协议的验证。
Description
技术领域
本发明涉及芯片设计的功能验证领域,尤其是一种基于UVM的总线验证方法。
背景技术
随着集成电路工艺的不断进步,集成电路的规模和复杂度也在不断地提高,验证的难度也越来越大。在集成电路设计中,验证工作已经占到了整个研发周期的一半以上,而验证的效率直接关系到芯片的质量和上市速度,所以对验证方法和技术都提出了越来越高的要求。
UVM验证方法学是最新一代的验证方法学,其充分继承了OVM和VMM等验证方法学的优点。UVM验证方法学提供了结构统一的验证平台框架和一整套构建验证平台组件的类库,使用UVM验证方法学可以提高验证效率、降低验证成本,从而使产品及时推向市场。
总线是连接计算机硬件系统内多种设备的通信线路,如PCIe、USB、UART、I2C等。在总线中一般都存在主机和从机,并且有的总线中还允许存在多个主机,在对总线进行验证时,如何解决主机和从机之间的数据交互是总线协议验证中的一个难点。
发明内容
本发明的目的在于克服上述不足,提出了一种基于UVM验证方法学的总线验证方法,其能够非常方便地对总线协议进行验证。
为了解决上述技术问题,本发明搭建了一个具备高可重用性的总线验证平台,其包括:
测试向量TESTS,用于建立和配置验证环境,并运行相应的测试。
虚拟序列vseq,用于调度主机seq和从机seq的运行。
验证环境env,其内部封装了验证总线所需的其他验证组件,包括虚拟序列器vsqr、主机agent、从机agent、记分板scoreboard和覆盖率模型。
虚拟序列器vsqr,用于启动虚拟序列vseq。
主机agent,用于模仿总线上的主机发起总线操作,其内部封装了主机序列器sqr、主机驱动器driver和主机监视器monitor。主机序列器用于将主机seq产生的总线事务数据转交给主机驱动器,主机驱动器根据事务数据的内容驱动总线,主机监视器负责主机的活动。
从机agent,用于模仿总线上的从机响应主机的操作,其内部封装了从机序列器、从机驱动器和从机监视器。
记分板scoreboard,用于总线事务数据的自动比对,其分别接收来自主机和从机监视器的事务数据,然后比对它们是否一致。
覆盖率模型,用于统计总线事务数据的功能覆盖率。
本发明使用UVM验证方法学搭建了可重用的总线验证平台,并编写测试用例,采用受约束的随机激励、功能覆盖率驱动的方法对其进行了功能验证。
附图说明
图1为总线验证平台的系统框图。
图2为总线验证平台的树形层级图。
图3为1次总线操作的流程图。
具体实施方式
本发明验证平台的架构如图1所示,整个验证平台包括测试用例层TEST、验证环境层env、代理层agent和总线接口,验证平台的树形层级图如图2所示。
TEST层是测试用例层,UVM会根据仿真命令行选项+UVM_TESTNAME来运行相应的测试用例。测试用例首先例化并配置验证环境,然后在虚拟序列器vsqr上启动虚拟序列vseq,在vseq中再启动主机seq和从机seq。
env是验证环境层,用于例化所需的验证组件,包括主机agent、从机agent、虚拟序列器vsqr、记分板scoreboard和覆盖率模型cov。主机agent和从机agent分别用于用于模仿总线上主机和从机的行为,虚拟序列器vsqr用于在其上启动虚拟序列vseq,记分板scoreboard用于总线事务数据的自动比对,其分别接收来自主机和从机监视器的事务数据,然后比对它们是否一致。覆盖率模型cov,用于统计总线事务数据的功能覆盖率,从而反映激励的完备性。
agent为代理层,其一般封装了序列器sqr、驱动器和监视器。为了对总线协议进行验证,验证环境中包含主机agent和从机agent分别用于模仿主机和从机的行为。为了让从机seq能够获取主机事务数据,在主机驱动器中定义了peek_imp类型的端口,并在从机序列器中定义了peek_port类型的端口,并在验证环境层中将其连接起来。
验证平台中1次总线操作的流程图如图3所示,首先主机seq产生事务数据并通过主机序列器sqr发送给主机驱动器,主机驱动器获取主机事务数据后,通过端口peek_imp将其发送给从机序列器sqr,然后发起总线操作。从机seq等待主机驱动器获取新的主机事务数据后,通过从机序列器sqr的peek_port端口获取主机事务数据后,然后从机seq根据获取的主机事务数据来产生从机事务数据并在通过从机序列器sqr发送给从机驱动器。从机驱动器获取从机事务数据后,根据从机事务数据的内容来响应主机的操作。
Claims (4)
1.一种基于UVM的总线验证方法,其特征在于采用UVM验证方法学构建验证平台,并提出了一种对总线协议进行验证的方法,所述的验证平台包括:测试向量TESTS,用于建立和配置验证环境,并运行相应的测试;虚拟序列vseq,用于调度主机seq和从机seq的运行;验证环境env,其内部封装了验证总线所需的其他验证组件,包括虚拟序列器vsqr、主机agent、从机agent、记分板scoreboard和覆盖率模型;主机agent,用于模仿总线上的主机发起总线操作,其内部封装了主机序列器sqr、主机驱动器driver和主机监视器monitor;从机agent,用于模仿总线上的从机响应主机的操作,其内部封装了从机序列器、从机驱动器和从机监视器;记分板scoreboard,用于总线事务数据的自动比对,其分别接收来自主机和从机监视器的事务数据,然后比对它们是否一致;覆盖率模型,用于统计总线事务数据的功能覆盖率。
2.根据权利要求1所述一种基于UVM的总线验证方法,其特征在于:通过将主机事务数据发送给从机seq,从而约束从机seq产生的事务数据,巧妙地实现了主机和从机之间的数据交互,从而实现对总线协议的验证。
3.根据权利要求1所述一种基于UVM验证方法学的总线验证平台,其特征在于:通过覆盖率模型收集总线事务数据的功能覆盖率,从而反映激励的完备性。
4.根据权利要求1所述一种基于UVM验证方法学的总线验证平台,其特征在于:记分板scoreboard,负责主机和从机事务数据的自动比对,并输出比对结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225844.9A CN110109794A (zh) | 2019-03-25 | 2019-03-25 | 一种基于uvm的总线验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225844.9A CN110109794A (zh) | 2019-03-25 | 2019-03-25 | 一种基于uvm的总线验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110109794A true CN110109794A (zh) | 2019-08-09 |
Family
ID=67484539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910225844.9A Pending CN110109794A (zh) | 2019-03-25 | 2019-03-25 | 一种基于uvm的总线验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110109794A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286746A (zh) * | 2020-10-31 | 2021-01-29 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN112527723A (zh) * | 2020-12-16 | 2021-03-19 | 广州昂瑞微电子技术有限公司 | 一种基于uvm的spi验证平台及验证方法 |
CN112685240A (zh) * | 2020-12-30 | 2021-04-20 | 瓴盛科技有限公司 | 芯片子系统验证方法和装置 |
CN112926285A (zh) * | 2021-02-23 | 2021-06-08 | 北京集创北方科技股份有限公司 | 芯片验证方法、平台、装置、设备和存储介质 |
CN115130406A (zh) * | 2022-09-01 | 2022-09-30 | 井芯微电子技术(天津)有限公司 | 基于uvm的fc协议验证平台装置及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530216A (zh) * | 2013-10-12 | 2014-01-22 | 江苏华丽网络工程有限公司 | 一种基于uvm验证方法学的pcie验证方法 |
CN104657555A (zh) * | 2015-02-11 | 2015-05-27 | 北京麓柏科技有限公司 | 一种基于uvm验证方法学的toe的验证方法及平台 |
US20180060453A1 (en) * | 2016-08-24 | 2018-03-01 | Raytheon Company | Universal verification methodology (uvm) register abstraction layer (ral) painter |
-
2019
- 2019-03-25 CN CN201910225844.9A patent/CN110109794A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530216A (zh) * | 2013-10-12 | 2014-01-22 | 江苏华丽网络工程有限公司 | 一种基于uvm验证方法学的pcie验证方法 |
CN104657555A (zh) * | 2015-02-11 | 2015-05-27 | 北京麓柏科技有限公司 | 一种基于uvm验证方法学的toe的验证方法及平台 |
US20180060453A1 (en) * | 2016-08-24 | 2018-03-01 | Raytheon Company | Universal verification methodology (uvm) register abstraction layer (ral) painter |
Non-Patent Citations (1)
Title |
---|
李世超: "基于UVM的MC_SOC中可重用验证平台的设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286746A (zh) * | 2020-10-31 | 2021-01-29 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN112286746B (zh) * | 2020-10-31 | 2023-01-24 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN112527723A (zh) * | 2020-12-16 | 2021-03-19 | 广州昂瑞微电子技术有限公司 | 一种基于uvm的spi验证平台及验证方法 |
CN112685240A (zh) * | 2020-12-30 | 2021-04-20 | 瓴盛科技有限公司 | 芯片子系统验证方法和装置 |
CN112926285A (zh) * | 2021-02-23 | 2021-06-08 | 北京集创北方科技股份有限公司 | 芯片验证方法、平台、装置、设备和存储介质 |
CN115130406A (zh) * | 2022-09-01 | 2022-09-30 | 井芯微电子技术(天津)有限公司 | 基于uvm的fc协议验证平台装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110109794A (zh) | 一种基于uvm的总线验证方法 | |
CN106528424B (zh) | 基于后台系统服务或接口的测试方法和测试平台 | |
CN104038605B (zh) | 电话pos支付终端交易测试的方法 | |
CN103530216B (zh) | 一种基于uvm验证方法学的pcie验证系统 | |
CN107463473A (zh) | 基于uvm和fpga的芯片软硬件仿真环境 | |
CN108009097B (zh) | 面向轨道交通信号系统的云计算仿真测试方法与装置 | |
CN104750603B (zh) | 一种多核dsp软件仿真器及其物理层软件测试方法 | |
CN106293734A (zh) | 检测安卓终端信息的方法及装置 | |
CN104268079B (zh) | 一种pos应用程序测试的方法及系统 | |
CN102937932A (zh) | 集成异构测试工具的自动化测试装置及方法 | |
CN102141962A (zh) | 一种安全性分布式测试框架系统及其测试方法 | |
US8504344B2 (en) | Interface between a verification environment and a hardware acceleration engine | |
CN104461854B (zh) | 一种舰船装备软件通用仿真测试平台 | |
CN102681924A (zh) | 软硬件协同验证平台 | |
CN103488513B (zh) | 设备即插即用通用驱动方法 | |
CN109639446A (zh) | Fpga设备、基于fpga设备的云系统 | |
CN104142876A (zh) | Usb设备控制器模块功能验证方法及验证环境平台 | |
CN106161132B (zh) | 用于对存储网络进行测试的装置和方法 | |
CN114707236A (zh) | 一种基于模型的虚实结合仿真试验方法 | |
CN101996265A (zh) | 一种存储器控制器验证系统及方法 | |
CN109325900A (zh) | 一种算法的部署方法和系统 | |
CN113779913B (zh) | 一种面向ai多芯片系统的验证平台结构和测试方法 | |
CN104468279A (zh) | 一种路由协议交互的测试方法和测试工具 | |
CN106055471A (zh) | 一种测试方法及终端 | |
CN107632910A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190809 |
|
WD01 | Invention patent application deemed withdrawn after publication |