System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于UVM的用于验证CANFD协议的验证系统和验证平台技术方案_技高网

基于UVM的用于验证CANFD协议的验证系统和验证平台技术方案

技术编号:43741103 阅读:2 留言:0更新日期:2024-12-20 13:02
本申请实施例公开了一种基于UVM的用于验证CANFD协议的验证系统和验证平台,涉及验证领域。本申请的UVM相较于传统加密型工具厂商产品,显著提升了用户友好度与调试效率,通过开放核心驱动逻辑与随机约束,降低了学习门槛与调试难度。其特色在于异常与错误场景测试的高度灵活性,允许精确操控帧比特以模拟非法流,增强测试覆盖率与准确性。同时,多模式滤波支持及帧外标记信息功能,为设计验证提供了丰富调试手段与深度洞察,特别是在定位与解决设计BUG时,展现出极大的便利性与高效性。

【技术实现步骤摘要】

本申请涉及验证领域,尤其涉及一种基于uvm的用于验证canfd协议的验证系统和验证平台。


技术介绍

1、canfd总线协议是can2.0协议的拓展和升级,有容错性高的特点,是一种在工业级、车规级的soc(片上系统)、mcu(微控制器)、dsp(数字信号处理器)等芯片常用的通信接口协议。芯片验证是芯片研发的重要环节之一,由于canfd总线在工业级、车规级芯片中的广泛使用,所以非常多的验证场景都要面向canfd总线协议收发数据。此时,能够在行为级抽象简化且在信号级精确模拟canfd协议收发数据信息的装置就叫canfd vip(verification intellectual property)。

2、各大eda厂商均有各自的canfd-vip,并得到了广泛应用。工具厂商的canfdvip通常只提供uvm(通用验证方法学)组件如sequence和component的成员(members)和方法(methods)的简要介绍,以及只开放各传输阶段(通常是周期级)的底层回调函数,而内部核心驱动逻辑以及内部的随机约束是加密的。用户只能使用其提供的回调(callback)函数对vip的行为和状态做一些配置和调试。当需要测试复杂场景和时序时,解约束以及回调函数的使用限制,会使得需要多次尝试调试才能正确运行,严重降低了验证效率。这也使得用户必须对canfd协议非常熟悉,还要求用户对vip的架构以及vip的回调函数对应的传输阶段非常熟悉,给用户带来了很高的学习曲线。


技术实现思路

1、本申请实施例提供了一种基于uvm的用于验证canfd协议的验证系统和验证平台,可以解决现有canfd协议的验证问题。所述技术方案如下:

2、第一方面,本申请实施例提供了一种基于uvm的用于验证can协议的验证系统,uvm模型包括:协议驱动器、监视器、序列发生器、序列库、计分板、以及配置组件;

3、所述协议驱动器和所述计分板之间采用analysis_fifo收发传输事务,所述监视器和所述计分板之间采用analysis_fifo收发传输事务;所述协议驱动器与待测试rtl进行连接,所述监视器与所述待测试rtl进行连接,所述序列库与所述序列发生器进行通信,所述序列发生器与所述协议驱动器进行通信;

4、所述配置组件,用于配置can协议类型、波特率参数和滤波器参数;

5、所述序列发生器,用于根据所述序列库中的序列生成传输事务,以及将所述传输事务发送给所述协议驱动器;

6、所述协议驱动器,基于配置组件的波特率参数产生时序信号,将所述传输事务中的比特流、比特流标志位、以及各种debug标记信号驱动到虚拟接口上,以及检测到虚拟接口上的错误并发送错误帧,以及在规定的位切换快慢波特率。在传输事务使能传输错误比特流时,驱动指定次数错误比特流后驱动正常比特流;

7、所述监视器,用于接收所述总线上的帧,以及在规定的位上切换快慢波特率,也能够检测总线上的错误并且发送错误帧;

8、所述传输事务,用于产生帧的正确或异常比特流,比特流的标志位,以及额外的标记信息。依据帧信息以及协议类型计算crc序列,将帧转化为初始比特流并依据不同协议对初始比特流填充填充位以及stuff_count得到正常比特流;若使能异常比特流,则依据选定的异常模式在正常比特流基础上修改指定比特位得到异常比特流。

9、所述计分板,用于通过比较收发的传输事务,支持多种帧id滤波模式以及帧类型滤波模式,支持反算滤波器号,检测总线上传输的比特流是否为期望帧,以及其他标记信息是否符合期望。

10、所述虚拟接口,用于连接vip环境与待测试模块。

