热搜关键词: 模拟电路单片机编程FPGARISC-V

pdf

UVM实战 (电子与嵌入式系统设计丛书) (张强编著)

  • 1星
  • 2022-11-26
  • 4.56MB
  • 需要1积分
  • 3次下载
  • favicon收藏
  • rep举报
  • free评论
标签: UVM

UVM

《电子与嵌入式系统设计丛书:UVM实战(卷1)》以一个完整的示例开篇,使得读者一开始就对如何使用UVM搭建验证平台有总体的概念。《电子与嵌入式系统设计丛书:UVM实战(卷1)》提供大量示例代码,这些代码都经过实际的运行。全书内容力求简单易懂,尽量将UVM中的概念与读者已有的概念联系起来。在第11章还专门介绍了OVM与UVM的区别,为那些从OVM迁移到UVM的用户提供很大帮助。《电子与嵌入式系统设计丛书:UVM实战(卷1)》主要面向UVM的初学者及想对UVM追根寻底的中级用户。针对没有面向对象编程基础的用户,《电子与嵌入式系统设计丛书:UVM实战(卷1)》在附录中简要介绍了面向对象的概念及SystemVerilog中区别于其他编程语言的一些特殊语法。

内容简介

《电子与嵌入式系统设计丛书:UVM实战(卷1)》主要介绍UVM的使用。全书详尽介绍了UVM的factory机制、sequence机制、phase机制、objection机制及寄存器模型等的使用。此外,《电子与嵌入式系统设计丛书:UVM实战(卷1)》还试图引导读者思考UVM为什么要引入这些机制,从而使读者知其然,更知其所以然。

作者简介

张强,资深验证工程师,毕业于浙江大学超大规模集成电路研究所,研究方向为模拟及数模混合集成电路,主要从事模拟电源管理芯片、运算放大器及应用于高性能CPU的SRAM的研究与设计,持有两个与SRAM相关的专利。毕业后一直从事数字集成电路的设计和验证工作,曾经参与过高速智能列车数据采集及通信系统、高性能智能投影仪芯片的研究与开发。目前主要从事手机等消费电子低功耗图形显示芯片的研究。2011年年底,在熟读UVM源代码的情况下,在网上发布了《UVM1.1应用指南及源代码解析》,深受读者肯定。

前言

第1章与UVM的第一次接触

1.1UVM是什么

1.1.1验证在现代IC流程中的位置

1.1.2验证的语言

1.1.3何谓方法学

1.1.4为什么是UVM

1.1.5UVM的发展史

1.2学了UVM之后能做什么

1.2.1验证工程师

1.2.2设计工程师

第2章一个简单的UVM验证平台

2.1验证平台的组成

2.2只有driver的验证平台

2.2.1最简单的验证平台

2.2.2加入factory机制

2.2.3加入objection机制

2.2.4加入virtualinterface

2.3为验证平台加入各个组件

2.3.1加入transaction

2.3.2加入env

2.3.3加入monitor

2.3.4封装成agent

2.3.5加入referencemodel

2.3.6加入scoreboard

2.3.7加入field_automation机制

2.4UVM的终极大作:sequence

2.4.1在验证平台中加入sequencer

2.4.2sequence机制

2.4.3default_sequence的使用

2.5建造测试用例

2.5.1加入base_test

2.5.2UVM中测试用例的启动

第3章UVM基础

3.1uvm_component与uvm_object

3.1.1uvm_component派生自uvm_object

3.1.2常用的派生自uvm_object的类

3.1.3常用的派生自uvm_component的类

3.1.4与uvm_object相关的宏

3.1.5与uvm_component相关的宏

3.1.6uvm_component的限制

3.1.7uvm_component与uvm_object的二元结构

3.2UVM的树形结构

3.2.1uvm_component中的parent参数

3.2.2UVM树的根

3.2.3层次结构相关函数

3.3fieldautomation机制

3.3.1fieldautomation机制相关的宏

3.3.2fieldautomation机制的常用函数

3.3.3fieldautomation机制中标志位的使用

3.3.4fieldautomation中宏与if的结会

3.4UVM中打印信息的控制

3.4.1设置打印信息的冗余度阈值

3.4.2重载打印信息的严重性

3.4.3UVM_ERROR到达一定数量结束仿真

3.4.4设置计数的目标

3.4.5UVM的断点功能

3.4.6将输出信息导入文件中

3.4.7控制打印信息的行为

3.5config_db机制

3.5.1UVM中的路径

3.5.2set与get函数的参数

3.5.3省略get语句

3.5.4跨层次的多重设置

3.5.5同一层次的多重设置

3.5.6非直线的设置与获取

3.5.7config_db机制对通配符的支持

3.5.8check_config_usage

3.5.9set_config与get_config

3.5.10config_db的调试

第4章UVM中的TLM1.0通信

4.1TLM1.0

4.1.1验证平台内部的通信

4.1.2TLM的定义

4.1.3UVM中的PORT与EXPORT

