一种基于UVM的SPI验证平台制造技术

技术编号:27620022 阅读:11 留言:0更新日期:2021-03-10 10:59
本发明专利技术公开一种基于UVM的SPI验证平台,属于集成电路设计中IP验证领域。本发明专利技术给出搭建模块级可重用验证环境的方法,说明了验证环境内部各个组件的连接方式,给出了事务级SPI数据的定义格式,在所搭建的验证环境中可方便的构造测试用例,加快了覆盖率的收敛。本发明专利技术采用最新的UVM验证方法学和SystemVerilog语言搭建验证环境;所提出的UVM验证环境简洁可拓展,移植性较强,易于重用;可以灵活构造各种测试场景,添加受约束随机激励,加速覆盖率收敛。加速覆盖率收敛。加速覆盖率收敛。

【技术实现步骤摘要】
一种基于UVM的SPI验证平台


[0001]本专利技术涉及集成电路设计中IP验证
,特别涉及一种基于UVM的SPI验证平台。

技术介绍

[0002]随着SoC设计和FPGA设计规模的不断扩大,SoC芯片内部集成的IP模块越来越多,其功能也越来越庞大,芯片的开发周期也越来越长,验证平台的搭建也更加复杂。芯片验证在整个SoC设计中占据至关重要的作用,在当今各大主流的集成电路设计公司中,验证在整个芯片研发周期中所占时间比例多达7成,传统的芯片验证方式已经不能满足当今大规模IC芯片设计的验证需求。传统的验证环境搭建基于Verilog语言,编写定向测试激励,不能有效的覆盖所有的待测功能点,在不同的项目之间不能进行重用,代码调试也比较困难,验证效率比较低,增加了芯片研发的周期和成本。
[0003]为了解决芯片验证过程中的各种问题,提高芯片验证效率,accellra组织推出了UVM(Universal Verification Methodology,通用验证方法学),UVM克服了传统验证方法的不足,提供了一个可复用的、分层次的验证平台框架,具有层次清晰、灵活易用、可扩展等特点。UVM基于Systemverilog语言创建了通用的类库,构成了UVM验证环境的各个组件,验证人员可以在此基础上方便的进行验证平台的开发,编写受约束的随机化激励,来达到验证覆盖率的快速收敛。采用UVM和Systemverilog组合的验证方法,极大地提高了验证的效率,符合当今大规模IC设计验证的需求和趋势,已经在IC设计行业得到了广泛地应用。

技术实现思路

