CN104486169A - 可重用自动检测及随机验证系统和方法 - Google Patents
可重用自动检测及随机验证系统和方法 Download PDFInfo
- Publication number
- CN104486169A CN104486169A CN201510007201.9A CN201510007201A CN104486169A CN 104486169 A CN104486169 A CN 104486169A CN 201510007201 A CN201510007201 A CN 201510007201A CN 104486169 A CN104486169 A CN 104486169A
- Authority
- CN
- China
- Prior art keywords
- verification
- bus
- dut
- automatic detection
- result
- 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
Abstract
本发明提供了一种可重用自动检测及随机验证系统和方法,用于对测试中的设备DUT进行功能验证,包括:总线验证IP用于配置DUT的验证数据的源地址和目的地址、为DUT提供验证数据及对DUT总线接口逻辑进行协议检查,以便DUT根据源地址从总线验证IP中提取验证数据并进行硬件处理;参考模型模块,用于获取验证数据并根据预设标准算法对其进行软件处理,预设标准算法与DUT功能相同;比较器用于将硬件处理结果和软件处理结果进行对比并反馈管理系统,其提供了一个可重用自动检测随机验证平台对DUT进行随机验证,无需操作员手工进行操作且能够对DUT的处理结果进行自动检测,提高了验证全面性、覆盖率和效率,节省了验证时间。
Description
技术领域
本发明涉及通信领域,具体而言,涉及可重用自动检测及随机验证系统和方法。
背景技术
随着半导体制造技术的改进,SOC(System on Chip,系统级芯片)(即专用集成电路芯片)及多核设计的方案,代替了传统集成电路芯片而被广泛应用,但无论是传统的芯片还是新兴的SOC,均需要在使用前对其进行功能验证,用以保证其在使用过程中的可靠性。而SOC相比于传统的芯片,其设计的复杂度是以指数形式增长,故对SOC进行功能验证需要花费大量时间(一般需要花费从制作好到开始是使用整个过程的70%~80%的时间),因此,SOC设计复杂度的提高迫切需要在芯片验证方面有新的技术和方法学。
相关技术提供了一种对SOC进行功能验证的方法,即采用定向激励测试的方法对SOC中带有总线接口的信号编解码模块进行验证,其优势是:定向激励验证平台易于搭建,便于发现芯片系统集成过程中的基本连线错误。具体的,信号编解码模块具有多路总线,首先对每一路总线进行测试,然后将每一路总线的测试结果分别与标准结果进行对比,得到该路总线的测试结果,直至完成所有总线的测试,测试结束。
发明人在研究中发现,定向激励测试中需要测试人员完成每一路总线的测试,劳动强度大且耗费时间长,并且在验证的过程中测试人员还需将每一路总线的测试结果均单独计算并与标准数据进行对比,操作强度且大大制约了验证的进度,并且对于不同的模块验证需要搭建不同的验证平台,浪费人力和时间。
发明内容
本发明的目的在于提供可重用自动检测及随机验证系统,无需操作人员手动操作,提高对功能模块的验证的速度及工作效率。
第一方面,本发明实施例提供了一种可重用自动检测及随机验证系统,用于对测试中的设备DUT进行功能验证,包括:总线验证IP、参考模型模块和比较器;
总线验证IP,用于配置DUT的验证数据的源地址和目的地址、为DUT提供验证数据以及对DUT总线接口逻辑进行协议检查,以便DUT根据配置的源地址从总线验证IP中提取验证数据,对验证数据进行处理并将得到的硬件处理结果通过目的地址反馈给总线验证IP;
参考模型模块,用于根据预设标准算法对验证数据进行处理,得到软件处理结果,预设标准算法与DUT具有相同的功能;
比较器,用于获取DUT的硬件处理结果和参考模型模块的软件处理结果,将硬件处理结果和软件处理结果进行对比,并将对比结果反馈给管理系统。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,可重用自动检测及随机验证系统中,总线验证IP包括:主动主机总线和主动从机总线;
主动主机总线,用于配置DUT的验证数据的源地址和目的地址;
主动从机总线,用于为DUT提供验证数据。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,可重用自动检测及随机验证系统中,总线验证IP还包括:被动主机总线和被动从机总线;
被动主机总线和被动从机总线均用于对DUT的总线接口逻辑进行协议检查,以便DUT的总线接口逻辑协议与标准协议保持一致。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,可重用自动检测及随机验证系统还包括监控器;
监控器,用于在监测到DUT从主动从机总线中提取的验证数据时,获取验证数据并对验证数据进行打包封装,并发送至参考模型模块。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,可重用自动检测及随机验证系统中,
参考模型模块,在接收到监控器发送的验证数据时,根据预设标准算法对验证数据进行处理,并将得到的软件处理结果发送至比较器,预设标准算法至少包括C算法。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,可重用自动检测及随机验证系统,
监控器,在监测到DUT反馈给总线验证IP的硬件处理结果时,获取硬件处理结果并将硬件处理结果发送至比较器。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中,可重用自动检测及随机验证系统中,
主动主机总线与DUT的从机端口连接,主动从机总线与DUT的主机端口连接;
被动主机总线与DUT的从机端口连接,被动从机总线与DUT的主机端口连接。
结合第一方面及第一方面的第一种可能的实施方式至第一方面的第七种可能的实施方式中任意一种可能的实施方式,本发明实施例提供了第一方面的第八种可能的实施方式,其中,任意一项的可重用自动检测及随机验证系统,监控器为两个。
第二方面,本发明实施例还提供了一种可重用自动检测及随机验证方法,方法用于对测试中的设备DUT进行功能验证,包括:
配置DUT的验证数据的源地址和目的地址以及为DUT提供验证数据,以便DUT根据配置的源地址从总线验证IP中提取验证数据,对验证数据进行处理并将得到的硬件处理结果通过目的地址反馈给总线验证IP;
获取总线验证IP提供的验证数据,并根据预设标准算法对验证数据进行处理,得到软件处理结果,预设标准算法与DUT具有相同的功能;
获取DUT的硬件处理结果和参考模型模块的软件处理结果,将硬件处理结果和软件处理结果进行对比,并将对比结果反馈给管理系统。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,可重用自动检测及随机验证方法还包括:
对DUT的总线接口逻辑进行协议检查,以便DUT的总线接口逻辑协议与标准协议保持一致。
本发明实施例提供的可重用自动检测及随机验证系统和方法,用于对测试中的设备DUT进行功能验证,采用总线验证IP、参考模型模块和比较器实现,具体通过总线验证IP配置DUT的验证数据的源地址和目的地址、为DUT提供验证数据以及对DUT总线接口逻辑进行协议检查,以便DUT根据源地址提取验证数据,对验证数据进行处理并将得到的硬件处理结果通过目的地址反馈给总线验证IP;通过参考模型模块,基于其自身存储的预设标准算法对验证数据进行处理,得到软件处理结果,最后通过比较器将硬件处理结果和软件处理结果进行对比,并将对比结果反馈给管理系统,与现有技术中的定向激励测试中需要测试人员完成每一路总线的测试,劳动强度大且耗费时间长,并且在验证的过程中测试人员还需将每一路总线的测试结果均单独计算并与标准数据进行对比,操作强度且大大制约了验证的进度,并且对于不同的模块验证需要搭建不同的验证平台,浪费人力和时间的方案相比,其能够提供一个可重用自动检测随机验证平台来对DUT及其总线接口协议进行随机验证,无需操作员手工进行操作,提高了验证覆盖率,并且该系统能够对DUT的处理结果进行自动检测,提高了验证全面性和效率,节省了验证时间。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例所提供的一种可重用自动检测及随机验证的系统的结构示意图;
图2示出了本发明实施例所提供的一种可重用自动检测及随机验证的方法的流程图;
图3示出了本发明实施例所提供的可重用自动检测及随机验证平台的基本结构框图;
图4示出了本发明实施例所提供的可重用自动检测及随机验证平台中VIP与DUT的连接关系;
图5示出了本发明实施例所提供的可重用自动检测及随机验证平台的启动过程。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
总线(在通信领域通称为Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是CPU(Central Processing Unit,中央处理器)、内存设备、输入设备和输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。
功能验证,即电子设计自动化中验证数字电路是否与预定规范功能相符的一个验证过程,通常所说的功能验证、功能仿真是指不考虑实际器件的延迟时间,只考虑逻辑功能的一个流程。功能验证的目标是达到尽可能高的测试覆盖率,被测试的内容要尽可能覆盖所有的语句、逻辑分支、条件、路径、触发、状态机的状态等,同时在某些阶段还必须包括对时序的检查。在较小型的电路设计中,设计人员可以利用硬件描述语言来建立测试平台(通常这是一个顶级模块),通过指定测试向量来检验被测模块在各种输入情况下,检验对应的输出是否符合要求。但是,在更大型集成电路设计项目中,该过程会耗费设计人员较大的时间和精力。许多项目都采用计算机辅助工程工具来协助验证人员创建随机测试激励向量。其中,硬件验证语言在建立随机测试和功能覆盖方面具有显著的优势,它们通常提供了专门用来进行功能覆盖和产生可约束随机测试激励向量的数据结构。除了上面讲述的这种通过输入测试向量的方式,功能验证还可以通过形式等效性检查(形式验证)、断言等方式来进行,达到更高的功能覆盖率。
本发明提供的可重用自动检测及随机验证系统和方法,其是基于总线验证IP(VIP,Verification Intellectual Property)和UVM(Universal Verification Methodology,通用验证方法学)的高级验证方法学搭建的可重用自动检测随机验证平台,该平台通过可重用自动检测随机验证平台对DUT及其总线接口协议进行随机验证,无需操作员手工进行操作,提高了验证覆盖率,并且该系统能够对DUT的处理结果进行自动检测,提高了验证全面性和效率,节省了验证时间;本发明尤其适用于通讯芯片中编解码模块的数据处理算法验证。
本发明的技术方案如下,如图1所示,
本发明提供了一种可重用自动检测及随机验证系统,用于对测试中的设备DUT21(Device Under Testing,测试中的设备)进行功能验证,其特征在于,包括:总线验证IP、参考模型模块和比较器15;
所述总线验证IP,用于配置所述DUT21的验证数据的源地址和目的地址、为所述DUT21提供验证数据以及对DUT总线接口逻辑进行协议检查,以便所述DUT21根据配置的所述源地址从所述总线验证IP中提取所述验证数据,并通过模块RTL(Register TransferLevel,寄存器传输级)对所述验证数据进行处理,并将得到的硬件处理结果通过所述目的地址反馈给所述总线验证IP。其中,DUT21的功能是基于模块RTL通过硬件描述语言(如Verilog或VHDL)描述的。
所述参考模型模块Reference Model14,用于获取所述总线验证IP提供的所述验证数据,并根据预设标准算法对所述验证数据进行软件处理,所述预设标准算法与所述DUT21具有相同的功能;
所述比较器15,用于获取所述DUT21的硬件处理结果和所述参考模型模块的软件处理结果,将所述硬件处理结果和所述软件处理结果进行对比并显示对比结果。
本实施例中,总线验证IP即VIP,其是基于各种标准总线协议的验证模型,能够按照总线协议发出随机读写操作,并能对总线逻辑进行协议检查,目前大规模集成电路中总线结构很复杂,大多数模块使用总线接口挂在总线结构上,对这些模块的验证主要采用基于VIP的形式进行验证,这样既可以保证验证的全面性,也能提高验证的效率。
VIP也可以是总线验证模型,其通过自身的配置对DUT21的验证数据进行配置,如配置DUT21的验证数据的源地址和目的地址,以便后续根据该源地址和目的地址进行后续步骤,如为DUT提供随机数据进行处理以及对DUT的总线接口进行逻辑检查等。
并且,VIP也可以配置DUT编解码数据码长、校验码数据码长及使能、掩码数据码长及使能、编解码数据的码率、编解码的模式以及调制解调方式等。
另外,VIP对总线接口的逻辑检查使用了断言的技术,基于断言的方法能够方便的描述总线时序属性,为描述总线协议提供了很好的便利性。利用断言可以总结协议操作的规则,对总线重要的信号(例如握手信号或控制信号的时序)进行断言描述并检测。在仿真中如果DUT无法满足断言描述的属性,断言就会失败,VIP根据内建函数来打印提示信息,可以直观快速的找到设计缺陷。
其中,本发明实施例提供的可重用自动检测及随机验证系统,尤其适用于通讯芯片中编解码模块的数据处理算法验证,故验证数据可以为源码数据,该源码数据即为等待编码的数据或者待解码的数据,使用该源码数据则可以验证编解码模块的功能;具体的,该源码数据可以为卷积码或者RS码。
同时,DUT21根据VIP为其配置的源地址和目的地址对验证数据进行硬件处理,具体的,即通过模块RTL对验证数据进行硬件处理,其中,不同的DUT21可以有不同的功能,RTL模块的硬件处理则根据DUT21的功能而设定,如当DUT21为编码模块,则RTL模块进行硬件处理则为对验证数据进行编码,如当DUT21为解码模块,则RTL模块进行硬件处理则为对验证数据进行解码;由于DUT21本身是一个SOC,即集成电路,其自身为硬件设备,故本实施例中将DUT21对验证数据的处理称为硬件处理。
同理,参考模型模块中本身预存有预设标准算法,其首先获取所述总线验证IP提供的所述验证数据,然后根据该预设标准算法对所述验证数据进行软件处理,由于本发明是对DUT21的功能进行验证(尤其是对RTL级甚至更高层次进行验证),故参考模型模块中的预设标准算法与DUT21本身具有相同的功能,如DUT21为解码模块,则预设标准算法同样具有对验证数据进行解码的功能。不同的是,参考模型模块是通过软件对验证数据进行处理;其中,预设标准算法为软件,故本实施例中将参考模型模块对验证数据的处理方式称为软件处理。
具体的,该预设标准算法优选为C算法,更进一步的,C算法可以为,卷积编解码算法,RS编解码算法,Turbo变解码算法,Golay编解码算法。
最后,比较器15获取DUT21的硬件处理结果(模块RTL的处理结果)和参考模型模块的软件处理结果(C算法的处理结果),然后将这二者进行对比,其可以显示对比结果,也可不显示对比结果,最后将数据对比结果反馈给管理系统,以便验证人员进行查看。本实施例中的比较器15可以为记分板Scoreboard。
另外,本实施例中的总线验证IP为可重用的验证IP,SystemVerilog UVM定义了一个分层结构验证平台,能够支持先进验证且方便重用,并且,UVM的类能够提供建立验证环境所需模块(如参考模型模块Reference Model14、监控器Monitor13和记分板Scoreboard监控),能满足各种功能的DUT验证需求,又能够加速验证平台开发,实用性较好。
本实施例中,验证平台中数据激励(即验证数据)可按照编解码模块要求的数据格式进行有约束的随机来提高验证覆盖率,并且本发明中比较器15通过使用DPI接口在验证平台中调用C函数来实现结果硬件处理结果和软件处理结果进行自动对比,参考模型模块Reference Model14、记分板Scoreboard等组件采用UVM验证方法学的分层结构进行编写,用以实现平台的重用性。
进一步的,该可重用自动检测及随机验证系统,总线验证IP包括:主动主机总线Active Master11和主动从机总线Active Slave12;主动主机总线Active Master11,用于配置DUT21的验证数据的源地址和目的地址;主动从机总线Active Slave12,用于为DUT21提供验证数据。
具体的,在对带有总线接口的编解码模块的验证的过程中,首先需要一个主动主机总线Master对编解码模块的验证数据进行配置,如配置编解码模块的源地址和目的地址等,然后还需要一个总线Slave,即主动从机总线Active Slave12,编解码模块从该主动从机总线Active Slave12中读取验证数据,并根据编解码模块自身的功能对该验证数据进行计算,即对该验证数据进行编码或者解码,最后编解码模块将计算后的验证数据写给该主动从机总线ActiveSlave12。
其中,主动主机总线Master对源地址或目的地址的配置,是利用VIP产生符合总线协议时序的激励,对DUT的总线接口进行配置,DUT按照标准总线时序解析VIP发过来的激励,将解析出来的地址和数据下发到DUT的各个寄存器,来实现对验证数据的源地址和目的地址的配置。
进一步的,该可重用自动检测及随机验证系统中,总线验证IP包括:被动主机总线Passive Master和被动从机总线Passive Slave;
被动主机总线Passive Master和被动从机总线Passive Slave均用于对DUT21的总线接口逻辑进行协议检查,以便DUT21的总线接口逻辑协议与标准协议保持一致。
具体的,在验证平台的搭建中,首先,将总线VIP分别配置为主动主机总线Active Master11、被动主机总线Passive Master、主动从机总线Active Slave12和被动从机总线Passive Slave四部分;其中,用主动主机总线Active Master11来配置编解码模块,主动从机总线Active Slave12用来给编解码模块提供验证数据,被动主机总线Passive Master和被动从机总线Passive Slave分别用来进行编解码模块的总线接口逻辑协议检查,即验证DUT21(如编码模块或解码模块)的RTL级的总线接口逻辑协议是否与标准协议一致,这种方法结合了形式属性检查、与约束随机测试、覆盖驱动验证和层次化验证等多种验证方法,可以很大程度的提高验证效率,在较短的时间内达到满意的验证效果。
进一步的,该可重用自动检测及随机验证系统还包括监控器Monitor13;监控器Monitor13,用于在监测到DUT21从主动从机总线中提取的验证数据时,获取验证数据并将验证数据发送至参考模型模块Reference Model14。
具体的,监控器Monitor13实时监测DUT21从主动从机总线中提取的验证数据,并将所接收到的验证数据的信号捆绑成事物交给它的上层进行处理,该上层为参考模型模块。
进一步的,该可重用自动检测及随机验证系统中,参考模型模块Reference Model14,在接收到监控器Monitor13发送的验证数据时,根据预设标准算法对验证数据进行处理,并将得到的软件处理结果发送至比较器15,预设标准算法至少包括C算法。
具体的,参考模型模块Reference Model14接收其下层事物的发送的验证数据,并对其进行下级处理。
进一步的,该可重用自动检测及随机验证系统中,监控器Monitor13,在监测到DUT21反馈给总线验证IP的硬件处理结果时,获取硬件处理结果并将硬件处理结果发送至比较器15。
进一步的,该可重用自动检测及随机验证系统中,主动主机总线Active Master11与DUT21的从机Slave端口连接,主动从机总线与DUT21的主机Master端口连接;被动主机总线与DUT21的从机Slave端口连接,被动从机总线与DUT21的主机Master端口连接。
进一步的,该可重用自动检测及随机验证系统中,监控器Monitor13为两个。
优选的,监控器Monitor13为两个,一个监控器Monitor13,负责监测到DUT21从主动从机总线中提取的验证数据,获取验证数据并将验证数据发送至参考模型模块Reference Model14;另一个监控器Monitor13监测到DUT21反馈给总线验证IP的硬件处理结果,获取硬件处理结果并将硬件处理结果发送至比较器15。
其中,这两个监控器可以是同种型号的,也可以是不同型号的。
具体的,监控器Monitor13、参考模型模块Reference Model14和记分板Scoreboard等组件采用UVM验证方法学的分层结构进行编写来实现平台的重用性。
本发明还提供了一种可重用自动检测及随机验证方法,该方法用于对测试中的设备DUT进行功能验证,如图2所示,包括:
S101、配置DUT的验证数据的源地址和目的地址以及为DUT提供验证数据,以便DUT根据配置的源地址从总线验证IP中提取验证数据,对验证数据进行处理并将得到的硬件处理结果通过目的地址反馈给总线验证IP。
S102、获取总线验证IP提供的验证数据,并根据预设标准算法对验证数据进行处理,得到软件处理结果,预设标准算法与DUT具有相同的功能。
S103、获取DUT的硬件处理结果和参考模型模块的软件处理结果,将硬件处理结果和软件处理结果进行对比,并将对比结果反馈给管理系统。
本发明实施例提供的可重用自动检测及随机验证方法,与现有技术中的定向激励测试中需要测试人员完成每一路总线的测试,劳动强度大且耗费时间长,并且在验证的过程中测试人员还需将每一路总线的测试结果均单独计算并与标准数据进行对比,操作强度且大大制约了验证的进度,并且对于不同的模块验证需要搭建不同的验证平台,浪费人力和时间的方案相比,其能够提供一个可重用自动检测随机验证平台来对DUT及其总线接口协议进行随机验证,无需操作员手工进行操作,提高了验证覆盖率,并且该系统能够对DUT的处理结果进行自动检测,提高了验证全面性和效率,节省了验证时间。
进一步的,该可重用自动检测及随机验证方法还包括:对DUT的总线接口逻辑进行协议检查,以便使DUT的总线接口逻辑协议与标准协议保持一致。
具体的,首先,搭建验证平台,然后将总线VIP分别配置为主动主机总线Active Master、被动主机总线Passive Master、主动从机总线Active Slave和被动从机总线Passive Slave四部分;其中,通过主动主机总线Active Master来配置编解码模块,通过主动从机总线Active Slave来给编解码模块提供验证数据,被动主机总线PassiveMaster和被动从机总线Passive Slave分别用来进行编解码模块的总线接口逻辑协议检查,即验证DUT(即编解码模块的)的RTL级的总线接口逻辑是否与标准协议一致,这种方法结合了形式属性检查、与约束随机测试、覆盖驱动验证和层次化验证等多种验证方法,可以很大程度的提高验证效率,在较短的时间内达到满意的验证效果。
本发明的有益效果是,提供一个可重用自动检测随机验证平台来对总线接口模块进行随机验证,提高验证覆盖率,并且能对模块进行结果自动检测,提高验证全面性和效率,节省验证时间。
下面结合完整的实施例对本发明实施例提供的可重用自动检测系统及随机验证系统和方法进行说明:(本实施例中以DUT为编解码模块进行说明)
在带有总线接口的编解码模块的验证过程中,首先需要一个总线Master,配置编解码模块的验证数据,如编解码数据的源地址和目的地址等,然后还需要一个总线Slave,编解码模块从该Slave中读取数据,并将该数据进行计算,然后将计算后的数据再写给该总线Slave。在验证平台的搭建中,将总线VIP分别配置为主动主机总线Active Master、被动主机总线Passive Master、主动从机总线Active Slave和被动从机总线Passive Slave四部分,其中,通过ActiveMaster来配置编解码模块,通过Active Slave来给编解码模块提供数据,Passive Master和Passive Slave分别用来进行编解码模块的总线接口逻辑进行协议检查。
该验证平台的验证流程为:Active Master配置编解码模块的数据源地址和目的地址并启动模块开始工作,编解码模块根据配置的源地址到Active Slave中搬运数据,该验证平台中监控器Monitor监测搬运的数据并抓取后,将抓取的数据打包封装并发送给到参考模型模块Reference Model,此时编解码模块和参考模型模块开始计算数据,(即RTL模块根据DUT的功能对数据进行处理,参考模型模块通过C算法对数据进行处理),RTL模块将得到结果后再根据配置的目的地址写回到Active Slave,此时监控器Monitor再将RTL模块处理后的数据抓到后给到记分板Scoreboard,同时,参考模型模块Reference Model计算后的数据也给到记分板Scoreboard,记分板Scoreboard将参考模型模块Reference Model通过C算法处理后的数据与模块RTL处理得到的数据进行自动对比,被动主机总线Passive Master和被动从机总线Passive Slave分别连接在编解码模块的总线Master端口和Slave端口上来对编解码模块总线接口逻辑进行协议检查,并将协议的检测结果反馈给验证人员,然后记分板Scoreboard将C算法处理得到的数据以及编解码模块处理得到的数据的对比结果反馈给验证人员,以便验证人员进行查看,并在编解码模块总线接口逻辑以及上述对比结果这两者中至少一者不符合标准条件时,进行相应的处理。
其中,验证平台中数据激励(验证数据)可按照编解码模块要求的数据格式进行有约束的随机来提高验证覆盖率,记分板Scoreboard通过DPI接口在验证平台中调用C函数来实现结果自动对比;其中,监控器Monitor、参考模型模块Reference Model和记分板Scoreboard等组件采用UVM验证方法学的分层结构进行编写来实现平台的重用性。
下面结合附图和对本发明提供的重用自动检测及随机验证平台进行进一步说明。
图3示出了本发明实施例提供的可重用自动检测及随机验证平台的基本结构框图;
图3中test代表随机激励,test是验证平台的顶层,data_sve和reg_sve分别是总线VIP的两个配置环境,其中reg_sve用来配置RTL寄存器,data_sve用来为DUT提供验证数据。
图4示出了本发明实施例所提供的可重用自动检测及随机验证平台中VIP与编解码模块的连接关系;
图4中显示了VIP与DUT的连接关系,其中Active Master与DUT的Slave端口相连,用来配置编解码模块;Passive Slave也是与DUT的Slave端口相连,用来检测DUT Slave端口的总线协议正确性;Active Slave与DUT的Master端口相连,用来给编解码模块提供数据;Passive Master也是与DUT的Master端口相连,用来检测DUT Master端口的总线接口逻辑的协议的正确性。
图1同样示出了本发明实施例提供的可重用自动检测及随机验证平台中UVM各个组件的连接关系;图1中Active Master和ActiveSlave与DUT的连接为总线连接,其他组件间的连接为UVM验证方法学中的TLM(Transmission Line Matrix,传输线矩阵法)通信连接。主动主机总线Active Master配置编解码模块的数据源地址和目的地址,同时编解码模块启动开始工作,编解码模块根据配置的源地址到主动从机总线Active Slave中搬运数据,平台中监控器Monitor监测搬运的数据并抓取后给到参考模型模块ReferenceModel,此时编解码模块通过模块RTL开始计算数据、参考模型模块Reference Model通过C算法开始计算数据,模块RTL得到结果后再根据配置的目的地址写回到主动从机总线Active Slave,此时监控器Monitor再将总线上的数据抓到后给到记分板Scoreboard,同时参考模型模块Reference Model将计算后的数据也给到记分板Scoreboard,记分板Scoreboard将C算法得到数据与模块RTL得到的数据进行自动对比。
图5是本发明实施例提供的可重用自动检测及随机验证平台的启动过程;
具体过程如下:UVM验证平台的启动是按照phase执行的,首先定义一个随机testcase,调用+UVM_TESTNAME=my_test来启动验证平台。仿真时仿真器首先进入top,当执行run_test后,开始启动验证平台,验证平台根据输入的+UVM_TESTNAME后面的字符串名称来创建一个类的实例,接下来再执行test中的build,自上而下的执行平台中所有component的build。当所有build执行完后,就可以形成验证平台的结构。之后执行connect phase,connect过程执行后,各个component会按照连接定义的关系进行连接,执行完build和connect后,再执行run等phase,所有的phase执行完毕后结束仿真。
本发明实施例提供的可重用自动检测及随机验证系统和方法,用于对测试中的设备DUT进行功能验证,采用总线验证IP、参考模型模块和比较器实现,具体通过总线验证IP配置DUT的验证数据的源地址和目的地址、为DUT提供验证数据以及对DUT总线接口逻辑进行协议检查,以便DUT根据源地址提取验证数据,并通过其自身的寄存器传输级RTL模块对验证数据进行处理,并将得到的硬件处理结果通过目的地址反馈给总线验证IP;通过参考模型模块,基于其自身存储的预设标准算法对验证数据进行软件处理,最后通过比较器将硬件处理结果和软件处理结果进行对比,并将对比结果反馈给管理系统,与现有技术中的定向激励测试中需要测试人员完成每一路总线的测试,劳动强度大且耗费时间长,并且在验证的过程中测试人员还需将每一路总线的测试结果均单独计算并与标准数据进行对比,操作强度且大大制约了验证的进度,并且对于不同的模块验证需要搭建不同的验证平台,浪费人力和时间的方案相比,其能够提供一个可重用自动检测随机验证平台来对总线接口模块进行随机验证,无需操作员手工进行操作,提高了验证覆盖率,并且该系统能够对模块进行结果自动检测,提高验证全面性和效率,节省了验证时间。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种可重用自动检测及随机验证系统,用于对测试中的设备DUT进行功能验证,其特征在于,包括:总线验证IP、参考模型模块和比较器;
所述总线验证IP,用于配置所述DUT的验证数据的源地址和目的地址、为所述DUT提供所述验证数据以及对DUT总线接口逻辑进行协议检查,以便所述DUT根据配置的所述源地址从所述总线验证IP中提取所述验证数据,对所述验证数据进行处理并将得到的硬件处理结果通过所述目的地址反馈给所述总线验证IP;
所述参考模型模块,用于根据预设标准算法对所述验证数据进行处理,得到软件处理结果,所述预设标准算法与所述DUT具有相同的功能;
所述比较器,用于获取所述DUT的硬件处理结果和所述参考模型模块的软件处理结果,将所述硬件处理结果和所述软件处理结果进行对比,并将对比结果反馈给管理系统。
2.根据权利要求1所述的可重用自动检测及随机验证系统,其特征在于,所述总线验证IP包括:主动主机总线和主动从机总线;
所述主动主机总线,用于配置所述DUT的验证数据的源地址和目的地址;
所述主动从机总线,用于为所述DUT提供验证数据。
3.根据权利要求2所述的可重用自动检测及随机验证系统,其特征在于,所述总线验证IP还包括:被动主机总线和被动从机总线;
所述被动主机总线和所述被动从机总线均用于对所述DUT的总线接口逻辑进行协议检查,以便所述DUT的总线接口逻辑协议与标准协议保持一致。
4.根据权利要求1所述的可重用自动检测及随机验证系统,其特征在于,还包括监控器;
所述监控器,用于在监测到所述DUT从所述主动从机总线中提取的验证数据时,获取所述验证数据并对所述验证数据进行打包封装,并发送至所述参考模型模块。
5.根据权利要求4所述的可重用自动检测及随机验证系统,其特征在于,
所述参考模型模块,在接收到所述监控器发送的所述验证数据时,根据预设标准算法对所述验证数据进行处理,并将得到的软件处理结果发送至所述比较器,所述预设标准算法至少包括C算法。
6.根据权利要求1所述的可重用自动检测及随机验证系统,其特征在于,
所述监控器,在监测到所述DUT反馈给所述总线验证IP的所述硬件处理结果时,获取所述硬件处理结果并将所述硬件处理结果发送至所述比较器。
7.根据权利要求3所述的可重用自动检测及随机验证系统,其特征在于,
所述主动主机总线与所述DUT的从机端口连接,所述主动从机总线与所述DUT的主机端口连接;
所述被动主机总线与所述DUT的从机端口连接,所述被动从机总线与所述DUT的主机端口连接。
8.根据权利要求1-7任意一项所述的可重用自动检测及随机验证系统,其特征在于,所述监控器为两个。
9.一种可重用自动检测及随机验证方法,所述方法用于对测试中的设备DUT进行功能验证,其特征在于,包括:
配置DUT的验证数据的源地址和目的地址以及为所述DUT提供所述验证数据,以便所述DUT根据配置的所述源地址从所述总线验证IP中提取所述验证数据,对所述验证数据进行处理并将得到的硬件处理结果通过所述目的地址反馈给所述总线验证IP;
获取所述总线验证IP提供的所述验证数据,并根据预设标准算法对所述验证数据进行处理,得到软件处理结果,所述预设标准算法与所述DUT具有相同的功能;
获取所述DUT的硬件处理结果和所述参考模型模块的软件处理结果,将所述硬件处理结果和所述软件处理结果进行对比,并将对比结果反馈给管理系统。
10.根据权利要求9所述的可重用自动检测及随机验证方法,其特征在于,所述方法还包括:
对所述DUT的总线接口逻辑进行协议检查,以便所述DUT的总线接口逻辑协议与标准协议保持一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510007201.9A CN104486169B (zh) | 2015-01-07 | 2015-01-07 | 可重用自动检测及随机验证系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510007201.9A CN104486169B (zh) | 2015-01-07 | 2015-01-07 | 可重用自动检测及随机验证系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104486169A true CN104486169A (zh) | 2015-04-01 |
CN104486169B CN104486169B (zh) | 2018-07-20 |
Family
ID=52760676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510007201.9A Active CN104486169B (zh) | 2015-01-07 | 2015-01-07 | 可重用自动检测及随机验证系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104486169B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104935936A (zh) * | 2015-06-15 | 2015-09-23 | 东南大学 | 基于uvm的熵解码器验证方法及装置 |
WO2016197711A1 (zh) * | 2015-06-09 | 2016-12-15 | 中兴通讯股份有限公司 | 一种配置寄存器的方法和装置 |
CN109492269A (zh) * | 2018-10-22 | 2019-03-19 | 北方电子研究院安徽有限公司 | 一种基于uvm的数字引信定时电路验证平台 |
CN110688821A (zh) * | 2019-09-27 | 2020-01-14 | 北京中电华大电子设计有限责任公司 | 一种复杂算法的测试激励生成器及其控制方法 |
CN112286746A (zh) * | 2020-10-31 | 2021-01-29 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN115114875A (zh) * | 2022-08-31 | 2022-09-27 | 沐曦科技(北京)有限公司 | 一种用于仿真的通用芯片验证装置 |
CN116029236A (zh) * | 2023-03-28 | 2023-04-28 | 中科亿海微电子科技(苏州)有限公司 | 可综合的参数化自测试模型结构及测试方法 |
CN116437070A (zh) * | 2023-03-29 | 2023-07-14 | 东方空间技术(山东)有限公司 | 一种终端状态检测系统、方法、计算机设备及存储介质 |
CN117473918A (zh) * | 2023-11-20 | 2024-01-30 | 沐曦集成电路(上海)有限公司 | 一种动态构建验证环境的方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949184A (zh) * | 2006-11-20 | 2007-04-18 | 北京中星微电子有限公司 | 一种芯片验证的方法及系统 |
US20090150839A1 (en) * | 2007-12-10 | 2009-06-11 | Inpa Systems, Inc. | Integrated prototyping system for validating an electronic system design |
CN102147760A (zh) * | 2011-04-22 | 2011-08-10 | 中国电子科技集团公司第三十八研究所 | 一种基于网络传输的处理器协同验证平台及其测试方法 |
-
2015
- 2015-01-07 CN CN201510007201.9A patent/CN104486169B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949184A (zh) * | 2006-11-20 | 2007-04-18 | 北京中星微电子有限公司 | 一种芯片验证的方法及系统 |
US20090150839A1 (en) * | 2007-12-10 | 2009-06-11 | Inpa Systems, Inc. | Integrated prototyping system for validating an electronic system design |
CN102147760A (zh) * | 2011-04-22 | 2011-08-10 | 中国电子科技集团公司第三十八研究所 | 一种基于网络传输的处理器协同验证平台及其测试方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016197711A1 (zh) * | 2015-06-09 | 2016-12-15 | 中兴通讯股份有限公司 | 一种配置寄存器的方法和装置 |
CN104935936A (zh) * | 2015-06-15 | 2015-09-23 | 东南大学 | 基于uvm的熵解码器验证方法及装置 |
CN109492269B (zh) * | 2018-10-22 | 2023-06-27 | 北方电子研究院安徽有限公司 | 一种基于uvm的数字引信定时电路验证平台 |
CN109492269A (zh) * | 2018-10-22 | 2019-03-19 | 北方电子研究院安徽有限公司 | 一种基于uvm的数字引信定时电路验证平台 |
CN110688821A (zh) * | 2019-09-27 | 2020-01-14 | 北京中电华大电子设计有限责任公司 | 一种复杂算法的测试激励生成器及其控制方法 |
CN110688821B (zh) * | 2019-09-27 | 2023-10-13 | 北京中电华大电子设计有限责任公司 | 一种复杂算法的测试激励生成器及其控制方法 |
CN112286746B (zh) * | 2020-10-31 | 2023-01-24 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN112286746A (zh) * | 2020-10-31 | 2021-01-29 | 拓维电子科技(上海)有限公司 | 针对axi从设备接口的通用验证平台及方法 |
CN115114875A (zh) * | 2022-08-31 | 2022-09-27 | 沐曦科技(北京)有限公司 | 一种用于仿真的通用芯片验证装置 |
CN115114875B (zh) * | 2022-08-31 | 2022-11-04 | 沐曦科技(北京)有限公司 | 一种用于仿真的通用芯片验证装置 |
CN116029236A (zh) * | 2023-03-28 | 2023-04-28 | 中科亿海微电子科技(苏州)有限公司 | 可综合的参数化自测试模型结构及测试方法 |
CN116029236B (zh) * | 2023-03-28 | 2023-08-11 | 中科亿海微电子科技(苏州)有限公司 | 可综合的参数化自测试模型结构及测试方法 |
CN116437070A (zh) * | 2023-03-29 | 2023-07-14 | 东方空间技术(山东)有限公司 | 一种终端状态检测系统、方法、计算机设备及存储介质 |
CN116437070B (zh) * | 2023-03-29 | 2023-12-29 | 东方空间技术(山东)有限公司 | 一种终端状态检测系统、方法、计算机设备及存储介质 |
CN117473918A (zh) * | 2023-11-20 | 2024-01-30 | 沐曦集成电路(上海)有限公司 | 一种动态构建验证环境的方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104486169B (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104486169A (zh) | 可重用自动检测及随机验证系统和方法 | |
CN107463473B (zh) | 基于uvm和fpga的芯片软硬件仿真环境 | |
CN107038280B (zh) | 一种软硬件协同仿真的验证系统及其方法 | |
CN109684672B (zh) | 一种soc芯片系统级验证系统及方法 | |
CN102402628B (zh) | 一种生成SoC验证平台的方法及系统 | |
US8832622B1 (en) | Coverage scoreboard | |
CN107220539B (zh) | 基于需求的ima安全验证分析方法 | |
Zhaohui et al. | Practical and efficient SOC verification flow by reusing IP testcase and testbench | |
US10885251B2 (en) | Software integration into hardware verification | |
CN112579381A (zh) | 一种基于uvm的uart总线的uvm验证系统及方法 | |
CN109885905B (zh) | 一种提高数字电路功能验证效率的验证系统 | |
CN116089281A (zh) | 一种芯片测试方法、测试平台和设备 | |
CN104935936A (zh) | 基于uvm的熵解码器验证方法及装置 | |
CN115543797A (zh) | 基于uvm的总线转换桥验证方法、装置、设备及存储介质 | |
CN109726061A (zh) | 一种SoC芯片的验证方法 | |
US8645897B1 (en) | Integrated circuit design verification system | |
CN114036883A (zh) | 一种基于uvm和vip的uart模块级验证平台 | |
CN115496018A (zh) | 一种SoC芯片多版本验证方法、装置及设备 | |
CN111381150B (zh) | 芯片自动验证系统及其方法 | |
CN104834591A (zh) | 测试autosar软件组件的测试方法及系统 | |
Gharehbaghi et al. | Transaction-based post-silicon debug of many-core system-on-chips | |
CN104462626A (zh) | 基于vmm验证方法学的rfif验证平台及实现方法 | |
CN101377795A (zh) | 一种工业便携式终端专用soc芯片逻辑验证方法 | |
US10613963B2 (en) | Intelligent packet analyzer circuits, systems, and methods | |
CN116090376B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200717 Address after: 610000 Sichuan city of Chengdu province Tianfu Zheng Xing Shun Shing Street No. 172 Patentee after: Huali Zhixin (Chengdu) integrated circuit Co., Ltd Address before: 100000, No. 18, building No. 8, hospital B, West Wang Xi Road, Haidian District, Beijing Patentee before: HWA CREATE Corp.,Ltd. |