11、第二方面,本申请实施例提供了一种验证平台,包括上述的验证系统。

12、本申请一些实施例提供的技术方案带来的有益效果至少包括:

13、本申请的uvm模型相较于传统工具厂商提供的同类产品,展现出显著的技术优势与用户体验的革新。其核心驱动逻辑与内部随机约束机制的全面开放,不仅摒弃了传统加密处理的限制,更极大地简化了验证流程,降低了用户的学习门槛与调试成本。用户能够直接洞察并操控vip的内部运作机理,从而实现更高效、更直观的问题定位与解决,显著缩短了产品验证周期。本申请的验证系统在测试异常与错误场景时,展现出前所未有的灵活性与精确度。通过在传输事务中实现帧的比特流,驱动器不再对帧进行解析以及填充填充位,专注于驱动比特流以及检测错误,相比于某些同类产品在驱动器中实现对帧进行解析以及填充填充位的方式,本申请的代码更为简洁,复杂度更低。通过允许用户直接修改任意合法帧中的任意比特位,以模拟非法或异常的比特流传输,这一创新功能为验证工程师提供了强大的工具,使他们能够精确构造复杂多样的测试案例,全面覆盖并验证系统在不同极端条件下的响应能力,确保设计的健壮性与可靠性。本申请的验证系统还集成了多元化的滤波模式,不仅支持基于原始帧id的滤波器号计算。本申请还引入了帧外额外标记信息与debug标记信号的支持,特别是比特流标志位的引入,使得仿真时帧比特流的信息更为直观,极大的提高了验证效率。这些高级特性极大地丰富验证手段,使得工程师在调试设计缺陷时能够依据详尽的信息流进行精准定位,同时,通过灵活的滤波配置,可有效过滤无关信息,聚焦于关键问题区域,显著提升调试效率与准确性。

本文档来自技高网...

【技术保护点】

1.一种基于UVM的用于验证CANFD协议的验证系统,其特征在于,UVM模型包括:协议驱动器、监视器、传输事务、序列发生器、序列库、计分板、配置组件、以及虚拟接口;

2.根据权利要求1所述的方法,其特征在于,所述协议驱动器、序列发生器、监视器和计分板中设置有所述配置组件的句柄。

3.根据权利要求1所述的方法,其特征在于,所述传输事务包括:配置组件指针、帧类型、通信协议类型、帧的位域信息、帧转化的正常比特流、注入错误位、注入了错误的异常比特流、比特流标志位、异常比特流重复发送次数;

4.根据权利要求1所述的方法,其特征在于,所述协议驱动器中并行运行有多个task:get_transaction_channel任务、slow_tq任务、fast_tq任务、rx_sample任务、以及tx_drv任务。

5.根据权利要求1所述的方法,其特征在于,所述监视器并行运行有多个task:slow_tq任务、fast_tq任务、rx_sample任务、以及receive_channel任务。

6.根据权利要求1所述的方法,其特征在于,所述计分板并行有运行多个task:get_tx_transaction任务、get_rx_transaction任务、acf任务、以及cmp函数。

7.根据权利要求1所述的方法,其特征在于,所述虚拟接口中传输的信号包括:时钟信号、复位信号、发送信号和接收信号、比特流标志位信号、以及各种debug标记信号。

8.一种验证平台,其特征在于,包括:如权利要求1至7任意一项所述的验证系统。

...

【技术特征摘要】

1.一种基于uvm的用于验证canfd协议的验证系统,其特征在于,uvm模型包括:协议驱动器、监视器、传输事务、序列发生器、序列库、计分板、配置组件、以及虚拟接口;

2.根据权利要求1所述的方法,其特征在于,所述协议驱动器、序列发生器、监视器和计分板中设置有所述配置组件的句柄。

3.根据权利要求1所述的方法,其特征在于,所述传输事务包括:配置组件指针、帧类型、通信协议类型、帧的位域信息、帧转化的正常比特流、注入错误位、注入了错误的异常比特流、比特流标志位、异常比特流重复发送次数;

4.根据权利要求1所述的方法,其特征在于,所述协议驱动器中并行运行有多个task:get_transaction_channel任务、slow_tq任务、fast_tq任务、rx...

【专利技术属性】
技术研发人员:肖云飞徐钰珊杨钢曹定煜陈奉仪蔡京谷林浩强方婉刘文彭陈吴振海
申请(专利权)人:珠海泰为电子有限公司
类型:发明
国别省市:

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

1