首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于DDS跳频信号源的设计与实现
来源:本站整理  作者:佚名  2011-11-15 10:37:01




2.1 逻辑地址控制单元
    在本设计中,逻辑地址控制单元由一个6级移位寄存器和6位存储器构成。系统时钟clk经过64分频后得到时钟clk_64,将clk_64作为逻辑地址控制单元的驱动时钟。当一个时钟clk_64上升沿到来时,r(1:5)=r(0:4)同时j.jpg。这样移位寄存器中的状态将改变,并存入存储器中,得到频率控制字k(5:0)。
2.2 DDS单元
    DDS单元为本设计的核心,由相位累加器和ROM查询表两部分组成。在频率控制字(5:0)的控制下产生相应频率的信号。
2.2.1 相位累加器
    相位累加器是DDS的重要的组成部分。被用来实现相位的累加,并将其累加结果存储。如果相位累加器的初值为φ0,则经过一个时钟周期后相位累加器值为φ1,即φ1=φ0+k,其中k为频率控制字。当经过n个时钟周期后φn=φ0+nk。可见φn为一等差数列。
    在本文中基于FPGA的相位累加器设计如图2所示。从图2中可以看出,相位累加器由一个数字全加器和一个数字存储器构成。为了提高DDS输出频率的分辨率,一般要求n足够大,这样就要求ROM中存储大量数据。但是考虑到硬件资源有限,所以在相位累加器中采用了截短处理,这样既可保证较小的频率分辨率,又节省了硬件资源。
2.2.2 ROM查询表
    ROM中所存储的数据是数字波形的幅值,在一个系统时钟周期内,相位累加器将输出一个位宽为L的序列对其进行寻址,经过低通滤波器后得到所需要的波形。若相位累加器的输出序列的位宽L=16,ROM中存储的数据位宽为M=16,可以计算出ROM的存储量为2L×M=1048576bits,虽然一块FPGA开发芯片上提供了大量的ROM,可以显著提高输出信号频率精确度和信号幅值准确性,但这样会使成本提高、功耗增大。
在保证输出信号具有良好频率分辨率的前提下,以产生正弦信号为例,考虑到基于DDS产生的正弦波具有周期性,因此本设计的ROM中存储1/4周期正弦波。如图2所示为存储1/4周期正弦波形ROM查询表设计。利用正弦信号的对称性,通过改变ROM存储器地址及对其输出端控制,最终得到整周期正弦信号。

3 仿真结果及分析
3.1 DDS单元仿真结果及分析
3.1.1 仿真参数
    为分析本设计中DDS所产生频率的精确度,现使用Xilinx ISE 8.11中DDS IP Core进行对比,在同等仿真参数条件下,分别对本设计的DDS和DDS IP Core进行仿真测试。表1中分别给出基于本设计DDS和DDS IP Core的仿真参数。

c.jpg


3.1.2 仿真结果及分析
    如图3所示,clk是系统时钟,new_dds_sine为在频率控制字k=16时基于本设计DDS产生的频率为1.5625MHz(理论值)的正弦波,dds_ip_ core_sine为基于DDS IP Core产生的频率为1.5625MHz(理论值)的正弦波。

g.jpg

d.jpg


    图4给出在k为1~16时,本设计的DDS所产生信号的频率和DDS IP Core所产生信号的频率与理论频率值的对比。从图中可以看出,本设计DDS所产生的信号频率与理论频率值比较接近,且本设计DDS中ROM查询表中存储的点数少,从硬件的角度考虑更加节省资源,能耗更低。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:82,210.94000 毫秒