第1章 MATLAB软件简介 1
1.1 MATLAB软件构成 1
1.2 MATLAB软件安装 1
1.2.1 安装MATLAB7.0对计算机的要求 1
1.2.2 MATLAB7.0安装时的功能选择 2
1.3 MATLAB软件启动 3
1.4 MATLAB软件主要窗口 4
1.4.1 MATLAB主界面窗口 4
1.4.2 MATLAB命令窗口 9
1.4.3 MATLAB工作台窗口 9
1.4.4 其他窗口 9
1.5 小结 10
第2章 MATLAB在信息信号处理领域的应用 11
2.1 MATLAB程序编辑窗口的基本操作 11
2.2 基本运算操作 17
2.2.1 简单数学操作 17
2.2.2 变量存储及读取 20
2.3 MATLAB中的矩阵操作 21
2.3.1 矩阵基本运算 22
2.3.2 常用矩阵函数 23
2.4 MATLAB中常用输入输出功能 33
2.4.1 基于命令窗口的交互式输入输出 34
2.4.2 基于文件的数据输入输出 35
2.5 MATLAB中函数及其调用 39
2.5.1 MATLAB中函数编写规范 40
2.5.2 用户自定义函数 43
2.5.3 MATLAB中常用数学函数 56
2.5.4 MATLAB中常用数据分析函数 63
2.5.5 MATLAB中常用统计分析函数 67
2.5.6 快速傅里叶变换函数 72
2.6 MATLAB绘图功能 74
2.6.1 简易绘图功能 75
2.6.2 MATLAB绘图选项设置 76
2.6.3 三维绘图 81
第3章 可编程逻辑器件基础知识 85
3.1 可编程逻辑器件发展历程 85
3.2 可编程逻辑器件分类 86
3.3 可编程逻辑器件的典型代表:FPGA简介 87
3.4 可编程逻辑器件结构特点 88
3.4.1 查找表型FPGA结构 88
3.4.2 基于乘积项的可编程逻辑器件 92
3.4.3 其他结构的可编程逻辑器件 94
3.5 FPGA编程 95
3.6 Altera公司及其代表器件 95
3.7 用FPGA实现数字系统流程 98
3.7.1 用FPGA实现数字系统概述 98
3.7.2 基于单一软件平台的FPGA设计流程 100
3.7.3 基于多种EDA工具的FPGA设计流程 103
3.8 可编程器件选型 106
3.8.1 FPGA与CPLD的区别 106
3.8.2 用CPLD实现设计的好处 107
3.8.3 用FPGA实现设计的好处 109
第4章 VHDL硬件描述语言 110
4.1 硬件描述语言综述 110
4.1.1 硬件描述语言现状 110
4.1.2 硬件描述语言的发展历史 110
4.1.3 使用硬件描述语言的理由 111
4.1.4 硬件描述语言的主要特征 112
4.1.5 硬件描述语言设计流程及设计方法 112
4.1.6 VerilogHDL与VHDL比较 115
4.1.7 HDL与计算机语言的区别 116
4.1.8 硬件描述语言发展趋势 116
4.2 VHDL硬件描述语言基本结构 117
4.2.1 VHDL基本组成 117
4.2.2 实体 119
4.2.3 结构体 120
4.2.4 进程 125
4.3 VHDL数据对象 126
4.3.1 常数 126
4.3.2 信号 127
4.3.3 变量 127
4.3.4 信号与变量的区别 127
4.4 VHDL数据类型 131
4.4.1 枚举型 131
4.4.2 整数型、实数型 131
4.4.3 阵列数据类型 132
4.4.4 记录类型 132
4.4.5 VHDL数据类型及子类型 133
4.4.6 VHDL数据类型转换 133
4.5 属性 134
4.6 VHDL运算符 135
4.6.1 逻辑运算符 136
4.6.2 关系运算符 136
4.6.3 算术运算符 137
4.6.4 并置(连接)运算符 137
4.7 组合逻辑电路设计 138
4.7.1 并行语句 138
4.7.2 顺序语句 140
4.7.3 几种语句的比较 147
4.8 同步时序逻辑电路设计 147
4.9 状态机的优化设计 148
4.10 层次化设计 154
4.11 库 156
4.12 包 157
4.13 元件 159
4.14 函数 161
4.15 过程 162
第5章 常用FPGA设计软件 164
5.1 QuartusⅡ软件使用方法 164
5.1.1 QuartusⅡ项目操作 164
5.1.2 QuartusⅡ设计输入 171
5.1.3 QuartusⅡ与其他EDA软件连接 176
5.1.4 QuartusⅡ编译 180
5.1.5 QuartusⅡ延时分析 182
5.1.6 QuartusⅡ仿真 183
5.1.7 QuartusⅡ下载 186
5.2 ModelSim软件使用方法 187
5.2.1 ModelSim简介 187
5.2.2 代码仿真 187
5.2.3 门级仿真和时序仿真 192
5.2.4 仿真需要的文件 192
5.2.5 仿真步骤 192
5.3 Synplfy软件使用方法 196
5.3.1 Synplify和Synplify Pro.简介 196
5.3.2 界面及菜单介绍 196
5.3.3 建立工程 197
5.3.4 语法检查 198
5.3.5 PTL视图与结构导航 198
5.3.6 文本与图形联合检验 200
5.4 三种软件综合应用示例 201
5.4.1 编写设计代码 201
5.4.2 设计综合 214
5.4.3 设计功能仿真 214
5.4.4 设计时序仿真 215
第6章 MATLAB在FPGA设计中的应用 217
6.1 引言 217
6.2 全并行结构FFT的FPGA实现 217
6.2.1 全并行FFT算法介绍 217
6.2.2 算法MATLAB验证 218
6.2.3 全并行结构FFT的FPGA实现 223
6.2.4 ModelSim与MATLAB联合仿真 225
6.3 FIR滤波器的FPGA实现及其QuartusⅡ与MATLAB仿真 229
6.3.1 查找表结构FIR算法 230
6.3.2 FPGA实现过程及主要模块功能介绍 231
6.3.3 QuartusⅡ与MATLAB联合仿真 234
6.4 正交变换的FPGA实现 237
6.4.1 正交变换算法的比较与选择 237
6.4.2 Rader正交变换算法的FPGA实现 242
参考文献 247
附录 光盘说明 248