第1章 数字集成电路设计概述 1
1.1 集成电路设计方法演变 1
1.2 硬件描述语言(HDL) 3
1.3 数字集成电路设计的典型流程 4
1.4 系统级集成电路设计技术 6
1.4.1 系统级集成电路设计方法 6
1.4.2 系统级集成电路设计中的IP问题 7
1.4.3 系统级集成电路测试技术 8
1.4.4 系统级集成电路芯片加工技术 9
1.4.5 系统级集成电路的发展未来 9
第2章 硬件描述语言Verilog HDL语法简介 11
2.1 Verilog HDL的发展与特点 11
2.2 模块(Module)概念 12
2.3 基本数据类型 14
2.4 基本操作数与表达式 16
2.5 过程语句 19
2.5.1 for循环语句 20
2.5.2 while循环语句 20
2.5.3 case语句 21
2.5.4 repeat循环语句 22
2.5.5 forever循环语句 23
2.6 时间与事件的概念 23
2.7 时间与事件流的控制 25
2.8 并行的概念 29
2.8.1 fork-join结构 29
2.8.2 disable语句 29
2.9 功能与任务 30
2.10.1 行为级描述 32
2.10 描述的类型 32
2.10.2 结构级描述 34
2.10.3 昆合模式表达 35
2.11 不同模块中的变量存取 36
第3章 几种提高效率的电路描述方法与技巧 41
3.1 加法结构 41
3.2 改进嵌入算子 44
3.3 使用状态信息 45
3.4 寄存器的使用 48
3.5 传播常量 50
3.6 随机逻辑描述 50
3.7 共享复杂算子 51
3.8.1 简单组合电路关键路径提取方法 53
3.8 关键路径提取 53
3.8.2 较复杂的always块中关键路径提取方法 54
3.8.3 复杂状态机中关键路径提取方法 56
第4章 Verilog HDL电路描述举例 61
4.1 组合式的零计数电路 61
4.2 时序式的零计数电路 63
4.3 状态机实现的饮料机 65
4.4 计数器实现的饮料机 69
4.5 超前进位加法器 71
第5章 自顶向下的设计方法与设计实例 77
5.1 自顶向下的层次化分析方法 77
5.2 80C51指令兼容微处理机层次化设计树 79
5.3 80C51指令兼容微处理机结构模块分析 80
5.3.1 外部接口模块 80
5.3.2 FIFO模块 84
5.3.3 ALU模块 88
5.3.4 GET_INS模块 92
5.3.5 DECODE模块 95
5.3.6 EXE_CTL模块 104
5.3.7 EXE_BRA模块 106
5.3.8 EPROM模块 109
5.3.9 外部RAM模块 110
5.3.10 系统仿真模块 111
第6章 硬盘控制器子系统模块化设计 113
6.1 功能描述 113
6.2 硬盘控制器子系统结构 113
6.2.1 异步FIFO电路 114
6.2.2 CRC计算电路 128
6.2.3 UDMA状态机电路 133
6.3 硬盘功能模拟 143
6.4 系统功能测试 189
第7章 基于PCI局部总线的控制器模块化设计 193
7.1 功能描述 193
7.2 PCI Master状态机描述 194
7.3 PCI Slave状态机描述 197
7.4 系统功能模拟 201
第8章 Verilog建模与调试技巧 209
8.1 双向端口 209
8.2 具有不确定输入值的组合电路 213
8.3 作查表用的大存储器 214
8.4 加载交叉存取式存储器 220
8.6 Verilog执行顺序和调度的影响 223
8.5 建立和维持约束条件的验证 223
8.7 复杂模块测试向量的产生 226
8.8 测试向量的验证 230
第9章 数字集成电路中的嵌入式自测(BIST)电路 233
9.1 数字逻辑电路测试 233
9.2 嵌入式自测(BIST)电路原理 234
9.2.1 伪随机测试向量产生 234
9.2.2 特征分析 238
9.2.3 嵌入逻辑块观测器 242
9.3 存储器嵌入式自测(BIST)电路 244
9.3.1 存储器BIST的概念 244
9.3.2 存储器测试与错误类型 245
9.3.3 存储器BIST电路结构 246
9.3.4 存储器BIST电路举例 247
10.1 HPT366系统结构 289
第10章 真实ASIC系统举例 289
10.2 HPT366的封装与电气特性 290
10.3 HPT366的应用电路 295
附录A Verilog形式化语法定义 299
A.1 BNF语法形式 299
A.2 BNF语法 299
附录B Verilog关键词 313
附录C HDL编译器不支持的Verilog结构 315
C.1 不支持的定义和说明 315
C.2 不支持的语句 315
C.3 不支持的操作符 316
C.4 不支持的门级结构 316
C.5 不支持的其他结构 316
参考文献 317