基于SOPC的DDS信号发生

(整期优先)网络出版时间:2014-04-14
/ 1

基于SOPC的DDS信号发生

李堃

长江大学电子信息学院李堃

摘要:在当代各种信号发生器随处可见,然而由于它们的体积价格等原因,这些信号发生器都很难应用于大多数设备上,由于现有信号发生器的这些弊端,提出了一种新的基于SOPC的DDS信号发生器方案,它可以嵌入到某些需要用特定信号的仪器设备上,拥有价格低,体积小等优点,同时又实现了信号发生器的功能。

关键字:信号发生器;片上可编程系统;直接数字频率合成;DAC902引言信号发生器己成为现代测试领域应用最为广泛的通用仪器之一,DDS技术代表了波形发生器的发展方向。随着科技的发展,对波形发生器各方面的要求越来越高。现场可编程门阵列(FPGA)设计灵活、速度快,在数字专用集成电路的设计中得到了广泛的应用,由于现场可编程门阵列(FPGA)具有高集成度、高速度、可实现大容量存储器功能的特性,能有效地实现DDS技术,极大的提高波形发生器的性能,降低生产成本。在现代电子器件,通信技术,医学成像,无线PCS/PCN系统,雷达,卫星通信中,具有很广泛的应用。

1理论基础1.1DDS基本原理

直接数字式频率合成(DDS)技术是近年来随着数字集成电路和微电子技术的发展而迅速发展起来的一种新的频率合成技术。数字频率合成器是一种数字控制的锁相倍频器。DDS一般由相位累加器、波形存储器、数模转换器及低通滤波器组成。

其基本原理就是将波形数据先存储起来,然后在频率控制字K的作用下,通过相位累加器从存储器中读出波形数据,最后经过D/A转换和低通滤波后输出频率合成。

相位累加器由N位加法器与N位累加寄存器级联构成。每来一个时钟脉冲,加法器就将频率控制字K与累加器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器溢出的频率就是DDS的输出的信号频率。用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址,这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值的转换。相位累加器在基准时钟的作用下,进行线形相位累加,当N位相位累加器累加N次后就会产生一次溢出,这样就完成了一个周期,这个周期也就是DDS信号的频率周期。

1.2信号产生的方法传统产生信号的方法有:用一个高性能单片机控制DDS芯片产生特定频率的信号,此方法产生信号波形单一,且外部电路复杂成本较高;采用模拟电路搭建正弦发生电路,这种电路容易受到温度,电磁辐射等干扰,且信号频率很难调节;结合上述产生信号方法的优缺点,我们采用SOPC技术用DDS方法合成了稳定,类型多样,频率步进小,频带宽的模拟信号。

2系统设计2.1设计方法当我们把一个信号进行离散数字化后的数字量存储到存储器中时,如果我们用算法控制查询存储器地址和查询速度时,那么我么就可以根据设定量得到不同相位不同频率的数字信号,把这些数字信号经过DA转换就可以得到我们想要的模拟信号了,因此用SOPC技术既可以利用FPGA内部存储单元存储波形数据,又可以利用NIOS软核进行DDS频率合成运算。

我们以FPGA为核心,用Verilog语言搭建的内部硬件完成波形的存储,相位的累加和频率的控制和驱动DAC902进行数据的转换,用SOPC技术搭建的软核完成键盘的扫描,频率的计算和驱动LCD12864显示,在幅值控制方面软核驱动12位串行DA(TLV5618)输出模拟直流量来控制VCA810可编程运放来控制输出信号最终的幅度。软件设计主要是NIOS程序设计,NIOS是控制整个系统的核心,也是为了达到实现人机交互的目的,在软件中我们要根据使用者设置的波形和频率来通过算法计算出相应的参数来控制FPGA内部硬件模块查询波形编码表,从而得到想要的波形,其中主要包括对波形频率、波形种类、波形幅值的控制等。

2.2系统的测试我们对四种常用的波形分别进行了测试,发现波形的幅值和频率与波形的输出种类无关,但是输出波形的频率和幅度与设定的值却有小的差异,主要原因来源于在NIOS软核中有些浮点除法运算不可能得到精确值,我们保留了一部分小数位,当这些值控制外围硬件时就会出现小的误差,再者,幅值调节采用可编程运放很容易受温度的影响,从而造成幅值误差。

3总结本文结合DDS波形发生器的设计和实现,从理论和实际两个方面,对数字直接频率合成技术进行了研究,分析了频率合成技术的基本问题,介绍了各种传统的频率合成技术。并重点介绍了利用SOPC直接数字频率合成技术,摒弃了传统合成信号方法,提到了信号合成质量和频率精度。

参考文献:[1]文卓然.数字式移相信号发生器中的一个误区.电子世界,2004,(5):42~43[2]胡汉才.单片机原理及其接口技术.北京:清华大学出版社,2003:50~220[3]VankkaJ.Spurreductiontechniquesinsineout-putdirectdigitalsynthesis,IEEEProc.50thAFCS,2001:951~959[4]AlteraInc.DATABOOK.Alteracorporation,2001:24~31