预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于UVM验证方法学的RF基带模块验证 基于UVM验证方法学的RF基带模块验证 摘要: 随着电子科技的发展,集成电路的功能恶化越来越迅速。为保证电路的正确、高效地工作,验证技术成为了极其重要的一环。其中,UVM验证方法学得以广泛应用。RF基带模块在无线通信系统中扮演着核心作用。本文阐述了基于UVM验证方法学的RF基带模块验证的原理和方法,介绍了UVM体系结构、基础类和运行机制,最后以一个实际的案例加以说明。通过本文,可初步了解RF基带模块的验证方法,并学习使用UVM验证方法学进行RF基带模块的验证。 关键词:RF基带模块;UVM验证方法学;无线通信系统 第1章引言 随着电子科技的飞速发展,集成电路的功能越来越复杂、规模越来越大。要保证电路的正确性、高效性,验证技术成为一个关键环节。目前,UVM验证方法学是广泛应用的一种验证技术。它是一种基于面向对象的验证方法,尤其适合于复杂的数字电路验证。RF基带模块是无线通信系统中的核心模块,其正确性和稳定性对整个系统的性能有着至关重要的影响。因此,RF基带模块的验证也显得尤为重要。本文将介绍基于UVM验证方法学的RF基带模块验证的原理和方法。 第2章UVM体系结构 UVM验证方法学是由Accellera于2011年发布并推荐使用的验证方法学。其全称是UniversalVerificationMethodology,其中的“Universal”指的是UVM能够适应不同的设计和验证环境。UVM体系结构分为以下三层: -应用层:包含了具体测试的用例,测试的类定义和测试流程的控制; -中间层:主要包括Testbench和Sequence,其中Testbench是UVM架构中最重要的一环,Sequence是用于生成各种信号的生成器; -底层:包含了UVM中最基础的抽象类,比如Transaction和Component;其定义为抽象类是因为这些类的设计是门槛式的,仅表示实现方法而非具体实现。 第3章UVM基础类 UVM的基础类主要源自于SystemVerilog,包括了UVMObject、UVMComponent、UVMConfiguration、UVMFactory等几个最基础的类。这些类的作用如下: -UVMObject:是所有其他UVM类的基础类,提供了一些实用功能,比如类的层次结构处理、对象创建及销毁、调试信息等; -UVMComponent:继承自UVMObject,是UVM架构中的核心类,它提供了模块的寄存,使结构更加清晰、模块化;而且,基于Component,可以方便地模拟各种结构的验证环境; -UVMConfiguration:是管理、配置UVM架构中各类实例的配置机制; -UVMFactory UVM工厂,即UVMFactoryMethod类,它是整个UVM系统中的一个核心单元。 第4章UVM运行机制 UVM运行时机制指的是UVM的工作流程,在对DUT(DigitalUnitTest)进行模拟验证时,UVM工程通常由以下步骤组成: -完成环境搭建,包括DUT和Testbench之间的接口连接,在UVM中,这个部分主要由UVMComponent和UVMConnection构成; -完成环境配置,在UVM中,可通过UVMConfiguration来实现工程管理和配置; -编写UVMSequence,它是生成各种信号的核心,UVM测试中的Sequence是指创建Transaction的动作序列;而RandomSequence是指随机生成一系列不同的交易模式,只要将所要产生生成的信号传入RandomSequence即可随机生成。Sequence虽然与模块相似,但还是有些许不同,它不仅负责信号的生成,同时也要处理错误信息、提供调试信息等; -编辑UVMTest,根据所需要测的项进行测试,进行顶层控制; -最后就是UVMScoreboard,这个模块是用来将产生Sequence和学习ReferenceModel的结果进行比对,主要是以Connection为基础进行编码生成,并进行监视。每当Scoreboard发现DUT数据与ReferenceModel不符时,就会对报错进行程序提示。 第5章案例分析 本示例是对一个RCT(RFControllerTransceiver)核进行验证。RCT是无线通信系统中最重要的基带模块之一,用于发送和接收无线信号。 首先,为了保证仿真的准确性,需要确定DUT的接口信号,确定测试计划,定义对DUT数据的预期。然后,需要不断的进行验证,透过UVMTest验证我所设计的RCT是否真正地能够符合预期。整个验证过程主要包括以下三个环节: 第1环节:定义RCT的接口。(即上文提到的“继续环境搭建”) 被验证对象RCT是一个核,它被设计为单独的核(module),并由UVM测