第1章 可编程逻辑器件 1
目录 1
1.1 专用集成电路ASIC 2
1.1.1 可编程逻辑器件PLD 3
1.1.2 可编程PROM和可编程PLA 3
1.1.3 可编程阵列逻辑PAL 4
1.1.4 通用阵列逻辑GAL 4
1.2 FPGA/CPLD概述 5
1.3.1 基于乘积项(Product-Term)的PLD结构 6
1.3 PLD/FPGA结构与原理 6
1.3.2 查找表(Look-Up-Table)的原理与结构 9
1.4 Altera产品简介 11
1.4.1 Altera PLD的优点 11
1.4.2 Altera系列芯片 12
1.5 Altera的MAX 7000系列器件介绍 16
1.5.1 MAX概述 16
1.5.2 MAX 7000的功能描述 18
1.5.4 MAX 7000输出配置 25
1.5.5 MAX 7000器件编程 25
1.5.3 MAX 7000可编程速度/功率控制 25
1.5.6 MAX 7000边界扫描 26
1.5.7 MAX 7000设计加密 26
1.5.8 MAX 7000一般性测试 26
1.5.9 MAX 7000的QFP运载架和开发插座 26
1.6 Altera的FLEX 10K系列器件介绍 27
1.6.1 FLEX 10K器件概述 27
1.6.2 FLEX 10K的EAB单元 27
1.6.3 FLEX 10K逻辑单元和逻辑阵列块 32
1.6.4 FLEX 10K的FastTrack连接 40
1.6.5 FLEX 10K的I/O单元 42
1.6.6 FLEX 10K时钟锁定和时钟自举 46
1.6.7 FLEX 10K输出配置 47
1.6.8 FLEX 10K JATG边界扫描 48
1.6.9 FLEX 10K一般性测试 48
1.6.10 FLEX 10K定时模型 48
第2章 MAX plus Ⅱ概述 51
2.1 MAX plus Ⅱ的系统配置和安装 52
2.1.1 推荐的系统配置 52
2.1.2 MAX plus Ⅱ的安装 54
2.2 MAX plus Ⅱ的授权 62
2.3 初识MAX plus Ⅱ 67
2.3.1 管理器窗口 68
2.3.2 图形编辑器 71
2.3.3 符号编辑器 71
2.3.4 文本编辑器 72
2.3.5 波形编辑器 73
2.3.6 编译器窗口 73
2.3.7 仿真窗口 74
2.3.8 时间分析器 74
2.3.9 器件编程窗口 76
2.3.10 底层图编辑器 77
2.3.11 层次显示窗口 79
2.4 MAX plusⅡ的设计流程 79
2.4.1 设计输入 80
2.4.2 设计处理 81
2.4.3 设计校验 82
2.4.4 器件编程 83
2.5 入门实例 84
2.5.1 实例设计输入 84
2.5.2 设计编译 87
2.5.3 模拟仿真 89
2.5.4 定时分析 92
第3章 原理图输入法设计 93
3.1 设计编写规则 93
3.1.1 管脚名称 93
3.1.2 结点名称 94
3.1.3 总线名称 94
3.1.4 文件名称 94
3.1.5 项目名称 95
3.2.1 原理图编译器 96
3.2 原理图输入法设计 96
3.2.2 原理图设计流程 97
3.2.3 符号编辑流程 111
3.3 器件选择和管脚锁定 114
3.3.1 器件选择 114
3.3.2 管脚锁定 118
3.4 底层图编辑器锁定引脚 123
3.4.1 查看适配结果 123
3.4.2 修改锁定引脚 125
3.4.3 重新分配管脚 126
第4章 设计项目编译 128
4.1 设计医生 128
4.2 仿真网表的生成 131
4.3 适配规则和报告文件的设定 132
4.3.1 适配规则设定 132
4.3.2 报告文件的设定 134
4.4 逻辑综合选项设定 137
4.4.1 全局逻辑综合选项 137
4.4.2 局部逻辑综合选项 141
4.5 全局器件属性设定 145
4.6 时间需求选项 146
4.7 打包(Clique)设定 148
4.8 其他设置 153
4.8.1 全局参数设置 153
4.8.2 相关管脚设定 154
4.8.3 忽略和清除工程设置 155
4.8.4 反注功能 155
4.8.5 转换格式 156
4.8.6 接口设置 156
4.9 编译结果 159
4.9.1 察看报告文件 161
4.9.2 观察适配结果 171
4.9.3 打开设计医生再编译 174
4.9.4 生成VHDL输出文件 176
第5章 时序电路仿真 180
5.1 时序电路设计 180
5.2 项目编译 184
5.3 波形仿真 185
5.3.1 波形编辑器 185
5.3.2 添加节点信号 186
5.3.3 信号赋值 190
5.3.4 执行仿真 193
5.3.5 定时分析 197
5.3.6 Probe的使用 203
第6章 硬件描述语言VHDL 208
6.1 VHDL语言介绍 208
6.1.1 VHDL历史 208
6.1.2 VHDL设计单元 209
6.2 基本的VHDL术语 212
6.3.1 信号赋值语句 215
6.3 VHDL行为建模 215
6.3.2 进程语句 225
6.4 VHDL的数据对象和数据类型 239
6.4.1 数据对象 239
6.4.2 数据类型 241
6.5 VHDL的子程序 256
6.6 VHDL预定义属性 268
6.6.1 值类属性 268
6.6.2 函数类属性 272
6.6.3 信号类属性 278
6.6.5 范围类属性 282
6.6.4 类型类属性 282
6.7 VHDL的配置 283
6.7.1 默认配置 283
6.7.2 元件配置 285
6.7.3 块配置 288
6.7.4 结构配置 290
第7章 文本输入法设计 293
7.1 VHDL设计编写规则 293
7.2.1 文本编辑器 295
7.2 文本输入法设计 295
7.2.2 VHDL设计流程 297
7.3 波形输入法输入 306
7.4 层次设计方法 308
7.4.1 功能模块 308
7.4.2 层次设计举例 316
第8章 器件编程 319
8.1 硬件设置和编程下载 319
8.2.1 编程文件选择 323
8.2 编程文件选择和转换 323
8.2.2 编程文件转换 325
8.3 多器件编程 327
8.3.1 多器件JTAG链编程配置 328
8.3.2 多个FLEX器件编程 331
8.4 EPC系列配置器件的设置编程 333
8.5 ByteBlaster下载方式 336
8.5.1 下载电缆介绍 336
8.5.2 工作电路介绍 341
8.6 Windows 2000下器件编程和下载 346