DDS预习报告

时间:2024.5.9

DDS预习报告

0804480106 尤佳

一.实验目的

学习使用FPGA实现直接数字频率合成器(DDS).

二.实验内容

本实验的内容是使用DDS的方法设计一个任意频率的正弦信号发生器,利用Quartus II完成设计、仿真等工作,并进行硬件测试,通过示波器观察输出信号波形.

三.实验要求

1)用QuartusII软件和SmartSOPC实验箱实现DDS的设计;

2)DDS中的波形存储器模块用Altera公司的Cyclone系列FPGA芯片中的ROM实现,ROM结构配置成4096×10类型;

3)具体参数要求:频率控制字K取4位;基准频率fc=1MHz,由实验板上的系统时钟分频得到;

4)系统具有清零和使能的功能;

5)利用实验箱上的D/A转换器件将ROM输出的数字信号转换为模拟信号,能够通过示波器观察到正弦波形;

6)通过开关(实验箱上的Ki)输入DDS的频率和相位控制字,并能用示波器观察加以验证.

四.实验原理

DDS即Direct Digital Synthesizer数字合成器,是一种新型的频率合成技术.具有相对带宽大、频率转换时间短、分辨率高、相位连续性好等优点,很容易实现频率、相位和幅度的数控调制,广泛应用于通讯领域.

DDS的基本结构主要由相位累加器、相位调制器、正弦波数据表(ROM)、D/A转换器构成.相位累加器由N位加法器N位寄存器构成.每来一个CLOCK,加法器就将频率控制字fwrod与累加寄存器输出的累加相位数据相加,相加的结果又反馈送至累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加.这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加.由此,相位累加器在每一个时钟脉冲输入时,把频率控制字累加以此,相

位累加器输出的数据作为波形存储器的相位取样地址,这样就可把存储在波形存储器内的波形抽样值进行找表查出,完成相位到幅值的转换.

由于相位累加器为N位,相当于把正弦信号在相位上的精度定为N位,所以分辨率为1/2N.若系统时钟频率为fc,频率控制字fword为1,则输出频率为fOUT=fC/2N,这个频率相当于"基频".若fword为K,则输出频率为:

fout=K* fC/2N

当系统输入时钟频率fC不变时,输出信号的频率由频率控制字K所决定.由

上式可得:

K=2N*fout/fC

其中,K为频率字,注意K要取整,有时会有误差.

选取ROM的地址时,可以间隔选项,相位寄存器输出的位数D一般取10-16位,这种截取方法称为截断式用法,以减少ROM的容量.D太大会导致ROM容量的成倍上升,而输出精度受D/A位数的限制未有很大改善.

DDS工作流程示意图:

DDS预习报告

1)频率预置与调节电路

K为相位增量,也叫频率控制字

DDS预习报告

.DDS的输出频率表达式为fout=K* fC/2N,当K=1

DDS预习报告

,DDS输出最低频率(也即频率分辨率)为fc/2N,而DDS的最高输出频率由

Nyquist采样定理决定,即fc/2,也就是说K

DDS预习报告

的最大值为2

DDS预习报告

N-1.因此,只要N足够

大,DDS可以得到很细的频率间隔.要改变DDS的输出频率,只要改变频率控制字K即可.

2)累加器

相位累加器由12位加法器与12位寄存器级联构成.每来一个时钟脉冲,加法器将频率控制字K与寄存器输出的累加相位数据相加,再把相加后的结果送至寄存器的数据输入端.寄存器将加法器的上一个时钟作用后所产生的相位数据反馈

至加法器的输入端,以使加法器在下一个时钟作用下继续与频率控制字进行相加.这样,相位累加器在时钟作用下,进行相位累加.当相位累加器累加满量时就会产生一次溢出,完成一个周期性的动作.累加器原理如下图

DDS预习报告

:

3)波形存储器

用相位控制模块输出的数据作为波形存储器的取样地址,进行波形的相位-幅值转换,即可在给定的时间上确定输出的波形的抽样幅值.N位的寻址ROM相当于把错误!未找到引用源。的正弦信号离散成具有2N个样值的序列,若波形ROM有D位数据位,则2N个样值的幅值以D位二进制数值固化在ROM中,按照地址的不同可以输出相应相位的正弦信号的幅值.相位-幅值变换原理如下图