4.2UVM中各种端口的互连

4.2.1PORT与EXPORT的连接

4.2.2UVM中的IMP

4.2.3PORT与IMP的连接

4.2.4EXPORT与IMP的连接

4.2.5PORT与PORT的连接

4.2.6EXPORT与EXPORT的连接

4.2.7blocking_get端口的使用

4.2.8blocking_transport端口的使用

4.2.9nonblocking端口的使用

4.3UVM中的通信方式

4.3.1UVM中的analysis端口

4.3.2一个component内有多个IMP

4.3.3使用FIFO通信

4.3.4FIFO上的端口及调试

4.3.5用FIFO还是用IMP

第5章UVM验证平台的运行

5.1phase机制

5.1.1taskphase与functionphase

5.1.2动态运行phase

5.1.3phase的执行顺序

5.1.4UVM树的遍历

5.1.5super.phase的内容

5.1.6build阶段出现UVMERROR停止仿真

5.1.7phase的跳转

5.1.8phase机制的必要性

5.1.9phase的调试

5.1.10超时退出

5.2objection机制

5.2.1objection与taskphase

5.2.2参数phase的必要性

5.2.3控制objection的最佳选择

5.2.4set_drain_time的使用

5.2.5objection的调试

5.3domain的应用

5.3.1domain简介

5.3.2多domain的例子

5.3.3多domain中phase的跳转

第6章UVM中的sequence

6.1sequence基础

6.1.1从driver中剥离激励产生功能

6.1.2sequence的启动与执行

6.2sequence的仲裁机制

6.2.1在同一sequencer上启动多个sequence

6.2.2sequencer的lock操作

6.2.3sequencer的grab操作

6.2.4sequence的有效性

6.3sequence相关宏及其实现

6.3.1uvm_do系列宏

6.3.2uvm_create与uvm_send

6.3.3uvm_rand_send系列宏

6.3.4start_item与finish_item

6.3.5pre_do.mid_do与post_do

6.4sequence进阶应用

6.4.1嵌套的sequence

6.4.2在sequence中使用rand类型变量

6.4.3transaction类型的匹配

6.4.4p_sequencer的使用

6.4.5sequence的派生与继承

6.5virtualsequence的使用

6.5.1带双路输入输出端口的DUT

6.5.2sequence之间的简单同步

6.5.3sequence之间的复杂同步

6.5.4仅在virtualsequence中控制objection

6.5.5在sequence中慎用forkjoin_none

6.6在sequence中使用config_db

6.6.1在sequence中获取参数

6.6.2在sequence中设置参数

6.6.3wait_modified的使用

6.7response的使用

6.7.1put_response与get_response

6.7.2response的数量问题

6.7.3responsehandler与另类的response

6.7.4rsp与req类型不同

6.8sequencelibrary

6.8.1随机选择sequence

6.8.2控制选择算法

6.8.3控制执行次数

6.8.4使用sequence_library_cfg

第7章UVM中的寄存器模型

7.1寄存器模型简介

7.1.1带寄存器配置总线的DUT

7.1.2需要寄存器模型才能做的事情

7.1.3寄存器模型中的基本概念

7.2简单的寄存器模型

7.2.1只有一个寄存器的寄存器模型

7.2.2将寄存器模型集成到验证平台中

7.2.3在验证平台中使用寄存器模型

7.3后门访问与前门访问

7.3.1UVM中前门访问的实现

7.3.2后门访问操作的定义

7.3.3使用interface进行后门访问操作

7.3.4UVM中后门访问操作的实现:DPI+VPI

7.3.5UVM中后门访问操作接口

7.4复杂的寄存器模型

7.4.1层次化的寄存器模型

7.4.2reg_file的作用

7.4.3多个域的寄存器

7.4.4多个地址的寄存器

7.4.5加入存储器

7.5寄存器模型对DUT的模拟

7.5.1期望值与镜像值

7.5.2常用操作及其对期望值和镜像值的影响

7.6寄存器模型中一些内建的sequence

7.6.1检查后门访问中hdl路径的sequence

7.6.2检查默认值的sequence

7.6.3检查读写功能的sequence

7.7寄存器模型的高级用法

7.7.1使用reg_predictor

7.7.2使用UVM_PREDICTDIRECT功能与mirror操作

7.7.3寄存器模型的随机化与update

7.7.4扩展位宽

7.8寄存器模型的其他常用函数

7.8.1get_root_blocks

7.8.2get_reg_by_offset函数

第8章UVM中的factory机制

8.1SystemVerilog对重载的支持

8.1.1任务与函数的重载

8.1.2约束的重载

8.2使用factory机制进行重载

8.2.1factory机制式的重载

8.2.2重载的方式及种类

8.2.3复杂的重载

8.2.4factory机制的调试

8.3常用的重载

8.3.1重载transaction

8.3.2重载sequence

8.3.3重载component

8.3.4重载driver以实现所有的测试用例

8.4factory机制的实现

