《数字信号处理的FPGA实现(第3版)》(作者U.Meyer-Baese)摒弃了传统的说教内容,更多地从应用的角度出发,注重如何用FPGA实现这些理论,并且致力于找到最适合解决问题的途径。本书开篇简要地介绍了当前FPGA技术的发展和用于设计的元器件,以及设计DSP的技术要求,之后就给出了频率合成器的示例。随后的章节系统地介绍了计算机算法和FIR、IIR滤波器的实现,多级信号处理、各种傅立叶变换,以及自适应滤波器等内容。最后一章简要介绍了当前的前沿课题,对其中一些方面感兴趣的读者可以进行进一步的研究。
可编程门阵列(FPGA)正在掀起一场数字信号处理的变革,因为新颖的FPGA系列正在为前端数字信号处理算法取代ASIC和PDSP。于是这些算法的高效实现非常关键,这正是《数字信号处理的FPGA实现(第3版)》(作者U.Meyer-Baese)的主旨。
《数字信号处理的FPGA实现(第3版)》首先概述了当前的FPGA技术、器件,以及用于设计先进的DSP系统的工具。第1章的案例研究是40多个设计示例的基础。随后几章阐述了计算机算法的概念、理论、FIR和IIR滤波器的实现、多抽样率数字信号系统、DFT和FFT算法、未来很可能实现的高级算法,以及高级滤波器等。每一章都包含练习。随书附赠的光盘不仅包含Verilog源代码和术语,而且包含VERILOG代码示例和VHDL代码示例,以及Altera最新的Quartus II软件。该版本的新增内容包括:微处理器、使用MAC调用特殊函数、知识产权核心设计、任意采样速率转化器,以及100多个新示例。
第1章 绪论
1.1 数字信号处理技术概述
1.2 FPGA技术
1.2.1 按颗粒度分类
1.2.2 按技术分类
1.2.3 FPL的基准
1.3 DSP的技术要求
1.4 设计实现
1.4.1 FPGA的结构
1.4.2 Altera EP2C35F672C6
1.4.3 案例研究:频率合成器
1.4.4 用知识产权内核进行设计
1.5 练习
第2章 计算机算法
2.1 计算机算法概述
2.2 数字表示法
2.2.1 定点数
2.2.2 非传统定点数
2.2.3 浮点数
2.3 二进制加法器
2.3.1 流水线加法器
2.3.2 模加法器
2.4 二进制乘法器
2.5 二进制除法器
2.5.1 线性收敛的除法算法
2.5.2 快速除法器的设计
2.5.3 阵列除法器
2.6 浮点算法的实现
2.6.1 定点数到浮点数的格式转换
2.6.2 浮点数到定点数的格式转换
2.6.3 浮点数乘法
2.6.4 浮点数加法
2.6.5 浮点数除法
2.6.6 浮点数倒数
2.6.7 浮点数合成结果
2.7 MAC与SOP
2.7.1 分布式算法基础
2.7.2 有符号的DA系统
2.7.3 改进的DA解决方案
2.8 利用CORDIC计算特殊函数
2.9 用MAC调用计算特殊函数
2.9.1 切比雪夫逼近
2.9.2 三角函数的逼近
2.9.3 指数函数和对数函数的逼近
2.9.4 平方根函数的逼近
2.10 练习
第3章 FIR数字滤波器
3.1 数字滤波器概述
3.2 FIR理论
3.2.1 具有转置结构的FIR滤波器
3.2.2 FIR滤波器的对称性
3.2.3 线性相位FIR滤波器
3.3 设计FIR滤波器
3.3.1 直接窗函数设计方法
3.3.2 等波纹设计方法
3.4 常系数FIR设计
3.4.1 直接FIR设计
3.4.2 具有转置结构的FIR滤波器
3.4.3 采用分布式算法的FIR.滤波器
3.4.4 IP内核FIR滤波器设计
3.4.5 基于DA和基于RAG的FIR滤波器的比较
3.5 练习
第4章 IlR数字滤波器
4.1 IIR数字滤波器概述
4.2 IIR理论
4.3 IIR系数的计算
4.4 IIR滤波器的实现
4.4.1 有限字长效应
4.4.2 滤波器增益系数的优化
4.5 快速IIR滤波器
4.5.1 时域交叉
4.5.2 群集和分散预见的流水线技术
4.5.3 IIR抽取器设计
4.5.4 并行处理
4.5.5 采用RNS的IIR设计
4.6 练习
第5章 多级信号处理
5.1 抽取和插值
5.1.1 Noble恒等式
5.1.2 用有理数因子进行采样速率转换
5.2 多相分解
5.2.1 递归IIR抽取器
5.2.2 快速FIR滤波器
5.3 Hogenauer CIC滤波器
5.3.1 单级CIC案例研究
5.3.2 多级CIC滤波器理论
5.3.3 幅值与混叠畸变
5.3.4 Hogenaur“剪除”理论
5.3.5 CIC RNS设计
5.4 多级抽取器
5.5 作为通频带抽取器的频率采样滤波器
5.6 任意采样速率转换器的设计
5.6.1 分数延迟速率变换
5.6.2 多项式分数延迟设计
5.6.3 基于B样条的分数速率变换器
5.6.4 MOMS分数速率变换器
5.7 滤波器组
5.7.1 均匀DFT滤波器组
5.7.2 双通道滤波器组
5.7.3 实现双通道滤波器组
5.8 小波
5.9 练习
第6章 傅立叶变换
6.1 傅立叶变换概述
6.2 离散傅立叶变换算法
6.2.1 用DFT近似傅立叶变换
6.2.2 DFT的性质
6.2.3 Goertzel算法
6.2.4 Bluestein Chirp-z变换
6.2.5 Rader算法
6.2.6 Winograd DFT算法
6.3 快速傅立叶变换算法
6.3.1 Cooley—Tukey FFT算法
6.3.2 Good-Thomas FFT算法
6.3.3 Winograd FFT算法
6.3.4 DFT和FFT算法的比较
6.3.5 IP内核FFT设计
6.4 与傅立叶相关的变换
6.4.1 利用DFT计算DCT
6.4.2 快速直接DCT实现
6.5 练习
第7章 前沿课题
7.1 算法应用概述
7.2 矩形变换和数论变换
7.2.1 算术模2□1
7.2.2 采用NTT的高效卷积
7.2.3 采用NTT的快速卷积
7.2.4 NTT的多维索引映射和Agarwal-Burms NTT
7.2.5 用NTT计算DFT矩阵
7.2.6 NTT的索引映射
7.2.7 用矩形变换计算DFT
7.3 差错控制和加密技术
7.3.1 编码理论的基本概念
7.3.2 分组码
7.3.3 卷积码
7.3.4 FPGA的加密算法
7.4 调制和解调
7.4.1 基本调制概念
7.4.2 非相干解调
7.4.3 相干解调
7.5 练习
第8章 自适应滤波器
8.1 滤波器应用概述
8.2 自适应滤波器的应用
8.2.1 干扰的消除
8.2.2 预测
8.2.3 反演模拟
8.2.4 辨识
8.3 最优估计技术
8.4 Widrow-Hoff最小二乘法算法
8.4.1 学习曲线
8.4.2 标准化LMS
8.5 变换域LMS算法
8.5.1 快速卷积技术
8.5.2 应用正交变换
8.6 LMS算法的实现
8.6.1 量化效应
8.6.2 LMS算法的FPGA设计
8.6.3 流水线LMS滤波器
8.6.4 转置形式的LMS滤波器
8.6.5 DLMS算法的设计
8.6.6 应用SIGNUM函数的LMS设计
8.7 递归最小二乘法算法
8.7.1 有限记忆的RLS算法
8.7.2 快速RLS算法的卡尔曼实现
8.7.3 快速后验卡尔曼RLS算法
8.8 LMS与RLS参数的比较
8.9 练习
第9章 微处理器设计
9.1 微处理器设计概述
9.2 微处理器发展史
9.2.1 多功能微处理器简史
9.2.2 RISC微处理器简史
9.2.3 PDSP简史
9.3 指令集设计
9.3.1 寻址模式
9.3.2 数据流:零、单、二和三地址设计
9.3.3 寄存器文件和存储器体系结构
9.3.4 操作支持
9.3.5 下一次操作的定位
9.4 软件工具
9.4.1 词法分析
9.4.2 分析程序的开发
9.5 FPGA微处理器内核
9.5.1 硬内核微处理器
9.5.2 软内核微处理器
9.6 案例研究
9.6.1 T-RISC栈处理器
9.6.2 LISA小波处理器的设计
9.6.3 Nios FFT设计
9.7 练习
参考文献