DDS预习报告

:

4)D/A转换器

D/A转换器的作用是把合成的正弦波数字量转换成模拟量.正弦幅度量化序列S(n)经D/A转换后变成了包络为正弦波的阶梯波S(t).需要注意的是,频率合成器对D/A转换器的分辨率有一定的要求,D/A转换器的分辨率越高,合成的正弦波S(t)台阶数就越多,输出的波形的精度也就越高.D/A转换器原理如下图

DDS预习报告

:

5)低通滤波器

低通滤波器对D/A输出的阶梯波S(t)进行频谱分析,可知S(t)中除主频f0外,还存在分布在fc,2fc……两边±f0处的非谐波分量,幅值包络为辛格函数.因

此,为了取得主频f0,必须在D/A转换器的输出端接入截止频率为fc/2的低通滤

波器.低通滤波器原理如下图:

DDS预习报告

6)测频电路

测频就是计算1秒钟内脉冲的个数.我们利用计数器和锁存器实现这一功能.由于累加器以频率控制字K为间隔,当累加器满量时就会产生一次溢出,完成一次周期性的动作,这个周期也就是DDS信号的一个频率周期,所以将累加器的最高位作为测频电路技术器的脉冲.

将1HZ的时钟信号二分频,得到0.5Hz.将0.5Hz脉冲送入锁存器的时钟端,0.5Hz反相延时后的脉冲送入计数器的清零端.这样就使计数器在2s的脉冲周期内,1s内清零,1s内计数.由于锁存器的脉冲和计数器的脉冲是反相的,且有一定的延时,所以当锁存器有效脉冲来到时,计数器是清零状态,锁存器就锁存前1s内计数器的计数信号.这样就完成了1s内的脉冲计数,再将锁存器的输出送入译码显示电路,就可以在数码管上显示波形频率了.测频电路原理如下图

DDS预习报告

:

7)分频与显示电路

分频与显示电路的原理同EDA实验中的分频器和显示器.

五.实验步骤

1)启动Quartus建立一个空白工程,然后命名为dds.qpf.

2)建立ROM宏单元并命名为dds_rom,设置数据个数为4096,数据宽度为十位,初始化数据选择dds_rom.mif文件.

3)建立VHDL源程序文件写出程序代码并保存,进行综合编译,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止.

4)选择目标器件并对相应的引脚进行锁定,将未使用的管教设置为三态输入.

5)将dds_top.bdf设置为顶层实体.对该工程文件进行全程编译处理,若在

编译过程中发现错误,则找出并更正错误,直至编译成功为止.

6)硬件连接、下载程序.

7)用示波器观察输出信号.

*利用VHDL语言设计加法和乘法模块(网上的资料) 加法器语言:

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity fulladder is

port(

reset : in std_logic;

clk : in std_logic;

operand1: in std_logic_vector(7 downto 0);

operand2: in std_logic_vector(7 downto 0);

carry : out std_logic;

sum : out std_logic_vector(7 downto 0)

);

end fulladder;

architecture Behavioral of fulladder is

begin

process(reset,clk)

variable sum_t : std_logic_vector(7 downto 0);

variable carry_t: std_logic;

begin

if(reset = '0') then

carry <= '0';

sum <= (others => '0');

elsif(rising_edge(clk)) then

carry_t := '0';

for i in 0 to 7 loop

sum_t(i) := operand1(i) xor operand2(i) xor carry_t;

carry_t := (operand1(i) and operand2(i)) or (carry_t and (operand1(i) or operand2(i)));

end loop;

carry <= carry_t;

sum <= sum_t;

end if;

end process;

end Behavioral;

乘法器VHDL语言:

library ieee;

use ieee.std_logic_1164.all;

entity multi8 is

port(a,b:in std_logic_vector(7 downto 0);

y:out std_logic_vector(15 downto 0));

end entity multi8;

architecture behavioral of multi8 is

begin

behavior:process(a,b) is

variable a_in:std_logic_vector(7 downto 0);

variable b_in:std_logic_vector(7 downto 0);

variable y_out:std_logic_vector(15 downto 0);

variable carry_in,carry:std_logic;

begin

a_in:=a;

b_in:=b;

y_out:=(others=>'0');

