CN117234947B - 一种数字插值和上变频电路的验证系统及方法 - Google Patents
一种数字插值和上变频电路的验证系统及方法 Download PDFInfo
- Publication number
- CN117234947B CN117234947B CN202311491318.XA CN202311491318A CN117234947B CN 117234947 B CN117234947 B CN 117234947B CN 202311491318 A CN202311491318 A CN 202311491318A CN 117234947 B CN117234947 B CN 117234947B
- Authority
- CN
- China
- Prior art keywords
- sequence
- digital
- dut
- agent
- conversion
- 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.)
- Active
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 87
- 238000012795 verification Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000012360 testing method Methods 0.000 claims abstract description 44
- 230000006870 function Effects 0.000 claims description 19
- 230000005284 excitation Effects 0.000 claims description 11
- 238000004088 simulation Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 229920005994 diacetyl cellulose Polymers 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了一种数字插值和上变频电路的验证系统及方法,本发明的验证系统,可自动对数字插值和上变频电路进行验证,填补了数字插值和上变频电路验证的空白;本发明采用UVM搭建系统,抽象层次高、结构性好、可重用性高;本发明通过随机测试用例,提高了验证效率。
Description
技术领域
本发明涉及一种数字插值和上变频电路的验证系统及方法,属于芯片验证领域。
背景技术
在高速模数转换器(DAC)中,基带信号的采样率可能会受到DAC和逻辑器件(FPGA、ASIC等)之间数据传输接口速率的限制。运用数字插值和上变频电路,可以将低采样率的基带信号的采样率提高,并向上变频到更高的频率上,再送往DAC内核产生高频的信号。因此,数字插值和上变频电路在高速模数转换器中运用十分广泛,为了保证数字插值和上变频电路的效果,需要对其进行验证,但是目前还没有相应的验证系统。
发明内容
本发明提供了一种数字插值和上变频电路的验证系统及方法,解决了背景技术中披露的问题。
为了解决上述技术问题,本发明所采用的技术方案是:
一种数字插值和上变频电路的验证系统,包括:
若干测试用例,测试用例根据数字插值和上变频电路的功能构建,每个测试用例对应一个功能;
虚拟序列产生器,将测试用例中的虚拟序列启动后发送的spi序列、数字上变频序列、数据源序列分别发送给spi代理、数字上变频代理和数据源代理;
spi代理,根据spi序列生成配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式;
数字上变频代理,根据数字上变频序列生成控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式;接收DUT和参考模型的输出数据,调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果;其中,输出数据为在待测的功能模式下运行激励数据产生的输出数据,参考模型为数字插值和上变频电路的标准参考模型;
数据源代理,根据数据源序列生成激励数据,并将激励数据发送给DUT和参考模型。
在构建测试用例时,随机选择数字插值和上变频电路的若干功能,进行测试用例构建。
所述系统还包括时钟代理,虚拟序列产生器将测试用例中的虚拟序列启动后发送的时钟序列发送给时钟代理,时钟代理根据时钟序列生成时钟信号,并将时钟信号发送给DUT和参考模型。
所述系统还包括复位代理,虚拟序列产生器将测试用例中的虚拟序列启动后发送的复位序列发送给复位代理,复位代理根据复位序列生成复位信号,并将复位信号发送给DUT和参考模型。
数字上变频代理包括序列产生器、驱动器和监视器,其余代理均包括序列产生器和驱动器;
序列产生器接收虚拟序列产生器发送的序列,将序列中的事务发送给对应的驱动器;
驱动器根据事务生成相应的信号;
监视器接收DUT和参考模型的输出数据,调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果。
数字上变频代理驱动器的输出信号通过数字上变频接口传输给参考模型,DUT和参考模型的输出数据通过数字上变频接口传输给数字上变频代理的监视器;
其余代理驱动器的输出信号通过各自的接口传输给DUT、或者DUT和参考模型。
所述系统基于UVM搭建。
一种数字插值和上变频电路的验证方法,采用上述数字插值和上变频电路的验证系统进行验证,所述验证方法包括:
根据仿真命令,确定对应的测试用例;
测试用例启动虚拟序列,依次发送spi序列、数字上变频序列、数据源序列;
spi代理根据spi序列生成配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式;
数字上变频代理,根据数字上变频序列生成控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式;
数据源代理,根据数据源序列生成激励数据,并将激励数据发送给DUT和参考模型;
DUT在待测的功能模式下运行激励数据,向数字上变频代理发送输出数据;
参考模型在待测的功能模式下运行激励数据,向数字上变频代理发送输出数据;
数字上变频代理调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果。
本发明所达到的有益效果:1、本发明的验证系统,可自动对数字插值和上变频电路进行验证,填补了数字插值和上变频电路验证的空白;2、本发明采用UVM搭建系统,抽象层次高、结构性好、可重用性高;3、本发明通过随机测试用例,提高了验证效率。
附图说明
图1为数字插值和上变频电路的验证系统的结构图;
图2为数字插值和上变频电路的验证方法的流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
如图1所示,一种数字插值和上变频电路的验证系统,该系统基于UVM(UniversalVerification Methodology,统一验证方法学)搭建,抽象层次高、结构性好、可重用性高,具体可分成3层,包括顶层、测试层和环境层。
顶层是系统的最顶层,包括测试层、spi(spi 全称为SerialPeripheralinterface,是一种通信协议)接口、时钟接口、复位接口、数据源接口、数字上变频接口;其中,五个接口中包含一些接口信号的定义,用于系统和DUT(Device Under Test,为待测试设计,即待验证的数字插值和上变频电路)以及参考模型(即数字插值和上变频电路的标准参考模型)之间的接口信号控制和数据通信。
测试层包括环境层和若干测试用例,测试用例根据数字插值和上变频电路的功能构建,每个测试用例对应一个功能;在构建测试用例时,随机选择数字插值和上变频电路的若干功能,进行测试用例构建。仿真时通过仿真命令行选项+UVM_TESTNAME来选择不同的测试用例。
环境层包括虚拟序列产生器、时钟代理、复位代理、spi代理、数字上变频代理、数据源代理。
虚拟序列产生器:测试用例通过默认序列(default_sequence)的方式启动虚拟序列,虚拟序列在虚拟序列产生器的main phase(主要阶段,UVM中的专业名词)中执行,虚拟序列产生器内部包含指向实际序列产生器的指针;其中,在序列中会根据测试用例需要验证的功能对事务(transaction)进行受约束的随机化,然后通过序列产生器将事务发送给驱动器,驱动器根据接收到的事务生成相应的信号。
虚拟序列产生器将测试用例中的虚拟序列启动后发送的时钟序列、复位序列、spi序列、数字上变频序列、数据源序列分别发送给时钟代理、复位代理、spi代理、数字上变频代理和数据源代理。
时钟代理:时钟代理根据时钟序列生成时钟信号,并将时钟信号发送给DUT和参考模型。数字电路的运行都依赖于时钟,使用这种方式可以产生任意频率的时钟信号,给DUT和参考模型提供时钟,时钟是数字电路运行的基准,数字电路中的寄存器一般都是基于时钟的上升沿运行,例如CPU的时钟频率是1GHz,那么相当于每1ns CPU中的数字电路可以运行一次。
复位代理:复位代理根据复位序列生成复位信号,并将复位信号发送给DUT和参考模型,用以将DUT和参考模型复位到设定的初始状态。
spi代理:根据spi序列生成配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式。
数字上变频代理:根据数字上变频序列生成控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式;接收DUT和参考模型的输出数据,调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果;其中,输出数据为在待测的功能模式下运行激励数据产生的输出数据。
数据源代理:根据数据源序列生成激励数据,并将激励数据发送给DUT和参考模型。
数字上变频代理包括序列产生器、驱动器和监视器,其余代理均包括序列产生器和驱动器。序列产生器接收虚拟序列产生器发送的序列,将序列中的事务发送给对应的驱动器,驱动器根据事务生成相应的信号;监视器接收DUT和参考模型的输出数据,调用matlab(matlab软件)处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果。
序列产生器和驱动器之间使用TLM(Transaction Level Modeling,事务级建模)实现通信。各个代理的驱动器或监视器都通过虚拟接口(virtual interface)指向顶层对应的接口,来控制或访问DUT和参考模型的信号。
本发明的验证系统,可自动对数字插值和上变频电路进行验证,填补了数字插值和上变频电路验证的空白,并且本发明通过随机测试用例,提高了验证效率。
基于相同的技术方案,本发明还公开了相应的方法,如图2所示,一种数字插值和上变频电路的验证方法,采用上述系统进行验证,具体步骤如下:
步骤1,根据仿真命令,确定对应的测试用例。
仿真开始后,先实例化仿真环境,UVM会自动根据仿真命令行选项+UVM_TESTNAME选择对应的测试用例。
步骤2,测试用例中通过默认序列的方式启动虚拟序列。
步骤3,虚拟序列启动后,发送时钟序列给虚拟序列产生器,虚拟序列产生器再传送给时钟代理的序列产生器,序列产生器再将时钟序列中的事务传送给时钟代理的驱动器,时钟代理的驱动器通过时钟接口产生DUT和参考模型所需要的时钟信号。
步骤4,虚拟序列再发送复位序列给虚拟序列产生器,虚拟序列产生器再传送给复位代理的序列产生器,序列产生器再将复位序列中的事务传送给复位代理的驱动器,复位代理的驱动器通过复位接口产生DUT和参考模型所需要的复位信号。
步骤5,虚拟序列再发送spi序列给虚拟序列产生器,虚拟序列产生器再传送给spi代理的序列产生器,序列产生器再将spi序列中的事务传送给spi代理的驱动器,spi代理的驱动器通过spi接口产生配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式。
步骤6,虚拟序列再发送数字上变频序列给虚拟序列产生器,虚拟序列产生器再传送给数字上变频代理的序列产生器,序列产生器再将数字上变频序列中的事务传送给数字上变频代理的驱动器,数字上变频代理的驱动器通过数字上变频接口产生控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式。
步骤7,虚拟序列再发送数据源序列给虚拟序列产生器,虚拟序列产生器再传送给数据源代理的序列产生器,序列产生器再将数据源序列中的事务传送给数据源代理的驱动器,数据源代理的驱动器根据事务产生激励数据并通过数据源接口将激励数据输入给DUT和参考模型。
步骤8,DUT和参考模型根据激励数据运行得到输出数据,数字上变频代理的监视器通过数字上变频接口收集输出数据,并保存到txt文件中,各保存一定量的数据。
步骤9,数字上变频代理的监视器使用systemverilog(是一种硬件验证语言)系统接口函数调用matlab,在matlab中读取txt文件中的DUT和参考模型的输出数据,然后分别做快速傅里叶变换(FFT),获得它们的频域参数,比较两者的信躁比、无杂散动态范围、平均噪声功率、主音幅度等结果的差别是否在限定的范围内,如果结果相差超出限定范围,则判定验证不通过,反之认为验证通过,matlab最后将验证结果写入txt文件中。
步骤10,数字上变频代理的监视器在matlab执行完成之后,读取txt文件中的验证结果并生成验证报告。
步骤1~10是一个测试用例的执行流程,一个测试用例一般只能验证DUT的一种功能(当然也可以是多个),需要多个测试用例才能验证DUT的所有功能,现在通常使用覆盖率这个指标来衡量,如果功能覆盖率和代码覆盖率达到100%,那就说明所有DUT的功能都验证到了,即根据DUT功能的功能点构造随机测试用例,通过回归测试收集功能覆盖率和代码覆盖率,再针对无法覆盖的代码或功能构造定向测试用例进行回归测试,最终使功能覆盖率和代码覆盖率达到要求,从而完成验证。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (8)
1.一种数字插值和上变频电路的验证系统,其特征在于,包括:
若干测试用例,测试用例根据数字插值和上变频电路的功能构建,每个测试用例对应一个功能;
虚拟序列产生器,将测试用例中的虚拟序列启动后发送的spi序列、数字上变频序列、数据源序列分别发送给spi代理、数字上变频代理和数据源代理;
spi代理,根据spi序列生成配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式;
数字上变频代理,根据数字上变频序列生成控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式;接收DUT和参考模型的输出数据,调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果;其中,输出数据为在待测的功能模式下运行激励数据产生的输出数据,参考模型为数字插值和上变频电路的标准参考模型;
数据源代理,根据数据源序列生成激励数据,并将激励数据发送给DUT和参考模型。
2.根据权利要求1所述的数字插值和上变频电路的验证系统,其特征在于,在构建测试用例时,随机选择数字插值和上变频电路的若干功能,进行测试用例构建。
3.根据权利要求1所述的数字插值和上变频电路的验证系统,其特征在于,所述系统还包括时钟代理,虚拟序列产生器将测试用例中的虚拟序列启动后发送的时钟序列发送给时钟代理,时钟代理根据时钟序列生成时钟信号,并将时钟信号发送给DUT和参考模型。
4.根据权利要求1所述的数字插值和上变频电路的验证系统,其特征在于,所述系统还包括复位代理,虚拟序列产生器将测试用例中的虚拟序列启动后发送的复位序列发送给复位代理,复位代理根据复位序列生成复位信号,并将复位信号发送给DUT和参考模型。
5.根据权利要求1~4任一项所述的数字插值和上变频电路的验证系统,其特征在于,数字上变频代理包括序列产生器、驱动器和监视器,其余代理均包括序列产生器和驱动器;
序列产生器接收虚拟序列产生器发送的序列,将序列中的事务发送给对应的驱动器;
驱动器根据事务生成相应的信号;
监视器接收DUT和参考模型的输出数据,调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果。
6.根据权利要求5所述的数字插值和上变频电路的验证系统,其特征在于, 数字上变频代理驱动器的输出信号通过数字上变频接口传输给参考模型,DUT和参考模型的输出数据通过数字上变频接口传输给数字上变频代理的监视器;
其余代理驱动器的输出信号通过各自的接口传输给DUT、或者DUT和参考模型。
7.根据权利要求1所述的数字插值和上变频电路的验证系统,其特征在于,所述系统基于UVM搭建。
8.一种数字插值和上变频电路的验证方法,其特征在于,采用权利要求1~7任一项所述的系统进行验证,所述验证方法包括:
根据仿真命令,确定对应的测试用例;
测试用例启动虚拟序列,依次发送spi序列、数字上变频序列、数据源序列;
spi代理根据spi序列生成配置信号,通过配置信号对DUT的寄存器进行配置,使DUT进入待测的功能模式;
数字上变频代理,根据数字上变频序列生成控制信号,通过控制信号控制参考模型进入与DUT相同的功能模式;
数据源代理,根据数据源序列生成激励数据,并将激励数据发送给DUT和参考模型;
DUT在待测的功能模式下运行激励数据,向数字上变频代理发送输出数据;
参考模型在待测的功能模式下运行激励数据,向数字上变频代理发送输出数据;
数字上变频代理调用matlab处理输出数据,获得DUT输出数据的频域参数和参考模型输出数据的频域参数,根据频域参数确定验证结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311491318.XA CN117234947B (zh) | 2023-11-10 | 2023-11-10 | 一种数字插值和上变频电路的验证系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311491318.XA CN117234947B (zh) | 2023-11-10 | 2023-11-10 | 一种数字插值和上变频电路的验证系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117234947A CN117234947A (zh) | 2023-12-15 |
CN117234947B true CN117234947B (zh) | 2024-02-09 |
Family
ID=89098537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311491318.XA Active CN117234947B (zh) | 2023-11-10 | 2023-11-10 | 一种数字插值和上变频电路的验证系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117234947B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021044A (zh) * | 2016-05-10 | 2016-10-12 | 中国电子科技集团公司第三十八研究所 | 可重用spi总线协议模块验证环境平台及其验证方法 |
CN112527723A (zh) * | 2020-12-16 | 2021-03-19 | 广州昂瑞微电子技术有限公司 | 一种基于uvm的spi验证平台及验证方法 |
CN116894411A (zh) * | 2023-07-11 | 2023-10-17 | 上海芯钛信息科技有限公司 | 带dma接口的spi模块验证平台和方法 |
-
2023
- 2023-11-10 CN CN202311491318.XA patent/CN117234947B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021044A (zh) * | 2016-05-10 | 2016-10-12 | 中国电子科技集团公司第三十八研究所 | 可重用spi总线协议模块验证环境平台及其验证方法 |
CN112527723A (zh) * | 2020-12-16 | 2021-03-19 | 广州昂瑞微电子技术有限公司 | 一种基于uvm的spi验证平台及验证方法 |
CN116894411A (zh) * | 2023-07-11 | 2023-10-17 | 上海芯钛信息科技有限公司 | 带dma接口的spi模块验证平台和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117234947A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101680932B (zh) | 具有用于验证外部接口的功能性的自测试特征的集成电路 | |
JPH05223897A (ja) | 試験信号生成装置 | |
CN106021044A (zh) | 可重用spi总线协议模块验证环境平台及其验证方法 | |
CN112560377B (zh) | 基于虚拟平台与fpga联合的仿真验证方法及系统 | |
CN112579381A (zh) | 一种基于uvm的uart总线的uvm验证系统及方法 | |
CN116089281A (zh) | 一种芯片测试方法、测试平台和设备 | |
CN117234947B (zh) | 一种数字插值和上变频电路的验证系统及方法 | |
CN112559273A (zh) | 一种基于uvm的qspi验证系统及方法 | |
CN109299011A (zh) | 一种应用程序的测试方法及系统 | |
CN115190030A (zh) | 一种实现can fd的硬件装置和uvm验证平台 | |
US7478304B2 (en) | Apparatus for accelerating through-the-pins LBIST simulation | |
CN100365587C (zh) | 一种自适应滤波逻辑验证系统及方法 | |
CN111736654B (zh) | 时钟模型实现方法、装置、计算机设备及存储介质 | |
CN111025132B (zh) | 系统芯片、以及其内建自我测试电路与自我测试方法 | |
CN118395930A (zh) | 基于仿效设备的调试方法、装置、电子设备及存储介质 | |
CN110908846A (zh) | 一种spi总线验证方法 | |
CN111695273A (zh) | 一种磁共振扫描序列仿真平台 | |
CN113868163B (zh) | 接口复用设备及接口复用设备的控制方法 | |
CN113156387B (zh) | 一种雷达目标模拟组件和雷达检验方法 | |
CN116170267A (zh) | 基于uvm的ofdm通信系统验证平台及验证方法 | |
Sonara et al. | Scalable, Re-usable UVM DMS AMS based Verification Methodology for Mixed-Signal SOCs | |
CN117852238A (zh) | 测试方法、装置及存储介质 | |
CN117494629A (zh) | 一种外设的验证方法、外设验证时的参数配置方法及装置 | |
JP2598551Y2 (ja) | 半導体試験装置 | |
CN118332986A (zh) | 一种面向uvm验证环境的寄存器传输级时钟调节方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |