基于VMM的寄存器抽象层验证.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VMM的寄存器抽象层验证

本文介绍了Synopsys公司推出的基于VMM的寄存器抽象层验证技术和方案,简称RAL(Register Abstraction Layer)。该技术是Synopsys针对芯片验证中如何简便、高效地完成寄存器/存储器相关的验证任务这一问题而开发的解决方案。该方案构建在 Synopsys的VMM验证方法基础上,使用了VMM中的通用技术,可以在VMM的验证环境中非常方便地集成和重用。   本文首先简述了在芯片验证中和寄存器/存储器相关的任务需求,然后介绍RAL的基本结构和相关模块,随后介绍如何在VMM的验证环境中集成RAL,最后介绍如何通过RAL完成验证过程中各种实际任务。本文中所有实例的源代码均采用SystemVerilog硬件描述验证语言。   验证需求   和寄存器/存储器相关的验证任务主要包括两类,一类是对寄存器/存储器本身功能的验证,寄存器/存储器是芯片中控制和数据的存储场所,决定着芯片能否正常运行,因此,对寄存器/存储器本身的功能的验证,一般是整个验证过程中最先要完成的任务。另一类和寄存器/存储器相关的验证任务,是在对芯片进行其它功能验证的过程中,验证环境需要对寄存 器/存储器进行操作,例如,用写寄存器配置芯片的功能,用读寄存器检查芯片的状态。这类对寄存器/存储器进行操作的任务,是在芯片验证过程中,始终存在并且频繁出现的。   芯片中的寄存器/存储器具有数量大和不断变化的特点。一般来说,芯片中的寄存器数目往往达到几十个,上百个,甚至近千个,有的芯片有着为数不少的存储器。而且,这些寄存器/存储器的设计规范在不断变化中,甚至在芯片的验证过程中,寄存器/存储器的设计仍在变化。这两个特点使得测试平台对寄存器/存储器的维护十分困难。一旦在设计中增加或减少了寄存器/存储器,或者修改了寄存器字段的长度、位置、属性、初始值、或者修改了存储器的容量、字长等等,工程师就必须在整个验证环境和所有测试文件中,对于发生变化的寄存器/存储器进行相应的修改。这种维护工作是非常繁琐,耗时和容易出错的。   因此,一方面,和寄存器/存储器相关的验证任务是不可缺少的,频繁出现的;另一方面,测试平台对寄存器/存储器的维护是耗时和容易出错的。这样一来,本可以花在验证更复杂功能上的时间和精力,却被花在相对简单却很耗时的寄存器/存储器维护工作上了。这种矛盾导致了对简便,高效的寄存器/存储器验证解决方案的强烈需求。   Synopsys正是在这种强烈需求的背景下推出了基于VMM的寄存器/存储器抽象层(RAL)验证解决方案。该方案的中心思想是,在验证环境中的一个特定模型内,进行寄存器/存储器的管理、维护和操作,一旦寄存器/存储器的设计规范发生变化,工程师对验证环境和测试文件的维护修改工作将尽可能地降低到最少的程度。   基本结构和工作机制   Synopsys的VMM验证环境是层次化的验证环境,分为指令层(Command Layer)、功能层(Functional Layer)、场景层(Scenario Layer)等,而RAL是隶属于Functional Layer的。RAL的基本结构包含三个部分,分别是RAL模型(RAL Model)、RAL处理器(RAL Transactor)以及RAL访问管理器(RAL Access)。如图1所示。   ● RAL的各个组成部分   RAL Model封装了DUT中寄存器/存储器的一切描述信息,是DUT中寄存器/存储器在测试环境中的映射,RAL Model为寄存器保存、维护镜像值。但存储器在RAL Model中是没有镜像值的,这是因为对存储器的存取相对简单,并且存储器较大的存储容量会导致较大的镜像空间,从而大大降低模拟效率。   RAL Transactor负责把RAL Transaction转换为Command Layer Transaction并传递给Command Layer中的BFM。   RAL Access负责管理RAL Model和RAL Transactor之间的交互,它将RAL Model中的操作封装为一个RAL Transaction传递给RAL Transactor,并根据这个Transaction完成后的结果或状态,更新RAL Model中的数据信息。   BFM并不属于RAL的范畴,它是VMM测试环境中Command Layer的一个模块,负责将Command Layer Transaction驱动到DUT接口上实际的高低电平逻辑信号。   ● RAL的工作机制   测试平台对RAL Model进行的操作,会映射到对DUT内寄存器/存储器的操作。这种操作通过RAL Access,封装在RAL Transaction中,传递到RAL Transactor, RAL

文档评论(0)

liudao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档