[0004]本专利技术的目的在于提供一种基于UVM的SPI验证平台,以解决传统验证方法不能很好的覆盖全部待验证的功能点,覆盖率很难收敛、验证效率较低、可移植性较差,不能满足大规模设计验证需求的问题。
[0005]为解决上述技术问题,本专利技术提供了一种基于UVM的SPI验证平台,使用UVM验证方法学和SystemVerilog语言搭建验证环境,所述SPI验证平台包括:testbench顶层 top文件,实现整个UVM验证环境的初始化和连接操作;transaction事务数据包,产生和装载在序列发生器sequence中;序列管理sequencer负责序列发生器sequence的仲裁和调度,将序列发生器sequence中产生的item发送给驱动器driver,驱动器driver将transaction事务数据包转换后驱动到dut端口;监视器monitor,采集dut端口输出的数据,将其转换后发送给计分板scoreboard进行数据对比。
[0006]可选的,所述顶层testbench top文件中,例化dut端口的顶层spi_top模块,使用run_test函数来启动执行测试用例testcase,使用虚拟接口interface将SPI的4个接口信号与验证环境相连接,并进行时钟复位等初始化操作;所述SPI的4个接口信号包括MOSI信
号、MISO信号、SCLK信号和SS信号。
[0007]可选的,transaction事务数据包中,定义了基本的transaction类,在spi_trans事务类中,定义了MOSI、MISO、SCLK和SS信号,以及Din_M、Din_S、Dout_M和Dout_S信号,对这些变量采用field_automation机制进行注册,并对变量添加约束。
[0008]可选的,transaction事务数据包产生和装载在序列发生器sequence中,其继承自基类uvm_sequence_item,在spi_sequence序列类中声明对象且进行实例化,调用randomize函数进行随机化。
[0009]可选的,驱动器driver中,将transaction事务数据包转换成符合SPI协议的信号,并将其通过vif虚拟接口驱动到dut端口。
[0010]可选的,所述监视器monitor采集dut端口输出的数据,在run_phase执行阶段中,监视器monitor采样虚接口vif上的MOSI、MISO、SCLK、SS、Din_M、Din_S、Dout_M和Dout_S信号,将其转换成transaction事务级数据,发送给计分板scoreboard进行数据对比,监视器monitor进行与驱动器driver相反的数据转换操作。
[0011]可选的,所述计分板scoreboard中,声明并例化事务类spi_trans的实例,将监视器monitor采集到的事务级数据和期望值进行对比,并打印结果信息,验证dut端口的输出数据是否符合期望值的要求。
[0012]可选的,所述驱动器driver、监视器monitor和序列管理sequencer统一封装在代理器agent中,以便进行统一例化管理;使用seq_item_port和seq_item_export接口连接spi_driver组件和spi_sequencer组件。
[0013]可选的,代理器agent和计分板scoreboard在验证环境类env中进行例化,在connect_phase执行阶段中,使用ap_port接口连接代理器agent和计分板scoreboard,验证环境类env组件在基础测试类base_test中进行例化。
[0014]可选的,所述每个测试特定功能的测试用例testcase继承自基础测试类base_test,base_test类为基本的测试用例类,在base_test类的基础上,你能够扩展出各种测试case;使用run_test函数启动运行整个UVM验证环境。
[0015]可选的,在transaction事务类中,定义好SPI正确格式的事务包,在驱动器driver中将transaction事务级数据转换成SPI协议的信号,并将其驱动到dut端口上。
[0016]在本专利技术提供的基于UVM的SPI验证平台中,给出搭建模块级可重用验证环境的方法,说明了验证环境内部各个组件的连接方式,给出了事务级SPI数据的定义格式,在所搭建的验证环境中可方便的构造测试用例,加快了覆盖率的收敛。
[0017]本专利技术具有以下有益效果:(1)本专利技术采用最新的UVM验证方法学和SystemVerilog语言搭建验证环境;(2)所提出的UVM验证环境简洁可拓展,移植性较强,易于重用;(3)可以灵活构造各种测试场景,添加受约束随机激励,加速覆盖率收敛。
附图说明
[0018]图1是本专利技术提供的基于UVM的SPI验证平台结构示意图;图2是本专利技术提供的SPI验证平台实施例芯片结构示意图。
具体实施方式
[0019]以下结合附图和具体实施例对本专利技术提出的一种基于UVM的SPI验证平台作进一步详细说明。根据下面说明和权利要求书,本专利技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。
[0020]实施例一在本专利技术中提出一种基于UVM的SPI验证平台,使用UVM本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于UVM的SPI验证平台,其特征在于,使用UVM验证方法学和SystemVerilog语言搭建验证环境,所述SPI验证平台包括:testbench顶层 top文件,实现整个UVM验证环境的初始化和连接操作;transaction事务数据包,产生和装载在序列发生器sequence中;序列管理sequencer负责序列发生器sequence的仲裁和调度,将序列发生器sequence中产生的item发送给驱动器driver,驱动器driver将transaction事务数据包转换后驱动到dut端口;监视器monitor,采集dut端口输出的数据,将其转换后发送给计分板scoreboard进行数据对比。2.如权利要求1所述的基于UVM的SPI验证平台,其特征在于,所述顶层testbench top文件中,例化dut端口的顶层spi_top模块,使用run_test函数来启动执行测试用例testcase,使用虚拟接口interface将SPI的4个接口信号与验证环境相连接,并进行时钟复位等初始化操作;所述SPI的4个接口信号包括MOSI信号、MISO信号、SCLK信号和SS信号。3.如权利要求2所述的基于UVM的SPI验证平台,其特征在于,transaction事务数据包中,定义了基本的transaction类,在spi_trans事务类中,定义了MOSI、MISO、SCLK和SS信号,以及Din_M、Din_S、Dout_M和Dout_S信号,对这些变量采用field_automation机制进行注册,并对变量添加约束。4.如权利要求3所述的基于UVM的SPI验证平台,其特征在于,transaction事务数据包产生和装载在序列发生器sequence中,其继承于基类uvm_sequence_item,在spi_sequence序列类中声明对象且进行实例化,调用randomize函数进行随机化。5.如权利要求4所述的基于UVM的SPI验证平台,其特征在于,驱动器driver中,将transaction事务数据包转换成符合SPI协议的信号,并将其通过vif虚拟接口驱动到dut端口。6.如权利要求5所述的基于UVM...

【专利技术属性】
技术研发人员:桂江华殷庆会王凯董利
申请(专利权)人:中国电子科技集团公司第五十八研究所
类型:发明
国别省市:

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

1