《EDA课程设计--DDS信号发生器》由会员分享,可在线阅读,更多相关《EDA课程设计--DDS信号发生器(22页珍藏版)》请在金锄头文库上搜索。
1、太原科技大学:DDS 信号发生器1电子课程设计-DDS 信号发生器合成器学院:专业班级:姓名:学号:指导老师:2012 年 12 月太原科技大学:DDS 信号发生器2直接数字频率合成器(DDS)一、 设计任务与要求直接数字频率综合技术,即 DDS 技术,是一种新型的频率合成技术和信号产生方法。利用 EDA 技术和 FPGA 实现直接数字频率合成器 DDS 的设计。设计要求:1、 利用 QuartusII 软件实验箱实现 DDS 的设计;2、 通过实验箱上的开关输入 DDS 的频率和相位控制字,并能用示波器观察加以验证;3、 系统具有清零和使能的功能;4、 DDS 中的波形存储器模块用 Alte
2、ra 公司的 Cyclone 系列 FPGA 芯片中的 ROM 实现。二、 总体框图N 位Mf低 通 滤 波 器*品路控制字 *5*5*5制字累 加 器*品路控制字 *5*5*5制字频 率 控 制 字*品路控制字 *5*5*5制字 相 位 寄 存 器*品路控制字 *5*5*5制字加 法 器*品路控制字 *5*5*5制字相 位 控 制 字*品路控制字 *5*5*5制字正 弦 查 找 表*品路控制字 *5*5*5制字 数 模 转 换 器*品路控制字 *5*5*5制字时 钟 源 *品路控制字 *5*5*5制字太原科技大学:DDS 信号发生器3图 1 DDS 总体框图1、 模块的功能(1) 频率预置和
3、调节电路不变量 K 称作相位增量,也叫频率控制字。此模块实现频率控制量的输入。(2) 相位累加器相位累加器是一个带有累加功能的 N 位加法器,它以设定的 N 位频率控制字 K 作为步长进行线性累加,当其和满时,计数器清零,并进行重新运算,它使输出频率正比于时钟频率和相位增量之积。(3) 相位寄存器相位寄存器是一个 N 位的寄存器,它对输入端输入的数据进行寄存,当下一个时钟到来时,输出寄存的数据。相位频率控 f 量化制字 K 序列N 位N 位 N 位图 2 相位累加器相位累加器的组成=N 位加法器+N 位寄存器相位累加器的作用:在时钟的作用下,进行相位累加注意:当相位累加器累加满量时就会产生一次
4、溢出,完成一个周期 的动作。(4) 正弦查找表正弦查找表 ROM 是 DDS 最关键的部分,也是最复杂的部分,设计时首先需对正弦函数进行离散采样,接着将采样的结果放到 ROM 模块的对应存储单元中,每一位地址对应一个数值,输出为 8 位。ROM 中必须包含完整的正弦采样值,此设计采样 256 点,而且还要注意避免在按地址读取 ROM 内容时可能引起的不连续点,避免量化噪音集中于基频的谐波上。相位量化序列 正弦幅度量化序列N 位 D 位图 3 波形存储器作用:进行波形的相位-幅值转换原理:加 法 器 寄 存 器地 数波 形 ROM址 据 据 据据太原科技大学:DDS 信号发生器4ROM 的 N
5、位地址把 0 360的正弦角度离散成具有 2N 个样值的序列ROM 的 D 位数据位则 2N 个样值的幅值量化为 D 位二进制数据(5) D/A 转换器D/A 转换器的作用:把已经合成的正弦波的数字量转换成模拟量。典型 D/A 转换器芯片 DAC0832:DAC0832 是一个 8 位 D/A 转换器。单电源供电,从+5V+15V 均可正常工作。基准电压的范围为正负 10V;电流建立时间为 1s;CMOS 工艺,低功耗,仅 20mW。DAC0832 转换器芯片为 20 引脚,双列直插式封装,其引脚排列如图 4所示。1 2021819 817976 115 12416151413310图 4 D
6、AC0832 引脚图对各引脚信号说明如下: DI7DI0:转换数据输入。 CS:片选信号(输入),低电平有效。 ILE:数据锁存允许信号(输入) ,高电平有效。 WR1:写信号(输入) ,低电平有效。 WR2:第 2 写信号(输入) ,低电平有效。 XFER:数据传送控制信号(输入) ,低电平有效。 IOUT1、IOUT2:电流输出 1、2,DAC 转换器的特性之一是:Iout1+Iout2=常数 RFB反馈电阻端 VREF:基准电压,其电压可正可负,范围-10V+10V. DGND:数字地 AGND:模拟CS VDDWR1WR2ILEXFER VREFDI0 RFBDI1 IOUT1DI2
7、IOUT2DI3DI4DI5DI6DI7GNDGND太原科技大学:DDS 信号发生器5(6)低通滤波器低通滤波器的作用:滤除生成的阶梯正弦波中的高频成分,将其变成光滑的正弦波。2、设计思路直接数字频率合成器(Direct Digital Frequency Synthesizer)是 一种基于全数字技术,从相位概念出发直接合成所需波形的一种频率合成技术。其电路系统具有较高的频率分辨率,可以实现快速的频率切换( NONE,init_file = Sinrom256_8.mif,intended_device_family = Cyclone,lpm_hint = ENABLE_RUNTIME_M
8、OD=NO,lpm_type = altsyncram,maximum_depth = 256,numwords_a = 256, operation_mode = ROM,outdata_aclr_a = NONE,outdata_reg_a = UNREGISTERED,widthad_a = 8,width_a = 8,width_byteena_a = 1);PORT MAP (clock0 = clock,address_a = address,q_a = sub_wire0);END SYN;模块四、ROM256_8 输出数据寄存器 REG2:太原科技大学:DDS 信号发生器17D
9、7.0CLKQ7.0REG2inst6(D)寄存器逻辑符号 表 4 寄存器功能表输 入 输 出CLK D QQ1Q2Q1Q2数据端 D,用来输入被寄存的二进制信号;脉冲端 CLK,在脉冲的上升沿到来时,Q 随 D 变化;仿真结果:图 14 寄存器 REG2 的仿真波形太原科技大学:DDS 信号发生器18仿真结果分析:由仿真波形可看出相位寄存器的输出 Q 随输入端 D 而变化,当来一个时钟沿时,D 就输入一个数,D 就随之而变化。并且存在一定延时。REG2 的 VHDL 程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG2 ISPORT(
10、D:IN STD_LOGIC_VECTOR(7 DOWNTO 0);CLK:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END ENTITY REG2;ARCHITECTURE ART OF REG2 ISBEGINPROCESS(CLK)ISBEGINIF(CLKEVENT AND CLK=1)THENQ=D;END IF;END PROCESS;END ARCHITECTURE ART;模块五、DAC 0832 数模转换器CLKRSTILECONTDATA_OUT7.0DAC0832inst7(E)DAC 0832 逻辑符号DAC 083
11、2 的 VHDL 程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY DAC0832 ISPORT(CLK:IN STD_LOGIC;RST:IN STD_LOGIC;ILE:OUT STD_LOGIC;CONT:OUT STD_LOGIC;DATA_OUT:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END DAC0832;ARCHITECTURE BEHAV OF DAC0832 ISSIGNAL Q
12、:INTEGER RANGE 0 TO 63;SIGNAL DATA:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN太原科技大学:DDS 信号发生器19PROCESS(CLK)BEGINIF RST=1THEN Q=0;ELSIF CLKEVENT AND CLK=1THENIF Q=63 THEN Q=0;IF DATA=11111111THEN DATA=00000000;ELSE DATA=DATA+1;END IF;ELSE Q=Q+1;END IF;END IF;END PROCESS;ILE=1;CONT=0;DATA_OUT=DATA;END BEHAV;数
13、模转换正弦波形:设计的输出频率为 7.3682307MHz,但是示波器显示为 7.599MHz,示波器显示的频率是不准确的,实际可以用频谱仪看输出的频率。图 15 不加滤波器的 DDS 输出可以看到正弦波是由一个台阶一个台阶组成的,这就是 DA 的模拟输出。太原科技大学:DDS 信号发生器20加低通滤波器图 16 加低通滤波器的 DDS 输出可以看到台阶没有了,正弦波变得比较光滑,这是因为高阶的谐波分量都被滤除了。五、总体设计电路图PIN_105PIN_104PIN_101PIN_100PIN_85PIN_84PIN_83PIN_82VCCk7.0 INPUT28 VCCCLK INPUTI
14、99 VCCEN INPUTPIN_131 VCCRESET INPUTPIN_132PIN_133PIN_134PIN_135PIN_136PIN_137PIN_138PIN_139Q7.0OUTPUTPIN_162PIN_161PIN_164PIN_163VGA3.0OUTPUTK7.0CLKENRESETOUT17.0SUM99instD7.0CLK Q7.0REG2inst3D7.0CLK Q7.0REG1inst4VCCGNDaddress7.0clock q7.0ROM256_8inst1VGA0VGA1VGA2VGA3图 17 顶层电路原理图电路整体工作情况:DDS 设计顶层原理图如上,假定相位控制字位 0,这时 DDS 的核心部分相位累加器的 FPGA 的设计可分为如下几个模块:相位累加器 SUM99、相位寄存器 REG1、正弦查找表 ROM 和输出数据寄存器 REG2。图中,输入信号有时钟输入 CLK,使能端 EN,复位端 RESET,频率控制字 K,输出信号为 Q。太原科技大学:DDS 信号发生器21整个 DDS 模块采用一个时钟,CLK 来自为高稳性晶振提供,以用来同步各个模块的运算速度。DDS 核心的相位累加器由一个 8 位字长的二进制加法器和一个有时钟 f 取样