出版时间:2010-3 出版社:清华大学出版社 作者:何宾 页数:375
前言
随着数字信号处理算法的不断优化,数字信号处理器(Digital Signal Processors,DSPS)性能的不断提高,数字信号处理技术越来越被广泛地应用在各个领域。数字信号处理技术正朝着高速高性能方向发展,因此这对数字信号处理的手段和工具也提出了更高的要求。 随着现场可编程门阵列(Field Program-mable Gate Arrav.FPGA)制造工艺的不断改进,其集成度和性能的不断提高,采用FPGA对数字信号进行处理越来越受到重视。与DSP相比,FPGA有着不可比拟的优势。一方面,与DSP靠程序指针来运行程序相比,FPGA执行算法的本质是靠电路并行执行的,因此在同样的时钟频率下,使用FPGA完成数字信号处理算法要比使用DSP快得多。另一方面,由于FPGA编程灵活,资源可重新配置,使得在实现数字信号处理时更加灵活,成本更低。因此,FPGA性能的不断提高,能够满足未来复杂数字信号高速实时处理的要求。 与DSP主要靠C语言编程来实现数字信号处理算法相比,使用传统的硬件描述语言(Hardware Desciption Langlaage,HDL)在FPGA上编程实现数字信号处理算法要复杂一些,但是,随着FPGA相关信号处理软件工具性能的不断提高,未来在FPGA上实现数字信号处理算法将变得如同在DSP上使用C语言那样简单。 本书力图全面系统地介绍基于FPGA实现数字信号处理的原理及方法。通过系统介绍这些原理和方法,使读者能够系统、全面地掌握使用FPGA进行数字信号处理的方法和设计技巧。本书主要分为以下几个部分。 ①数字信号处理设计导论部分。该部分主要介绍数字信号处理技术概要,基于FPGA的数字信号处理的实现和基于DSP的数字信号处理的实现。在介绍基于FPGA的数字信号处理的实现部分,简单介绍了Xilinx的FPGA的结构和Xilinx所提供的用于数字信号处理的System Generator和AccelIDSP软件工具的功能和处理流程。
内容概要
本书全面而又系统地介绍了基于FPGA实现数字信号处理的原理及方法。全书包括12章和11个实验,主要内容包括数字信号处理设计导论、FPGA的硬件结构及运算功能、信号及其处理理论概述、CORDIC算法原理及实现、FIR滤波器和IIR滤波器的设计、其他常用数字滤波器的设计、重定时信号流图、数字通信信号处理原理及实现、自适应信号处理理论基础、基于FPGA的自适应信号处理实现、信号同步原理及实现、基于AccelDSP的数字信号处理的实现和实验部分。本书参考了大量最新的设计资料,内容新颖、理论和应用并重,充分反映了基于FPGA实现数字信号处理的最新方法和技术,可以帮助读者系统地掌握这些方法和技术。 本书可作为相关专业开设FPGA数字信号处理课程的本科生和研究生教学参考书,亦可作为从事FPGA数字信号处理研究方向的相关教师、研究生和科技人员的自学参考书,也可作为Xilinx公司相关课程的培训用书。
书籍目录
第1章 数字信号处理设计导论第2章 FPGA的硬件结构及运算功能第3章 信号及其处理理论概述第4章 CORDIC算法原理及实现第5章 FIR滤波器和IIR滤波器的设计第6章 其他常用数字滤波器的设计第7章 重定时信号流图第8章 数字通信信号处理原理及实现第9章 自适应信号处理理论基础第10章 基于FPGA的自适应信号处理实现第11章 信号同步原理及实现第12章 基于AccelDSP的数字信号处理的实现实验1 System Generator软件工具的使用实验2 基于DSP48X的FIR的设计实验3 CORDIC算法的设计实验4 FIR滤波器设计实验5 CIC滤波器的设计实验6 数字通信信号处理实验7 数字变频器的设计实验8 数控振荡器的设计实验9 脉冲整形滤波器的设计实验10 自适应滤波器的设计实验11 系统同步的设计参考文献
章节摘录
实际上可以在5个时钟周期中执行10个MAC,或者只用2个时钟周期(可以根据性能要求来确定)。而使用DSP处理器就不会如此灵活地根据需要来修改执行周期。 这种灵活性是根据面积和速度成反比的关系来确定的。如果必须要快速执行10个MAC,FPGA可在1个时钟周期内并行地执行它们,但是这样会消耗大量的芯片资源(面积)。如果10次MAC允许以低速度执行,则FPGA可以串行地执行,因此,FPGA芯片内逻辑资源的使用量减少到原来的1/10,但却需要10个时钟周期来执行MAC操作。通过上面这个例子说明,在FPGA上实现数字信号处理可根据需求和技术指标进行灵活的确定。 当用FPGA实现DSP时,速率和面积可以相互权衡,而DSP处理器并不具备这种功能。需要说明,不会有人实现过只包括乘法器的FPGA设计。厂商提供的数据仅仅是想指明这些器件潜在的性能以及对比DSP处理器的优势。 需要说明的是FPGA同样也是一块ASIC,这是由于Xilinx、Altera等厂商是FPGA的制造者,但它们最终仍然是全定制集成电路(尽管它们是高度可编程的)。 DSP处理器同样是ASIC,随着ASIC处理技术的提高而且芯片的速度越来越快,DSP处理器也将变得越来越快。 但FPGA同样如此,因为它也是ASIC。FPGA已经较DSP处理器具有性能上的优势而且这种优势将随硅处理技术的发展愈加明显。图r1.2给出了FPGA和DSP在灵活件方面的比较。 1.2.2 FPGA的公共资源 FPGA芯片主要包括以下3个部分,即可重构逻辑模块(高达106)、输入/输出模块、可编程连线资源。下面对各模块进行简单介绍,后面将更详细地介绍这些内容。 1.逻辑模块 如图1.3所示,尽管不同厂商提供的逻辑模块不尽相同,但通常都包括以下单元,即查找表、触发器、复用器和进位逻辑。 单个逻辑模块或者逻辑模块组,用来建立用户自定义函数。单个逻辑模块的功能十分有限,这些单独的逻辑模块具有一些触发器、组合与时序功能的实现能力,以及低分辨率的简单代数计算。
图书封面
评论、评分、阅读与下载