数字移相信号发生器设计说明书.docx
- 文档编号:17103796
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:13
- 大小:417.96KB
数字移相信号发生器设计说明书.docx
《数字移相信号发生器设计说明书.docx》由会员分享,可在线阅读,更多相关《数字移相信号发生器设计说明书.docx(13页珍藏版)》请在冰点文库上搜索。
数字移相信号发生器设计说明书
课程设计任务书
(指导教师填写)
课程设计名称现代电子系统课程设计学生姓名专业班级
设计题目数字移相信号发生器设计
一、课程设计目的
掌握数字移相信号发生器的工作原理和设计方法;
掌握DDS技术的工作原理;
掌握GW48_SOPC实验箱的使用方法;
了解基于FPGA的电子系统的设计方法。
二、设计内容、技术条件和要求
基于DDS技术利用VHDL设计并制作一个数字式移相信号发生器。
(1)基本要求:
a.频率范围:
1Hz~4kHz,频率步进为1Hz,输出频率可预置。
b.A、B两路正弦信号输出,10位输出数据宽度
c.相位差范围为0~359°,步进为1.4°,相位差值可预置。
d.数字显示预置的频率(10进制)、相位差值。
(2)发挥部分
a.修改设计,增加幅度控制电路(如可以用一乘法器控制输出幅度)。
b.输出幅度峰峰值0.1~3.0V,步距0.1V
c.其它。
三、时间进度安排
布置课题和讲解:
1天查阅资料、设计:
4天
实验:
3天撰写报告:
2天
四、主要参考文献
何小艇《电子系统设计》浙江大学出版社2008.1
潘松黄继业《EDA技术实用教程》科学出版社2006.10
王勇《EDA》实验指导书电工电子实验教学中心2006.8
指导教师签字:
2009年12月14日
摘要
在现代的信号分析和处理领域,高精度的频率和相位测量非常重要,它是理论和工程分析的重要工具。
使用模拟或数字示波器测量频率,是我们最常用的方法,同时也是不是很精确的方法;同时如果要测量两路信号的相位差,使用示波器又不是很方便。
而且示波器的价格最低需要几千元,对于普通人来讲不是最佳选择。
在本文中,我们设计了一个数字移相信号发生器设计。
主要分为如下几个部分:
●键盘和显示模块:
用键盘输入,数码管显示频率控制字和相位控制字。
采用按键复用的方法。
●数字DDS模块:
分为频率合成模块和相位合成模块。
具体的方案论证将在下面进行。
●时钟模块:
由于系统需要时钟频率和实验箱上的不匹配,需要频率变换,具体的方案论证将在下面进行。
●高速DA模块:
输出两个频率和幅度相同相位不同的正弦波,且同时频率和相位差可调。
关键词:
频率、移相、VHDL、FPGA、DDS
一.任务解析
1任务与要求
基于DDS技术利用VHDL设计并制作一个数字式移相信号发生器。
a.频率范围:
1Hz~4kHz,频率步进为1Hz,输出频率可预置。
b.A、B两路正弦信号输出,10位输出数据宽度
c.相位差范围为0~359°,步进为1.4°,相位差值可预置。
d.数字显示预置的频率(1-4000)(10进制)、相位差值(00-FF)。
2系统原理框图
图1-1DDS数字移相调频原理框图
二.系统方案论证
2.1总体方案与比较论证
方案一:
采用函数发生器(如ICL8038)产生频率可变的正弦波周期性波形。
此方案实现电路复杂,难于调试,且要保证技术要求的指标困难,故方案不理想。
方案二:
采用单片机控制合波形
波形频率控制由单片机编程实现。
此方案产生的频率范围,步进值取决于所采用的每个周期的输出点数及单片机执行指令的时间。
此方案的优点是硬件电路简单,所用器件少,且实现各种波形相对容易,在低频区基本能实现要求的功能;缺点是精度不易满足,产生波形频率范围小,特别难以生成高频波形。
方案三:
采用DDS技术,将所需生成的波形写入ROM中,按照相位累加原理合成任意波形。
此方案得到的波形稳定,精度高,产生波形频率范围大,容易产生高频。
方案四:
锁相频率合成技术方案,优点:
有稳定的频率、稳定的边沿,具有易预置、易调节的优点,控制和调节电路都是数字电路,工作稳定可靠。
缺点:
锁相环的锁相特性,环路滤波器既要保证有很好的滤波特性,又要求它能够使锁相环有很快的捕捉时间,电路的复杂程度中等。
比较以上四种方案的优缺点,方案三简洁、灵活、可扩展性好,能完全达到设计要求,故采用第三种方案。
2.2系统原理与结构
2.2.1主要芯片选型
EP1C0Q240C8(Cyclone系列FPGA):
Cyclone(飓风):
Altera中等规模FPGA,2003年推出,0.13um工艺,1.5v内核供电,与Stratix结构类似,是一种低成本FPGA系列,是目前主流产品,其配置芯片也改用全新的产品。
DA5651:
10位超高速DAC(转换速率最高150MHz)。
2.2.2系统结构
系统从硬件上看主要由显示模块、FPGA模块(时钟)、DA转换模块、按键输入模块。
硬件和软件设计更方便,利于以后的扩展;FPGA模块实现波形数据的存储与输出;DA转换模块作用将波形数据转换为模拟量。
显示器用于显示频率、相位等。
硬件系统框图见图2.2.1。
图2.2.1硬件系统框图
系统从功能上看可分为:
键盘和显示模块,数字DDS模块(分为频率合成模块和相位合成模块),时钟模块、高速DA模块。
功能系统框图见图2.2.2。
图2.2.2功能系统框图
3.数字DDS(DDFS)模块设计
3.1DDFS原理
DDFS以数控的方式产生频率、相位和幅度可以控制的正弦波,DDFS的基本结构主要由相位累加器、相位调制器、正弦ROM查找表和D/A构成,相位累加器是整个DDFS核心,完成相位累加运算。
相位累加器、相位调制器、正弦ROM查找表是DDFS结构中的数字部分,由于具有数控频率合成的功能,又合称为NCO(NumericallyControlledOscillators)。
直接数字频率合成(DDFS)移相原理是:
先将正弦波信号数字化,并形成一张数据表存入两片ROM芯片中,此后可通过两片D/A转换芯片在计数器的控制下连续地循环输出该数据表,就可获得两路正弦波信号。
当两片D/A转换芯片所获得的数据序列完全相同时,则转换所得到的两路正弦波信号无相位差称为同相。
当两片D/A转换芯片所获得的数据序列不同时,则转换所得到的两路正弦波信号就存在着相位差。
相位差的值与数据表中数据的总个数及数据地址的偏移量有关。
这种处理方式的实质是将数据地址的偏移量映射为信号间的相位值。
数据的偏差可以通过外部微处理器来获得相应的数字量输入,这个数值对应着正弦信号的移相角度。
数字移相信号发生器的核心是DDFS,相位累加器输出与相位增量相加,相加后的结果形成正弦查询表地址,取出表中与该相位对应的单元中的幅度量化正弦函数值,经高速D/A转换器输出模拟信号。
两路信号的相位差用相位字来控制,只要相位字不同,就可得到两路不同相位的移相信号。
一张数据表格由1024个数据点组成,存储了一个周期的正弦波,相位差的分辨率为:
具有很高的相位分辨率。
3.2频率合成模块
设计要求频率范围:
1Hz~4kHz,频率步进为1Hz,因此频率控制字需要N应该满足
,N
12,本设计取N=12,频率控制字为12位,累加器的位数应不小于(12+10)=22,才能满足波形精度不受输入频率的影响,本设计采用32位(低10位不用)。
模块连接图如图3.2.1所示。
如图3.2.1频率合成模块连接图
3.3相位合成模块
设计要求相位差范围为0~359°,步进为1.4°,因此需要8位的相位控制字,加法器和寄存器采用sin_rom和相位控制字的最大值10位,模块连接图如图3.3.1所示
如图3.3.1相位合成模块连接图
3.4数字DDS实现方式
图3.4.1DDS模块RTL图
图3.4.2DDS模块仿真波形
四.时钟模块设计
4.1设计方案论证
根据频率范围和累加器位数,以及其连接的情况可以计算出,DDFS模块所需要的系统时钟频率为
,因实验箱上没有4MHz的时钟频率,所以需要频率变换,具体有如下方案:
方案一:
数字锁相环,利用Altera公司的FPGA开发MegaWizardPlug-InManager定制数字锁相环。
优点:
不用编写代码,调试方便,容易修改,频率稳定。
缺点:
主要针对高频的时钟变换,4MHz的频率不属于高频,不能直接定制。
方案二:
分频方式,优点:
代码简单,容易编写,对输入频率没有特别的要求,只要满足4MHz的整数倍就行。
缺点:
如果输入频率信号质量不太好,可能会影响输入频率。
本设计采用方案二分频方式。
4.2方案的实现
采用12MHz的时钟进行3分频,模块符号文件和仿真波形如图4.2.1和图4.2.2所示。
图4.2.1时钟模块符号文件
图4.2.1时钟模块仿真波形
5.键盘和显示模块设计
5.1硬件设计
本模块采用按键复用方式,显示采用数码管,电路原理图如图5.1.1所示,按键S1(对应实验箱上按键8)控制输入控制字是频率控制字还是相位控制字,当S1为低电平时输入频率控制字,否则,是相位控制字。
如图5.1.1键盘和显示模块电路原理图
5.2软件设计及仿真
由于设计要求采用十进制显示,然而实验箱上用的是十六进制计数器,所以把十六进制当做十进制看待,当输入的控制字有一位大于9时,控制字无效,仿真波形图如图5.2.2所示。
图5.2.2键盘和显示模块仿真波形
6.高速DA模块
GW_ADDA板含两片10位超高速DAC(转换速率最高150MHz),D/A全部处于使能状态,除了数据线外,任一器件的控制信号线只有时钟线,这有利于高速控制和直接利用MATLAB/DSPBuilder工具的设计。
GW_ADDA板上工作时钟必须由FPGA的I/O口提供,优点是时钟频率容易变化,且可通过Cyclone中的PLL的到几乎任何时钟频率。
由此即可测试DAC的最高转换频率。
两个电位器可分别调协两个D/A输出的幅度(输出幅度峰峰值不可大于5V,否则波形失真);模拟信号从接插口的2针“AIN”输入,J1和J2分别是模拟信号输出的PA、PB口,也可在两挂钩处输出,分别是两个10位DA5651输出口。
电路原理图如图6.1所示。
图6.1高速DA模块电路原理图
7.程序整体设计
7.1模块整合
把各个模块进行整合,工程中各文件的关系如图7.1.1和7.1.2所示。
图7.1.1DDS_VHDL文件的RTL图
图7.1.2顶层文件的连接图
7.2整体仿真
整体仿真波形图如图7.2.1所示。
图7.2.1整体仿真波形图
八.总结
8.1测试性能概览
频率幅度测试
输入频率(HZ)
输入相位(度)
输出频率(HZ)
输出相位(度)
10
0
9.87
0
100
10
98.4
11
1000
100
982.1
102
4000
180
3840
184
8.2系统误差原因分析
8.2.1噪声的混入:
无论是在相位测试中,还是在频率测量中,被测信号输入时都会有随机噪声加入,信号与输入信号叠加之后输入整形电路。
在整形电路中,首先对其进行放大,这样也就加剧了噪声信号的影响。
8.2.2数字式移相信号发生器的误差
①频率控制字为32位,在进行浮点运算四舍五入时,会不可避免的引入计算误差,从而产生频率和相位的误差。
②由于ROM中存储的数字字长和DAC的位数有限,在DAC进行幅值量化时会产生幅值量化误差。
增加数据字长和DAC位数可减小误差。
8.3心得体会
本次设计以FPGA为中心,包括了键盘和显示模块,数字DDS模块(分为频率合成模块和相位合成模块),时钟模块、高速DA模块。
很好地将我们所学的知识联系到一起。
虽然由于所学知识的限制,在设计的过程中还是有很多不太完美的地方,很多方面还停留在理论方面,例如,键盘与显示模块(人机交互界面)设计的不太完善,使用起来不太方便,未实现扩展要求中的幅度控制。
但是,通过这次设计,我了解了很多的知识,同时也让我意识到我还可以有很多东西去学习,去提高。
评语
成绩:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 相信 发生器 设计 说明书