一种基于UVM的dmi-jtag双端通信的验证方法技术

技术编号:38229932 阅读:14 留言:0更新日期:2023-07-25 17:58
本发明专利技术公开一种基于UVM的dmi

【技术实现步骤摘要】
一种基于UVM的dmi

jtag双端通信的验证方法


[0001]本专利技术涉及数字集成电路验证
,特别涉及一种基于UVM的dmi

jtag双端通信的验证方法。

技术介绍

[0002]随着集成电路设计领域的不断发展,代码量越来越多,电路规模逐渐扩大,电路中更容易出现各种bug,debug时长成为设计人员设计电路过程中最主要的部分,极大拖慢了集成电路的流片进度。
[0003]验证技术不仅遍布电路从设计到流片的整个过程,在流片后也依然需要继续验证,直至交付给客户。验证分为很多种,RTL硬件逻辑功能验证仅是验证的其中一小部分,单是针对RTL验证,就衍生出了不同的验证语言。目前市场上广为使用的验证语言为systemVerilog语言。随着验证的逐渐系统化,以这些基础语言为底层,开发集成了多种功能的验证方法学,最初普及的验证方法学为OVM和VMM,如今UVM已经成了验证的主流。
[0004]验证的时间越短越能大大提高流片的速度,所以对验证平台提出了更高的要求;由于设计的逐渐复杂,高覆盖率成为了越来越难达到的目标。激励生成自动化能将减少人工编写激励条件的时间,目前一个最基本的UVM平台包括sequencer、driver、monitor、rfmodel、scoreboard,通常情况下仅适合单端输入和单端输出的dut,并且当dut的输入时序要求比较复杂时,传统的UVM平台很难模拟出真实电路的电路时序,复用性也比较差,难以模拟多时钟下多端输入和多端输出的dut的实际使用环境,因此需要一个复用性强、可以实现多种时序逻辑的验证平台来解决上述问题。

技术实现思路

[0005]本专利技术的目的在于提供一种基于UVM的dmi

jtag双端通信的验证方法,以解决现有UVM平台不能满足dmi

jtag的复杂时序、且激励生成覆盖率低的问题。
[0006]为解决上述技术问题,本专利技术提供了一种基于UVM的dmi

jtag双端通信的验证方法,基于激励生成模块、多个驱动模块、多个监视器、比较器和dmi

jtag模块;
[0007]激励生成模块生成符合jtag协议的带约束的随机指令,不仅产生jtag端输入的激励,在检测到生成的jtag端输入为读取指令时,还自动生成dmi端的应答激励已被jtag端读回;
[0008]多个驱动模块用于将生成的jtag端输入激励和dmi端输入激励以符合jtag协议的时序驱动dmi

jtag模块的jtag端口和dmi端口;
[0009]多个监视器监测dmi

jtag模块的dmi端和jtag端的输入和输出;
[0010]比较器存放jtag端和dmi端的输入和输出数据,并分别进行比较。
[0011]在一种实施方式中,所述激励生成模块生成的激励是根据jtag协议的数据格式规定的,由地址字段、操作类型字段和数据字段组成。
[0012]在一种实施方式中,所述比较器中包含四个fifo,分别存放jtag端的输入、jtag端
的输出、dmi端的输入、dmi端的输出;所述比较器通过两个比较逻辑比对jtag端的输入和dmi端的输出,以及对比jtag端的输出和dmi端的输入。
[0013]在一种实施方式中,所述监视器根据输入输出端口的valid信号来进行输入和输出信号的采样。
[0014]在一种实施方式中,所述监视器将根据jtag协议规定的格式对采样到的信号进行整合后再发送给比较器,并非将采样到的串行信号直接传输给比较器。
[0015]在一种实施方式中,所述驱动模块的驱动时序是根据jtag协议的时序格式规定的。
[0016]在一种实施方式中,由于两端输入具有不同的clk,为了在模块两个输入端以正确的发送时序驱动时序,所述驱动时序由mailbox机制来实现的。
[0017]本专利技术提供的一种基于UVM的dmi

