第1章 集成电路设计概论 1
1.1 集成电路发展概况 1
1.2 集成电路的设计特点和方法 2
1.2.1 集成电路的设计特点 2
1.2.2 集成电路的设计方法 3
1.3 集成电路设计流程简介 10
1.4 EDA工具介绍 11
习题 11
第2章 CMOS电路设计基础 12
2.1 晶体管知识简介 12
2.2 MOS晶体管开关 13
2.2.1 独立晶体管开关 13
2.2.2 复合晶体管开关 15
2.3 基本的CMOS逻辑门 16
2.3.1 反相器 17
2.3.2 CMOS与非门 18
2.3.3 CMOS或非门 19
2.3.4 CMOS传输门 19
2.3.5 复合逻辑门 20
2.4 逻辑设计相关基础知识简介 21
2.4.1 时钟信号 21
2.4.2 时延计算 22
习题 23
第3章 CMOS集成电路的物理结构 24
3.1 版图设计的概念和方法 24
3.1.1 版图设计的概念 24
3.1.2 版图设计的方法 25
3.2 集成电路工艺简介 27
3.2.1 半导体知识简介 28
3.2.2 集成电路主要制造工艺简介 29
3.3 CMOS制造工艺简介 34
3.4 版图中的绘图层 37
3.4.1 N阱层 37
3.4.2 有源区层 38
3.4.3 N选择层和P选择层 38
3.4.4 多晶硅栅层 38
3.4.5 金属层 38
3.4.6 接触孔层和通孔层 39
3.4.7 文字标注层 40
3.4.8 焊盘层 40
3.5 CMOS晶体管的版图 40
3.5.1 MOS晶体管的基本版图结构 41
3.5.2 多指结构的MOS晶体管版图设计 42
3.5.3 串联晶体管的版图设计 44
3.5.4 并联晶体管的版图设计 44
3.5.5 衬底连接和保护环 45
3.5.6 器件的失配问题 45
3.6 版图的验证 47
3.6.1 设计规则检查 48
3.6.2 电学规则检查 52
3.6.3 版图寄生参数提取 53
3.6.4 电路图与版图一致性检查 53
3.7 版图输出数据 54
3.7.1 GDS Ⅱ格式 54
3.7.2 CIF格式 54
3.7.3 EDIF格式 54
3.7.4 Oasis格式 55
3.8 版图设计的通用准则 55
3.8.1 电源线的版图设计准则 55
3.8.2 信号线的版图设计准则 56
3.8.3 晶体管的版图设计准则 56
3.8.4 层次化版图设计准则 56
3.8.5 单元设计准则 57
3.9 基本逻辑门的版图设计 58
3.9.1 CMOS反相器版图设计 58
3.9.2 缓冲器的版图设计 59
3.9.3 与非门的版图设计 60
3.9.4 或非门的版图设计 62
3.9.5 传输门的版图设计 62
3.9.6 复合逻辑门的版图设计 63
习题 24
第4章 Tanner的L-Edit版图编辑器 65
4.1 Tanner版图设计工具介绍 65
4.1.1 Tanner工具简介 65
4.1.2 L-Edit版图编辑器简介 67
4.2 L-Edit 版图编辑器的启动和界面介绍 67
4.2.1 启动L-Edit 67
4.2.2 用户界面介绍 67
4.3 L-Edit的设置 80
4.3.1 设置文件 80
4.3.2 L-Edit应用参数的设置 82
4.3.3 L-Edit设计参数的设置 92
4.3.4 L-Edit绘图层的设置 98
4.4 L-Edit中的文件 101
4.4.1 文件的创建 101
4.4.2 文件的打开、关闭及保存 102
4.4.3 文件的打印 103
4.4.4 文件的信息 103
4.4.5 列出绘图层上的对象类型 104
4.4.6 将文件信息传递到单元 104
4.5 文件的输入和输出 104
4.5.1 文件的输入 104
4.5.2 文件的输出 105
4.6 L-Edit中的单元 107
4.6.1 创建一个新单元 107
4.6.2 打开单元 108
4.6.3 恢复单元 109
4.6.4 对单元重命名 109
4.6.5 拷贝单元 110
4.6.6 删除单元 112
4.6.7 设计导航 113
4.6.8 同时对多个单元进行操作 115
4.6.9 交叉引用单元 116
4.6.10 单元信息 118
4.6.11 例化单元 120
4.7 L-Edit中的绘图对象 124
4.7.1 绘图对象的类型及对应绘图工具 125
4.7.2 利用绘图工具进行绘图 126
4.7.3 利用绘图工具对绘图对象进行图形编辑 128
4.7.4 利用文本方式对绘图对象进行图形编辑 130
4.8 L-Edit中的对象编辑 139
4.8.1 选择对象 139
4.8.2 取消对象选定 140
4.8.3 查找对象 141
4.8.4 组合对象或取消组合 142
4.8.5 移动对象 143
4.8.6 改变对象的方向 145
4.8.7 将对象从一个绘图层移动到另一个绘图层 146
4.8.8 复制对象 146
4.8.9 粘贴对象 146
4.8.10 删除对象 147
4.8.11 撤消和恢复操作 147
4.9 版图的衍生绘图层 147
4.9.1 定义标准衍生绘图层 148
4.9.2 衍生绘图层的生成 151
4.9.3 删除衍生绘图层 152
4.10 版图的视图窗口 152
4.10.1 显示控制 152
4.10.2 对象的显示和隐藏 154
4.10.3 绘图层的显示或隐藏 154
4.10.4 观察版图的层次 154
4.10.5 设计中例化单元的视图 155
4.10.6 缩放操作 156
4.10.7 视图面板操作 156
4.10.8 利用鼠标进行缩放和视图面板操作 157
4.10.9 关于缩放和视图面板操作的其他命令 157
4.11 L-Edit中的横截面观察器 158
4.11.1 利用横截面观察器观察视图的操作方法 158
4.11.2 关于工艺定义文件 159
习题 161
第5章 设计规则检查和版图提取 162
5.1 设计规则检查 162
5.1.1 运行DRC 162
5.1.2 交互式DRC 164
5.2 版图的提取 167
习题 171
第6章 使用L-Edit设计版图实例 172
6.1 使用版图编辑器画PMOS晶体管的版图 172
6.2 使用版图编辑器画NMOS晶体管的版图 181
6.3 使用版图编辑器画反相器的版图 183
6.4 使用版图编辑器画并联晶体管的版图 191
6.5 使用版图编辑器画串联晶体管的版图 199
习题 204
第7章 Tanner的S-Edit电路图编辑器 206
7.1 S-Edit电路图编辑器简介 206
7.1.1 动S-Edit电路图编辑器 206
7.1.2 S-Edit界面介绍 206
7.1.3 设计的结构 206
7.1.4 显示模式 207
7.1.5 S-Edit的设置 207
7.2 电路图的设计 207
7.2.1 S-Edit中的设计 207
7.2.2 S-Edit中的库 208
7.2.3 S-Edit中的单元和视图 208
7.3 电路设计图的查看、绘制和编辑 210
7.3.1 设计窗口的平移和缩放 210
7.3.2 注释图形的绘制 210
7.3.3 对象的选择 211
7.3.4 对象的移动 211
7.3.5 对象绘图属性的更改 211
7.3.6 对象的删除 211
7.3.7 对象的复制和粘贴 211
7.3.8 Undo和Redo命令的使用 212
7.4 电路图的连接关系 212
7.4.1 连线 212
7.4.2 端口 212
7.4.3 焊点 212
7.4.4 连接点 212
7.4.5 电路图的验证 213
7.5 网表和仿真 213
7.5.1 输入网表 213
7.5.2 输出网表 214
7.6 实例 215
7.7 创建符号视图 217
习题 217
第8章 电路图与版图一致性检查 218
8.1 LVS比较器简介 218
8.1.1 启动LVS比较器 218
8.1.2 输入和输出文件 218
8.1.3 用户界面 218
8.1.4 文本文件的编辑 219
8.2 LVS的设置和运行 219
8.2.1 LVS的设置窗口 226
8.2.2 执行LVS验证 227
8.2.3 验证队列 227
8.2.4 用批处理文件运行LVS 228
习题 228
附录 229
附录A L-Edit版图编辑器中文件类型与扩展名对照表 229
附录B 设计导航界面符号解释 229
参考文献 230