您所在的位置:e-works首页 > 产品创新数字化(PLM) > EDA

基于FPGA的DDS信号源设计

发表时间:2008-3-18 史小波 王应海 来源:万方数据
介绍了DDS(直接数字合成)信号源的原理及组成,给出了VHDL(甚高速集成电路硬件描述语言)源代码,并探讨了在设计中应注意的事项。丈中介绍的设计方法和代码已经过实验验证。采用VHDL在FPGA(现场可编程门阵列)器件上完成数字系统的设计,可以大大简化设计过程,提高设计效率,并可以根据实际要求进行灵活修改,充分显示了EDA(电子设计自动化)技术的特点与优势。

    引言

    目前市面上有多种DDS(直接数字合成)信号源芯片,如美国AD公司的AD9850,这类专用芯片由于价格昂贵、功能固定单一,使其应用受到限制。本文采用Altera公司的ACEXIK系列FPGA(现场可编程门阵列)器件,在一个FPGA器件中就可以很方便地实现相位累加器和波形查找表。使用VHDL(甚高速集成电路硬件描述语言)在QuartusII工具软件的环境中进行设计,可以一气呵成地完成硬件设计、仿真、综合、测试,直至对FPGA器件的配置,从而大大简化了设计过程、提高了设计效率,并可以根据实际需要对功能进行灵活修改。

    1、DDS原理

    DDS是一种从相位概念出发直接合成所需波形的数字频率合成技术。与传统的频率合成技术相比。DDS技术具有很高的频率分辨率,可以实现快速的频率变化,并且在频率改变时能保持相位连续,容易实现对信号频率、相位的多种调制,易于功能扩展和数字化集成等优点,满足了现代电子系统的许多要求。随着数字技术的飞速发展,DDS正逐步取代PLL锁相环),得到越来越广泛的应用口正弦信号可以用下式来描述:

    式(1)中的时间t是连续的,为了用数字方式实现,必须进行离散化处理。

    用周期为Tclk的基准时钟对信号进行采样,采样周期为Tdk采样频率Fclk=l/Tclk)。不难看出,连续两次采样之间的相位增量为:

    将整个周期分成2"份,则相位的量化单位S=2×3.14/2"。若△=S,代人式(2)可得fo=fIk/2"。更一般的情况是△为S的M倍,即可得到输出信号的频率:M称为频率控制字(tuning word)。由式(3)可见,M决定了输出信号的频率,且两者是简单的线性关系。可以看出,当采样频率一定时,通过控制两次连续采样之间的相位增量(即通过频率控制字M),即可控制离散波形序列的频率:

    M经保持和滤波后,可唯一地恢复出此频率的模拟信号。图1是DDS的基本结构。相位累加器可在每一个时钟周期来临时将频率控制字M所决定的相位增量累加一次,如果记数大于2",则自动溢出;LUT(查找表)实际上是一个存储器(ROM),其中存储着一个周期正弦波的幅度量化数据,用于实现从相位到幅度的转换。相位累加器的输出作为LUT的地址值,LUT根据输人的地址(相位)信息读出幅度信号,送到D/A转换器中转换为模拟量,最后通过滤波器输出一个平滑的模拟信号。

    根据式(3),可以确定DDS的基本参数:

    a)输出信号的分辨率(最小频率):

    (4)此时每2"个时钟周期输出一个周期的正弦波。

    b)输出信号一个周期内的点数:

    当N比较大时,对于较大范围内的M值,DDS系统都可以在一个周期内输出足够的点,保证输出波形失真很小。

本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。

责任编辑:王阳
2