jtag双端通信的验证方法,结构更加完整,更加真实的模拟dmi

jtag模块双时钟,双端同时通信的特点;并且可以自主生成符合jtag时序和规格的激励驱动被测dut,减少了激励编写的人力和时间,得到更高的验证覆盖率,并且本方法的平台结构比较清晰,复用性强,可以兼容各种双端输入输出的模块验证。
附图说明
[0018]图1是本专利技术提出的一种基于UVM的dmi

jtag双端通信的验证方法基于的验证平台示意图。
[0019]图2本专利技术提出的一种基于UVM的dmi

jtag双端通信的验证方法实施顺序示意图。
具体实施方式
[0020]以下结合附图和具体实施例对本专利技术提出的一种基于UVM的dmi

jtag双端通信的验证方法作进一步详细说明。根据下面说明,本专利技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。
[0021]本专利技术提供一种基于UVM的dmi

jtag双端通信的验证方法,主要包括激励生成模块,用于生成符合jtag协议的带约束的随机指令。所述激励生成模块,当随机生成的jtag端激励为写指令时,并不会生成dmi端的输入激励;当随机生成的jtag端激励为读取指令时,将同时生成dmi端的应答激励以被jtag端读回,以模拟dmi

jtag模块在整合内核系统中的真实使用情况;当jtag端的指令为读取指令时,激励生成模块还可以配置生成错误的dmi端应答激励,以模拟jtag端在内核中读取错误的意外情况。
[0022]还包括不止一个驱动模块,用于将生成的激励驱动到dmi

jtag模块的输入端口。当jtag端的指令为写指令时,驱动模块将以数据为0、状态为success的应答驱动dmi端,以模拟jtag端在实际内核中正确进行写入的反馈;当jtag端的指令为读取指令时,所述驱动模块将以符合jtag协议的时序将jtag端的输入激励和dmi端的应答激励在恰当的时候进行驱动,以模拟dmi

jtag模块在整个内核系统中的真实使用时序,进行数据反馈和读回成功状态反馈;完成这个时序模拟将利用mailbox来实现,以保证dmi端的应答激励晚于jtag端的输入激励,以保证严格符合jtag协议的时序要求,解决了多驱动模下时序难以操纵的问题。
[0023]另外,还包括不止一个监视器,用于监测dmi端和jtag端的输入和输出。监视器将以两个端口的输入和输出的valid信号作为采样的开始,保证了采样的正确性;由于dmi端和jtag端都会互相进行输入和输出,本专利技术将采用两套监视器来同时监测dmi端和jtag端的输入和输出信号,每套监视器分别包含一个输入监视器和一个输出监视器,并将监测到信号发送给比较器;由于jtag端的数据传输方式是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于UVM的dmi

jtag双端通信的验证方法,其特征在于,基于激励生成模块、多个驱动模块、多个监视器、比较器和dmi

jtag模块;激励生成模块生成符合jtag协议的带约束的随机指令,不仅产生jtag端输入的激励,在检测到生成的jtag端输入为读取指令时,还自动生成dmi端的应答激励已被jtag端读回;多个驱动模块用于将生成的jtag端输入激励和dmi端输入激励以符合jtag协议的时序驱动dmi

jtag模块的jtag端口和dmi端口;多个监视器监测dmi

jtag模块的dmi端和jtag端的输入和输出;比较器存放jtag端和dmi端的输入和输出数据,并分别进行比较。2.如权利要求1所述的基于UVM的dmi

jtag双端通信的验证方法,其特征在于,所述激励生成模块生成的激励是根据jtag协议的数据格式规定的,由地址字段、操作类型字段和数据字段组成。3.如权利要求1所述的基于UVM的dmi

jtag双端通信的验证方法,其特征在于,所述比...

【专利技术属性】
技术研发人员:李涵魏敬和刘德宋佳柔李雨琦
申请(专利权)人:中国电子科技集团公司第五十八研究所
类型:发明
国别省市:

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

1