验证理论及实现技巧报告.PPTVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
验证理论及实现技巧报告 哈尔滨工业大学微电子中心 李洪兵 2002 /10/29 提纲 验证面临的挑战 验证的基本理论 验证平台的构建技巧 行为编码技巧 验证管理技巧 验证面临的挑战 验证的主导地位 SOC设计的关键是IP复用,IP复用的关键是信任,信任的关键是完整正确的验证。 在当今百万门级的ASIC,IP,SOC设计中,验证消耗了大约70%的设计努力。 用于验证的工程师的人数是RTL设计工程师的两倍。 当一个设计完成的时候验证代码的长度占总代码长度的80%。 验证要解决的问题 如何保证验证是完整的? 如何实现验证的自动化? 验证的基本概念 验证:保证某种形式的转换是符合我们所期望的 。它是一个复杂的过程。 功能验证:保证设计正确的实现了规范所定义的功能。 形式验证:形式验证采用数学的方法来验证一个设计 的不同描述是等价的。平等性检测、模型检测。 验证平台(Testbench):一段代码用来对一个设计产生预先决定了的输入序列,然后选择性的观察响应,是一个封闭式的系统。 功能验证与芯片测试的差别 验证要解决的问题 这个设计的功能是否正确? 测试要解决的问题 一个正确的设计,在物理实现过程中是否有制造缺陷? 二者的相同点 施加激励---〉观看响应 二者的不同点 验证施加的激励要人来编写 测试施加的激励是工具自动产生的,响应也是自动计算出来的。整个过程完全的自动化。 验证什么?---功能验证 验证什么?--形式验证 验证的方法 方法 黑盒子模型 白盒子模型 灰盒子模型 验证的级别 单元级的验证:基本模块的验证。 宏单元验证:可复用单元(模块)的验证。IP级别。 系统级验证:验证的前提是各个单元模块是已经经过验证的了,而且功能是正确的主要验证交易和数据流是否正确。 板极验证:物理验证。 验证策略 模型选择:决定于采用白盒子还是黑盒子模型(TestCase)。 决定抽象的级别:决定在那个抽象级别上进行验证。高的抽象级别则可控性和可观察性更差。 是否采用随机验证 :随机验证有利于产生一些你不曾预测到的测试环境。 验证的分析流程 如何保证验证的完整性? 代码覆盖原理 验证施加的激励使得RTL代码都被覆盖了,验证仍然可能是不完整的,但是如果RTL代码根本就没有达到完整的覆盖,则验证肯定是不完整的。 如何实现验证的部分自动化? Testbench Generator原理:将总线或者接口行为用波形描述出来, Testbench Generator将根据输入的波形自动产生能够产生这种波形的BFM。 验证平台的构建技巧 目标 如何才能方便的产生所需要的激励? 如何才能实现响应分析的自动化? 如何让验证单元得到最大的复用? 手段 采用可以复用的结构 采用抽象的BFM 采用self-check的Monitor 可复用Testbench 的结构 BFM到底是什么? 复杂的波形和协议可以用tasks 和procedure来实现,而这些波形和协议描述了数据是如何被加到被验证模块的。这些tasks 和procedures就成为总线功能模型,这些总线功能模块再被一个工程中的其他testbench所采用。 设计的行为模型是什么? 行为模型:行为模型的目标是以一种容易书写和模拟的方式忠实的表达设计的功能,它是用来帮助验证设计而不是如何实现设计的,只要书写得当,它是不可能提炼成可综合模型的。也就是说它可以跟设计的实现细节一点都不相关 行为模型在设计中的重大作用 行为模型对工程进度的影响 可复用Testbench 的结构改进 可复用Testbench 的结构改进 可复用Testbench 的结构改进 可复用Testbench 的结构改进 激励与响应之间可能的关系1 行为:加一个激励很短时间内就可以得到相应的响应,完成一个功能点的验证。 策略:可以将激励和响应的检测放到一起,实现self-check。 激励与响应之间可能的关系2 行为:单个功能点的验证需要分成很多单个步骤,施加激励后根据DUT反馈信号,在不同时间进行这些步骤。 策略:单个步骤用self-check方式来实现,在testcase中对单个步骤进行控制。 激励与响应之间可能的关系3 行为:不能在产生这个激励的task中同时验证相应输出的响应。因为这可能导致输入中断进而违反协议 ,但响应的分析只与实际响应自身相关。 策略:无法实现self-check。将激励与响应检测分开。 激励与响应之间可能的关系4 行为:不能在产生这个激励的task中同时验证相应输出的响应。响应的分析与实际响应、期望的响应、配置情况相关。 策略:将monitor设计成可配置的情况。带参数:期望响应、配置参数。 激励与响应之间可能的关系4改进 行为:不能在产生这个激励的task中同时验证相应输

文档评论(0)

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

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

1亿VIP精品文档

相关文档