for count in 0 to 7 loop

carry:='0';

if(b_in(count)='1') then

for index in 0 to 7 loop

carry_in:=carry;

carry:=(y_out(index+count) and a_in(index))

or (carry_in and (y_out(index+count) xor a_in(index))); y_out(index+count):=y_out(index+count) xor a_in(index) xor carry_in;

end loop;

y_out(count+8):=carry;

end if;

end loop;

y<=y_out;

end process behavior;

end architecture behavioral;


第二篇:基于FPGA的DDS波形发生器的设计开题报告


特别说明

此资料来自豆丁网()

您现在所看到的文档是使用下载器所生成的文档

此文档的原件位于

感谢您的支持

抱米花

/p-47824709.html

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

基于FPGA的DDS波形发生器的设计开题报告

更多相关推荐:
预习报告范例

电容反馈LC振荡器实验预习报告学号姓名实验台号一实验目的1学会数字频率计的使用方法2掌握常用正弦波振荡器的工作原理及其特点3掌握正弦波振荡器的基本设计分析和测试方法4研究反馈系数静态工作点负载变化对振荡器的起振...

预习报告与实验报告要求

预习报告与实验报告要求预习要求1.课前必须认真预习将要做的实验。认真看理论课讲义与实验指导教材,了解实验要点(包括实验原理、实验方法、使用仪器、实验步骤);2.实验教学大纲规定需写预习报告的实验,必须认真撰写预…

预习报告格式

预习报告格式学生在进实验室之前必须仔细阅读实验书中有关的实验及基础知识明确本次实验中测定什么量最终求算什么量用什么实验方法使用什么仪器控制什么实验条件在此基础上将实验目的操作步骤记录表和实验时注意事项写在预习报...

实验预习报告格式

验证性实验预习报告格式手写电子科学与工程系实验预习报告课程名称实验教师预习成绩专业班级实验地点实验日期学生姓名学号同组者姓名实验项目名称一实验目的和要求二实验原理三实验方法与步骤四实验数据记录表格五预习遇到的问...

预习报告

预习报告实验一一实验目的学习MSSQLServer20xx的安装启动方法注册SQLServer服务器的方法熟悉SQLServer的工作环境掌握使用向导和命令建立数据库的方法掌握数据库常用选项的设置方法掌握建立数...

预习报告

预习报告姓名黄世东班级食品科学与工程学号11014150241院系生化学院三色鸽南阳三色鸽食品有限公司创办于19xx年经过21年的发展公司目前注册资金1200万并拥有独立研发生产营销运输等员工500余名20xx...

预习报告

预习报告姓名王紫薇学号20xx10404127专业通信工程141班实习目的通过实习让我们学会从实习地获得直接的和间接地生产实践经验积累相关的生产知识通过认识实习学习通信工程专业方面的生产实践知识为专业课学习打下...

塞曼效应_预习报告

塞曼效应实验预习报告234

基础物理实验预习报告与数据记录范例

基础物理实验预习报告与数据记录范例1实验1实验编号用单摆测定重力加速度实验人张三合作者李四如果一人一套设备则不写合作者学院专业级学号实验地点实验中心C501房实验日期20xx0910室温250湿度750任何实验...

环境监测大实验预习报告—第一组

北京奥海水质监测环境监测大实验预报告操作小组第一组组员按学号刘晓艺丁予涵朱鑫刘垚刘意闫莉蓉李云芳李俊李微李霓何相磊组长按学号李云芳何相磊指导老师魏杰王雯邹德勋卫建军一实验目的1根据布点采样原则布点掌握测定水质一...

预习报告

一实验任务1低碳钢拉伸试件1弹性性能E2规定微量塑性伸长应力指标00102采用引伸计法和做图法3屈服性能指标屈服点上屈服点下屈服点4强度性能指标5断后伸长率6断面收缩率Z2铸铁拉伸试件1弹性性能E2强度性能指标...

乙酰水杨酸实验预习报告

乙酰水杨酸有机化学实验报告实验项目名称乙酰水杨酸的制备一实验目的1了解和熟悉乙酰水杨酸的基本方法2巩固抽滤的操作技术二实验基本原理或主副反应式主反应OHCH3CO2OCH3COOHOH3副反应OHOH2OHH2...

预习报告(40篇)