UVM实战计算机与互联网pdf下载pdf下载

UVM实战计算机与互联网百度网盘pdf下载

作者:
简介:本篇主要提供UVM实战计算机与互联网pdf下载
出版社:互动出版网图书专营店
出版时间:2014-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 书名:  UVM实战(卷I)|63785
 图书定价:  79元
 图书作者:  张强
 出版社:  机械工业出版社
 出版日期:  2014/7/1 0:00:00
 ISBN号:  9787111470199
 开本:  16开
 页数:  368
 版次:  1-1
 作者简介
张强,**验证工程师,毕业于浙江大学超大规模集成电路研究所,研究方向为模拟及数模混合集成电路,主要从事模拟电源管理芯片、运算放大器及应用于高性能CPU的SRAM的研究与设计,持有两个与SRAM相关的专利。毕业后一直从事数字集成电路的设计和验证工作,曾经参与过高速智能列车数据采集及通信系统、高性能智能投影仪芯片的研究与开发。目前主要从事手机等消费电子低功耗图形显示芯片的研究。2011年年底,在熟读UVM源代码的情况下,在网上发布了《UVM1.1应用指南及源代码解析》,深受读者肯定。
 内容简介
《UVM实战(卷I)》主要介绍UVM的使用。全书详尽介绍了UVM的factory机制、sequence机制、phase机制、objection机制及寄存器模型等的使用。此外,本书还试图引导读者思考UVM为什么要引入这些机制,从而使读者知其然,更知其所以然。本书以一个完整的示例开篇,使得读者一开始就对如何使用UVM搭建验证平台有总体的概念。本书提供大量示例代码,这些代码都经过实际的运行。全书内容力求简单易懂,尽量将UVM中的概念与读者已有的概念联系起来。在第11章还专门介绍了OVM与UVM的区别,为那些从OVM迁移到UVM的用户提供很大帮助。
《UVM实战(卷I)》主要面向UVM的初学者及想对UVM追根寻底的中级用户。针对没有面向对象编程基础的用户,本书在附录中简要介绍了面向对象的概念及SystemVerilog中区别于其他编程语言的一些特殊语法。
 目录

