DDS调频信号发生器的FPGA电路设计
发布时间:2008/5/28 0:00:00 访问次数:572
直接数字频率合成器(dds)技术,具有频率切换速度快,很容易提高频率分辨率、对硬件要求低、可编程全数字化便于单片集成、有利于降低成本、提高可靠性并便于生产等优点。目前各大芯片制造厂商都相继推出采用先进cmos工艺生产的高性能和多功能的dds芯片,专用dds芯片采用了特定工艺,内部数字信号抖动很小,输出信号的质量高。然而在某些场合,由于专用的dds芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,这时如果用高性能的fpga器件设计符合自己需要的dds电路就是一个很好的解决方法,它的可重配置性结构能方便的实现各种复杂的调制功能,具有很好的实用性和灵活性。
2 dds调频信号发生器框图设计
3 dds调频信号发生器fpga电路设计
图2给出了dds调制信号发生器核心单元的fpga电路设计图。其设计方案采用altera公司的cyclone系列ep1c6t144c6芯片,加法器为12位,调制信号
波形存储器为4096×12bit,载波信号波形存储器为4096×12bit,系统时钟为80mhz;设计性能参数:载波频率可达10mhz(为确保波形不失真,一周期至少取8点),调制频率范围0~100k,调频深度0~10。外部电路输入有调制信号频率控制字kh[11..0],载波信号频率控制字kc[11..0],频偏控制字kx[11..0],调制信号系统时钟tzclk,载波信号系统时钟zbclk。kh[11..0]经累加器a输出累加相位adda[11..0]作为调制信号查找表的地址,波形数据qa[11..0]和kx[11..0]和kc[11..0]经过数值变换后输出调频控制字k[11..0]。k[11..0]经累加器b输出累加相位addb[11..0]作为调频信号查找表的地址,波形数据qb[11..0]经外部dac转换和低通滤波得到调频信号波形。其中,在两个累加器后相连的dff缓冲器有助于消除毛刺的影响,进一步确保系统的稳定性和可靠性。
4 仿真及实验
取载波系统时标频率1mhz,调制信号系统时标频率100khz,相位累加器位数8位,两个波形存储器地址位数和数据位数都为8位。用quertus ⅱ 3.0 仿真,见图3;
图3 dds调频波仿真图(quertus ii)
用matlab 6.5仿真见图4;
用aedk-eda实验箱下载(其fpag芯片为epf10k10tc144-4),d/a转换及单极性输出电路用isppac20芯片实现,通过tektronix tds3054b示波器观察波形,结果见图5。其中d/a位数为8,测量范围-4-+4v,载波信号峰值1.414v,由图4和图5频率调制解调波形数据可得载波频率为14.2khz,误差-3.06%;调制频偏为480hz,误差-1.69%;调制度为m=10.21%,误差2.1%,调制频率为4.82khz,误差-1.23%。从实验结果可以看出本文提供的设计理论及设计电路的不但正确、可行,并具有良好的性能参数。所有设计、仿真及实验结果的一致,为dds调频信号发生器fpga实现提供了优良的设计方案。
图4 dds调频波仿真图(matlab)
图5 dds调频波实验结果图
5 总结
用fpga实现dds调频信号电路较采用专用dds芯片更为灵活,只要改变fpga中rom内的数据和控制参数,dds就可以产生任意调制波形,且分辨率高,具有相当大的灵活性。相比之下,dds的功能完全取决于设计需求,可以复杂也可以简单,而且fpga芯片还支持在系统现场升级。另外,将dds设计嵌入到fpga芯片所构成的系统中,其系统成本并不会增加多少,而购买专用芯片的价格则是前者的很多倍。所以采用fpga来设计dds系统具有很高的性价比。
直接数字频率合成器(dds)技术,具有频率切换速度快,很容易提高频率分辨率、对硬件要求低、可编程全数字化便于单片集成、有利于降低成本、提高可靠性并便于生产等优点。目前各大芯片制造厂商都相继推出采用先进cmos工艺生产的高性能和多功能的dds芯片,专用dds芯片采用了特定工艺,内部数字信号抖动很小,输出信号的质量高。然而在某些场合,由于专用的dds芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,这时如果用高性能的fpga器件设计符合自己需要的dds电路就是一个很好的解决方法,它的可重配置性结构能方便的实现各种复杂的调制功能,具有很好的实用性和灵活性。
2 dds调频信号发生器框图设计
3 dds调频信号发生器fpga电路设计
图2给出了dds调制信号发生器核心单元的fpga电路设计图。其设计方案采用altera公司的cyclone系列ep1c6t144c6芯片,加法器为12位,调制信号
波形存储器为4096×12bit,载波信号波形存储器为4096×12bit,系统时钟为80mhz;设计性能参数:载波频率可达10mhz(为确保波形不失真,一周期至少取8点),调制频率范围0~100k,调频深度0~10。外部电路输入有调制信号频率控制字kh[11..0],载波信号频率控制字kc[11..0],频偏控制字kx[11..0],调制信号系统时钟tzclk,载波信号系统时钟zbclk。kh[11..0]经累加器a输出累加相位adda[11..0]作为调制信号查找表的地址,波形数据qa[11..0]和kx[11..0]和kc[11..0]经过数值变换后输出调频控制字k[11..0]。k[11..0]经累加器b输出累加相位addb[11..0]作为调频信号查找表的地址,波形数据qb[11..0]经外部dac转换和低通滤波得到调频信号波形。其中,在两个累加器后相连的dff缓冲器有助于消除毛刺的影响,进一步确保系统的稳定性和可靠性。
4 仿真及实验
取载波系统时标频率1mhz,调制信号系统时标频率100khz,相位累加器位数8位,两个波形存储器地址位数和数据位数都为8位。用quertus ⅱ 3.0 仿真,见图3;
图3 dds调频波仿真图(quertus ii)
用matlab 6.5仿真见图4;
用aedk-eda实验箱下载(其fpag芯片为epf10k10tc144-4),d/a转换及单极性输出电路用isppac20芯片实现,通过tektronix tds3054b示波器观察波形,结果见图5。其中d/a位数为8,测量范围-4-+4v,载波信号峰值1.414v,由图4和图5频率调制解调波形数据可得载波频率为14.2khz,误差-3.06%;调制频偏为480hz,误差-1.69%;调制度为m=10.21%,误差2.1%,调制频率为4.82khz,误差-1.23%。从实验结果可以看出本文提供的设计理论及设计电路的不但正确、可行,并具有良好的性能参数。所有设计、仿真及实验结果的一致,为dds调频信号发生器fpga实现提供了优良的设计方案。
图4 dds调频波仿真图(matlab)
图5 dds调频波实验结果图
5 总结
用fpga实现dds调频信号电路较采用专用dds芯片更为灵活,只要改变fpga中rom内的数据和控制参数,dds就可以产生任意调制波形,且分辨率高,具有相当大的灵活性。相比之下,dds的功能完全取决于设计需求,可以复杂也可以简单,而且fpga芯片还支持在系统现场升级。另外,将dds设计嵌入到fpga芯片所构成的系统中,其系统成本并不会增加多少,而购买专用芯片的价格则是前者的很多倍。所以采用fpga来设计dds系统具有很高的性价比。