第1章 概述 1
1.1 EDA技术的发展 1
1.1.1 EDA技术的基本特征 1
1.1.2 EDA技术的发展 3
1.2 嵌入式系统简介 4
1.2.1 嵌入式系统定义 5
1.2.2 嵌入式系统分类 5
1.3 IP核 6
1.4 SOPC技术 7
第2章 Altera公司可编程逻辑器件简介 10
2.1 CycloneⅡ器件 10
2.2 CycloneⅢ器件 17
2.3 StratixⅢ器件 22
第3章 QuartusⅡ 30
3.1 QuartusⅡ软件介绍 30
3.1.1 QuartusⅡ的主要功能 30
3.1.2 QuartusⅡ的设计流程 30
3.2 DE2介绍 31
3.2.1 DE2开发平台 31
3.2.2 DE2控制面板 33
3.3 应用实例一:4位加法器 34
3.4 应用实例二:正弦信号发生器 46
3.4.1 顶层VHDL文件设计 46
3.4.2 正弦信号数据ROM定制 52
3.5 应用实例三:VGA显示及SRAM读写实例 63
第4章 Verilog语言 86
4.1 Verilog概述 86
4.1.1 Verilog HDL简介 86
4.1.2 Verilog HDL语言的特点 86
4.1.3 Verilog HDL的描述风格 87
4.2 Verilog HDL结构 88
4.3 运算符 96
4.4 数据选择器 100
4.5 编码器和译码器 109
4.6 数字相关器 116
4.7 计数器 119
4.8 状态机 128
第5章 HDL编码指南 135
5.1 概述 135
5.2 基本编码方法 135
5.3 可移植性编码 144
5.4 时钟和Reset信号设计指南 146
5.5 可综合性编码 150
5.6 可综合划分 161
第6章 DSP硬件算法实现 165
6.1 数字滤波算法FPGA实现 165
6.1.1 FIR滤波器 165
6.1.2 IIR滤波器 168
6.1.3 FIR及IIR数字滤波器实现 170
6.2 FFT和DCT变换 183
6.2.1 FFT算法 183
6.2.2 DCT变换的FPGA实现 189
6.3 双模式CORDIC算法的FPGA实现 195
6.3.1 CORDIC算法简介 195
6.3.2 CORDIC算法原理 196
6.3.3 CORDIC算法的FPGA实现 198
6.3.4 仿真结果与分析 202
6.4 全数字锁相环(DPLL)FPGA实现 205
6.4.1 数字锁相环简介 205
6.4.2 数字锁相环原理 205
6.4.3 数字锁相环的实现 209
6.5 CRC校验 214
6.5.1 CRC校验码原理 214
6.5.2 CRC校验码编码 215
6.5.3 CRC校验码的Verilog实现 219
第7章 基于NiosⅡ的SOPC系统 221
7.1 SOPC简介 221
7.2 NiosⅡ嵌入式软核处理器 222
7.2.1 NiosⅡ处理器特性 222
7.2.2 可配置软核处理器 222
7.3 NiosⅡ处理器架构 223
7.3.1 寄存器文件 224
7.3.2 ALU算术逻辑单元 224
7.3.3 异常控制器和中断控制器 224
7.3.4 存储器和I/O组织 225
7.4 Avalon存储器映射桥接器 228
第8章 NiosⅡ系统设计实验 239
8.1 NiosⅡ系统设计所需要的开发工具 239
8.2 开发平台及工具简要介绍 239
8.3 设计实例一:点亮7段LED数码管 241
8.4 设计实例二:自定义PWM组件设计 256
第9章 FPGA工程应用实例 269
9.1 数据采集与滤波系统 269
9.2 电机控制器模块设计 273
9.2.1 SPWM技术 273
9.2.2 SPWM技术的FPGA实现 274
9.2.3 数字PID控制模块设计 287
9.3 DDS设计 294
9.3.1 DDS技术原理 294
9.3.2 DDS模块的FPGA实现 296
9.4 图像处理算法设计 300
9.4.1 数字图像采集FPGA实现 300
9.4.2 3×3中值滤波算法的FPGA实现 308
9.4.3 简单图像增强算法的FPGA实现 317
9.5 ModelSim仿真实验:三角波发生器 326
附录 334
附录1 GW48教学实验系统简介 334
附录2 DE2实验板引脚对照表 337
附录3 Xinlinx公司FPGA器件配置电路 343
附录4 Altera公司FPGA配置电路原理图 345
参考文献 347