《UVM实战(卷I)》
前言
第1章 与UVM的第一次接触1
1.1 UVM是什么1
1.1.1 验证在现代IC流程中的位置1
1.1.2 验证的语言2
1.1.3 何谓方法学3
1.1.4 为什么是UVM4
1.1.5 UVM的发展史5
1.2 学了UVM之后能做什么6
1.2.1 验证工程师6
1.2.2 设计工程师6
第2章 一个简单的UVM验证平台7
2.1 验证平台的组成7
2.2 只有driver的验证平台8
*2.2.1 最简单的验证平台8
*2.2.2 加入factory机制13
*2.2.3 加入objection机制14
*2.2.4 加入virtual interface16
2.3 为验证平台加入各个组件20
*2.3.1 加入transaction20
*2.3.2 加入env23
*2.3.3 加入monitor25
*2.3.4 封装成agent28
*2.3.5 加入reference model32
*2.3.6 加入scoreboard36
*2.3.7 加入field_automation机制38
2.4 UVM的终极大作:sequence41
*2.4.1 在验证平台中加入sequencer41
*2.4.2 sequence机制44
*2.4.3 default_sequence 的使用48
2.5 建造测试用例50
*2.5.1 加入base_test50
*2.5.2 UVM中测试用例的启动52
第3章 UVM基础56
3.1 uvm_component与uvm_object56
3.1.1 uvm_component派生自uvm_object56
3.1.2 常用的派生自uvm_object的类57
3.1.3 常用的派生自uvm_component的类58
3.1.4 与uvm_object相关的宏61
3.1.5 与uvm_component相关的宏62
3.1.6 uvm_component的限制62
3.1.7 uvm_component与uvm_object的二元结构63
3.2 UVM的树形结构64
3.2.1 uvm_component中的parent参数64
3.2.2 UVM树的根66
3.2.3 层次结构相关函数67
3.3 field automation机制69
3.3.1 field automation机制相关的宏69
3.3.2 field automation机制的常用函数71
*3.3.3 field automation机制中标志位的使用72
*3.3.4 field automation中宏与if的结合74
3.4 UVM中打印信息的控制76
*3.4.1 设置打印信息的冗余度阈值76
*3.4.2 重载打印信息的严重性78
*3.4.3 UVM_ERROR到达一定数量结束仿真79
*3.4.4 设置计数的目标80
*3.4.5 UVM的断点功能81
*3.4.6 将输出信息导入文件中82
*3.4.7 控制打印信息的行为84
3.5 config_db机制85
3.5.1 UVM中的路径85
3.5.2 set与get函数的参数87
*3.5.3 省略get语句88
*3.5.4 跨层次的多重设置89
*3.5.5 同一层次的多重设置91
*3.5.6 非直线的设置与获取93
*3.5.7 config_db机制对通配符的支持94
*3.5.8 check_config_usage95
3.5.9 set_config与get_config97
3.5.10 config_db的调试98
第4章 UVM中的TLM1.0通信100
4.1 TLM1.0100
4.1.1 验证平台内部的通信100
4.1.2 TLM的定义102
4.1.3 UVM中的PORT与EXPORT102
4.2 UVM中各种端口的互连104
*4.2.1 PORT与EXPORT的连接104
*4.2.2 UVM中的IMP106
*4.2.3 PORT与IMP的连接109
*4.2.4 EXPORT与IMP的连接111
*4.2.5 PORT与PORT的连接111
*4.2.6 EXPORT与EXPORT的连接113
*4.2.7 blocking_get端口的使用114
*4.2.8 blocking_transport端口的使用116
4.2.9 nonblocking端口的使用117
4.3 UVM中的通信方式119
*4.3.1 UVM中的analysis端口119
*4.3.2 一个component内有多个IMP121
*4.3.3 使用FIFO通信124
4.3.4 FIFO上的端口及调试126
*4.3.5 用FIFO还是用IMP128
第5章 UVM验证平台的运行132
5.1 phase机制132
*5.1.1 task phase与function phase132
5.1.2 动态运行phase134
*5.1.3 phase的执行顺序134
*5.1.4 UVM树的遍历139
5.1.5 super.phase的内容140
*5.1.6 build阶段出现UVM_ERROR停止仿真141
*5.1.7 phase的跳转142
5.1.8 phase机制的必要性146
5.1.9 phase的调试147
5.1.10 超时退出147
5.2 objection机制148
*5.2.1 objection与task phase148
*5.2.2 参数phase的必要性152
5.2.3 控制objection的最佳选择152
5.2.4 set_drain_time的使用154
*5.2.5 objection的调试156
5.3 domain的应用158
5.3.1 domain简介158
*5.3.2 多domain的例子158
*5.3.3 多domain中phase的跳转161
第6章 UVM中的sequence163
6.1 sequence基础163
6.1.1 从driver中剥离激励产生功能163
*6.1.2 sequence的启动与执行165
6.2 sequence的仲裁机制166
*6.2.1 在同一sequencer上启动多个sequence166
*6.2.2 sequencer的lock操作170
*6.2.3 sequencer的grab操作172
6.2.4 sequence的有效性172
6.3 sequence相关宏及其实现175
6.3.1 uvm_do系列宏175
*6.3.2 uvm_create与uvm_send176
*6.3.3 uvm_rand_send系列宏178
*6.3.4 start_item与finish_item178
*6.3.5 pre_do、mid_do与post_do180
6.4 sequence进阶应用181
*6.4.1 嵌套的sequence181
*6.4.2 在sequence中使用rand类型变量183
*6.4.3 transaction类型的匹配185
*6.4.4 p_sequencer的使用186
*6.4.5 sequence的派生与继承189
6.5 virtual sequence的使用190
*6.5.1 带双路输入输出端口的DUT190
*6.5.2 sequence之间的简单同步191
*6.5.3 sequence之间的复杂同步192
6.5.4 仅在virtual sequence中控制objection197
*6.5.5 在sequence中慎用fork join_none198
6.6 在sequence中使用config_db200
*6.6.1 在sequence中获取参数200
*6.6.2 在sequence中设置参数201
*6.6.3 wait_modified的使用203
6.7 response的使用204
*6.7.1 put_response与get_response204
6.7.2 response的数量问题205
*6.7.3 response handler与另类的response206
*6.7.4 rsp与req类型不同208
6.8 sequence library209
6.8.1 随机选择sequence209
6.8.2 控制选择算法211
6.8.3 控制执行次数213
6.8.4 使用sequence_library_cfg214
第7章 UVM中的寄存器模型216
7.1 寄存器模型简介216
*7.1.1 带寄存器配置总线的DUT216
7.1.2 需要寄存器模型才能做的事情218
7.1.3 寄存器模型中的基本概念220
7.2 简单的寄存器模型221
*7.2.1 只有一个寄存器的寄存器模型221
*7.2.2 将寄存器模型集成到验证平台中224
*7.2.3 在验证平台中使用寄存器模型227
7.3 后门访问与前门访问229
*7.3.1 UVM中前门访问的实现229
7.3.2 后门访问操作的定义231
*7.3.3 使用interface进行后门访问操作233
7.3.4 UVM中后门访问操作的实现:DPI+VPI233
*7.3.5 UVM中后门访问操作接口235
7.4 复杂的寄存器模型237
*7.4.1 层次化的寄存器模型237
*7.4.2 reg_file的作用239
*7.4.3 多个域的寄存器241
*7.4.4 多个地址的寄存器242
*7.4.5 加入存储器244
7.5 寄存器模型对DUT的模拟246
7.5.1 期望值与镜像值246
7.5.2 常用操作及其对期望值和镜像值的影响247
7.6 寄存器模型中一些内建的sequence248
*7.6.1 检查后门访问中hdl路径的sequence248
*7.6.2 检查默认值的sequence249
*7.6.3 检查读写功能的sequence250
7.7 寄存器模型的高级用法251
*7.7.1 使用reg_predictor251
*7.7.2 使用UVM_...
 编辑推荐
UVM的学习资料非常匮乏,能够参考的资料,一是《OVM Cookbook》(这本英文资料从来没有在国内出版过),另一个是OVM/UVM官方的英文参考文档。它们所采用的行文方式*是硬生生地不断引入某些概念,并附加一定的代码来阐述这些概念。在这些前后引入的概念之间。几乎没有什么逻辑关系。有时候看完了一整章都不知道该章介绍的东西有什么用处。*关键的是。整本书看完了也不知道如何搭建一个验证平台。这本《UVM实战(卷Ⅰ)》的作者张强围绕如何搭建一个基于UVM的验证平台,用丰富的案例和深入浅出的语言,引导读者深入理解UVM验证方法学的使用方法和设计理念。