SystemVerilog的听课学习笔记,包括讲义截取、知识点记录、注意事项等细节的标注。
目录如下:
第一章 SV环境构建常识 1
1.1 数据类型 1
四、二值逻辑 4
定宽数组 9
foreach 13
动态数组 16
队列 19
关联数组 21
枚举类型 23
字符串 25
1.2 过程块和方法 27
initial和always 30
function逻辑电路 33
task时序电路 35
动态 静态变量 39
1.3 设计例化和连接 45
第二章 验证的方法 393
动态仿真 395
静态检查 397
虚拟模型 403
硬件加速 405
效能验证 408
性能验证 410
第三章 SV组件实现 99
3.1 接口 100
什么是interface 101
接口的优势 108
3.2 采样和数据驱动 112
竞争问题 113
接口中的时序块clocking 123
利于clocking的驱动 133
3.3 测试的开始和结束 136
仿真开始 139
program隐式结束 143
program显式结束 145
软件域program 147
3.4 调试方法 150
第四章 验证的计划 166
4.1 计划概述 166
4.2 计划的内容 173
4.3 计划的实现 185
4.4 计划的进程评估 194
第五章 验证的管理 277
6.1 验证的周期检查 277
6.2 管理三要素 291
6.3 验证的收敛 303
6.4 问题追踪 314
6.5 团队建设 321
6.6 验证的专业化 330
第六章 验证平台的结构 48
2.1 测试平台 49
2.2 硬件设计描述 55
MCDF接口描述 58
MCDF接口时序 62
MCDF寄存器描述 65
2.3 激励发生器 67
channel initiator 72
register initiator 73
2.4 监测器 74
2.5 比较器 81
2.6 验证结构 95
第七章 激励发生封装:类 209
5.1 概述 209
5.2 类的成员 233
5.3 类的继承 245
三种类型权限 protected/local/public 247
this super 253
成员覆盖 257
5.4 句柄的使用 263
5.5 包的使用 269
第八章 激励发生的随机化 340
7.1 随机约束和分布 340
权重分布 353
条件约束 355
7.2 约束块控制 358
7.3 随机函数 366
7.4 数组约束 373
7.5 随机控制 388
第九章 线程与通信 432
9.1 线程的使用 432
9.2 线程的控制 441
三个fork...join 443
等待衍生线程 451
停止线程disable 451
9.3 线程的通信 458
第十章 进程评估:覆盖率 495
10.1 覆盖率类型 495
10.2 功能覆盖策略 510
10.3 覆盖组 516
10.4 数据采样 524
10.5 覆盖选项 544
10.6 数据分析 550
第十一章 SV语言核心进阶 552
11.1 类型转换 552
11.2 虚方法 564
11.3 对象拷贝 575
11.4 回调函数 584
11.5 参数化的类 590
第十二章 UVM简介 392
8.2 UVM简介 414
8.3 UVM组件 420
8.4 UVM环境 425
1