CN106096123A - 一种用于无源标签芯片的vmm验证系统及方法 - Google Patents
一种用于无源标签芯片的vmm验证系统及方法 Download PDFInfo
- Publication number
- CN106096123A CN106096123A CN201610398748.0A CN201610398748A CN106096123A CN 106096123 A CN106096123 A CN 106096123A CN 201610398748 A CN201610398748 A CN 201610398748A CN 106096123 A CN106096123 A CN 106096123A
- Authority
- CN
- China
- Prior art keywords
- vmm
- label
- case
- reader
- maker
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种用于无源标签芯片的VMM验证系统及方法,包括VMM随机种子生成器、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块、VMM储存器配置约束模块、VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器、接口1、接口2、n个VMM阅读器激励生成器、n个阅读器SV模型、n个VMM标签激励生成器、n个标签RTL、n个标签SV参考模型、n个VMM对比器、VMM报告生成器1和VMM报告生成器2。本发明相比以往的技术大多数局限于使用阅读器实物进行FPGA对接测试,还有一对一的仿真验证,本方案对协议的一致性验证更加充分完备。
Description
技术领域
本发明涉及一种用于无源标签芯片的VMM验证系统及方法。
背景技术
当前标签芯片RTL代码及网表netlist的仿真验证大多是基于一个阅读器模型对一个标签代码进行的,有的甚至没有写阅读器的verilog模型更不用说system verilog(简称SV)模型了,而是基于现有的阅读器厂家生产的阅读器和标签的FPGA进行对接,因为实物产品阅读器对于标签的FPGA对接验证对验证空间的覆盖是有限的,而且是非常局限的,它只能覆盖阅读器厂家实际实现了的通信协议内容,不同阅读器厂家生产的阅读器的各种参数还不一致,如果阅读器和标签是同时开发的话,可能阅读器的开发进度还落后于标签的开发进度,这样就使得标签的验证很难往前推进。
还有就是写了阅读器模型,但是只考虑了一个阅读器对一个标签或者一个阅读器对多个标签的情况,可能忽略了多个阅读器和多个标签之间的通信,这个是标准里面明确描述了的阅读器和标签之间可以有多个会话,这些会话就包括阅读器和标签的多对多、一对多、多对一、一对一。
当前现有技术待解决的问题是能搭建一个这样的VMM环境,该环境可以配置成一个阅读器对一个标签、一个阅读器对多个标签、多个阅读器对一个标签、多个阅读器对多个标签,这样的话对于协议里面的所有内容都可以进行一一对应的验证,用例分解完全的话,直接用例的仿真验证加上随机用例的仿真验证可以逼近100%验证空间。
发明内容
本发明的目的在于:针对现有技术中存在的上述技术问题,提供一种高效率、完备的验证方法。
本发明是通过以下技术方案实现的:
一种用于无源标签芯片的VMM验证系统,包括VMM随机种子生成器、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块、VMM储存器配置约束模块、VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器、接口1、接口2、n个VMM阅读器激励生成器、n个阅读器SV模型、n个VMM标签激励生成器、n个标签RTL、n个标签SV参考模型、n个VMM对比器、n个标签断言器、n个标签监测器、n个阅读器断言器、n个阅读器监测器、VMM报告生成器1和VMM报告生成器2;
所述VMM随机种子生成器分别与VMM全随机用例配置约束模块和VMM部分随机用例配置约束模块相通信连接;所述、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块和VMM储存器配置约束模块分别通过VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器与接口1通信连接;
所述n个VMM阅读器激励生成器分别与n个阅读器SV模型一一对应,且VMM阅读器激励生成器的输出端与阅读器SV模型的输入端通信连接;n个阅读器SV模型分别与n个阅读器断言器和n个阅读器监测器通信连接,n个阅读器断言器和n个阅读器监测器的输出端与VMM报告生成器1相通信连接;
所述n个VMM标签激励生成器分别与n个标签RTL和n个标签SV参考模型通信连接,n个标签RTL和n个标签SV参考模型的输出端分别与n个VMM对比器、n个标签断言器和n个标签监测器相通信连接;n个VMM对比器、n个标签断言器和n个标签监测器的输出端分别与VMM报告生成器2相通信连接;
所述n个阅读器SV模型、n个标签RTL和n个标签SV参考模型分别与接口2通信连接,接口2与代码覆盖率收集、功能覆盖率收集模块相通信;
所述n个VMM标签激励生成器和n个VMM阅读器激励生成器分别与接口1相通信连接。
进一步,所述VMM阅读器激励生成器、阅读器SV模型、VMM标签激励生成器、标签RTL、标签SV参考模型、VMM对比器、标签断言器、标签监测器、阅读器断言器、阅读器监测器的数量相同。
进一步,所述接口1主要是VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器和n个VMM阅读器激励生成器、n个VMM标签激励生成器之间的接口;所述的接口1控制选择VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器中的任意一个作为输入,传输给后级模块。
进一步,所述接口1选择n个VMM阅读器激励生成器和n个VMM标签激励生成器中的任意一个、两个或多个作为输出。
进一步,所述接口2选择n个阅读器SV模型、n个标签RTL和n标签SV模型中的任意一个或多个。
进一步,所述VMM随机种子生成器采用日期加时间的方式生成。
一种用于无源标签芯片的VMM验证系统的方法,其流程步骤如下:
S1,制作直接用例表格;
S2,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;
S3,初始化后并且配置完成的读写器和标签群组;
S4,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;
S5,比对成功打印TEST_PASS,失败打印TEST_FALL;
S6,生成记录成功用例列表和失败用例列表;
S7,对失败的用例进行问题定位,修改验证环境、用例配置或代码,返回第一步重新开始。
进一步,所述步骤S3将步骤S2的配置文件和存储器初始化文件加载进入VMM验证环境,主要是要将其加载到验证环境中的阅读器模型和标签RTL中去,加载完成后,各个阅读器和标签都准备就绪,等待验证环境触发他们开始通信。
进一步,所述步骤S4将步骤S3的各项配置数据加载完成后,VMM环境触发环境中的阅读器或阅读器群组和标签或标签群组开始通信,同时VMM环境开始检测和记录阅读器和标签在通信过程中一些重要信号,这些信号的变化必须在有效范围内,一旦超出有效范围,那么VMM环境就会告警,严重的会报错,中止环境运行。
一种用于无源标签芯片的VMM验证系统的方法,步骤如下:
S11,制作随机用例表格;
S12,通过perl随机脚本处理生成随机用例配置;
S13,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;
S14,初始化后并且配置完成的读写器和标签群组;
S15,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;
S16,比对成功打印TEST_PASS,失败打印TEST_FALL;
S17,生成记录成功用例列表和失败用例列表,并做成功用例随机种子记录;
S18,修改随机用例约束条件,随机种子按时间递增,返回第一步重新开始。
进一步,所述步骤S11中随机用例表格中填写的为参数的有效值范围。
综上所述,由于采用了上述技术方案,本发明的有益效果是:一个VMM验证环境实现了对RFID所有场景的验证,不同的场景不用单独搭建一个VMM验证环境。本发明的方法通过配置完成VMM验证环境在不同验证场景之间的切换,完成不同场景的验证。
该VMM环境例化了RFID模块顶层及所有子模块,一个验证环境可以完成所有的系统验证、集成验证、模块验证、单元验证。这些不同层级的验证也是通过配置来控制一个VMM验证环境实现不同层级的验证。这样对于不同层级的验证均不用重新搭建VMM验证环境,实现了高效率高质量的验证。
该验证方案对应的环境可以配置成一个阅读器对一个标签、一个阅读器对多个标签、多个阅读器对一个标签、多个阅读器对多个标签,这样的话对于协议里面的所有内容都可以进行一一对应的验证,用例分解完全的话,直接用例的仿真验证加上随机用例的仿真验证可以逼近100%验证空间。
相比以往的技术大多数局限于使用阅读器实物进行FPGA对接测试,还有一对一的仿真验证,本方案对协议的一致性验证更加充分完备。
还有,以往的仿真验证一般局限于直接用例的运行,忽略了标准协议中很多参数的取值是直接用例无法完全覆盖的,这样就需要运行半约束随机用例和完全随机用例。通过日积月累的随机用例运行,使得验证空间最终可以逼近100%。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为本发明的系统框图;
图2为本发明VMM验证系统的方法一;
图3为本发明VMM验证系统的方法一的直接用例表格;
图4为本发明的VMM验证系统的方法二;
图5为本发明VMM验证系统的方法二的随机用例表格。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
如图1所示的,一种用于无源标签芯片的VMM验证系统,包括VMM随机种子生成器、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块、VMM储存器配置约束模块、VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器、接口1、接口2、n个VMM阅读器激励生成器、n个阅读器SV模型、n个VMM标签激励生成器、n个标签RTL、n个标签SV参考模型、n个VMM对比器、n个标签断言器、n个标签监测器、n个阅读器断言器、n个阅读器监测器、VMM报告生成器1和VMM报告生成器2;
所述VMM随机种子生成器分别与VMM全随机用例配置约束模块和VMM部分随机用例配置约束模块相通信连接;所述、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块和VMM储存器配置约束模块分别通过VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器与接口1通信连接;
所述n个VMM阅读器激励生成器分别与n个阅读器SV模型一一对应,且VMM阅读器激励生成器的输出端与阅读器SV模型的输入端通信连接;n个阅读器SV模型分别与n个阅读器断言器和n个阅读器监测器通信连接,n个阅读器断言器和n个阅读器监测器的输出端与VMM报告生成器1相通信连接;
所述n个VMM标签激励生成器分别与n个标签RTL和n个标签SV参考模型通信连接,n个标签RTL和n个标签SV参考模型的输出端分别与n个VMM对比器、n个标签断言器和n个标签监测器相通信连接;n个VMM对比器、n个标签断言器和n个标签监测器的输出端分别与VMM报告生成器2相通信连接;
所述n个阅读器SV模型、n个标签RTL和n个标签SV参考模型分别与接口2通信连接,接口2与代码覆盖率收集、功能覆盖率收集模块相通信;
所述n个VMM标签激励生成器和n个VMM阅读器激励生成器分别与接口1相通信连接。
具体地,所述VMM阅读器激励生成器、阅读器SV模型、VMM标签激励生成器、标签RTL、标签SV参考模型、VMM对比器、标签断言器、标签监测器、阅读器断言器、阅读器监测器的数量相同。
具体地,所述接口1主要是VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器和n个VMM阅读器激励生成器、n个VMM标签激励生成器之间的接口;所述的接口1控制选择VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器中的任意一个作为输入,传输给后级模块。
具体地,所述接口1选择n个VMM阅读器激励生成器和n个VMM标签激励生成器中的任意一个、两个或多个作为输出。
具体地,所述接口2选择n个阅读器SV模型、n个标签RTL和n标签SV模型中的任意一个或多个。
具体地,所述VMM随机种子生成器采用日期加时间的方式生成。
具体地,VMM阅读器激励生成器1,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给阅读器SV模型1。
具体地,VMM阅读器激励生成器2,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给阅读器SV模型2。
具体地,VMM阅读器激励生成器n,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给阅读器SV模型n。
具体地,阅读器SV模型1,采用system verilog编写,根据VMM阅读器激励生成器1生成的激励向标签或标签群发出相应的命令或命令集,实现和标签(群)的通信。VMM验证环境在运行不同的RFID交互场景时,可能会用到其中一个阅读器SV模型、两个SV模型、多个SV模型。
具体地,阅读器SV模型2,采用system verilog编写,根据VMM阅读器激励生成器2生成的激励向标签或标签群发出相应的命令或命令集,实现和标签(群)的通信。
具体地,阅读器SV模型n,采用system verilog编写,根据VMM阅读器激励生成器n生成的激励向标签或标签群发出相应的命令或命令集,实现和标签(群)的通信。
具体地,阅读器监测器1、阅读器断言器1,采用system verilog编写,监测器主要是对阅读器SV模型1的前向和反向信号进行监视,如有异常及时报警或报错,阅读器SV模型1内部的重要信号也需要拉出来作为监视器的监控信号。断言器主要是对阅读器的一些操作结果或者信号的一些取值进行一个推断,阅读器和标签通信过程中和通信结束后都可以进行断言,如果推断正确,那么断言成功,否则断言失败。
具体地,阅读器监测器2、阅读器断言器2,采用system verilog编写,监测器主要是对阅读器SV模型2的前向和反向信号进行监视,如有异常及时报警或报错,阅读器SV模型2内部的重要信号也需要拉出来作为监视器的监控信号。
具体地,阅读器监测器n、阅读器断言器n,采用system verilog编写,监测器主要是对阅读器SV模型n的前向和反向信号进行监视,如有异常及时报警或报错,阅读器SV模型n内部的重要信号也需要拉出来作为监视器的监控信号。
具体地,VMM标签激励生成器1,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给标签SV模型1(标签RTL的参考模型),同时复制一份灌输给标签RTL代码,以便实现比对验证的策略。
具体地,VMM标签激励生成器2,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给标签SV模型2(标签RTL的参考模型),同时复制一份灌输给标签RTL代码,以便实现比对验证的策略。
具体地,VMM标签激励生成器n,采用system verilog编写,将VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器生成的用例配置文件,存储器数据文件等按照要求的时序灌输给标签SV模型n(标签RTL的参考模型),同时复制一份灌输给标签RTL代码,以便实现比对验证的策略。
具体地,标签1 RTL,标签RTL verilog代码的一个例化,即相当于嵌入到验证环境中的一张标签,该标签在环境中是作为被测试模块DUT,VMM验证环境将对其进行充分、完善的验证,直到达到投片的要求。VMM验证环境在运行不同的RFID交互场景时,可能会用到其中一张标签、两张标签、多张标签。
具体地,标签2 RTL,标签RTL verilog代码的一个例化,即相当于嵌入到验证环境中的一张标签,该标签在环境中是作为被测试模块DUT,VMM验证环境将对其进行充分、完善的验证,直到达到投片的要求。
具体地,标签n RTL,标签RTL verilog代码的一个例化,即相当于嵌入到验证环境中的一张标签,该标签在环境中是作为被测试模块DUT,VMM验证环境将对其进行充分、完善的验证,直到达到投片的要求。
具体地,标签1 SV模型,采用system verilog实现,作为标签1RTL的参考模型。它们在验证环境中始终是被灌入相同的激励,而且要求它们的输出必须一致,如果不一致,则标签1 SV模型和标签1 RTL代码对标准协议的实现有不一样的地方,需要定位,直到所有场景用例比对全部通过。
具体地,标签2 SV模型,采用system verilog实现,作为标签2RTL的参考模型。它们在验证环境中始终是被灌入相同的激励,而且要求它们的输出必须一致,如果不一致,则标签2 SV模型和标签2 RTL代码对标准协议的实现有不一样的地方,需要定位,直到所有场景用例比对全部通过。
具体地,标签n SV模型,采用system verilog实现,作为标签n RTL的参考模型。它们在验证环境中始终是被灌入相同的激励,而且要求它们的输出必须一致,如果不一致,则标签n SV模型和标签n RTL代码对标准协议的实现有不一样的地方,需要定位,直到所有场景用例比对全部通过。
具体地,VMM标签比对器1,采用system verilog实现。对标签1 SV模型和标签1RTL代码的输出进行一一比对,看两者输出是否一致。比对数据的采样时钟可以是VMM验证环境提供的时钟、标签主时钟或者是标签的反向速率时钟,前两者是按照相应的时钟周期对标签的输出数据进行采样,时钟周期是固定的,后者是按照标签的返回速率进行采样,不同反向速率对应的反向时钟不一样,则采样时刻和总的采样时间就不一样,但是采样的数据个数是一样的。
具体地,VMM标签比对器2,采用system verilog实现。对标签2 SV模型和标签2RTL代码的输出进行一一比对,看两者输出是否一致。
具体地,VMM标签比对器n,采用system verilog实现。对标签n SV模型和标签nRTL代码的输出进行一一比对,看两者输出是否一致。
具体地,标签监测器1、标签断言器1,采用system verilog编写,监测器主要是对标签SV模型1和标签1 RTL的前向和反向信号进行监视,如有异常及时报警或报错,标签SV模型1和标签1 RTL内部的重要信号也需要拉出来作为监视器的监控信号。断言器主要是对标签SV模型1和标签1 RTL的一些操作结果或者信号的一些取值进行一个推断,阅读器和标签通信过程中和通信结束后都可以进行断言,如果推断正确,那么断言成功,否则断言失败。
具体地,标签监测器2、标签断言器2,采用system verilog编写,监测器主要是对标签SV模型2和标签2 RTL的前向和反向信号进行监视,如有异常及时报警或报错,标签SV模型2和标签2 RTL内部的重要信号也需要拉出来作为监视器的监控信号。模块(8-n),标签监测器n、标签断言器n,采用system verilog编写,监测器主要是对标签SV模型n和标签nRTL的前向和反向信号进行监视,如有异常及时报警或报错,标签SV模型n和标签n RTL内部的重要信号也需要拉出来作为监视器的监控信号。
具体地,VMM直接用例配置、约束,采用文本表格形式,列出所有的直接用例,每个用例的配置约束采用阿拉伯数值、数值范围进行表示。
具体地,VMM全随机用例配置、约束,采用文本表格形式,列出该随机用例所有参数的有效取值范围。
具体地,VMM部分随机用例配置、约束,采用文本表格形式,列出未随机的参数的取值,列出随机部分参数的有效取值范围。
具体地,VMM存储器配置约束,采用文本表格形式,列出存储器的初始化内容,包括标准协议中规定的所有需要存储器存储的内容。
具体地,VMM直接用例生成器,采用perl脚本实现,根据VMM直接用例配置约束模块,VMM直接用例配置、约束生成相应的用例,该用例包含VMM验证环境、DUT、参考模型等所有的配置。将该用例加载到环境中,环境就可以运行起来,阅读器和标签可以正常通信。
具体地,VMM全随机用例生成器,根据VMM全随机用例配置约束模块,VMM全随机用例参数的取值范围,采用perl脚本根据一定的随机算法,将所有参数随机后传给后续模块处理。
具体地,VMM部分随机用例生成器,根据VMM部分随机用例配置约束模块,VMM部分随机用例参数的取值范围,采用perl脚本根据一定的随机算法,将需要随机的参数随机后加上取值固定的参数一起传给后续模块处理。
具体地,VMM存储器数据生成器,采用perl脚本实现,根据VMM储存器配置约束模块VMM中存储器配置约束及存储器中的内容,将这些存储器数据生成为VMM验证环境可以识读的格式,用例运行时,这些数据将加载到验证环境中。
具体地,接口1,主要是VMM用例生成器、存储器数据生成器和VMM阅读器激励生成器、VMM标签激励生成器之间的接口。该接口可以控制选择VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器的任意一个作为输入,传输给后级模块。该接口还可以选择VMM阅读器激励生成器1、VMM阅读器激励生成器2~VMM阅读器激励生成器n中的任意一个、两个、多个作为输出,VMM标签激励生成器1、VMM标签激励生成器2~VMM标签激励生成器n中的任意一个、两个、多个作为输出
具体地,接口2,根据配置选择阅读器SV模型1~n中的任意一个或多个,选择标签RTL 1~n中的任意一个或多个,选择标签SV模型1~n中的任意一个或多个。不同的用例,不同的场景,环境中这些例化的模块数量是不一样的。但是所有的场景不会出现重复,这个由用例配置和perl脚本算法来保证。
具体地,代码覆盖率、功能覆盖率收集,代码覆盖率不需要单独编写代码,功能覆盖率需要单独编写代码,对标准协议中的所有功能性能采用system verilog进行功能性能描述,编写好后嵌入到VMM验证环境中,各个功能点都需要相应的触发条件。
具体地,阅读器报告生成器,将vmm_log、vmm_error,vmm_warning,vmm_note生成的所有用例的报告统计到一起,列出失败的用例,成功的用例,有告警的用例,有提示的用例,便于设计验证人员根据这些报告去定位问题、分析问题、解决问题。
具体地,标签报告生成器,将vmm_log、vmm_error,vmm_warning,vmm_note生成的所有用例的报告统计到一起,列出失败的用例,成功的用例,有告警的用例,有提示的用例,便于设计验证人员根据这些报告去定位问题、分析问题、解决问题。
具体地,随机种子生成器,本发明方法的随机种子采用日期加时间的方式生成,时间日期是递增的,所以所有的随机种子不会重复,保证了每一次随机的用例都是不一样的。
如图2和3所示的,一种用于无源标签芯片的VMM验证系统的方法一,其流程步骤如下:
S1,制作直接用例表格;excel用例表格,当验证人员将测试点分解完成后就要根据测试点一一对应的构造用例去覆盖相应的测试点(一个用例可以覆盖多个测试点,一个测试点至少有一个用例覆盖,一个测试点不能多个用例才能覆盖,一个用例至少覆盖一个测试点)。这些构造的用例的参数取值都是在参数的有效范围内的。有效范围以外的取值属于异常用例范畴。
S2,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;即直接用例构造完成后,需要将表格数据转换成文本格式的用例配置,这个方法很多,可以采用VBA(Visual Basic for Applications)编程在EXCEL表格界面生成GUI控件,也可以采用MATLAB M语言(MATLAB可以对EXCEL进行操作),本发明方法采用的perl脚本处理。使用perl脚本将用例配置转换成文本格式,以便加载进入VMM验证环境。这里主要涉及到各种参数配置文件和存储器初始化数据文件。
S3,初始化后并且配置完成的读写器和标签群组;主要是要将其加载到验证环境中的阅读器模型和标签RTL中去,加载完成后,各个阅读器和标签都准备就绪,等待验证环境触发它们开始通信。
S4,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;同时VMM环境开始检测和记录阅读器和标签在通信过程中一些重要信号,这些信号的变化必须在有效范围内,一旦超出有效范围,那么VMM环境就会告警,严重的会报错,中止环境运行。
S5,比对成功打印TEST_PASS,失败打印TEST_FALL;阅读器和标签通信正常结束语后,VMM还会记录通信结果,通信场景完整结束且通信过程中的阅读器发射的信号和标签返回的信号都能和参考模型的比对通过,那么该用例测试通过,VMM_LOG打印TEST_PASS,否则用例测试未通过,VMM_LOG打印TEST_FAIL。
S6,生成记录成功用例列表和失败用例列表;所有用例运行完之后,每个用例的子目录下面都对应一个LOG文件,里面记录了该用例的运行信息,还有该用例成功还是失败的记录。这里采用perl脚本的文本搜索功能,将对所有用例的LOG文件进行搜索,将TEST_PASS的用例打印到一个表格里面,将TEST_FAIL的用例打印到一个表格里面,这样便于验证人员一目了然的知道哪些用例通过,哪些用例未通过,便于快速的返回进行问题定位。
S7,对失败的用例进行问题定位,修改验证环境、用例配置或代码,返回第一步重新开始。需要对失败的用例进行问题定位,由验证人员主导定位工作,设计人员和算法人员配合。问题追溯到RTL代码的问题,那就是设计人员修改代码来解决问题,如果问题追溯到参考模型的问题,那么就是算法人员修改参考模型来解决问题,如果排除这两者的问题,那么就是验证环境的缺陷,需要验证人员自己分析定位。问题解决后返回第一步重新开始,直到所有的用例都测试通过,此时,直接用例执行完成。
进一步,所述步骤S3将步骤S2的配置文件和存储器初始化文件加载进入VMM验证环境,主要是要将其加载到验证环境中的阅读器模型和标签RTL中去,加载完成后,各个阅读器和标签都准备就绪,等待验证环境触发它们开始通信。
进一步,所述步骤S4将步骤S3的各项配置数据加载完成后,VMM环境触发环境中的阅读器或阅读器群组和标签或标签群组开始通信,同时VMM环境开始检测和记录阅读器和标签在通信过程中一些重要信号,这些信号的变化必须在有效范围内,一旦超出有效范围,那么VMM环境就会告警,严重的会报错,中止环境运行。
如图4所示的,一种用于无源标签芯片的VMM验证系统的方法二,步骤如下:
S11,制作随机用例表格;
S12,通过perl随机脚本处理生成随机用例配置;
S13,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;
S14,初始化后并且配置完成的读写器和标签群组;
S15,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;
S16,比对成功打印TEST_PASS,失败打印TEST_FALL;
S17,生成记录成功用例列表和失败用例列表,并做成功用例随机种子记录;
S18,修改随机用例约束条件,随机种子按时间递增,返回第一步重新开始。
如图5所示的,所述步骤S11中随机用例表格中填写的为参数的有效值范围。随机用运行流程和直接用例运行流程是一样的,不同的是EXCEL用例表格的填写方式的区别,直接用例填写的是确定的参数值,而随机用例填写的是参数的有效取值范围。相应的VBA代码也有所差别,在生成用例配置时,VBA代码会根据填写的参数取值范围根据一定的随机算法随机一个参数值出来作为当前这个随机用例的参数值。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (11)
1.一种用于无源标签芯片的VMM验证系统,其特征在于:包括VMM随机种子生成器、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块、VMM储存器配置约束模块、VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器、接口1、接口2、n个VMM阅读器激励生成器、n个阅读器SV模型、n个VMM标签激励生成器、n个标签RTL、n个标签SV参考模型、n个VMM对比器、n个标签断言器、n个标签监测器、n个阅读器断言器、n个阅读器监测器、VMM报告生成器1和VMM报告生成器2;
所述VMM随机种子生成器分别与VMM全随机用例配置约束模块和VMM部分随机用例配置约束模块相通信连接;所述、VMM直接用例配置约束模块、VMM全随机用例配置约束模块、VMM部分随机用例配置约束模块和VMM储存器配置约束模块分别通过VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器与接口1通信连接;
所述n个VMM阅读器激励生成器分别与n个阅读器SV模型一一对应,且VMM阅读器激励生成器的输出端与阅读器SV模型的输入端通信连接;n个阅读器SV模型分别与n个阅读器断言器和n个阅读器监测器通信连接,n个阅读器断言器和n个阅读器监测器的输出端与VMM报告生成器1相通信连接;
所述n个VMM标签激励生成器分别与n个标签RTL和n个标签SV参考模型通信连接,n个标签RTL和n个标签SV参考模型的输出端分别与n个VMM对比器、n个标签断言器和n个标签监测器相通信连接;n个VMM对比器、n个标签断言器和n个标签监测器的输出端分别与VMM报告生成器2相通信连接;
所述n个阅读器SV模型、n个标签RTL和n个标签SV参考模型分别与接口2通信连接,接口2与代码覆盖率收集、功能覆盖率收集模块相通信;
所述n个VMM标签激励生成器和n个VMM阅读器激励生成器分别与接口1相通信连接。
2.根据权利要求1所述的用于无源标签芯片的VMM验证系统,其特征在于,所述VMM阅读器激励生成器、阅读器SV模型、VMM标签激励生成器、标签RTL、标签SV参考模型、VMM对比器、标签断言器、标签监测器、阅读器断言器、阅读器监测器的数量相同。
3.根据权利要求1所述的用于无源标签芯片的VMM验证系统,其特征在于,所述接口1主要是VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器、VMM储存器数据生成器和n个VMM阅读器激励生成器、n个VMM标签激励生成器之间的接口;所述的接口1控制选择VMM直接用例生成器,VMM全随机用例生成器、VMM部分随机用例生成器和VMM储存器数据生成器中的任意一个作为输入,传输给后级模块。
4.根据权利要求3所述的用于无源标签芯片的VMM验证系统,其特征在于,所述接口1选择n个VMM阅读器激励生成器和n个VMM标签激励生成器中的任意一个、两个或多个作为输出。
5.根据权利要求1所述的用于无源标签芯片的VMM验证系统,其特征在于,所述接口2选择n个阅读器SV模型、n个标签RTL和n标签SV模型中的任意一个或多个。
6.根据权利要求1所述的用于无源标签芯片的VMM验证系统,其特征在于,所述VMM随机种子生成器采用日期加时间的方式生成。
7.根据权利要求1所述的用于无源标签芯片的VMM验证系统的方法,其特征在于,其流程步骤如下:
S1,制作直接用例表格;
S2,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;
S3,初始化后并且配置完成的读写器和标签群组;
S4,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;
S5,比对成功打印TEST_PASS,失败打印TEST_FALL;
S6,生成记录成功用例列表和失败用例列表;
S7,对失败的用例进行问题定位,修改验证环境、用例配置或代码,返回第一步重新开始。
8.根据权利要求7所述的用于无源标签芯片的VMM验证系统的方法,其特征在于,所述步骤S3将步骤S2的配置文件和存储器初始化文件加载进入VMM验证环境,主要是要将其加载到验证环境中的阅读器模型和标签RTL中去,加载完成后,各个阅读器和标签都准备就绪,等待验证环境触发它们开始通信。
9.根据权利要求7所述的用于无源标签芯片的VMM验证系统的方法,其特征在于,所述步骤S4将步骤S3的各项配置数据加载完成后,VMM环境触发环境中的阅读器或阅读器群组和标签或标签群组开始通信,同时VMM环境开始检测和记录阅读器和标签在通信过程中一些重要信号,这些信号的变化必须在有效范围内,一旦超出有效范围,那么VMM环境就会告警,严重的会报错,中止环境运行。
10.根据权利要求1所述的用于无源标签芯片的VMM验证系统的方法,其特征在于,步骤如下:
S11,制作随机用例表格;
S12,通过perl随机脚本处理生成随机用例配置;
S13,通过perl脚本处理生成标签储存器初始化文件和测试用例配置文件;
S14,初始化后并且配置完成的读写器和标签群组;
S15,VMM环境触发环境中用例运行,阅读器或阅读器群组和标签或标签群组开始通信;
S16,比对成功打印TEST_PASS,失败打印TEST_FALL;
S17,生成记录成功用例列表和失败用例列表,并做成功用例随机种子记录;
S18,修改随机用例约束条件,随机种子按时间递增,返回第一步重新开始。
11.根据权利要求10所述的用于无源标签芯片的VMM验证系统的方法,其特征在于,所述步骤S11中随机用例表格中填写的为参数的有效值范围。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610398748.0A CN106096123B (zh) | 2016-06-07 | 2016-06-07 | 一种用于无源标签芯片的vmm验证系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610398748.0A CN106096123B (zh) | 2016-06-07 | 2016-06-07 | 一种用于无源标签芯片的vmm验证系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106096123A true CN106096123A (zh) | 2016-11-09 |
CN106096123B CN106096123B (zh) | 2019-05-21 |
Family
ID=57227347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610398748.0A Active CN106096123B (zh) | 2016-06-07 | 2016-06-07 | 一种用于无源标签芯片的vmm验证系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106096123B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542877A (zh) * | 2018-11-20 | 2019-03-29 | 上海元城汽车技术有限公司 | 电池管理系统的参数管理方法及装置 |
CN109636786A (zh) * | 2018-12-11 | 2019-04-16 | 杭州嘉楠耘智信息科技有限公司 | 一种图像识别模块的验证方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0974908A2 (en) * | 1998-07-24 | 2000-01-26 | Interuniversitair Microelektronica Centrum Vzw | Optimized virtual memory management for dynamic data types |
CN101515301A (zh) * | 2008-02-23 | 2009-08-26 | 炬力集成电路设计有限公司 | 一种片上系统芯片验证的方法和装置 |
US7647589B1 (en) * | 2005-02-07 | 2010-01-12 | Parallels Software International, Inc. | Methods and systems for safe execution of guest code in virtual machine context |
CN102117344A (zh) * | 2009-12-30 | 2011-07-06 | 上海华虹集成电路有限责任公司 | 实现sim卡芯片多接口系统验证环境的方法 |
CN104462626A (zh) * | 2013-09-24 | 2015-03-25 | 上海华虹集成电路有限责任公司 | 基于vmm验证方法学的rfif验证平台及实现方法 |
-
2016
- 2016-06-07 CN CN201610398748.0A patent/CN106096123B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0974908A2 (en) * | 1998-07-24 | 2000-01-26 | Interuniversitair Microelektronica Centrum Vzw | Optimized virtual memory management for dynamic data types |
US7647589B1 (en) * | 2005-02-07 | 2010-01-12 | Parallels Software International, Inc. | Methods and systems for safe execution of guest code in virtual machine context |
CN101515301A (zh) * | 2008-02-23 | 2009-08-26 | 炬力集成电路设计有限公司 | 一种片上系统芯片验证的方法和装置 |
CN102117344A (zh) * | 2009-12-30 | 2011-07-06 | 上海华虹集成电路有限责任公司 | 实现sim卡芯片多接口系统验证环境的方法 |
CN104462626A (zh) * | 2013-09-24 | 2015-03-25 | 上海华虹集成电路有限责任公司 | 基于vmm验证方法学的rfif验证平台及实现方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542877A (zh) * | 2018-11-20 | 2019-03-29 | 上海元城汽车技术有限公司 | 电池管理系统的参数管理方法及装置 |
CN109636786A (zh) * | 2018-12-11 | 2019-04-16 | 杭州嘉楠耘智信息科技有限公司 | 一种图像识别模块的验证方法和装置 |
CN109636786B (zh) * | 2018-12-11 | 2022-11-22 | 嘉楠明芯(北京)科技有限公司 | 一种图像识别模块的验证方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106096123B (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104965507B (zh) | 生成开放式诊断数据交换数据库的方法及装置 | |
Kassim et al. | Web-based student attendance system using RFID technology | |
CN102092477B (zh) | 飞机音频综合系统自动测试与故障诊断装置及方法 | |
CN104506338A (zh) | 一种基于决策树的工业以太网网络故障诊断专家系统 | |
CN105718371B (zh) | 一种回归测试方法、装置及系统 | |
CN105225049B (zh) | 一种高可扩展性故障诊断专家系统 | |
CN109342929A (zh) | 一种cvc-200t硬件智能测试系统及方法 | |
BR102012015582A2 (pt) | Sistema, método e produto de programa de computador | |
CN101960448A (zh) | 当前执行组件脚本的元素的识别 | |
CN105140810B (zh) | 智能变电站全站软压板投退状态校验系统及方法 | |
CN109948804A (zh) | 跨平台拖拽式深度学习建模与训练方法及装置 | |
CN103197640A (zh) | 生产工艺智能管控系统和方法 | |
CN114816980A (zh) | 一种嵌入式通信系统用自动测试装置及方法 | |
CN106096123A (zh) | 一种用于无源标签芯片的vmm验证系统及方法 | |
CN106815147A (zh) | 一种测试脚本生成方法及装置 | |
CN114722791B (zh) | 一种实验室操作行为智能识别与记录系统 | |
Sadovykh et al. | Veridevops: Automated protection and prevention to meet security requirements in devops | |
CN106526460B (zh) | 一种电路故障定位方法及装置 | |
CN101179447A (zh) | 综合网管数据模拟器系统 | |
Mao et al. | A visual model-based evaluation framework of cloud-based prognostics and health management | |
CN106033103B (zh) | 基于信息自描述的电力二次设备智能测试方法 | |
CN109063846A (zh) | 机器学习的运行方法、装置、设备及存储介质 | |
Hallerbach et al. | Simulation-Enabled Methods for Development, Testing, and Validation of Cooperative and Automated Vehicles | |
CN109799425A (zh) | 电网故障诊断方法及装置 | |
CN109933485B (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 |