第1章 数字集成电路验证技术的发展
1.1 数字集成电路验证的概念及地位
1.1.1 验证的概念
1.1.2 验证在设计流程中的地位
1.2 功能验证
1.2.1 功能验证过程
1.2.2 功能验证相关技术
1.2.3 功能验证相关语言
1.2.4 功能验证相关方法
1.2.5 功能验证相关研究热点
1.3 验证的历史、现在与将来
习题
第2章 数字集成电路验证基础
2.1 集成电路芯片开发流程
2.1.1 系统设计
2.1.2 功能设计
2.1.3 功能验证
2.1.4 DFT设计/逻辑综合
2.1.5 版图设计验证
2.1.6 时序验证
2.1.7 芯片试做与芯片测试
2.2 验证的概念和分类
2.3 验证与设计、测试的区别
2.4 验证环境的基本结构
2.4.1 验证环境的概念
2.4.2 验证环境的结构框图
2.4.3 简单验证环境的书写结构
2.5 验证流程
习题
第3章 数字集成电路验证的常用Verilog编程语法
3.1 验证常用Verilog语法
3.1.1 assign语法
3.1.2 always语法
3.1.3 initial、`timescale、#语法
3.1.4 `define、parameter语法
3.1.5 `include语法
3.1.6 wait、@语法
3.1.7 for、repeat、while、forever语法
3.1.8 fork…join语法
3.1.9 task语法
3.1.10 event语法
3.2 验证常用Verilog系统函数
3.2.1 $display、$write、$time、$finish系统函数
3.2.2 文件操作系统函数
3.2.3 $random系统函数
习题
第4章 被测电路功能点Case抽取
4.1 Case抽取原则
4.2 Case表的制作方法
习题
第5章 断言
5.1 断言的基本概念和应用
5.2 断言的SVA语法结构
5.2.1 SVA基本结构
5.2.2 SVA与设计的连接
5.3 断言中常用的SVA语法
5.3.1 SVA基本语法
5.3.2 系统函数
5.3.3 覆盖率属性
5.3.4 断言验证库
习题
第6章 带有约束条件的随机激励
6.1 随机激励的概念和应用
6.2 随机激励的约束条件
习题
第7章 覆盖率
7.1 覆盖率的概念和应用
7.2 覆盖率的种类
7.2.1 代码覆盖率
7.2.2 断言覆盖率
7.2.3 功能覆盖率
7.3 代码覆盖率的实现方法
7.3.1 Modelsim仿真工具运行代码覆盖率
7.3.2 VCS仿真工具运行代码覆盖率
7.4 功能覆盖率的实现方法
7.4.1 通过Verilog编程实现功能覆盖率
7.4.2 通过SystemVerilog编程实现功能覆盖率
习题
第8章 结果自动对比
8.1 结果自动对比的概念和应用
8.2 期待值模型的构建方法
8.3 结果自动对比的实现
8.3.1 构造期待值模型的方式
8.3.2 读取期待值数据的方式
8.3.3 将被测电路输出打印结果文件与期待值结果文件直接比较的方式
习题
第9章 UVM验证
9.1 事务级验证的概念
9.2 UVM验证环境的特点和结构
9.2.1 UVM验证平台的结构
9.2.2 被测电路
9.2.3 interface
9.2.4 driver
9.2.5 monitor
9.2.6 sequence与sequencer
9.2.7 agent
9.2.8 reference model
9.2.9 scoreboard
9.2.10 env
9.2.11 测试用例
9.2.12 tb_top
9.2.13 UVM环境的启动
9.3 UVM基础
9.3.1 uvm_component,uvm_object派生关系
9.3.2 UVM的树形结构
9.3.3 field automation机制
9.3.4 config_db机制
9.4 UVM验证环境的运行
9.4.1 phase机制
9.4.2 objection机制
习题
第10章 仿真验证EDA工具
10.1 常用仿真验证EDA工具
10.2 Modelsim工具简介
10.3 Modelsim的使用方法
10.3.1 【方式二】的使用方法
10.3.2 【方式三】的使用方法
10.4 Modelsim中UVM验证环境的运行方法
习题
第11章 实例解析
11.1 被测电路功能点Case抽取实例解析
11.2 断言应用实例解析
11.3 随机激励应用实例解析
11.4 覆盖率应用实例解析
11.5 结果自动对比应用实例解析
11.6 UVM验证实例解析
第12章 综合项目实例
12.1 UART传输电路的功能验证项目
12.2 图像JPEG编码DCT模块的功能验证项目
参考文献
展开