太原工业学院2012-2013学年第一学期实践环节名称:专业新技术实践(1)课外作业名称:FPGA在数字信号处理中的应用系部名称:专业:班级学号:姓名:指导教师:实践周次:成绩:FPGA在数字信号处理中的应用——DDS的设计一.前沿随着科技的不断发展,电子技术获得了飞速的发展,有力的推动了生产力的发展和社会信息化程的提高,电子行业也经历着日新月异的变化。90年代后期,出现了以高级语言描述、系统级仿真和综合技术为特征的第三代EDA工具,极大地提高了系统设计的效率,使广大的电子设计师开始实现“概念驱动工程”的梦想。设计师们摆脱了大量的具体设计工作,而把精力集中于创造性的方案与概念构思上,从而极大地提高了设计效率,缩短了产品的研制周期。现场可编程逻辑门阵列FPGA,与PAL、GAL器件相比,他的优点是可以实时地对外加或内置得RAM或EPROM编程,实施地改变迄今功能,实现现场可编程(基于EPROM型)或在线重配置(基于RAM型)。是科学试验、演技研制、小批量产品生产的最佳选择其间。自上世纪70年代单片机问世以来,它以其体积小、控制功能齐全、价格低廉等特点赢得了广泛的好评与应用。由单片机构成的应用系统有有体积小、功耗低控制功能强的特点,它用利于产品的小型化、多功能化和智能化,还有助与提高仪表的精度和准确度,简化结构、减小体积与重量,便于携带与使用,降低成本,增强抗干扰能力,便于增加显示、报警和诊断功能。因而许多现代仪器仪表都用到了单片机。二.设计内容(一)设计步骤累加器加法器加法器D/ALPF参考信号fcROM波形控制字w相位控制字p频率控制字kN位N位S(n)S(t)图1.DDS的原理框图本设计采用Altera公司的EPF10K10LC-84器件,利用其集成化数字系统EDA设计软件MAX-PLUSE2进行开发。开发语言用VHDL。设计一相位累加器,同时输出两路寻址信号(基准信号的寻址信号以及输出信号的寻址信号),对ROM表进行寻址输出波形。设计框图如上图1:直接数字频率合成器,(DirectDigitalSynthesizer)是从相位概念出发直接合成所需波形的一种频率合成技术。一个直接数字频率合成器由相位累加器、加法器、波形存储ROM、D/A转换器构成。其中K为频率控制字、P为相位控制字、W为波形控制字、cf为参考时钟频率,N为相位累加器的字长,D为ROM的数据位及D/A转换器的字长。相位累加器在时钟cf的控制下以步长K作累加,输出的N位二进制码与相位控制字P、波形控制字W相加后作为波形ROM的地址,对波形ROM进行寻址,波形ROM输出D位的幅度码S(n)经D/A转换器变成阶梯波S(t),再经过低通滤波器平滑后就可以得到合成的信号波形。全盛的信号波形取决于波形ROM中存放的幅度码,因此用DDS可以产生任意波形[3]。1、频率预置与调节电路。K被称为频率控制字,也叫相位增量。DDS方程为:ncKff2/0(1.1)0f为输出频率,cf为时钟频率。当K=1时,DDS输出最低频率(也即频率分辨率)为cf/2N,而DDS的最输出频率由Nyquist采样定理决定,即cf/2,也就是说K的最大值为2N-1。因此,只要N足够大,DDS可以得到很细的频率间隔。要改变DDS的输出频率,只要改变频率控制字K即可。2、累加器相位累加器由N位加法器与N位寄存器级联构成。每来一个时钟脉冲cf,加法器将频率控制字K与寄存器输出的累加相位数据相加,再把相加后的结果送至寄存器的数据输入端。寄存器将加法器在上一个时钟作用后所产生的相位数据反馈到加法器的输入端;以使加法器在下一个时钟作用下继续与频率控制字进行相加。这样,相位累加器在时钟的作用下,进行相位累加。当相位累加器累加满量时就会产生一次溢出,完成一个周期性的动作。3、控制相位的加法器通过改变相位控制字P可以控制输出信号的相位参数。令相位加法器的字长为N,当相位控制字由0跃变到P(P≠0)时,波形存储器的输入为相位累加器的输出与相位控制字P之和,因而其输出技术的幅度编码相位会增加P/2N,从而使最输出技术的信号产生相称。4、控制波形的加法器通过改变小型控制字W可以控制输出信号的波形。由于波形存储器中的不同波形是分块存储的,所以当小型控制字改变时,波形存储器的输入为改变相位后的地址与波形控制字W(波形地址)之和,从而使最后输出技术的信号产生相移。5、波形存储器用相位累加器输出的数据作为波形存储器的取样地址,进行波形的相位—幅值转换,即可在给定的时间上确定输出的波形的抽样幅值。N位的寻址ROM相当于把0O~360O的正弦信号离散成具有2N个样值的序列,若波形ROM有D位数据位,则2N个样值的幅值以D位二进制数固化在ROM中,按照地址的不同可心输出相应本相位的正弦信号的幅值。相位—幅值变换原理图如下图2所示:ROM(波形存储器)相位量化序列波形幅度量化序列地址数据图2变换原理图D/A转换器的作用是把合成的正弦波数字量转换成模拟量。正弦幅度量化序列S(n)经D/A转换后变成了包络为正弦波的阶梯波S(t)。需要注意的是,频率合成器对D/A转换器的分辨率有一定的要求,D/A转换器的分辨率越高,合成的正弦波S(t)台阶数就越多,输出的波形的精度也就越高。6.低通滤波器对D/A输出的阶梯波S(t)进行频谱分析,可知S(t)中除0f外,还存在分布在cf,2cf两边的非谐波分量,幅值包络为辛格函数。因此,为了取出主频,必须在D/A转换器的输出段介入截止频率为cf/2的低通滤波器。图3.DDS顶层设计电路图(二)仿真结果1.SUM模块仿真图本设计中的相位累加器SUM模块的仿真图如图4所示。相位累加器在每一个时钟脉冲输入时,把频率控制字加一次,相位累加器输出的数据就是合成信号的相位。图4.SUM模块2.DDS正弦信号输出ROM表仿真图设计中整个DDS正弦信号发生系统仿真结果如图5所示。用相位累加器的数据作为波形存储器的相位取样地址,这样就可把存储在ROM内的波形取样值经查找表查出,完成相位到幅值的转换图5.DDS正弦信号输出ROM表仿真图三.结论本设计是基于FPGA的DDS信号发生器。通过方案论证,采用直接数字频率合成技术,经过硬件电路设计和软件设计,将DDS技术与FPGA的项结合,输出正弦波、三角波和方波。实现了波形的平滑、无毛刺,具有较高的频率分辨率,可实现快速的频率切换,并且在改变时能够保持相位的连续、很容易实现频率、相位和幅度的数控调制。用FPGA实现DDS调频信号电路较专用DDS芯片更为灵活,只要改变FPGA中的数据和控制参数就可以了。本设计通过EDA、数电以及模电几方面知识的结合,采用频率合成技术实现了DDS信号发生器应具备的各个环节。在整个设计和制作的过程中,我遇到了各种难题,通过查阅资料,问题一步步地得到了解决,同时我也深刻体会到了所学理论知识的重要性,以及理论知识与实际操作相结合的重要性。四.参考文献[1]第五届全国大学生电子设计竞赛获奖[M],北京理工大学出版社,2001:132-138.[2]陈明义主编,电子技术课程设计实用教程[N],中南大学出版社,2001:64-75.[3]潘松、黄继业编著,EDA技术实用教程[J],科学出版社2002:321-346.[4]胡宴如主编,胡宴如、耿苏燕编写,模拟电子技术基础[M].北京:高等教育出版社,1993:103-114.[6]孙江宏、李良玉编著,Protel99电路设计与应用[N].机械工业出版社,2001:79-86.[7]刘守义主编,杨宏丽、王静霞副主编,单片机应用技术[N].西安电子科技大学出版社,2002:87-92.[8]何小艇主编,电子系统设计[J],浙江大学出版社,2000,6.