CN104461813A - 利用功能覆盖率负反馈加速uvm验证收敛的方法 - Google Patents

利用功能覆盖率负反馈加速uvm验证收敛的方法 Download PDF

Info

Publication number
CN104461813A
CN104461813A CN201410790177.6A CN201410790177A CN104461813A CN 104461813 A CN104461813 A CN 104461813A CN 201410790177 A CN201410790177 A CN 201410790177A CN 104461813 A CN104461813 A CN 104461813A
Authority
CN
China
Prior art keywords
uvm
constraint
function coverage
excitation
verification
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.)
Granted
Application number
CN201410790177.6A
Other languages
English (en)
Other versions
CN104461813B (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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Group Co Ltd
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 Inspur Group Co Ltd filed Critical Inspur Group Co Ltd
Priority to CN201410790177.6A priority Critical patent/CN104461813B/zh
Publication of CN104461813A publication Critical patent/CN104461813A/zh
Application granted granted Critical
Publication of CN104461813B publication Critical patent/CN104461813B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开利用功能覆盖率负反馈加速UVM验证收敛的方法,属于计算机辅助设计领域,在UVM验证平台中创建与被测对象DUT对应的功能覆盖率检测器,对功能覆盖率进行动态采样,并依据验证平台具体需求对动态采样信息进行分拣,提取有效数据信息,并将此信息传递给激励产生端;激励产生端,UVM的sequence中接收有效数据信息,根据有效数据信息对约束控制进行分组,设置约束开关,方便验证平台依据功能覆盖率动态采样信对约束开关进行控制,动态调整UVM的sequence产生所使用的约束;本发明缩短了UVM验证环境要达到验证收敛所需的激励数量以及验证时间,提高了逻辑代码开发验证的效率。

Description

利用功能覆盖率负反馈加速UVM验证收敛的方法
技术领域
本发明公开加速UVM验证收敛的方法,属于计算机辅助设计领域,具体地说是利用功能覆盖率负反馈加速UVM验证收敛的方法。
背景技术
UVM是芯片验证业界最新研发的一种验证方法学。工程师用它可创建坚实、可重用、具互操作性的验证组件和验证平台。UVM提供基于SystemVerilog语言开发的一套库函数,工程师通过调用库可以省去自己从零开始开发验证环境的麻烦。
UVM与System Verilog为验证人员开发面向对象的验证环境提供了方便,也为验证环境产生受控随机激励提供了方便。受控随机激励不同于以往验证测试所用的特定激励。发送受控随机激励给被测对象,能够测到很多通过特定激励无法覆盖到的情况,增加错误被检测出的概率。除了受控随机激励,功能覆盖率也是验证中的重要概念。功能覆盖率是用来检测测试激励是否覆盖到了测试计划中列出的功能点。当所有列出的功能点都被覆盖后,就可以认为这个验证已经完成了。但是受控随机激励,可能会产生一些重复的激励,这对于覆盖率的增加,是没用贡献的,而且会消耗很多的仿真验证时间,因此需要避免这种重复,为了提高验证覆盖率收敛的速度,本发明公开利用功能覆盖率负反馈加速UVM验证收敛的方法,让激励产生的行为接收我们的覆盖率目标,自动的提高有效激励的产生量,回避无效激励的产生,加快UVM验证收敛的速度。
发明内容
本发明针对现有技术存在的不足和问题,为解决受控随机激励,产生一些重复的激励,增加覆盖率,而且消耗很多的仿真验证时间的难题,提供利用功能覆盖率负反馈加速UVM验证收敛的方法。
提出的具体方案是:
利用功能覆盖率负反馈加速UVM验证收敛的方法,具体步骤为:
在UVM验证平台中创建与被测对象DUT对应的功能覆盖率检测器,对功能覆盖率进行动态采样,并依据验证平台具体需求对动态采样信息进行分拣,提取有效数据信息,并将此信息传递给激励产生端;
激励产生端,UVM的sequence中接收有效数据信息,根据有效数据信息对约束控制进行分组,设置约束开关,方便验证平台依据功能覆盖率动态采样信对约束开关进行控制,动态调整UVM的sequence产生所使用的约束,回避无效激励的产生。
所述的对约束控制进行分组是将sequence,configuration,testcase中激励的约束进行上下层次划分。
所述的验证平台对约束开关进行控制,通过UVM的config方式实现,具体为指定一个数据包长度区间,根据这个长度区间定义功能点要求覆盖的长度,根据功能点要求覆盖的长度定义约束条件,检测功能覆盖率的情况,对下层约束进行开关,避免已经产生的激励再重复产生。
功能覆盖率的代码封装在一个类中,在验证平台顶层传递给uvm_config_db,在需要控制激励产生的sequence类中,从uvm_config_db中读取这个功能覆盖率代码信息,以改变约束的开关。
为了避免激励的随机性降低,在验证进行时,同时使用具有约束反馈和不具约束反馈的验证平台进行验证。
本发明的有益之处是:本发明利用功能覆盖率负反馈加速UVM验证收敛的方法,让激励产生的行为接收我们的覆盖率目标,自动的提高有效激励的产生量,回避无效激励的产生,加快UVM验证收敛的速度,缩短了UVM验证环境要达到验证收敛所需的激励数量以及验证时间,提高了逻辑代码开发验证的效率。
附图说明
图1是功能覆盖率负反馈的结构框架示意图。
具体实施方式
下面结合附图说明。
如图1,图片左面是UVM验证平台中的被测对象(DUT)。中间部分是环境主体uvm env,其中包括多个实体uvm agent。每个uvm agent中包括序列器sequencer,驱动器driver,检测器monitor。每个uvm agent通过一个接口跟被测对象连接。序列器负责产生测试序列,驱动器负责把测试序列转变为信号上面的数据流,并加载到被测对象,检测器负责把信号上面的数据流转换为序列。虚拟序列器(virtual sequencer)会安排各个子序列器按一定顺序执行。记分牌(scoreboard)会对每个实体收集到的报文进行记录比较。以上各个UVM部件都是标准UVM验证环境中不可缺少的。
为了实现使用功能覆盖率负反馈控制随机激励的产生,在标准UVM验证框架基础上,首先创建与被测对象DUT对应的功能覆盖率检测器,此检测器需要实时采样覆盖率,并传送出去。在激励的产生端,也就是UVM的sequence中,需要及时得知采样率信息,动态调整新发出的激励的约束。两边信息的传递,可以利用UVM中特有的config机制来实现。
以下用简单示例来阐明如何实现这种机制。假设我们要发送长度在2到5中间的数据包,我们定义的功能点要求覆盖所有2到5的整数长度。那么在覆盖率收集模块中的代码如下所示:
覆盖率收集模块在每个采样时钟更新覆盖率的情况。在激励产生的约束文件中一般是在sequence_item中,我们定义三个约束条件,分别用来排除已经生成出的激励,这3个约束的代码如下所示:
我们在新激励产生时一般是在sequence中,检测覆盖率的情况,来对下层约束进行开关,主要代码如下所示:
这样,就可以避免已经产生的激励再重复产生,提高覆盖率收敛的速度。
实际使用中,由于UVM环境较为复杂,考虑到复用性的要求,一般都是将覆盖率相关的代码封装在一个类中,然后在验证平台顶层传递给uvm_config_db,在需要控制激励产生的sequence类中,从uvm_config_db中读取这个覆盖信息,以改变约束的开关。

Claims (5)

1.利用功能覆盖率负反馈加速UVM验证收敛的方法,其特征是具体步骤为:
在UVM验证平台中创建与被测对象DUT对应的功能覆盖率检测器,对功能覆盖率进行动态采样,并依据验证平台具体需求对动态采样信息进行分拣,提取有效数据信息,并将此信息传递给激励产生端;
激励产生端,UVM的sequence中接收有效数据信息,根据有效数据信息对约束控制进行分组,设置约束开关,方便验证平台依据功能覆盖率动态采样信息对约束开关进行控制,动态调整UVM的sequence产生所使用的约束,回避无效激励的产生。
2.根据权利要求1所述的利用功能覆盖率负反馈加速UVM验证收敛的方法,其特征是所述的对约束控制进行分组是将sequence,configuration,testcase中激励的约束进行上下层次划分。
3.根据权利要求2所述的利用功能覆盖率负反馈加速UVM验证收敛的方法,其特征是所述的验证平台对约束开关进行控制,通过UVM的config方式实现,具体为指定一个数据包长度区间,根据这个长度区间定义功能点要求覆盖的长度,根据功能点要求覆盖的长度定义约束条件,检测功能覆盖率的情况,对下层约束进行开关,避免已经产生的激励再重复产生。
4.根据权利要求3所述的利用功能覆盖率负反馈加速UVM验证收敛的方法,其特征是功能覆盖率的代码封装在一个类中,在验证平台顶层传递给uvm_config_db,在需要控制激励产生的sequence类中,从uvm_config_db中读取这个功能覆盖率代码信息,以改变约束的开关。
5.根据权利要求1-4任一项所述的利用功能覆盖率负反馈加速UVM验证收敛的方法,其特征是为了避免激励的随机性降低,在验证进行时,同时使用具有约束反馈和不具约束反馈的验证平台进行验证。
CN201410790177.6A 2014-12-18 2014-12-18 利用功能覆盖率负反馈加速uvm验证收敛的方法 Active CN104461813B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410790177.6A CN104461813B (zh) 2014-12-18 2014-12-18 利用功能覆盖率负反馈加速uvm验证收敛的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410790177.6A CN104461813B (zh) 2014-12-18 2014-12-18 利用功能覆盖率负反馈加速uvm验证收敛的方法

Publications (2)

Publication Number Publication Date
CN104461813A true CN104461813A (zh) 2015-03-25
CN104461813B CN104461813B (zh) 2017-06-30

Family

ID=52907908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410790177.6A Active CN104461813B (zh) 2014-12-18 2014-12-18 利用功能覆盖率负反馈加速uvm验证收敛的方法

Country Status (1)

Country Link
CN (1) CN104461813B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677966A (zh) * 2016-01-05 2016-06-15 浪潮集团有限公司 一种对覆盖率进行数据挖掘加速验证收敛的方法
CN106294895A (zh) * 2015-05-19 2017-01-04 上海华虹集成电路有限责任公司 Hdcp转发器控制器模块级功能验证方法及验证环境平台
CN107193738A (zh) * 2017-05-19 2017-09-22 郑州云海信息技术有限公司 一种基于功能点覆盖动态调整随机约束的验证方法
CN113297071A (zh) * 2021-05-14 2021-08-24 山东云海国创云计算装备产业创新中心有限公司 基于uvm功能覆盖率驱动的验证方法、装置及设备
CN113836034A (zh) * 2021-10-11 2021-12-24 杭州云合智网技术有限公司 使用uvm序列项的rtl设计的验证方法
CN116136950A (zh) * 2023-04-14 2023-05-19 北京燧原智能科技有限公司 芯片验证方法、装置、系统、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1916920A (zh) * 2006-09-14 2007-02-21 华为技术有限公司 一种功能覆盖率测试度量系统和方法
CN103530216A (zh) * 2013-10-12 2014-01-22 江苏华丽网络工程有限公司 一种基于uvm验证方法学的pcie验证方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1916920A (zh) * 2006-09-14 2007-02-21 华为技术有限公司 一种功能覆盖率测试度量系统和方法
CN103530216A (zh) * 2013-10-12 2014-01-22 江苏华丽网络工程有限公司 一种基于uvm验证方法学的pcie验证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
洪瑞煌等: "基于UVM实现随机测试的先进方法", 《计算机光盘软件与应用》 *
王红卫等: "以覆盖率为导向的自动化验证平台", 《电子测试》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294895A (zh) * 2015-05-19 2017-01-04 上海华虹集成电路有限责任公司 Hdcp转发器控制器模块级功能验证方法及验证环境平台
CN106294895B (zh) * 2015-05-19 2019-11-12 上海华虹集成电路有限责任公司 Hdcp转发器控制器模块级功能验证方法及验证环境平台
CN105677966A (zh) * 2016-01-05 2016-06-15 浪潮集团有限公司 一种对覆盖率进行数据挖掘加速验证收敛的方法
CN105677966B (zh) * 2016-01-05 2018-10-19 浪潮集团有限公司 一种对覆盖率进行数据挖掘加速验证收敛的方法
CN107193738A (zh) * 2017-05-19 2017-09-22 郑州云海信息技术有限公司 一种基于功能点覆盖动态调整随机约束的验证方法
CN113297071A (zh) * 2021-05-14 2021-08-24 山东云海国创云计算装备产业创新中心有限公司 基于uvm功能覆盖率驱动的验证方法、装置及设备
CN113836034A (zh) * 2021-10-11 2021-12-24 杭州云合智网技术有限公司 使用uvm序列项的rtl设计的验证方法
CN113836034B (zh) * 2021-10-11 2024-04-12 云合智网(上海)技术有限公司 使用uvm序列项的rtl设计的验证方法
CN116136950A (zh) * 2023-04-14 2023-05-19 北京燧原智能科技有限公司 芯片验证方法、装置、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN104461813B (zh) 2017-06-30

Similar Documents

Publication Publication Date Title
CN104461813A (zh) 利用功能覆盖率负反馈加速uvm验证收敛的方法
CN101499937A (zh) 一种基于fpga的软硬件协同仿真验证系统及方法
CN104657245B (zh) 基于amba总线的模块级uvm验证平台的自动生成装置
CN106021044B (zh) 可重用spi总线协议模块验证环境平台及其验证方法
CN103530216A (zh) 一种基于uvm验证方法学的pcie验证方法
CN100585369C (zh) 铁路模拟实验室
CN103150228B (zh) 面向高速缓冲存储器的可综合伪随机验证方法及装置
CN103308846B (zh) 一种基于模型识别的集成芯片功能性能检测方法和装置
GB2536593A (en) Interactive processing method and system of rail transportation vehicle debugging task information
CN103530211A (zh) 一种基于uvm平台的pcie回环自检测的方法
CN105808843A (zh) 一种混合信号验证平台的构造方法
CN201522707U (zh) 基于fpga的软硬件协同仿真验证系统
CN102370245A (zh) 烟支质量检测系统
CN101902368A (zh) 模拟批量瘦客户机操作的web性能测试方法及其测试系统
CN101719177B (zh) 片上系统建模和仿真的方法及装置
CN104462626A (zh) 基于vmm验证方法学的rfif验证平台及实现方法
CN100535868C (zh) 一种实时位真仿真开发系统及其方法
CN203164407U (zh) 一种超高频局放状态检测仪器校验装置
CN103399813B (zh) 一种基于Trace信息的嵌入式系统离线跟踪分析方法
CN102236068A (zh) 一种芯片测试的方法和装置
CN101916305A (zh) 一种复杂管脚芯片的验证方法
CN104166744A (zh) 验证视频算法寄存器传输级实现的方法和系统
CN103759951B (zh) 可同时测量多台农机车的制动性能测试仪的测试方法
CN105606208A (zh) 一种基于虚拟仪器的轨道振动状态测试系统
CN104158852A (zh) 一种低压集抄集中器与本地通讯模块信息交互检测系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180807

Address after: 250100 S06 tower, 1036, Chao Lu Road, hi tech Zone, Ji'nan, Shandong.

Patentee after: Shandong wave cloud Mdt InfoTech Ltd

Address before: No. 1036, Shun Ya Road, Ji'nan high tech Zone, Shandong Province

Patentee before: Inspur Group Co., Ltd.

TR01 Transfer of patent right
CP03 Change of name, title or address

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Inspur cloud Information Technology Co., Ltd

Address before: 250100 Ji'nan science and technology zone, Shandong high tide Road, No. 1036 wave of science and Technology Park, building S06

Patentee before: SHANDONG LANGCHAO YUNTOU INFORMATION TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address