8.4.1创建一个类的实例的方法

8.4.2根据字符串来创建一个类

8.4.3用factory机制创建实例的接口

8.4.4factory机制的本质

……

第9章UVM中代码的可重用性

第10章UVM高级应用

第11章OVM到UVM的迁移

附录ASystemVerilog使用简介

附录BDUT代码清单

附录CUVM命令行参数汇总

附录DUVM常用宏汇总

推荐帖子 最新更新时间:2023-01-27 05:48

在购买电缆故障测试仪是肯定需要了解一下它的生产厂家如何?找到一个比较好的时间...
在购买电缆故障测试仪是肯定需要了解一下它的生产厂家如何?找到一个比较好的时间长了之后,也能够让自己购买的非常合适的电缆故障测试仪,因此大家在选择之前一定要对生产厂家的市场排名有所了解。 任何一个产品在市场中也占有着非常高的销售量之后,就会有着越来越多的厂家去生产,希望从此之中能够赚到一些钱,而对于电缆故障测试仪来说更是如此,会有很多不同的厂家去生产,并且销售到市场之中。因此让很多人在选购时有所疑
ZXCQWEASD 综合技术交流
升降压DCDC TPS63810在TWS耳机里的应用
By Haiwen Huang 随着近几年TWS耳机的爆发式增长,越来越多的终端客户对TWS耳机的体积,续航,音质等提出了更高的要求。 以下我们从续航的角度给大家推荐TI最新的解决方案。图一是一个典型的TWS耳机电源框图,用一颗Iq(静态电流)低至600nA的升压芯片TPS61099将电池电压升到5V同时给两个耳机端供电。耳机端电池电压存在电压差,这将降低充电效率。 图一
alan000345 模拟与混合信号
【课程推荐】+MSP430入门课程-Launchpad CCS基本开发流程
本帖最后由 mengmengda 于 2016-7-23 11:19 编辑         今天我推荐的课程是:TI教室 > MCU > MSP430 > > MSP430入门课程-Launchpad CCS基本开发流程(MSP430入门课程-Launchpad CCS基本开发流程)  http://training.eeworld.com.cn/TI/show/course/232    
mengmengda 微控制器 MCU
今天上午10:00 有奖直播:ST 远近皆宜的无线连接方案
今天上午10:00 有奖直播:ST 远近皆宜的无线连接方案   >>点击进入直播   直播时间:3月25日上午10:00-11:30   直播主题: 远近皆宜的无线连接方案   直播介绍: 介绍意法半导体低功耗无线产品和应用案例,包低功耗蓝牙(BLE 5.0)和 小无线(Sub-1G)产品线 ,分享相关开发资源以及部分热门成功案例,具体内
EEWORLD社区 RF/无线
魔光球负离子空气净化器拆解
      这次来拆一个负离子空气净化器,这个是EE以前活动送的,据说是光触媒+负离子,能有效过滤PM2.5及甲醛。实际使用我也没感觉到什么不同,下面就来拆开看看是什么原理吧。      下图是完整图,使用的时候金字塔顶会吹风出来。      下面来全部拆开,如下图:      元器件相当的少啊。只有一个,下面来详细看看:      工作原理就是将产生的负离子使用风扇将风吹出去,见下图:    
lb8820265 以拆会友
#TI培训学习有礼#掌握这个小技巧?让你的学习更高效、轻松!
活动颁奖: 获奖网友为如下: btty038 yin_wu_qing lising wtx0121 landeng1986 鹏子1761 王欣刚 szy123
EE大学堂 TI技术论坛
浪涌危害的认识
我们首先做一个小科普:什么是浪涌?     浪涌还有一个名字叫做突波,所以简单理解,浪涌就是电压突破了正常的正弦波形;准确来说是超出正常工作电压的瞬间过电压。本质上讲,浪涌是发生在仅仅几百万分之一秒时间内的一种剧烈脉冲。     浪涌产生的原因比较多,比如重型设备、短路、电源切换或大型发动机都可能引发电路中产生浪涌。总结而言,供电系统浪涌产生的原因分为外部和内部两种。 1、外部原因    
qwqwqw2088 模拟与混合信号
DCM评估样品免费申请啦!
  >>>如上图,点此免费申请   DCM是一个隔离式、稳压DC-DC转换器,可在未稳压宽范围输入运行,以产生隔离输出。凭借其高频零电压开关(ZVS)拓扑结构,DCM转换器一直致力于为整个输入电压范围提供高效率。模块DCM转换器和下游DC-DC产品支持高效配电,为未稳压电源到负载点提供卓越的电源系统性能和连接性。   利用Vicor的ChiP封装技术的散热和密度优势,
eric_wang 模拟电子

评论

G986
谢谢楼主的分享!
2023-01-28 16:13:29
登录/注册

意见反馈

求资源

回顶部
查找数据手册?

EEWorld Datasheet 技术支持

热门活动

相关视频

可能感兴趣器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved
×