书籍详情
Xilinx FPGA数字信号处理设计――基础版
作者:杜勇 著
出版社:电子工业出版社
出版时间:2021-03-01
ISBN:9787121406072
定价:¥79.00
购买这本书可以去
内容简介
本书以Xilinx公司的FPGA为开发平台,以Verilog HDL及MATLAB为开发工具,详细阐述数字信号处理技术FPGA实现的原理、结构、方法及仿真测试过程,并通过大量的实例分析FPGA实现过程中的具体技术细节。本书主要包括FPGA概述、设计语言及开发工具、FPGA设计流程、常用接口程序的设计、FPGA中的数字运算、典型IP核的应用、FIR滤波器设计、IIR滤波器设计、快速傅里叶变换的设计等内容。本书思路清晰、语言流畅、分析透彻,在简明阐述设计原理的基础上,重点追求对工程实践的指导性,力求使读者在较短的时间内掌握数字信号处理技术FPGA实现的知识和技能。
作者简介
杜勇,四川省广安市人,高级工程师、副教授,现任教于四川工商学院,居住于成都。1999年于湖南大学获电子工程专业学士学位,2005年于国防科技大学获信息与通信工程专业硕士学位。发表学术论文十余篇,出版《数字滤波器的MATLAB与FPGA实现》《数字通信同步技术的MATLAB与FPGA实现》《数字调制解调技术的MATLAB与FPGA实现》《锁相环技术原理及FPGA实现》等多部著作。
目录
上篇 基 础 篇
第1章 FPGA概述\t3
1.1 FPGA的发展趋势\t3
1.2 FPGA的结构\t5
1.2.1 可编程输入/输出单元(IOB)\t5
1.2.2 可配置逻辑块(CLB)\t6
1.2.3 数字时钟管理模块(DCM)\t7
1.2.4 块RAM(BRAM)\t8
1.2.5 布线资源\t8
1.2.6 专用硬IP核\t8
1.3 FPGA的工作原理\t9
1.4 FPGA与其他处理平台的比较\t10
1.4.1 ASIC、DSP、ARM的特点\t10
1.4.2 FPGA的特点及优势\t11
1.5 FPGA的主要厂商\t12
1.5.1 Xilinx公司\t12
1.5.2 Intel公司\t13
1.5.3 Lattice公司\t13
1.5.4 Actel公司\t14
1.5.5 Atmel公司\t15
1.6 如何选择FPGA\t15
1.7 小结\t16
1.8 思考与练习\t16
第2章 设计语言及开发工具\t17
2.1 Verilog HDL简介\t17
2.1.1 HDL的特点及优势\t17
2.1.2 选择VHDL还是Verilog\t18
2.1.3 Verilog HDL的特点\t19
2.2 Verilog HDL的基本语法\t20
2.2.1 Verilog HDL的程序结构\t20
2.2.2 数据类型及基本运算符\t23
2.2.3 Verilog HDL的运算符优先级及Verilog HDL的关键词\t25
2.2.4 赋值语句与块语句\t26
2.2.5 条件语句和分支语句\t29
2.3 常用的FPGA开发工具\t30
2.3.1 ISE开发工具\t30
2.3.2 ModelSim仿真软件\t32
2.4 MATLAB软件\t34
2.4.1 MATLAB的简介\t34
2.4.2 MATLAB的工作界面\t35
2.4.3 MATLAB的特点\t36
2.5 FPGA数字信号处理板CXD301\t37
2.6 小结\t39
2.7 思考与练习\t39
第3章 FPGA设计流程\t41
3.1 FPGA设计流程概述\t41
3.2 流水灯实例设计\t44
3.2.1 明确项目需求\t44
3.2.2 读懂电路原理图\t44
3.2.3 形成设计方案\t46
3.3 流水灯实例的Verilog HDL程序设计与综合\t47
3.3.1 建立FPGA工程\t47
3.3.2 Verilog HDL程序输入\t48
3.3.3 程序综合及查看RTL原理图\t52
3.4 流水灯实例的功能仿真\t54
3.4.1 生成测试激励文件\t54
3.4.2 采用ModelSim进行仿真\t55
3.4.3 ModelSim的仿真应用技巧\t57
3.5 流水灯实例的设计实现与时序仿真\t59
3.5.1 添加约束文件\t59
3.5.2 设计实现并查看分析报告\t60
3.5.3 时序仿真\t61
3.6 程序文件下载\t62
3.6.1 bit文件下载\t62
3.6.2 mcs文件下载\t64
3.7 小结\t66
3.8 思考与练习\t67
第4章 常用接口程序的设计\t69
4.1 秒表电路设计\t69
4.1.1 数码管的基本工作原理\t69
4.1.2 秒表电路实例需求及电路原理分析\t70
实例4-1:秒表电路设计\t70
4.1.3 形成设计方案\t71
4.1.4 顶层文件的Verilog HDL程序设计\t71
4.1.5 数码管显示模块的Verilog HDL程序设计\t72
4.1.6 秒表计数模块的Verilog HDL程序设计\t75
4.1.7 按键消抖模块的Verilog HDL程序设计\t77
4.2 串口通信设计\t79
4.2.1 RS-232串口通信的概念\t79
4.2.2 串口通信实例需求及电路原理分析\t81
实例4-2:串口通信电路设计\t81
4.2.3 顶层文件的Verilog HDL程序设计\t81
4.2.4 时钟模块的Verilog HDL程序设计\t82
4.2.5 接收模块的Verilog HDL程序设计\t84
4.2.6 发送模块的Verilog HDL程序设计\t86
4.3 A/D接口和D/A接口的程序设计\t87
4.3.1 A/D转换的工作原理\t87
4.3.2 D/A转换的工作原理\t87
4.3.3 A/D接口和D/A接口的实例需求及电路原理分析\t88
实例4-3:A/D接口和D/A接口电路设计\t88
4.3.4 A/D接口和D/A接口的Verilog HDL程序设计\t89
4.4 常用接口程序的板载测试\t90
4.4.1 秒表电路的板载测试\t90
4.4.2 串口通信的板载测试\t91
4.4.3 通过ChipScope对A/D接口和D/A接口进行板载测试\t92
4.5 小结\t99
4.6 思考与练习\t100
下篇 设 计 篇
第5章 FPGA中的数字运算\t103
5.1 数的表示\t103
5.1.1 定点数的定义和表示\t104
5.1.2 定点数的三种形式\t105
5.1.3 浮点数的表示\t106
5.1.4 自定义的浮点数格式\t108
5.2 FPGA中的四则运算\t110
5.2.1 两个操作数的加法运算\t110
实例5-1:在Verilog HDL中同时使用有符号数及无符号数进行运算\t111
5.2.2 多个操作数的加法运算\t113
5.2.3 采用移位相加法实现乘法运算\t113
5.2.4 采用移位相加法实现除法运算\t114
5.3 有效数据位的计算\t114
5.3.1 有效数据位的概念\t114
5.3.2 加法运算中的有效数据位\t115
5.3.3 乘法运算中的有效数据位\t116
5.3.4 乘加运算中的有效数据位\t117
5.4 有限字长效应\t117
5.4.1 有限字长效应的产生因素\t117
5.4.2 A/D转换器的有限字长效应\t118
5.4.3 数字滤波器系数的有限字长效应\t119
实例5-2:采用MATLAB仿真二阶数字滤波器的频率响应\t119
5.4.4 滤波器运算中的有限字长效应\t121
实例5-3:采用MATLAB仿真一阶数字滤波器的输出响应\t122
5.5 小结\t124
5.6 思考与练习\t124
第6章 典型IP核的应用\t127
6.1 IP核在FPGA中的应用\t127
6.1.1 IP核的一般概念\t127
6.1.2 FPGA设计中的IP核类型\t128
6.1.3 CMT与FPGA时钟树\t130
6.2 时钟管理IP核\t131
6.2.1 全局时钟资源\t131
6.2.2 利用IP核生成多路时钟信号\t132
实例6-1:时钟管理IP核设计\t132
6.3 乘法器IP核\t135
6.3.1 实数乘法器IP核\t135
实例6-2:通过实数乘法器IP核实现实数乘法运算\t136
6.3.2 复数乘法器IP核\t138
实例6-3:通过复数乘法器IP核实现复数乘法运算\t139
6.4 除法器IP核\t141
6.4.1 FPGA中的除法运算\t141
6.4.2 测试除法器IP核\t142
实例6-4:通过除法器IP核实现除法运算\t142
6.5 存储器IP核\t144
6.5.1 ROM核\t144
实例6-5:通过ROM核产生正弦波信号\t144
6.5.2 RAM核\t147
实例6-6:采用RAM核完成数据速率的转换\t147
6.6 数控振荡器IP核\t152
6.6.1 数控振荡器工作原理\t152
6.6.2 采用DDS核设计扫频仪\t154
实例6-7:采用DDS核设计扫频仪\t154
6.7 小结\t157
6.8 思考与练习\t157
第7章 FIR滤波器设计\t159
7.1 数字滤波器的理论基础\t159
7.1.1 数字滤波器的概念\t159
7.1.2 数字滤波器的分类\t160
7.1.3 滤波器的特征参数\t161
7.2 FIR滤波器的原理\t162
7.2.1 FIR滤波器的概念\t162
7.2.2 线性相位系统的物理意义\t163
7.2.3 FIR滤波器的相位特性\t164
7.2.4 FIR滤波器的幅度特性\t166
7.3 FIR滤波器的FPGA实现结构\t167
7.3.1 滤波器结构的表示方法\t167
7.3.2 直接型结构的FIR滤波器\t168
7.3.3 级联型结构的FIR滤波器\t169
7.4 基于累加器的FIR滤波器设计\t170
7.4.1 基于累加器的FIR滤波器性能分析\t170
实例7-1:基于累加器的FIR滤波器的FPGA设计\t170
7.4.2 基于累加器的FIR滤波器设计\t173
7.4.3 基于累加器的FIR滤波器FPGA实现后的仿真\t174
7.5 FIR滤波器的MATLAB设计\t177
7.5.1 基于fir1()函数的FIR滤波器设计\t177
实例7-2:基于fir1()函数的FIR滤波器设计\t178
7.5.2 各种窗函数性能的比较\t180
7.5.3 各种窗函数性能的仿真\t181
实例7-3:通过MATLAB仿真由不同窗函数设计的FIR滤波器性能\t181
7.5.4 基于firpm()函数的FIR滤波器设计\t183
实例7-4:采用firpm()函数设计FIR滤波器\t184
7.5.5 基于FDATOOL的FIR滤波器设计\t185
实例7-5:使用FDATOOL设计带通FIR滤波器\t186
7.6 FIR滤波器系数的量化方法\t187
实例7-6:利用MATLAB设计低通FIR滤波器并进行系数量化\t187
7.7 并行结构FIR滤波器的FPGA实现\t189
7.7.1 并行结构FIR滤波器的Verilog HDL设计\t189
实例7-7:采用并行结构设计15阶FIR滤波器\t189
7.7.2 并行结构FIR滤波器的功能仿真\t192
7.8 串行结构FIR滤波器的FPGA实现\t193
7.8.1 两种串行结构原理\t193
7.8.2 全串行结构FIR滤波器的Verilog HDL设计\t194
实例7-8:采用全串行结构设计15阶FIR滤波器\t194
7.8.3 串行结构FIR滤波器的功能仿真\t198
7.9 基于FIR核的FIR滤波器设计\t200
7.9.1 FIR滤波器系数文件(COE文件)的生成\t200
实例7-9:采用FIR Compiler v5.0核设计61阶低通FIR滤波器\t201
7.9.2 基于FIR核的FIR滤波器设计步骤\t203
7.9.3 基于FIR核的FIR滤波器功能仿真\t206
7.10 FIR滤波器的板载测试\t207
7.10.1 硬件接口电路\t207
实例7-10:FIR滤波器的CXD301板载测试\t207
7.10.2 板载测试程序\t207
7.10.3 板载测试验证\t211
7.11 小结\t212
7.12 思考与练习\t213
第8章 IIR滤波器设计\t215
8.1 IIR滤波器的理论基础\t215
8.1.1 IIR滤波器的原理及特性\t215
8.1.2 IIR滤波器常用的结构\t216
8.1.3 IIR滤波器与FIR滤波器的比较\t219
8.2 IIR滤波器的MATLAB设计\t220
8.2.1 采用butter()函数设计IIR滤波器\t220
8.2.2 采用cheby1()函数设计IIR滤波器\t221
8.2.3 采用cheby2()函数设计IIR滤波器\t221
8.2.4 采用ellip()函数设计IIR滤波器\t222
8.2.5 采用yulewalk()函数设计IIR滤波器\t222
8.2.6 几种IIR滤波器设计函数的比较\t223
实例8-1:采用不同IIR滤波器设计函数设计IIR滤波器并进行性能比较\t223
8.2.7 采用FDATOOL设计IIR滤波器\t225
实例8-2:采用FDATOOL设计带通IIR滤波器\t225
8.3 直接型结构IIR滤波器的FPGA实现\t226
8.3.1 直接型结构IIR滤波器系数的量化方法\t226
8.3.2 直接型结构IIR滤波器的有限字长效应\t228
实例8-3:仿真测试不同量化字长对滤波器性能的影响\t228
8.3.3 直接型结构IIR滤波器的FPGA实现方法\t230
实例8-4:直接型结构IIR滤波器的FPGA设计\t230
8.3.4 直接型结构IIR滤波器的Verilog HDL设计\t231
8.3.5 MATLAB与ISE14.7的数据交互\t235
8.3.6 在MATLAB中生成测试信号文件\t236
8.3.7 测试激励文件中的文件IO功能\t239
8.3.8 利用MATLAB分析输出信号的频谱\t241
8.4 级联型结构IIR滤波器的FPGA实现\t242
实例8-5:级联型结构IIR滤波器的FPGA设计\t242
8.4.1 滤波器系数的转换\t242
8.4.2 级联型结构IIR滤波器的系数量化\t244
8.4.3 级联型结构IIR滤波器的FPGA实现\t244
8.4.4 级联型结构IIR滤波器的Verilog HDL设计\t245
8.4.5 级联型结构IIR滤波器FPGA实现后的仿真\t247
8.5 IIR滤波器的板载测试\t248
8.5.1 硬件接口电路\t248
实例8-6:IIR滤波器的CXD301板载测试\t248
8.5.2 板载测试程序\t249
8.5.3 板载测试验证\t249
8.6 小结\t251
8.7 思考与练习\t251
第9章 快速傅里叶变换的设计\t253
9.1 FFT的原理\t253
9.1.1 DFT的原理\t253
9.1.2 DFT的运算过程\t255
9.1.3 DFT运算中的几种常见问题\t256
9.1.4 FFT算法的基本思想\t257
9.2 FFT算法的MATLAB仿真\t258
9.2.1 通过FFT测量模拟信号的频率\t258
实例9-1:利用FFT测量单频信号的频率\t258
9.2.2 通过FFT测量模拟信号的幅度\t261
实例9-2:利用FFT测量2路频率叠加信号的幅度\t261
9.2.3 频率分辨率与分辨不同频率的关系\t263
实例9-3:仿真FFT参数对分析信号频谱的影响\t263
9.3 FFT核的使用\t267
9.3.1 FFT核简介\t267
9.3.2 FFT核的接口信号及时序\t268
9.4 信号识别电路的FPGA设计\t270
9.4.1 频率叠加信号的时域分析\t270
实例9-4:信号过零检测分析\t270
9.4.2 信号识别电路的设计需求及参数分析\t272
实例9-5:信号识别电路的FGPA设计\t272
9.4.3 信号识别电路的Verilog HDL设计\t273
9.4.4 信号识别电路的ModelSim仿真\t276
9.5 信号识别电路的板载测试\t279
9.5.1 硬件接口电路\t279
实例9-6:信号识别电路的CXD301板载测试\t279
9.5.2 板载测试的方案\t280
9.5.3 顶层文件的设计\t281
9.5.4 测试信号生成模块的设计\t283
9.5.5 接收模块的设计\t285
9.5.6 数据整理模块的设计\t286
9.5.7 串口通信模块的设计\t287
9.5.8 板载测试验证\t290
9.6 小结\t294
9.7 思考与练习\t294
参考文献\t295
第1章 FPGA概述\t3
1.1 FPGA的发展趋势\t3
1.2 FPGA的结构\t5
1.2.1 可编程输入/输出单元(IOB)\t5
1.2.2 可配置逻辑块(CLB)\t6
1.2.3 数字时钟管理模块(DCM)\t7
1.2.4 块RAM(BRAM)\t8
1.2.5 布线资源\t8
1.2.6 专用硬IP核\t8
1.3 FPGA的工作原理\t9
1.4 FPGA与其他处理平台的比较\t10
1.4.1 ASIC、DSP、ARM的特点\t10
1.4.2 FPGA的特点及优势\t11
1.5 FPGA的主要厂商\t12
1.5.1 Xilinx公司\t12
1.5.2 Intel公司\t13
1.5.3 Lattice公司\t13
1.5.4 Actel公司\t14
1.5.5 Atmel公司\t15
1.6 如何选择FPGA\t15
1.7 小结\t16
1.8 思考与练习\t16
第2章 设计语言及开发工具\t17
2.1 Verilog HDL简介\t17
2.1.1 HDL的特点及优势\t17
2.1.2 选择VHDL还是Verilog\t18
2.1.3 Verilog HDL的特点\t19
2.2 Verilog HDL的基本语法\t20
2.2.1 Verilog HDL的程序结构\t20
2.2.2 数据类型及基本运算符\t23
2.2.3 Verilog HDL的运算符优先级及Verilog HDL的关键词\t25
2.2.4 赋值语句与块语句\t26
2.2.5 条件语句和分支语句\t29
2.3 常用的FPGA开发工具\t30
2.3.1 ISE开发工具\t30
2.3.2 ModelSim仿真软件\t32
2.4 MATLAB软件\t34
2.4.1 MATLAB的简介\t34
2.4.2 MATLAB的工作界面\t35
2.4.3 MATLAB的特点\t36
2.5 FPGA数字信号处理板CXD301\t37
2.6 小结\t39
2.7 思考与练习\t39
第3章 FPGA设计流程\t41
3.1 FPGA设计流程概述\t41
3.2 流水灯实例设计\t44
3.2.1 明确项目需求\t44
3.2.2 读懂电路原理图\t44
3.2.3 形成设计方案\t46
3.3 流水灯实例的Verilog HDL程序设计与综合\t47
3.3.1 建立FPGA工程\t47
3.3.2 Verilog HDL程序输入\t48
3.3.3 程序综合及查看RTL原理图\t52
3.4 流水灯实例的功能仿真\t54
3.4.1 生成测试激励文件\t54
3.4.2 采用ModelSim进行仿真\t55
3.4.3 ModelSim的仿真应用技巧\t57
3.5 流水灯实例的设计实现与时序仿真\t59
3.5.1 添加约束文件\t59
3.5.2 设计实现并查看分析报告\t60
3.5.3 时序仿真\t61
3.6 程序文件下载\t62
3.6.1 bit文件下载\t62
3.6.2 mcs文件下载\t64
3.7 小结\t66
3.8 思考与练习\t67
第4章 常用接口程序的设计\t69
4.1 秒表电路设计\t69
4.1.1 数码管的基本工作原理\t69
4.1.2 秒表电路实例需求及电路原理分析\t70
实例4-1:秒表电路设计\t70
4.1.3 形成设计方案\t71
4.1.4 顶层文件的Verilog HDL程序设计\t71
4.1.5 数码管显示模块的Verilog HDL程序设计\t72
4.1.6 秒表计数模块的Verilog HDL程序设计\t75
4.1.7 按键消抖模块的Verilog HDL程序设计\t77
4.2 串口通信设计\t79
4.2.1 RS-232串口通信的概念\t79
4.2.2 串口通信实例需求及电路原理分析\t81
实例4-2:串口通信电路设计\t81
4.2.3 顶层文件的Verilog HDL程序设计\t81
4.2.4 时钟模块的Verilog HDL程序设计\t82
4.2.5 接收模块的Verilog HDL程序设计\t84
4.2.6 发送模块的Verilog HDL程序设计\t86
4.3 A/D接口和D/A接口的程序设计\t87
4.3.1 A/D转换的工作原理\t87
4.3.2 D/A转换的工作原理\t87
4.3.3 A/D接口和D/A接口的实例需求及电路原理分析\t88
实例4-3:A/D接口和D/A接口电路设计\t88
4.3.4 A/D接口和D/A接口的Verilog HDL程序设计\t89
4.4 常用接口程序的板载测试\t90
4.4.1 秒表电路的板载测试\t90
4.4.2 串口通信的板载测试\t91
4.4.3 通过ChipScope对A/D接口和D/A接口进行板载测试\t92
4.5 小结\t99
4.6 思考与练习\t100
下篇 设 计 篇
第5章 FPGA中的数字运算\t103
5.1 数的表示\t103
5.1.1 定点数的定义和表示\t104
5.1.2 定点数的三种形式\t105
5.1.3 浮点数的表示\t106
5.1.4 自定义的浮点数格式\t108
5.2 FPGA中的四则运算\t110
5.2.1 两个操作数的加法运算\t110
实例5-1:在Verilog HDL中同时使用有符号数及无符号数进行运算\t111
5.2.2 多个操作数的加法运算\t113
5.2.3 采用移位相加法实现乘法运算\t113
5.2.4 采用移位相加法实现除法运算\t114
5.3 有效数据位的计算\t114
5.3.1 有效数据位的概念\t114
5.3.2 加法运算中的有效数据位\t115
5.3.3 乘法运算中的有效数据位\t116
5.3.4 乘加运算中的有效数据位\t117
5.4 有限字长效应\t117
5.4.1 有限字长效应的产生因素\t117
5.4.2 A/D转换器的有限字长效应\t118
5.4.3 数字滤波器系数的有限字长效应\t119
实例5-2:采用MATLAB仿真二阶数字滤波器的频率响应\t119
5.4.4 滤波器运算中的有限字长效应\t121
实例5-3:采用MATLAB仿真一阶数字滤波器的输出响应\t122
5.5 小结\t124
5.6 思考与练习\t124
第6章 典型IP核的应用\t127
6.1 IP核在FPGA中的应用\t127
6.1.1 IP核的一般概念\t127
6.1.2 FPGA设计中的IP核类型\t128
6.1.3 CMT与FPGA时钟树\t130
6.2 时钟管理IP核\t131
6.2.1 全局时钟资源\t131
6.2.2 利用IP核生成多路时钟信号\t132
实例6-1:时钟管理IP核设计\t132
6.3 乘法器IP核\t135
6.3.1 实数乘法器IP核\t135
实例6-2:通过实数乘法器IP核实现实数乘法运算\t136
6.3.2 复数乘法器IP核\t138
实例6-3:通过复数乘法器IP核实现复数乘法运算\t139
6.4 除法器IP核\t141
6.4.1 FPGA中的除法运算\t141
6.4.2 测试除法器IP核\t142
实例6-4:通过除法器IP核实现除法运算\t142
6.5 存储器IP核\t144
6.5.1 ROM核\t144
实例6-5:通过ROM核产生正弦波信号\t144
6.5.2 RAM核\t147
实例6-6:采用RAM核完成数据速率的转换\t147
6.6 数控振荡器IP核\t152
6.6.1 数控振荡器工作原理\t152
6.6.2 采用DDS核设计扫频仪\t154
实例6-7:采用DDS核设计扫频仪\t154
6.7 小结\t157
6.8 思考与练习\t157
第7章 FIR滤波器设计\t159
7.1 数字滤波器的理论基础\t159
7.1.1 数字滤波器的概念\t159
7.1.2 数字滤波器的分类\t160
7.1.3 滤波器的特征参数\t161
7.2 FIR滤波器的原理\t162
7.2.1 FIR滤波器的概念\t162
7.2.2 线性相位系统的物理意义\t163
7.2.3 FIR滤波器的相位特性\t164
7.2.4 FIR滤波器的幅度特性\t166
7.3 FIR滤波器的FPGA实现结构\t167
7.3.1 滤波器结构的表示方法\t167
7.3.2 直接型结构的FIR滤波器\t168
7.3.3 级联型结构的FIR滤波器\t169
7.4 基于累加器的FIR滤波器设计\t170
7.4.1 基于累加器的FIR滤波器性能分析\t170
实例7-1:基于累加器的FIR滤波器的FPGA设计\t170
7.4.2 基于累加器的FIR滤波器设计\t173
7.4.3 基于累加器的FIR滤波器FPGA实现后的仿真\t174
7.5 FIR滤波器的MATLAB设计\t177
7.5.1 基于fir1()函数的FIR滤波器设计\t177
实例7-2:基于fir1()函数的FIR滤波器设计\t178
7.5.2 各种窗函数性能的比较\t180
7.5.3 各种窗函数性能的仿真\t181
实例7-3:通过MATLAB仿真由不同窗函数设计的FIR滤波器性能\t181
7.5.4 基于firpm()函数的FIR滤波器设计\t183
实例7-4:采用firpm()函数设计FIR滤波器\t184
7.5.5 基于FDATOOL的FIR滤波器设计\t185
实例7-5:使用FDATOOL设计带通FIR滤波器\t186
7.6 FIR滤波器系数的量化方法\t187
实例7-6:利用MATLAB设计低通FIR滤波器并进行系数量化\t187
7.7 并行结构FIR滤波器的FPGA实现\t189
7.7.1 并行结构FIR滤波器的Verilog HDL设计\t189
实例7-7:采用并行结构设计15阶FIR滤波器\t189
7.7.2 并行结构FIR滤波器的功能仿真\t192
7.8 串行结构FIR滤波器的FPGA实现\t193
7.8.1 两种串行结构原理\t193
7.8.2 全串行结构FIR滤波器的Verilog HDL设计\t194
实例7-8:采用全串行结构设计15阶FIR滤波器\t194
7.8.3 串行结构FIR滤波器的功能仿真\t198
7.9 基于FIR核的FIR滤波器设计\t200
7.9.1 FIR滤波器系数文件(COE文件)的生成\t200
实例7-9:采用FIR Compiler v5.0核设计61阶低通FIR滤波器\t201
7.9.2 基于FIR核的FIR滤波器设计步骤\t203
7.9.3 基于FIR核的FIR滤波器功能仿真\t206
7.10 FIR滤波器的板载测试\t207
7.10.1 硬件接口电路\t207
实例7-10:FIR滤波器的CXD301板载测试\t207
7.10.2 板载测试程序\t207
7.10.3 板载测试验证\t211
7.11 小结\t212
7.12 思考与练习\t213
第8章 IIR滤波器设计\t215
8.1 IIR滤波器的理论基础\t215
8.1.1 IIR滤波器的原理及特性\t215
8.1.2 IIR滤波器常用的结构\t216
8.1.3 IIR滤波器与FIR滤波器的比较\t219
8.2 IIR滤波器的MATLAB设计\t220
8.2.1 采用butter()函数设计IIR滤波器\t220
8.2.2 采用cheby1()函数设计IIR滤波器\t221
8.2.3 采用cheby2()函数设计IIR滤波器\t221
8.2.4 采用ellip()函数设计IIR滤波器\t222
8.2.5 采用yulewalk()函数设计IIR滤波器\t222
8.2.6 几种IIR滤波器设计函数的比较\t223
实例8-1:采用不同IIR滤波器设计函数设计IIR滤波器并进行性能比较\t223
8.2.7 采用FDATOOL设计IIR滤波器\t225
实例8-2:采用FDATOOL设计带通IIR滤波器\t225
8.3 直接型结构IIR滤波器的FPGA实现\t226
8.3.1 直接型结构IIR滤波器系数的量化方法\t226
8.3.2 直接型结构IIR滤波器的有限字长效应\t228
实例8-3:仿真测试不同量化字长对滤波器性能的影响\t228
8.3.3 直接型结构IIR滤波器的FPGA实现方法\t230
实例8-4:直接型结构IIR滤波器的FPGA设计\t230
8.3.4 直接型结构IIR滤波器的Verilog HDL设计\t231
8.3.5 MATLAB与ISE14.7的数据交互\t235
8.3.6 在MATLAB中生成测试信号文件\t236
8.3.7 测试激励文件中的文件IO功能\t239
8.3.8 利用MATLAB分析输出信号的频谱\t241
8.4 级联型结构IIR滤波器的FPGA实现\t242
实例8-5:级联型结构IIR滤波器的FPGA设计\t242
8.4.1 滤波器系数的转换\t242
8.4.2 级联型结构IIR滤波器的系数量化\t244
8.4.3 级联型结构IIR滤波器的FPGA实现\t244
8.4.4 级联型结构IIR滤波器的Verilog HDL设计\t245
8.4.5 级联型结构IIR滤波器FPGA实现后的仿真\t247
8.5 IIR滤波器的板载测试\t248
8.5.1 硬件接口电路\t248
实例8-6:IIR滤波器的CXD301板载测试\t248
8.5.2 板载测试程序\t249
8.5.3 板载测试验证\t249
8.6 小结\t251
8.7 思考与练习\t251
第9章 快速傅里叶变换的设计\t253
9.1 FFT的原理\t253
9.1.1 DFT的原理\t253
9.1.2 DFT的运算过程\t255
9.1.3 DFT运算中的几种常见问题\t256
9.1.4 FFT算法的基本思想\t257
9.2 FFT算法的MATLAB仿真\t258
9.2.1 通过FFT测量模拟信号的频率\t258
实例9-1:利用FFT测量单频信号的频率\t258
9.2.2 通过FFT测量模拟信号的幅度\t261
实例9-2:利用FFT测量2路频率叠加信号的幅度\t261
9.2.3 频率分辨率与分辨不同频率的关系\t263
实例9-3:仿真FFT参数对分析信号频谱的影响\t263
9.3 FFT核的使用\t267
9.3.1 FFT核简介\t267
9.3.2 FFT核的接口信号及时序\t268
9.4 信号识别电路的FPGA设计\t270
9.4.1 频率叠加信号的时域分析\t270
实例9-4:信号过零检测分析\t270
9.4.2 信号识别电路的设计需求及参数分析\t272
实例9-5:信号识别电路的FGPA设计\t272
9.4.3 信号识别电路的Verilog HDL设计\t273
9.4.4 信号识别电路的ModelSim仿真\t276
9.5 信号识别电路的板载测试\t279
9.5.1 硬件接口电路\t279
实例9-6:信号识别电路的CXD301板载测试\t279
9.5.2 板载测试的方案\t280
9.5.3 顶层文件的设计\t281
9.5.4 测试信号生成模块的设计\t283
9.5.5 接收模块的设计\t285
9.5.6 数据整理模块的设计\t286
9.5.7 串口通信模块的设计\t287
9.5.8 板载测试验证\t290
9.6 小结\t294
9.7 思考与练习\t294
参考文献\t295
猜您喜欢