DDS_直接数字频率合成器.doc_第1页
DDS_直接数字频率合成器.doc_第2页
DDS_直接数字频率合成器.doc_第3页
DDS_直接数字频率合成器.doc_第4页
DDS_直接数字频率合成器.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南 京 理 工 大 学直接数字频率合成器实验报告作 者:学 号:学院(系):专 业: 指导老师: 实验日期: 2013年11月 直接数字频率合成器(DDS)摘要本次课程设计的主要目的是学习使用FPGA设计直接数字频率合成器(DDS)。实验的主要内容是使用DDS的方法设计一个具有清零、使能频率相位控制、输出多种波形等功能任意频率的信号发生器,在设计之余,还完成了ROM空间的节省、提高等设计,并设计了一个基于DDS的AM调制电路。利用Quartus II完成设计、仿真等工作,并下载至smart SOPC实验平台进行硬件测试,通过示波器观察输出信号波形。实验结果与理论值相符,证明了DDS技术是一项非常实用的技术,它可以广泛应用于数字通信系统。关键词:DDS ROM 正弦波 AM调制 AbstractThe main purpose of this curriculum design is encouraging us to learn to design a direct digital frequency synthesizer by using FPGA. The report mainly talks about how to design a direct digital frequency synthesizer with the function of resetting, frequency and phase controlling , multiple waves output . In addition, I also complete the design of ROM space saving ,and I design an AM modeling circuit based on DDS . The design and simulation work is completed with the help of QuartusII. The final system circuit is downloaded to the smart SOPC platform to undergo hardware test. And the output wave can be seen through oscilloscope. The experiment result is close to the theoretical result. DDS is proved to be a quite useful technology which can be widely applied in digital communication system. Keywords: Direct digital synthesizer ROM Sine wave AM module目 录1、 实验目的 12、 实验内容和设计要求1 2.1实验内容1 2.2设计要求13、 直接频率合成器(DDS)2 3.1实验原理2 3.2脉冲发生电路3 3.3消颤电路4 3.4频率和相位调节电路5 3.5累加器6 3.6波形存储器(ROM表)设计8 3.7测频电路11 3.8显示电路13 3.9总电路图(1)144、 节省ROM空间17 4.1设计思路17 4.2正弦波的计算18 4.3三角波计算20 4.4锯齿波计算20 4.5方波计算22 4.6四种计算波形合并22 4.7总电路图(2)235、 基于DDS的AM调制器的设计24 5.1AM调制原理24 5.2调制信号与载波信号的产生25 5.3波形存储器(ROM表)设计29 5.4调制度的确立30 5.5加法器与乘法器30 5.6显示电路30 5.7AM调制电路总图316、 节省电路的改进327、 实验中遇到的问题及解决办法338、 实验收获和感受339、 致谢 3410、 参考文献 3411、 附录 35 第 37 页 共 37 页电子线路课程设计实验报告1、 实验目的1.学习使用QuartusII软件做复杂逻辑电路的设计。2.学习使用FPGA实现直接数字频率合成器(DDS)。3.熟悉Smart SOPC实验箱硬件测试时的基本使用方法。二、实验内容和设计要求 2.1 实验内容本实验的内容是使用DDS的方法设计一个任意频率的正弦信号发生器,利用Quartus II完成设计、仿真等工作,并进行硬件测试,通过示波器观察输出信号波形。在此基本的内容完成之余,我设计一下几点附加功能:1)测频电路;2)可以输出多种不同的波形;3)节省了ROM空间;4)AM调制器的设计。 2.2 设计要求 1. 对于正弦波的发生器,基本要求是可以通过调节频率控制字和相位控制字 来调节波形的频率和相角。本实验中,考虑到具体情况,频率控制字和相 位控制字均取4位,且可以在数码显示管显示。 2. 对于测频电路,实际上就是测量产生波形的频率,并与理论值,和示波器 上显示的频率做比较,求出相对误差。 3. 输出多种波形和节省ROM空间可以放在一起实现,将一个ROM表分成4部分, 每一部分存放余弦、三角、方波以及锯齿波的各1/4周期的波形,通过合适 的运算就可以得到各自的整个周期的波形。当然,其实可以只采用一个ROM 表的1/4来存放余弦波的1/4周期,然后根据其他波形和余弦波的关系,通 过适当的运算,也可以产生其他类型的波。 4. AM调制器。根据前面设计的DDS,可以产生不同频率的波形,选取其中两个 不同频率的波形,分别作为载波和调幅波,经过加法器和乘法器,就可以 实现AM调制,实验中,由于载波的频率较大,本实验重新对载波的频率控 制字设为8位。3、 直接频率合成器(DDS) 3.1 实验原理 DDS的基本结构主要由相位累加器、相位调制器、正弦波数据表(ROM)、D/A转换器构成。相位累加器由N位加法器N位寄存器构成。每来一个CLOCK,加法器就将频率控制字fword与累加寄存器输出的累加相位数据相加,相加的结果又反馈送至累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。由此,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据作为波形存储器的相位取样地址,这样就可把存储在波形存储器内的波形抽样值进行找表查出,完成相位到幅值的转换。由于相位累加器为N位,相当于把正弦信号在相位上的精度定为N位,所以分辨率为。若系统时钟频率为,频率控制字fword为1,则输出频率为,这个频率相当于基频。若fword为K,则输出频率为:当系统输入时钟频率不变时,输出信号的频率由频率控制字K所决定。由上式可得: 其中,K为频率字,注意K要取整,有时会有误差。选取ROM的地址时,可以间隔选项,相位寄存器输出的位数D一般取10-16位,这种截取方法称为截断式用法,以减少ROM的容量。D太大会导致ROM容量的成倍上升,而输出精度受D/A位数的限制未有很大改善。DDS的工作流程如下图所示。图3-1-1 DDS工作流程图(1)图中,为时钟频率,N为相位累加器的字长,设输出频率f。相位累加器由加法器和D触发器级联组成。在时钟脉冲的控制下,对输入频率控制字K进行累加,累加满量时产生溢出。相位累加器的输出对应于该时刻合成周期信号的相位,并且这个相位是周期性的,当地址在之间变化时,相位在范围内变化。从而得到周期的离散的幅度编码,经过D/A 转换器得到模拟的阶梯电压,最后经低通滤波器,对输出波形进行平滑处理,得到连续变化的所需频率的波形。如下图所示:图3-1-2 DDS工作流程图(2) 3.2 脉冲发生电路 脉冲发生电路主要是将实验室提供的48MHz信号分成所需要的各种频率的信号,其设计原理与数字钟的设计原理类似,这里不再做过多的介绍。首先设计二分频,三分频,十分频等各种分频电路,通过将设计的分频电路进行适当的级连,就可以得到所需的频率信号。本实验所需信号为1MHz,1kHz,1Hz以及0.5Hz。分频电路的总图为:图3-2-1 脉冲发生电路总图其封装为: 图3-2-2 脉冲发生电路封装 3.3 消颤电路 消颤电路主要是去除开关抖动对电路的影响,采用D触发器来实现,原理图如下:图3-3-1 消颤电路其封装为: 图 3-3-2 消颤电路封装3.4频率和相位调节电路K为相位增量,也叫频率控制字。DDS的输出频率表达式为,当K=1时,DDS输出最低频率(也即频率分辨率)为,而DDS的最高输出频率由Nyquist采样定理决定,即,也就是说K的最大值为。因此,只要N足够大,DDS可以得到很细的频率间隔。要改变DDS的输出频率,只要改变频率控制字K即可。P为相位控制字。它与相位累加器的输出相加得到ROM的相位采样地址。它可以使输出波形整体平移,平移量由P控制,故只需改变P就使波形平移。本实验中N取12. (1)频率控制字的产生 本实验中频率控制字为4位,其范围为00001111,一共16个数字,故只需用一片74163模16计数器就可以完成频率字的设计。考虑到频率字应在数码管上显示,而76163产生的是二进制数,非BCD码,故我们需要将二进制数转换成相对应的BCD码。此时有两种办法,第一种就是设计这样一个转换电路,完成二进制到BCD码的转换;第二种是用两片74160构造一个模16计数器,使74163和两片74160计数器同时开始计数,那么,74160产生的数字就是对应74163产生二进制数的BCD码。此时,我们采用第二种办法来实现。实验原理图如下:图3-4-1 模16计数器及其BCD码电路图中,三片计数器的清零端以及置数端连在一起,其目的是使三片计数器同步。下面为仿真波形:图3-4-2 频率字输出波形 观察波形可以知道该思路可行,其中,o4.1用作频率字进入加法器,pxs14.1和pxs24.1输入到译码显示电路。由于N=12,而产生的频率控制字只有四位,故将产生的频率控制字高位补零,扩展到12位。(2) 相位控制字的产生 相位控制字和频率控制字的产生相同,只不过在输入累加器的时候,4位相位控制字扩展成12位时,其地位补零,该4位作为高四位。其原因是使的观察波形移动的现象更明显。对上述电路进行封装: 图3-4-3频率及相位字产生电路3.5 累加器相位累加器由12位加法器与12位寄存器级联构成。每来一个时钟脉冲,加法器将频率控制字K与寄存器输出的累加相位数据相加,再把相加后的结果送至寄存器的数据输入端。寄存器将加法器的上一个时钟作用后所产生的相位数据反馈至加法器的输入端,以使加法器在下一个时钟作用下继续与频率控制字进行相加。这样,相位累加器在时钟作用下,进行相位累加。当相位累加器累加满量时就会产生一次溢出,完成一个周期性的动作。下图为累加器的工作流程: 图3-5-1 相位累加器的工作流程从图像可以看出,需分别设计一个12位的寄存器和12位的加法器(1)寄存器 12位寄存器部分也可采用三片4位寄存器74175级联构成,电路如图所示: 图3-5-2 12位寄存器其封装为: 图3-5-3 12位寄存器封装k5经过一个消颤电路接入到寄存器的清零端口,可以实现寄存器的清零,即可以控制波形的输出与否。(2) 加法器 12位加法器可以由3片二进制的全加器7483组成,对于加法器分为频率累加器和相位累加器,他们均为12位累加器,下面以频率累加器为例,如图所示:图3-5-4 12位加法器 图中最低位的进位信号C0=0,a11.0是寄存器的输出,b3.0是频率控制字,由图像可知,对于扩展成12位的频率字,其高8位全部为0.加法器的输出结果存入寄存器。其封装为: 图3-5-5 频率加法器封装 对于相位加法器,其设计和频率加法器相同,只不过输入的相位控制字接入高位,其低8位为0,即高四位的输入b11.8为产生的相位控制字,这里只给出其封装电路图。 图3-5-6 相位加法器封装3.6 波形存储器(ROM表)设计(1) 设计思路为了能让电路输出正弦波、余弦波、三角波、锯齿波和方波,我做了5块不同的ROM分别存放这五种波形一个周期内的数据。其中正弦波独自在经过一个D/A转换芯片,直接输出在示波器上;余下的4种波形,做一个4选1的数据选择器,通过两个开关闭合来选择输出哪一种波形。(2) 建立ROM表下面以正弦波为例,介绍如何产生ROM表。 用相位控制电路输出的数据作为波形存储器ROM的取样地址,进行波形的相位与幅值的转换,即可在给定的时间内确定输出波形的抽样幅值。12位的寻址ROM相当于把的正弦函数离散成个数值,本次实验N=12,故一共有4096个数值。由于模数转换部分所允许的数据宽度为10位,所以ROM中存储的数据宽度应为10位,则4096个样值的幅值以10位二进制数值固化在ROM中,按照地址的不同可以输出相应相位的正弦信号的幅值。其中相位与幅度变换原理图如下所示:图3-6-1 相位幅度变换原理图 实验中,采用Matlab软件生成对应的数据值(无符号数)。对于无符号数,基于数据宽度应为10位,可知ROM表中存储的数据的范围应该为01023.据此有如下实验程序: clear; clc; k=0:1:4095; y=round(sin(2*pi*k/4096)+1)/2*1023); z=y; 对于此实验程序,最后z矩阵里的数据就是正弦波ROM表的数据,在QuartusII软件中,建立一个*mif 文件,将z矩阵里的数据拷贝到该*mif文件中。如图所示为正弦波的部分*mif 文件内容: 图3-6-2 正弦波的*mif文件截图随后,在元器库中选取LPM-ROM,设置ROM的信息,数据宽度为10bits,数据个数为4096;设置ROM为寄存器输出,不需要时钟和异步清零信号;指定ROM的初始化数据来源,选择刚刚所生成的*mif文件。然后点击“finish”即可生成ROM单元。 图3-6-3 正弦波ROM表依据相同的方法可以建立其它四种波形的ROM表(Matlab实验程序见附录) 图3-6-4 其他四种波形的ROM表将上述4种波形的ROM表接到一数据选择器上,通过开关来控制选择输出何种波形图 3-6-5 其余四块ROM表的连接如图所示,四块ROM表的地址均为相位控制电路的输出,ROM表的输出数据经过一个四选一的数据选择器,通过开关来调节地址码,从而决定输出何种波形到D/A转换芯片。由图像可知,当开关的状态为00,输出的是余弦波,;01,输出的是三角波;10,输出的是方波;11,锯齿波。3.7 测频电路测频就是计算1秒钟内脉冲的个数。我们利用计数器和锁存器实现这一功能。由于累加器以频率控制字K为间隔,从0到4095计数,当累加满量时就会产生一次溢出,完成一次周期性的动作,这个周期也就是DDS信号的一个频率周期,不难发现在这样的一个周期中,累加器的最高位改变只改变了一次,因此,我们只需要统计出1S内累加器最高位改变的次数就可以得到输出信号的频率了。故将的累加器的最高位q12作为测频电路计数器的脉冲。将1Hz的时钟信号二分频,得到0.5Hz。将0.5Hz脉冲送入锁存器的时钟端,0.5Hz反相延时后的脉冲送入计数器的清零端。这样就使计数器在2s的脉冲周期内,1s内清零,1s内计数。由于锁存器的脉冲和计数器的脉冲是反相的,且有一定的延时,所以当锁存器有效脉冲来到时,计数器是清零状态,锁存器就锁存前1s内计数器的计数信号。这样就完成了1s内的脉冲计数,再将锁存器的输出送入译码显示电路,就可以在数码管上显示波形频率了。具体的原理图如下图所示:图3-7-1 测频原理图据上图可以看出,在0.5hz脉冲中,计数器先计一秒的数据,随后锁存器将数据锁存,我们只需将锁存器锁存的数据显示在数码显示管即可。根据以上原理,设计出了一下的测频电路,如图图3-7-2 测频电路图 对于上图所示的电路,由DDS的原理可知,产生波形的频率为,其中本次实验中,=1MHz,N=12,K的最大值为15,则可以计算出最大频率为3662.11,由于测量频率的误差在的范围内,即最大值在范围内,因此只需要采用4片74160计数器和4片74175锁存器即可以实现测频功能。对于锁存器的输出,可以直接接到显示电路,故直接在显示管上就可以直接读出测得的频率值。封装为: 图3-7-3 测频电路的封装3.8显示电路显示电路主要由数据选择器74151、译码器74138、计数器、显示译码器7447和数码显示管组成。计数器74160设计为模8的循环计数器,其输出既作为4片74151的控制端,又作为38译码器74138的控制端。当计数器计数到某一个数值时,四片74151同时选取对应位的输入组成计时器某一位的BCD编码,接入显示译码器7447,与此同时根据计数器的数值,74138译码器也通过数码管的使能端选择对应位有效,从而在实验箱上显现数据。因为实验要求只用一个显示译码器7447,所以考虑用动态扫描显示法进行数据显示,即每次只显示一位,按照一定的显示时间间隔轮流显示。每个显示位均为四位二进制数,所以需要4片数选器,要显示的位有两位频率控制字,两位相位控制字以及四位波形频率,数选器的选择信号有三位,所以要用一个模8循环计数器作为数选器的地址选择端,供轮流选择带显示的数据,此外,还要用一个3-8译码器来选择数码管(DIG位)来显示对应的数据。扫描的频率为1KHz,因为人眼的视觉停留,会感觉七个数码管同时显示。此时的显示电路与数字钟的显示电路的原理相同,唯一的不同点就是此时需要显示的数有8位,故对应的计数器由模7变为模8.如图所示,为显示电路原理图:图3-8-1 显示电路原理图其封装为: 图3-8-2 显示电路封装显示的数值对应的为频率,相位控制字以及频率控制字。3.9 总电路图(1) 将以上分频,测频,显示等电路按照图3-1-1的原理图连接好,得到总电路图(1) 图 3-9-1 总电路图(1)对此电路图,去掉分频电路,和测频电路,给电路一个合适的脉冲信号,对其进行软件仿真,以检查电路的设计和ROM表是否有误,其仿真波形如下图所示:图3-9-2 正弦和余弦的仿真图像其他波形的图像见附录。从仿真结果可以看出,试验电路的设计与ROM表都没有问题,可以进行下载编译观察示波器是否出现正确的波形。 对该电路图进行编译,分配好管脚后,下载到实验箱中,调节相应的开关,观察示波器上显示的波形如下: 图 3-9-3正弦波和三角波 图3-9-4正弦波和方波 图3-9-5正弦波和锯齿波 图3-8-6 正弦波和余弦波 验证测频电路的正确性: 实验中选取以下几个频率字,分别用理论频率计算公式:得到理论值,直接示波器的频率和显示译码管测得频率。计入到下表,单位:Hz频率控制字理论输出频率示波器显示频率测频显示频率3732.422732.4417334976.563976.59297781953.1251953.1251954112685.5472685.632686133173.8283173.943174表一 三种频率比较观察上表,在选取的5个频率字上,三种不同方式得到的频率略有不同,但整体间的误差不大,在的区间范围内,误差可以接受,故可以认为测频电路的设计合理。4、 节省ROM空间 4.1设计思路 考虑到正余弦、三角波、锯齿波和方波在一个周期内的波形都具有很强的对称性,我们可以在ROM中只存储1/4周期的波形,剩下3/4周期的波形可以利用对称性,通过前1/4周期的波形计算得到。这里各取正弦、三角波、锯齿波和方波的前1/4周期数据,整合到一个深度为4096、位数为10的ROM中。这样输出不同波形时所查找的ROM相同,大大节省了ROM得空间。因为查找1/4周期波形的数据只需要低10位地址即可,高2位地址可以通过置数来选择要查找的波形。00正弦,01三角波,10锯齿波,11方波。混合ROM表的建立同样是采用Matlab程序,生成ROM表中的数据Matlab实验程序:clear;clc;K=0:1:1023;A=round(sin(2*pi*k/4096)+1)/2*1023);B=round(k/2)+512;C=round(k/2);D=1023+k-k;X=A B C D;Y=X; 对于该程序段,得到的矩阵Y中是该四个波形的存储数据,对应的为正弦,三角锯齿和三角,并以此建立*mif文件,从而建立ROM表。对应的ROM表的封装为: 图4-1-1 混合ROM表4.2正弦波的计算 首先将ROM的高2位地址置数00,表示查找正弦波形数据。我们只要用低十位地址即可读取正弦波第一个1/4周期的波形数据。第一个1/4周期波形的数据可用前级模块生成的12位地址的后10位直接读取。第二个1/4周期波形数据的读取,可用后10位地址按位取反后生成的新地址去读ROM中的数据即反读第一个1/4周期的波形数据。第三个1/4周期波形数据的读取,可在读出第一个1/4周期的波形数据后,根据对称性,用1023减去读出的数据即可。第四个1/4周期波形数据的读取,可在读出第二个1/4周期的波形数据后,根据对称性,用1023减去读出的数据即可。从以上部分可知当前及模块生成的12地址次高位为0时,后10位地址不取反,当次高位为1时,地址需要取反。当12位地址的最高位为0时,从ROM,中读取的数据不需要用1023减去它,当最高位为1时,则需要。 由以上的思路可以知道,由1/4周期的正弦波通过计算得到整个周期的波形,只需要取得合适的地址与数值就可,下面,将从这两个方面来分析。(1) 地址的取反 地址的取反只要将地址的每一位经过一个非门即可,电路图为:图4-2-1 地址取反电路(2)数值的计算 由前面的分析可知,输出的数值有两种情形,一个是直接输出ROM表内存储的数值,另一个是用1023减去ROM表内的值,此时需要设置一个减法器,减法可以看成是加上该数的反码在加一,即可以设置这样一个加法器来实现此功能。用4个7483来实现10位数据的加法。(注意:此时低4位的C0端接高电平)图 4-2-2 减法电路封装: 图4-2-3 减法电路的封装图中a9.0接高电平,全1,表示的数为1023,b9.0 接ROM表的取反数值,数值的取反电路和地址的取反电路相同,这里不再阐述。由于低位的C0端接的是高电平,故此加法器完成的是1023-ROM表内的数值的功能。(3) 正弦波产生的总电路。 对于输入到ROM表的地址码的高两位是我们人为加的,低10位的地址码是相位累加器的输出的低10位,对于相位累加器的高两位,通过以上的分析,有如下的规律:高两位地址码地址与数值00不变01地址取反101023-ROM表值11地址取反、1023-ROM表值 表二 从上表可以看出,最高位为1的时候,需要将1023-ROM表里的数值,次高位为1的时候,地址需要取反。也就是说,地址和取反的地址需要经过一个二选一的数据选择器,其可以用次高位作为地址码,不需要被1023减数值和需要1023减的数值也要经过一个二选一的数据选择器,其可以用最高位作为地址码。故电路图如下图所示:图4-2-4 正弦波的计算电路 从上面的电路图可以看出,对于正弦波的计算,需要两个二选一的数据选择器,分别选择地址和输出的数值,数据选择器分别为相位控制电路的输出的高两位。4.3 三角波计算 考虑到三角波的波形和正弦波的波形的形状类似,因此其计算和正弦波一样,在此不作重复的计算。4.4 锯齿波计算。 根据锯齿波的波形特点,不难得到锯齿波的计算方案:第二个1/4周期波形可再第一个1/4周期波形的基础上加255第二个1/4周期波形可在第一个1/4周期波形的基础上加511,第四个1/4周期波形在第一个1/4周期波形上加767。此时,对于锯齿波的地址码无需像正弦波那样取反了。图 4-4-1 10位加法器封装 图4-4-2 10位加法器的封装根据以上分析,可以做出如下的锯齿波生成电路:图4-4-3锯齿波的计算电路 上述电路,uu9.0表示的十进制数255,vv9.0表示的十进制数256.和正弦波一样,此时仍然需要借助相位累加器的高两位来决定输出,对应图中的4选1的数据选择器,其地址码为相位累加器的高两位,根据地址码的的变化,使得4个1/4周期的波形一次轮流输出,形成完整的正弦波。4.5 方波的计算方波的计算比较简单,前半周期输出1023,后半周期输出0,地址码也无需取反。 图4-5-1 方波计算电路4.6 四种计算波形合并图4-6-1 节省空间的四种波形电路的组合 上图所示的电路中,首先要考虑总电路地址码的情况,通过以上四种波形的分析,只到正弦波和三角波的地址输出类似,而锯齿波与方波的地址类似,决定输出何种波形是我们人为通过开关来设定的,00正弦,01三角波,10锯齿波,11方波。故可以一次做为一个四选一的数据选择器的地址码,使得对应波形的地址码码经过选通输送到ROM表。同样,对于输出,也一次为参照,做一个数据选择器,使对应波的波形选通输出。 封装: 图4-6-2 节省空间波形的组合电路封装4.7 电路总图(2)图4-7-1 节省空间后的电路总图同样,对该电路图进行编译,分配好引脚,下载到试验箱,调节开关和示波器,观察到图像如下图所示: 图 4-7-2 余弦波和三角波 图4-7-3 余弦波和方波 图 4-7-4 余弦波和正弦波 图4-7-5 余弦波和锯齿波从图像上可以看出,采用这种办法,可以恢复出其他的波形,即这种思路可行。相对于前面的思路,采用这种方法大大的节省了ROM空间。五、基于DDS的AM调制器的设计5.1 AM调制原理 通信理论中将信号调制定义为调制信号对载波的幅度、频率和相位进行变换。AM即标准调制信号,除了来自消息的基带信号外,还包含了直流信号,它是调制后输出信号既含载波分量又含有边带分量的标准调幅信号。在标准幅度调制器(AM)中,设载波信号为:,调制信号为:。则标准调幅波信号为:W 其中,被称为调幅波,是调幅信号的一个重要参数,一般小于1,当其大于1时会出现过调幅。基于以上的表达式,可以得到实现AM电路的结构图,如下图所示:图 5-1-1 AM调制电路结构图5.2 调制信号与载波信号的产生 调制信号与载波信号可以由前面已经设计好的DDS电路产生,但是考虑到具体的情况,载波的信号的频率应该比较大,而信号的频率和频率字的大小有关,故此时,我对载波信号的DDS电路做了一些修改,将其频率控制字升为8位,目的是使载波信号的频率的可调范围变大。分析可知只需将原来DDS电路中频率字产生电路的模16计数器改为模256计数器即可。同时,需要对模256计数器进行BCD码转换,这里我设计了一个BCD码转换电路。图 5-2-1 BCD码转换电路BCD码转换电路是由三片74185实现的,目的是实现二进制数与BCD码间的转换。 封装: 图 5-2-2 BCD码转换电路的封装据此,设计出一个模256的计数器,作为载波信号的频率字,电路图如下: 图 5-2-3 模256的计数器 上图是一个模256的计数器,且利用上面所做的BCD码转换电路,进行了数码转换。 对其用软件尽心仿真,得到仿真波形如下图:图 5-2-4 模256仿真波形的截图上述电路,74163计数器的数值作为频率字,输入DDS电路,BCD码转换的数值用作译码显示。其封装: 图5-2-5 模256的封装由于频率字的位数发生变化,前面设计的频率字加法器已不再使用,故在此重新设计一个加法器如图所示图5-2-6 载波信号的加法器 不难发现,该加法器只是怎加了4位二进制码,并非前面补零扩展,其原理和前面一样,故不在阐述。 其封装: 图5-2-7 载波信号的加法器封装为简化后面的电路,现在将载波信号和调制信号的地址码做成一个模块:图5-2-8 载波信号的地址码电路 图5-2-9 调制信号的地址码电路 图5-2-10 上述两种地址码电路封装5.3波形存储器(ROM表)设计 对于AM调制,参加运算的必须为有符号数,故前面建立的ROM表不在适用,需要重新建立ROM表,对于ROM表中的数据,仍然采用matlab程序来实现。具体的程序见附录。建立的ROM表如图所示: 图5-3-1 AM调制的ROM表上图依次为AM调制中正弦波、方波、锯齿波、三角波和余弦波的ROM表,本实验一余弦波作为载波信号,其他四种波作为调制信号,依次做出其AM调制波形。5.4 调制度的确立调制度采用一个模16的计数器来实现,范围为00001111,实质上是量化值,也就是1量化成15.基于此,该电路与前面的4位频率控制字相同,故可以用其实现此功能,这里不再详述。5.5 加法器与乘法器 根据图 5-1-1 AM调制电路结构图,有2个乘法电路和1个加法电路。 分别为10*4乘法器,15*10乘法器,15+15加法器其中对于加法器的输入,一个输入为量化值为15*511=7665,目的是使包络位于正半轴,便于解调。从软件中可以构造出这三个器件如图所示:图5-5-1 乘法器和加法器最后的15*10的乘法器的输出有25位,选取其中的高10位作为输出,与D/A转换芯片相连。5.6 显示电路显示电路的原理不变,只需要改变要显示的量即可,在AM调制中,需要显示的量有载波信号的频率字,调制信号的频率字以及调制度的大小即可。具体的电路在上面已经介绍,故不再重述。5.7 AM调制总电路图图5-7-1 AM调制的总电路 对于此电路,进行编译、调试,下载到试验箱中,调节开关和示波器,会出现如下波形: 图5-7-2 正弦波调制波形 图5-7-3 锯齿波调制波形 图5-7-4 方波调制波形 图5-7-5 三角波调制波形6、 节省电路的改进 前面介绍的ROM节省空间,在一定程度上节省了ROM空间,但是仍然用了一块ROM表,来存储四个波形的数据。但是这与老师的要求有点不一样,老师是叫我们只存储正弦波的1/4周期的波形,据此我分析了其他波形的特点,得到了其他波形的计算方法。(采用无符号的数说明) 1. 方波。方波可以说是最简单的了,其值只有两个,全1和全0,而这,我 们可以认为的加上,只需相位控制电路的地址码的最高位为0,使输出的值为1111111111(1023),相位控制电路的地址码的最高位为1,使输出的值为0000000000(0).故一个数据选择器就可实现。2. 锯齿波。只要输出地址的低10位即可。3. 三角波。对于相位寄存器的12位输出地址,只需将低10位分别与最高位 做 一个异或运算,所得的数输出即可。采用这种方式,又可以进一步节省空间。7、 实验中遇到的问题及解决方法 1.节省空间电路 节省ROM空间的电路,我在设计的时候,ROM表的建立没有太大的问题,主要是正弦波由1/4周期的波形数据计算出另外的3/4周期的波形的时候,一刚开始,我在分析的时候,知道何时地址要取反,何时数值要通过减法器,但是我在设计电路图的时候,不知道怎么来表示这一现象,即我未能想到用相位控制电路的输出最高两位的状态作为地址码。通过和同学的讨论,我解决了此问题,最后在示波器上能看到计算出的波形。2. AM调制出现的问题1. AM调制的原理我在大二时,老师上信号与系统的时候,就有和我们讲过,这学期学的高频电路也有相关的内容,我对其原理也有初步的了解,但是在搭电路的时候,我遇到了个问题,输入到加法器电路的量化值是什么。这个问题困扰了我一些时间,最后,我又重新的将AM调制的原理看了一遍,弄清了该量化值的含义,并且咨询了老师是否正确后,才解决了问题。2. 将AM调制电路搭好了,但是下载到试验箱上,未能看到调制波形,我几乎检查了我所有的电路,都未能找出任何错误,最后,我请教了一个学长,他检查了我的电路,也未查找出任何问题,最后他问我ROM表的数据是不是有符号数,随后,我将ROM表内的数据改成了有符号的,问题得到解决。8、 实验收获和感受这次试验是在多功能数字钟后做的,同样用的是QuartusII软件进行设计与仿真,应此在面对软件方面,我没有上次那么陌生,此外,由于上周的设计经验,我大概知道了在设计的过程中要注意什么,这给我节省了大量的时间。回到这次试验,这次试验要求我们设计的时直接数字频率合成器,首先,刚开始见到这个题目的时候,我顿时蒙了,因为我以前从来没有这个概念,它不像上次数字钟那样,很容易上手,虽然老师在课堂上给我们讲了相关的原理,但是仍然对原理不是很了解。好在我在周末的时候,按照老师的要求,弄清了实验原理,并且写了一篇预习报告,对试验内容有了比较清晰的规划。于是在做试验的时候,我按照我预习报告的思路,逐个电路进行搭建,最后终于完成了实验的要求并且还设计了一些附加电路。在设计电路的过程中,首先,我虽然预习了实验,但是没有对试验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论