第1章 FPGA/CPLD简介 1
1.1 可编程逻辑设计技术简介 1
1.1.1 可编程逻辑器件发展简史 1
1.1.2 可编程逻辑器件分类 2
1.2 FPGA/CPLD的基本结构 3
1.2.1 FPGA的基本结构 3
1.2.2 CPLD的基本结构 7
1.2.3 FPGA和CPLD的比较 9
1.3 FPGA/CPLD的设计流程 10
1.4 FPGA/CPLD的常用开发工具 14
1.5下一代可编程逻辑设计技术展望 18
1.5.1 下一代可编程逻辑器件硬件上的四大发展趋势 18
1.5.2 下一代EDA软件设计方法发展趋势 24
1.6 小结 27
1.7问题与思考 28
第2章 Altera FPGA/CPLD的结构 29
2.1 Altera高密度FPGA 29
2.1.1 主流高端FPGA——Stratix 29
2.1.2 内嵌高速串行收发器的FPGA——Stratix GX 51
2.1.3 新一代90nm高端FPGA——Stratix Ⅱ 55
2.2.1 主流低成本FPGA——Cyclone 58
2.2 Altera低成本FPGA 58
2.2.2 新一代低成本FPGA——Cyclone Ⅱ 63
2.3 Altera的CPLD器件 68
2.3.1 主流的CPLD———MAX 3000A 68
2.3.2 CPLD的革命——MAX Ⅱ 70
2.4 小结 72
2.5问题与思考 73
第3章 Altera Quartus Ⅱ开发流程 75
3.1 Quartus Ⅱ软件综述 75
3.1.1 Quartus Ⅱ软件的特点及支持的器件 75
3.1.2 Quartus Ⅱ软件的工具及功能简介 76
3.1.3 Quartus Ⅱ软件的用户界面 78
3.2设计输入 81
3.2.1 设计输入方式 83
3.2.2 设计规划 84
3.2.3 设计输入文件实例 84
3.2.4设计约束 86
3.3综合 91
3.3.1 使用Quartus Ⅱ软件集成综合 91
3.3.2 控制综合 92
3.3.3 综合实例 96
3.4.1 设置布局布线参数 98
3.4布局布线 98
3.3.4 第三方综合工具 98
3.4.2 布局布线实例 102
3.4.3 增量布局布线 103
3.4.4 反标保留分配 103
3.5仿真 104
3.5.1 指定仿真器设置 105
3.5.2 建立矢量源文件 106
3.5.3 仿真实例 109
3.6编程与配置 112
3.6.1 建立编程文件 112
3.5.4 第三方仿真工具 112
3.6.2 器件编程和配置 114
3.7 小结 116
3.8问题与思考 116
第4章 Altera的IP工具 117
4.1 IP的概念、Altera的IP 117
4.1.1 IP的概念 117
4.1.2 Altera可提供的IP 118
4.1.3 Altera IP在设计中的作用 120
4.2使用Altera的基本宏功能 121
4.2.1 定制基本宏功能 122
4.2.2 实现基本宏功能 126
4.2.3 设计实例 129
4.3 使用Altera的IP核 132
4.3.1 定制IP核 132
4.3.2 实现IP核 137
4.3.3 设计实例 137
4.4 小结 138
4.5 问题与思考 139
第5章 Quartus Ⅱ的常用辅助设计工具 141
5.1 I/O分配验证 141
5.1.2 I/O分配验证流程 142
5.1.1 I/O分配验证功能简介 142
5.1.3 用于I/O分配验证的输入 145
5.1.4 运行I/O分配验证 146
5.2 功率分析 148
5.2.1 Excel-based功率计算器 148
5.2.2 Simulation-based功率估算 150
5.3 RTL阅读器 151
5.3.1 RTL阅读器简介 151
5.3.2 RTL阅读器用户界面 152
5.3.3 原理图的分页和模块层次的切换 153
5.3.4 过滤原理图 154
5.3.6 在原理图中查找节点或网线 156
5.3.5 将原理图中的节点定位到源设计文件 156
5.3.7 使用RTL阅读器分析设计中的问题 157
5.4 SignalProbe及SignalTap Ⅱ逻辑分析器 157
5.4.1 SignalProbe 157
5.4.1 SignalTap Ⅱ逻辑分析器 160
5.5 时序收敛平面布局规划器(Timing Closure Floorplan) 166
5.5.1 使用Timing ClosureFloorplan分析设计 167
5.5.2 使用Timing Closure Floorplan优化设计 173
5.6 Chip Editor底层编辑器 173
5.6.1 Chip Editor功能简介 173
5.6.2 使用Chip Editor的设计流程 174
5.6.3 Chip Editor视图 175
5.6.4 资源特性编辑器 177
5.6.5 Chip Editor的一般应用 181
5.7工程更改管理(ECO) 181
5.7.1 ECO简介 182
5.7.2 ECO的应用范围 182
5.7.3 ECO的操作流程 183
5.7.4 使用Change Manager查看和管理更改 184
5.7.5 ECO验证 185
5.8 小结 185
5.9问题与思考 185
6.1.1 配置方式 187
第6章 编程与配置 187
6.1 配置Altera FPGA 187
6.1.2 主动串行(AS) 193
6.1.3被动串行(PS) 196
6.1.4 快速被动并行(FPP) 198
6.1.5 被动并行异步(PPA) 199
6.1.6 JTAG配置方式 201
6.1.7 ByteBlaster Ⅱ下载电缆 202
6.2配置文件和软件支持 204
6.2.1 软件支持 204
6.1.8 配置芯片 204
6.2.2 配置文件 206
6.3单板设计及调试注意事项 209
6.3.1 配置的可靠性 210
6.3.2 单板设计要点 210
6.3.3 调试建议 211
6.4小结 213
6.5问题与思考 213
第7章 MAX+PLUS Ⅱ过渡到Quartus Ⅱ 215
7.1 MAX+PLUS Ⅱ与Quartus Ⅱ的功能比较 215
7.2.1 改变GUI风格 217
7.2 转换MAX+PLUS Ⅱ设计 217
7.2.2 转换MAX+PLUS Ⅱ工程 218
7.2.3 查看新工程 219
7.2.4 导入MAX+PLUS Ⅱ配置文件 220
7.3编辑工程 221
7.3.1 修改设计芯片 221
7.3.2 设置编译选项 223
7.4编译 224
7.4.1 运行编译器 224
7.4.2 查看工程结构 226
7.4.3 编译报告 227
7.5 时序分析 228
7.5.1 时序设置 228
7.5.2 运行时序分析器 229
7.5.3 时序分析指定路径 230
7.5.4 时序约束布局器 232
7.6仿真 233
7.6.1 功能仿真 233
7.6.2 时序仿真 234
7.6.3查看仿真报告 235
7.8问题与思考 236
7.7 小结 236
第8章 第三方EDA工具 237
8.1 第三方EDA工具综述 237
8.1.1 NativeLink与WYSIWYG 237
8.1.2 3种EDA工具的使用流程 238
8.1.3 Quartus Ⅱ支持的第三方工具 238
8.2仿真的概念与ModelSim仿真工具 240
8.2.1 仿真简介 240
8.2.2 仿真的切入点 241
8.2.4 ModelSim的图形用户界面 243
8.2.3 ModelSim仿真工具的不同版本 243
8.2.5 ModelSim的基本仿真步骤 254
8.2.6 使用ModelSim进行功能仿真 259
8.2.7 使用ModelSim进行时序仿真 263
8.2.8 ModelSim仿真工具高级应用 265
8.3 综合的概念与Synplify/Synplify Pro综合工具 275
8.3.1 Synplify/Synplify Pro的功能与特点 275
8.3.2 Synplify Pro的用户界面 281
8.3.3 Synplify Pro综合流程 284
8.3.4 Synplify Pro的其他综合技巧 305
8.4小结 317
8.5问题与思考 317