基于UVM构建的验证平台的优化方法、装置和介质制造方法及图纸

技术编号:35460553 阅读:19 留言:0更新日期:2022-11-03 12:27
本发明专利技术提供了一种基于UVM构建的验证平台的优化方法、装置和介质,应用于基于UVM构建的验证平台中,该方法包括:通过脚本工具生成序列类,所述序列类包括记录模块;当所述序列类有新的序列准备启动时,所述记录模块将所述新的序列的操作记录存入自定义的队列中;以及将所述自定义的队列中记录的历史启动的序列的信息通过打印函数打印出来。该方法能够对UVM构建的验证平台进行优化,更加适用复杂验证场景,使开发调试更加直观和便捷。使开发调试更加直观和便捷。使开发调试更加直观和便捷。

【技术实现步骤摘要】
基于UVM构建的验证平台的优化方法、装置和介质


[0001]本专利技术涉及计算机
,尤其涉及一种基于UVM构建的验证平台的优化方法方法、装置和介质。

技术介绍

[0002]随着集成电路的高速发展,芯片功能越来越复杂,芯片设计复杂度越来越高,片上器件规模越来越大,给芯片前端验证带来了极大挑战。芯片验证工程师需要从功能正确性以及完备性方面对芯片功能进行充分的验证。通过不断的发展和业界实践,目前最主流的验证方法学为通用验证方法学(Universal Verification Methodology,UVM),验证语言为一种硬件设计和验证语言(System Verilog,SV),基于SV和UVM的验证环境和平台(SUVM)在芯片前端验证中应用越来越广泛。
[0003]往往芯片项目的进度都很紧张,面对越来越复杂的功能,芯片验证任务越来越重。如何在紧张的项目周期内提高验证效率、缩短验证时间对于芯片项目开发来说变得极其重要。面对当庞大且复杂的发送端验证平台和接收端平台交互场景,由于在同一时间对于同一个序列类(sequencer)上会同时启动多个序列sequence,而使其中一个sequence挂死进而无法启动。又由于uvm_sequencer的很多内部操作并未开放给开发者,而导致调试(debug)起来非常困难且耗时。因此,亟需对现有的基于UVM构建的验证平台进行优化,以满足实际需要。

技术实现思路

[0004]本专利技术提供一种基于UVM构建的验证平台的优化方法、装置和介质,用以适用复杂验证场景,使开发调试更加直观和便捷。
[0005]第一方面,本专利技术提供一种基于UVM构建的验证平台的优化方法,应用于基于UVM构建的验证平台中,该方法包括:通过脚本工具生成序列类,所述序列类包括记录模块;当所述序列类有新的序列准备启动时,所述记录模块将所述新的序列的操作记录存入自定义的队列中;以及将所述自定义的队列中记录的历史启动的序列的信息通过打印函数打印出来。
[0006]本专利技术实施例提供的基于UVM构建的验证平台的优化方法的有益效果如下:针对UVM源码进行了修改,从序列类的UVM底层逻辑上,重写出了新的序列类,能够基于所述序列类中集成记录模块将所述新的序列的操作记录存入自定义的队列中,避免导致在同一时间对于同一个序列类上会同时启动多个序列而使其中一个序列挂死进而无法启动。
[0007]在一种可能的实现方案中,所述自定义的队列包括与仲裁模式对应的第一队列和与锁存模式对应的第二队列;当所述序列类有新的序列准备启动时,将所述新的序列的操作记录存入自定义的队列中,包括:获取所述序列类的工作模式;当所述工作模式为仲裁模式,当所述序列类有新的序列准备启动时,将所述新的序列的操作记录存入所述第一队列中;当所述工作模式为锁存模式,当所述序列类有新的序列准备启动时,将所述新的序列的
操作记录存入所述第二队列中。
[0008]在一种可能的实现方案中,将所述自定义的队列中记录的历史启动的序列的信息通过打印函数打印出来,包括:
[0009]根据所述序列类的工作模式,调用自定义的所述打印函数从序列类的成员中提取历史启动的序列的信息,以打印输出序列的信息。
[0010]在一种可能的实现方案中,所述方法还包括:通过所述脚本工具,实现自动化生成所述序列类的等待授权函数。
[0011]在一种可能的实现方案中,序列的信息包括序列的名称和序列的启动时刻。
[0012]第二方面,本专利技术实施例还提供一种基于UVM构建的验证平台的优化装置,该装置包括执行上述第一方面的任意一种可能的设计的方法的模块/单元。这些模块/单元可以通过硬件实现,也可以通过硬件执行相应的软件实现。
[0013]第三方面,本专利技术实施例中还提供一种可读存储介质,可读存储介质包括程序,当程序在芯片上运行时,使得芯片执行上述任一方面的任意一种可能的设计的方法。
[0014]关于上述第二方面至第三方面的有益效果可以参见上述第一方面中的描述,不再重复赘述。
附图说明
[0015]图1为本专利技术实施例提供的一种序列类的底层逻辑示意图;
[0016]图2为本专利技术实施例提供的一种基于UVM构建的验证平台的优化方法流程示意图;
[0017]图3为本专利技术实施例提供的一种基于UVM构建的验证平台的优化装置示意图;
[0018]图4为本专利技术实施例提供的一种终端设备结构示意图。
具体实施方式
[0019]下面结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行描述。其中,在本专利技术实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本专利技术的限制。如在本专利技术的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本专利技术以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
[0020]在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本专利技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重
要性或者隐含指明所指示的技术特征的数量。
[0021]在本专利技术实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本专利技术实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
[0022]下面列举本申请一些实施例涉及相关英文单词或者词组的内容及含义。
[0023]DUT:英文,design under test,中文,设计的源代码;
[0024]UVM:英文,Universal Verification Methodology,中文,通用验证方法学;
[0025]UVM component:组成uvm环境得组件;
[0026]SOC:英文,system on chip,中文,片上系统;
[0027]arbitation:中文,仲裁;
[0028]L本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于UVM构建的验证平台的优化方法,应用于基于UVM构建的验证平台中,其特征在于,包括:通过脚本工具生成序列类,所述序列类包括记录模块;当所述序列类有新的序列准备启动时,所述记录模块将所述新的序列的操作记录存入自定义的队列中;以及将所述自定义的队列中记录的历史启动的序列的信息通过打印函数打印出来。2.根据权利要求1所述的方法,其特征在于,所述自定义的队列包括与仲裁模式对应的第一队列和与锁存模式对应的第二队列;当所述序列类有新的序列准备启动时,将所述新的序列的操作记录存入自定义的队列中,包括:获取所述序列类的工作模式;当所述工作模式为仲裁模式,当所述序列类有新的序列准备启动时,将所述新的序列的操作记录存入所述第一队列中;当所述工作模式为锁存模式,当所述序列类有新的序列准备启动时,将所述新的序列的操作记录存入所述第二队列中。3.根据权利要求1所述的方法,其特征在于,将所述自定义的队列中记录的历史启动的序列的信息通过打印函数打印出来,包括:根据所述序列类的工作模式,调用自定义的所述打印函数从序列类的成员中提取历史启动的序列的信息,以打印输出序列的信息。4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:通过所述脚本工具,实现自动化生成所述序列类的等待授权函数。5.根据权利要求1至3任一项所述的方法,其特征在于,序列的信息包括序列的名称和序列的启动时刻。6.一种基于UVM构建的验证平台的优化装置,应用于基于UVM构建的验证平台中,其特征在于,包括:生成单元,用于通过脚本工具...

【专利技术属性】
技术研发人员:刘珂阳
申请(专利权)人:展讯通信上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1