高级验证方法学()-Mentor-笔记

1、事物级组件间一般用fifo作为通信通道

2、sv中,参数或局部参数优先于宏,这样可以减少编译的次数

3、验证方案从设计规范来,验证方案有一个问题清单,列举所有验证过程需要回答的问题,和说明如何被回答的机制的描述。此外还有一个checklist,列举所有需要回答的问题,它也是测试平台的功能规范

4、systemC不适合构建低层次验证平台

5、激励生成方式:随机、定向、定向随机,运行方式:自由运行、受控制运行、独立运行、同步运行

定向/定向随机激励:一般由特定发生器 ,以便在DUT上执行一个特定的功能或运行一个特殊的情节 。
6、Master:发出请求并接收响应。主器件引发行为,依据响应来确定其下一阶段的动作

Slave:接受请求并返回响应

7、has-a:当一个对象是另一个对象的引用(reference)或指针(pointer)时,这两个对象就通过HAS-A关联 。eg:A有一个B

is-a:由继承产生的对象通过IS-A构成。继承对象就认为是子类,或者是父对象的一个特殊版本 。eg:primates is-a Mammalia


systemverilog中解释如下图:


8、验证架构组件尽量选用小的、带有定义好的接口的组件来实现,会变的简单起来,若能达到复用这些组件,则实现了进一步简单

9、事务:面向硬件: 在一个设计中发生在两个时间点的所有事件,另一种说法:两个实体间单向转移的控制或数据。

面向软件:一个事务就是一个函数的调用。

10、参考模型构建相比DUT要:执行更快、成本更低,所以=>事务级,

11、生产者/消费者模型:

put():指数据方向,由producer发出put指令,数据从produce->consumer





产生器调用消耗器中的一个函数称作put。Put函数的目的就是将数据从发生器的范围传送到consumer的范围。发生器以实际参数的形式给put函数提供数据。Put函数在consumer的范围内运行,因此一旦调用put(),其参数中的数据就传送到consumer的范围。

get():仍然指数据方向,但也还是producer发出get指令,数据从consumer->producer,但实际工作上producer是consumer。




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
avm是一个基于system verilog和systemc编程环境。它是为了开发复杂验证平台而设计的。就如学习c语言一样(或者system verilog或者systemc),它会需要一段时间去学习avm,从而知道如何更有效地去应用所有的概念。这本书的目的就是给你一个信心。如果这本书的作者把工作做得相当好,那么当你阅读这本书并且按里面的例子进行练习,肯定会有惊喜的体验。这个比喻性的概念在你的思想形成之后,你就会掌握avm中所有的结构并且知道如何应用。 目录 绪论 第1章 验证原理 1.1 验证基础 1.2 第一个验证平台 1.3 第二个验证平台 1.4 总结 第2章 avm综述 2.1 重用 2.2 验证组件和接口 2.3 层次化结构的验证平台 2.4 两个域 2.5 基于systemverilog avm概述 2.6 总结 第3章 面向对象程序设计的基本原理 3.1 面向过程vs.面向对象 3.2 类和对象 3.3 对象间关系 3.4 虚函数和多态 3.5 通用程序设计 3.6 作为组件的对象 . 3.7 oop和验证 第4章 tlm介绍 4.1 抽象(abstraction) 4.2 事务的定义(definilion of a transaction) 4.3 组件间的通信(communicating comf)onents) 4.4 使用通道(channel)来隔离组件 4.5 事务级连接(forming a transation—level connection) 4.6 小结 第5章 sustem vererilog中的avm机制 5.1 接口 5.2 连接组件 5.3 创建环境 5.4 连接硬件 5.5 报告 5.6 总结 第6章 验证平台基础 6.1 一个简单的存储器设计 6.2 激励产生器 6.3 监视器 6.4 三类状态机 6.5 驱动器 6.6 总结 第7章 完整的验证平台 7.1 分析端口和分析组件 7.2 记分板 7.3 覆盖率 7.4 注入错误 7.5 总结 第8章 逐步优化 8.1 事务级设计 8.2 riil替换 8.3 fpu作为黄金模型 8.4 小结 第9章 验证平台中的模块 9.1 非流水型总线实例 9.2 基于模块的断言监视器 9.3 总线功能模型(bfm) 9.4 总结 第10章 随机验证 10.1 crv方法概述 10.2 对类加入随机 10.3 用继承来实现层次约束 10.4 动态修改约束 10.5 过度约束 10.6 设定成员 10.7 动态数组 10.8 每个设计/每个测试配置 10.9 约束设计 10.10 类工厂 10.11 状态决定约束实例 10.12 avm随机激励生成器 第11章 avm与system verilog和sustemc 11.1 对象模型 11.2 对象的支持 11.3 封装行为 11.4 随机化 11.5 实例化与细节构建 11.6 事务级连接 11.7 执行阶段 11.8 创建完整的验证平台架构 11.9 选择systemverilog或systemc 附录a 符号说明 附录b 命名约定 附录c avm百科全书 附录d apache许可证 参考书目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值