第一章 原理图获取和生成 1
1.1 引言 1
1.2 屏幕和菜单 2
1.2.1 屏幕设置 2
1.2.2 菜单设置 4
1.2.3 菜单设计 4
1.3 层次型设计方法和单元结构 5
1.3.1 层次型设计方法 5
1.3.2 单元结构 7
1.4 布线问题 12
1.4.1 原理图的自动布线 12
1.4.2 单线网的布线问题 13
1.4.3 多线网的布线问题 14
1.5 基于算法的原理图生成 16
1.5.1 原理图生成的基本原则 16
1.5.2 数学问题 16
1.5.3 求解线相交数最小化的启发式算法 18
1.5.4 物理布局与布线 22
1.6 基于规则的原理图生成 23
1.6.1 基本原理 23
1.6.2 知识获取 24
1.6.3 HAL系统概貌 24
1.6.4 布局规则 24
1.6.5 布线规则 25
参考文献 26
8.2.3 线探索方法 27
2.1 硬件描述语言概述 28
第二章 硬件描述语言 28
2.2 寄存器传输 30
2.3 寄存器传输语言 31
2.4 AHPL语言 33
2.4.1 AHPL语言的约定 33
2.4.2 AHPL语言的编译及功能模拟 38
2.4.3 硬件编译器的概念 39
2.5 CDL语言的发展——具有精确时间描述的ERES语言 44
2.5.1 CDL语言 44
2.5.2 ERES的语言功能 45
2.5.3 使用ERES对数字系统进行模拟 52
2.6 VHDL语言介绍 53
参考文献 58
第三章 计算机辅助逻辑综合 60
3.1 基本定义 60
3.1.1 逻辑函数及其多维体表示 60
3.1.2 术语 62
3.1.3 多维体的运算 64
3.2.1 质蕴涵项的计算 69
3.2 单输出函数的最小造价覆盖 69
3.2.2 求解覆盖问题 75
3.3 多输出函数的综合 80
3.3.1 多输出函数的质蕴涵项及全部质蕴涵项集合 81
3.3.2 多输出函数的连接覆盖 86
3.3.3 消去冗余连线 87
3.4 同步时序电路综合 89
3.4.1 状态化简 90
3.4.2 状态分配 93
3.4.3 时序电路的实现 100
参考文献 101
第四章 逻辑模拟和测试生成 104
4.1 逻辑模拟 104
4.1.1 一般概念 104
4.1.2 逻辑模型 107
4.1.3 模拟算法 109
4.1.4 多值逻辑模拟 115
4.2.1 逻辑故障模型 118
4.2 故障模拟 118
4.2.2 故障模拟算法 119
4.3 测试生成 123
4.3.1 模拟在测试生成中的应用 123
4.3.2 组合电路测试生成算法 125
4.3.3 时序电路测试生成算法 134
4.3.4 故障辞典 138
4.4 可测试性设计 139
4.4.1 可测试性分析 141
4.4.2 可测试设计技术 145
参考文献 152
第五章 电路分析 154
5.1 线性网络方程的建立 154
5.1.1 理想元件和它们的特性方程 155
5.1.2 KCL、KVL和网络的拓扑方程 156
5.1.3 稀疏表格法 157
5.1.4 改进的节点电压法 158
5.2 线性代数方程的求解 162
5.2.1 高斯消元法和LU分解法 162
5.2.2 主元选取 165
5.2.3 换序问题 166
5.2.4 稀疏矩阵的数据结构 168
5.3 非线性电路的直流分析 170
5.3.1 牛顿-莱夫森方法 170
5.3.2 非线性器件的迭代伴随模型 171
5.3.3 收敛性的改进算法 172
5.3.4 折线近似求解非线性方程 174
5.4 非线性电路的瞬态分析 175
5.4.1 简单的积分方法 176
5.4.2 积分方法的阶和截断误差 177
5.4.3 积分方法的稳定性 178
5.4.4 贮能元件的步进伴随模型 180
5.5 以松弛法为基础的电路分析 182
5.5.1 松弛算法 183
5.5.2 时域模型 185
5.5.3 迭代时域分析 188
5.5.4 波形松弛法 189
参考文献 192
第六章 符号法版图设计 194
6.1 概况 194
6.2 设计对象描述 195
6.2.1 符号版图描述 196
6.2.2 工艺描述 199
6.2.3 数据结构及其操作 201
6.3 版图压缩与优化 207
6.3.1 约束图算法 207
6.3.2 剪辑线算法 210
6.3.3 虚拟网格算法 212
6.3.4 规划算法 213
6.3.5 弯折算法 215
6.3.6 “区域提纯”算法 216
6.4 SESAMI符号法版图设计系统 217
6.4.1 系统概述 217
2.4.2 系统结构 218
6.4.3 交互编辑模块 219
6.4.4 版图生成模块 219
参考文献 220
第七章 自动布局 225
7.1 联结规则和图模型 225
7.1.1 完全图模型 226
7.2 目标函数 227
7.1.2 偶图模型 227
7.2.1 联线总长最短的目标函数 228
7.2.2 最大割线最小的目标函数 228
7.2.4 三种目标函数比较 229
7.2.3 最大密度最小的目标函数 229
7.3 构造型布局算法 230
7.3.1 构造型布局算法的基本思想 231
7.3.2 构造型布局算法的步骤 231
7.4 广义力向量松弛法——一种典型的迭代改善算法 234
7.4.1 广义力向量松弛法的基本思想 234
7.4.2 广义力向量松弛法的算法步骤 235
7.4.3 广义力向量松弛法的实验结果及分析 236
7.5 最小割算法 240
7.5.1 最小割算法的基本思想和算法步骤 240
7.5.2 任意单元的最小割算法 243
7.6.1 最小通道密度算法的基本思想 246
7.6 最小通道密度算法 246
7.6.2 通道段密度的计算 248
7.6.3 算法和某些实验结果 249
7.7 分析型算法 250
7.7.1 结合空间定位的相对最优布局算法 251
7.7.2 非线性规划法(罚函数法) 253
7.8 模拟退火法 257
7.8.1 基本算法思想及步骤 257
7.8.2 模拟退火法的某些实验结果 258
参考文献 259
第八章 自动布线 262
8.1 引言 262
8.1.1 自功布线设计的目标 262
8.1.2 基本概念 262
8.1.3 自动布线过程的分类 262
8.2 最短路径问题和斯坦纳树问题 264
8.2.1 两点最短距离问题 264
8.2.2 迷宫算法 265
8.2.4 最短通路方法 270
8.2.5 最小生成树方法 270
8.2.6 最小斯坦纳树问题 271
8.3 分级布线方法 274
8.3.1 布线区域的划分 274
8.3.2 总体布线 276
8.3.3 通道布线 276
8.4 总体布线方法 277
8.4.1 预测模型 277
8.4.2 调整模型 277
8.4.3 分析模型 279
8.5 通道布线 280
8.5.1 通道布线格式和约束关系 281
8.5.2 左边布线算法 283
8.5.3 最优通道布线 283
8.5.4 贪婪通道布线方法 286
8.5.5 合并算法和匹配算法 290
8.6 四边通道布线问题 298
参考文献 300
第九章 人机交互版图设计和辅助制版 302
9.1 引言 302
9.1.1 计算机图形显示简史 302
9.1.2 人机交互及其作用 302
9.2 图形显示 303
9.2.1 硬件 303
9.2.2 软件 304
9.2.3 坐标系、窗口和视口 305
9.2.4 二维变换和矩阵表示 307
9.2.5 剪取 308
9.2.6 显示档案 308
9.3 人机交互版图设计方法 309
9.3.1 人机交互版图设计概况 309
9.3.2 人机交互 310
9.3.3 版图的结构 311
9.3.4 屏区布局 312
9.3.5 人机交互命令的设计 313
9.4 人机交互版图设计中常用的命令 313
9.5 辅助制版 319
9.5.1 辅助制版系统 319
9.5.2 掩膜语言的设计思想 320
9.5.3 掩膜描述语言的编译及其实现 322
9.5.4 数据结构和图形处理方法 323
附录 国际标准图形核心系统GKS 324
参考文献 329
第十章 版图验证 332
10.1 引言 332
10.1.1 版图验证的背景 332
10.1.2 版图验证的现状 333
10.1.3 版图验证中的数学问题 334
10.2 几何设计规则检查 335
10.2.1 几何设计规则 335
10.2.2 图形的拓扑运算 337
10.2.3 图形的逻辑运算 341
10.3 电路提取 345
10.3.1 电路提取的意义 345
10.3.2 器件识别 345
10.3.3 连接提取 349
10 3.4 寄生效应及参数计算 350
10.4.2 门电路的提取 353
10.4 逻辑提取 353
10.4.1 逻辑提取的意义 353
10.4.3 功能模块的提取 358
10.5 网络比较 359
10.5.1 网络比较的意义 359
10.5.2 图论中的同构问题 359
10.5.3 网络比较的启发式算法 360
参考文献 367
第十一章 VLSI设计中的数据管理 369
11.1 VLSI-CAD中的数据库管理 369
11.1.1 数据库在VLSI-CAD系统中的作用 369
11.1.2 VLSI设计中的数据类型 370
11.1.3 VLSI中数据库的特点 372
11.2.1 早期的简单CAD数据文件管理 373
11.2.2 带有访问方法的CAD数据文件管理 373
11.2 CAD数据的文件管理 373
11.2.3 文件管理下的VLSI-CAD系统 374
11.2.4 文件管理CAD系统的缺点 376
11.3 DBMS支持下的CAD系统 377
11.3.1 DBMS的一般概念 377
11.3.2 VLSI中DBMS的特点 379
11.3.3 DBMS支持下的CAD系统结构 385
11.3.4 DBMS支持下的CAD系统 387
11.4 VLSI数据库的设计 390
11.4.1 一般数据库的设计过程 390
11.4.2 数据库的概念结构设计 391
11.4.3 数据库的逻辑设计 393
11.4.4 数据库的物理设计 394
11.4.5 标准库与设计库的划分 395
11.4.6 CMOS门陈列数据库的设计举例 395
参考文献 401