南京理工大学电子线路课程设计.doc_第1页
南京理工大学电子线路课程设计.doc_第2页
南京理工大学电子线路课程设计.doc_第3页
南京理工大学电子线路课程设计.doc_第4页
南京理工大学电子线路课程设计.doc_第5页
免费预览已结束,剩余19页可下载查看

下载本文档

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

文档简介

电子线路课程设计 姜萍指导者: 评阅者: 2011年 11月摘要本次实验利用QuartusII7.0软件并采用DDS技术、FPGA芯片和DA转换器,设计了一个直接数字频率信号合成器,具有频率控制、相位控制、测频、显示多种波形等功能。 并利用QuartusII7.0软件对电路进行了详细的仿真,同时通过SMART SOPC实验箱和示波器对电路的实验结果进行验证。报告分析了整个电路的工作原理,还分别说明了设计各子模块的方案和编辑、以及仿真的过程。并且介绍了如何将各子模块联系起来,合并为总电路。最后对实验过程中产生的问题提出自己的解决方法。并叙述了本次实验的实验感受与收获。关键词: QuartusII7.0 数字频率信号合成器 频率控制 相位控制 测频 示波器 SMART SOPC实验箱AbstractThis experient introduces using QuartusII7.0software, DDS technology,FPGA chip and DA converter to design a multioutput waveform signal generator in which the frequency and phase are controllable and test frequency,display waveform.It also make the use of software QuartusII7.0 a detailed circuit simulation, and verify the circuit experimental results through SMART SOPC experiment box and the oscilloscope.The report analyzes the electric circuit principle of work,and also illustrates the design of each module and editing, simulation, and the process of using the waveform to testing each Sub module. Meanwhile,it describes how the modules together, combined for a total circuit. Finally the experimental problems arising in the process of present their solutions. And describes the experience and result of this experiment.Keywords:QuartusII7.0 multioutput waveform signal- generator frequency controllable phase controllable test frequency oscilloscope Smart SOPC box 目 录封面 1摘要 2Abstract 3目录 41 设计要求 52. 电路工作原理 53. 模块电路设计 7 3.1 时钟脉冲发生模块 73.2 频率与相位输入控制模块 123.3 累加寄存模块 133.4 ROM模块 153.5 测频模块 163.6 动态显示模块 183.7 不同波形选择输出模块 194. 总电路图 205. 电路调试、仿真、编程下载 206实验感想收获 22 6.1遇到的问题与解决方案 22 6.2 收获与感受 23 6.3 期望与要求 237. 参考文献 241.设计要求本实验使用DDS的方法设计一个任意频率的正弦信号发生器,要求具有频率控制、相位控制、测频、切换波形,动态显示以及使能开关等功能。利用QuartusII7.0完成设计、仿真等工作。并利用SmartSOPC实验箱实现电路,用示波器观察输出波形。具体要求如下:1、 利用QuartusII软件和SmartSOPC实验箱实现DDS的设计。2、 DDS中的波形存储器模块用Altera公司的Cyclone系列FPGA 芯片中的RAM实现,RAM结构配置成409610类型。3、利用实验箱上的D/A转换器件将ROM输出的数字信号转换为模拟信号, 能够通过示波器观察到输出波形。4、通过开关(实验箱上的Ki)输入DDS的频率和相位控制字, 并能用示波器观察加以验证。5、通过调节开关,可以在示波器上输出多种波形(如正弦波、余弦波、三角波、锯齿波、方波等)。(附加功能)6、能够测量生成波形的频率并在数码管上显示。(附加功能)2.电路工作原理DDS主要由相位累加器、相位调制器、正弦波数据表(ROM)、D/A转换器构成。相位累加器由N位加法器和N位寄存器构成。每来一个时钟信号,加法器就将频率控制字k与累加寄存器输出的累加相位数据相加,相加的结果又反馈送至累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位相加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频率就是DDS输出的信号频率。用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址,这样就可以把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值的转换。如果设置相位控制字P,那么把相位控制字与相位寄存器的输出相加所得的结果作为正弦查找表的地址,就可以控制改变DDS输出正弦波的初始相位。原理图如下:4位频率控制字K相位累加器12位相位寄存器data11.0clkdata1data2q11.0result11.0data1data2result11.0q9.0q9.04位相位控制字P余弦ROM正弦ROMaddr11.0addr11.0q9.0q9.0余弦波数值输出至D/A(1)正弦波数值输出至D/A(2)clkclk基准时钟fc频率和相位均可控制的具有正弦和余弦输出的DDS核心单元电路示意图加法器正弦查找表由ROM构成,内部存有一个完整周期正弦波的数字幅度信息,每个查找表的地址对应正弦波中0-360范围内的一个相位点,查找表把输入的地址信息映射成正弦波的数字幅度信号。然后将波形存储器的输出送到D/A转换器,由D/A转换器将数字信号转换成模拟信号输出。而D/A输出的模拟信号经过低通滤波器,就可以得到一个频谱纯净的正弦波。因此根据要求,我们可以将电路分为以下几个模块:1.时钟脉冲发生电路模块:提供电路各模块工作所需要的时钟脉冲;本次设计的电路需要将振荡源提供的48MHZ的脉冲频率分为:1MHz,1KHz,1Hz,0.5Hz。2.频率字与相位字输入控制模块:控制频率控制字与相位控制字的输入大小,其中频率控制字取值从0000到1111,相位控制字的取值从0000 0000 0000到1111 0000 0000变化。3.累加寄存模块:实现频率控制量、相位控制量的输入以及地址码反复累加后的输出。4.ROM模块:预先存储了正弦波与余弦波以及三角波,锯齿波,方波等的二进制幅值且存储单元有212=4096,每个单元存储的幅值大小用10位二进制数来表示。5.测频模块:测试电路输出的各种信号的频率。6.显示电路:显示电路输出波形的频率以及频率和相位控制字。3.模块电路设计3.1 脉冲发生电路由于实验室提供的SmartSOPC实验系统只提供48MHz的时钟信号,而我们在这个实验中需用到1MHz,1KHz,1Hz以及0.5Hz这四个频率,因此需要对48MHz信号进行分频以得到所需的时钟信号,我们采用原理图方法进行如下电路的设计。首先将48MHz进行48分频得到1MHz的频率。48分频器由两片74160同步十进制计数器以置数方式实现,完成047计数,在计数器走到47时给置数端输入有效信号0,在下个脉冲到来时将2个计数器一起置为0。同时将最高位输出,作为下一级分频器的时钟输入。电路原理图如下:波形图如下:接着将通过48分频器信号输出的1MHZ的频率再通过1000分频器输出1KHZ的频率。1000分频器需要三片74160,完成0999计数,因为每片74160是模十计数器,直接将三片级联就可以实现模1000计数,最高位输出作为下一级的时钟输入。10分频电路原理图如下:其波形图如下:将三个10分频电路级联就可得到1000分频电路,电路原理图如下:1000分频波形图如下:(由于1000分频过小,所以输入信号周期以无法区别)然后,为得到0.5HZ频率我们还需将1HZ信号再通过一个T触发器,使信号再次2分频,电路原理图如下:2分频波形图如下:最后将以上所有小电路模块进行封装,得到整个脉冲发生电路模块,电路原理图如下:封装后的电路模块如下:3.2 频率与相位输入电路 由于ROM中设定的相位取样地址为12位,考虑到本实验对于相位的控制精度要求不高,且较小的相位差也不便于观察,故本设计采用4位频率控制字和4位相位控制字进行步长与相位的控制。在实验中用12位的高4位作为相位控制字,同时用低4位作为频率控制字。所以,在这里我们可以用一片74163(十六进制)实现计数,通过开关控制计数器的ENT ENP得到所需的相位的二进制数表示。同时使用两片74160组成10进制的计数器与74163同步计数、同步置数,可以实现二进制数到8421BCD码的转换,同时输出f3.0,pxs13.0,pxs23.0三路信号。f3.0为相位控制字高四位的信号(底八位全部置0),pxs13.0,pxs23.0为相位控制字的显示信号。 相位控制字电路原理图如下:封装后的电路模块如下:而对于频率控制字我们则可以直接用实验箱上的开关来输入(0000 0000 *)底四位,进而控制步长的大小。 3.3 累加寄存电路相位累加器是一个带有累加功能的12位加法器,每来一个时钟信号(1MHZ),加法器就将频率控制字k与累加寄存器输出的累加相位数据相加,相加的结果又反馈送至累加寄存器的数据输入端,其次,为使电路具有使能功能,我们又增加了一个开关,该开关信号与时钟信号相与达到使能目的。同时我们还要使用一个加法器将相位控制量加入到寄存器的输出结果,以便得到最后的地址,ROM就按照这个地址寻址输出正弦波(包括其他波形)的幅度从而实现相位到幅度的转换。12位加法器的内部电路图如下:12位寄存器的内部电路图如下:将频率控制与相位控制加入,并整体封装电路,如下:其中f0.3表示通过开关直接输入的频率控制字的二进制数,p8.11表示通过计数器有选择的保持输入的相位控制字的二进制数,寄存器中的EN即为电路使能开关,1MHZ_EN为1MHZ时钟信号。3.4 ROM模块电路正弦查找表ROM是DDS最关键的部分,设计时首先需对正弦函数进行离散采样,接着将采样的结果放到ROM模块的对应存储单元中,每一位地址对应一个数值,输出为10位。ROM中必须包含完整的正弦采样值,此设计采样个点。mif文件的生成:我们选择运用EXCEL软件直接生成正弦波的采样幅值,并以表格形式进行存储,总共有4096个值,然后新建Memory Initialization file后会生成一个类似Excel的表单,我们只需把EXCEL生成的4096个幅值复制到这个表单中。正弦的MIF文件如下图:正弦ROM的制作:这里,我们需做一个ROM器件,而将刚刚制作好的正弦的MIF文件的内容导入该ROM中即可。制作好的正弦ROM如下:同理,余弦,锯齿,三角,方波的ROM制作同上,只需改动EXCEL中的公式产生需要的幅值大小。3.5 测频电路模块 对于测频电路模块,我们采用如下方法,由于在ROM里预先存储的正弦函数的幅度值为|511|(由于采用无符号数的D/A转换,我们将其取值范围变为01023),所以幅度值输出的最高位每个周期由0-1的变化只有一次,因此可以利用这个变化来测试频率。只要测试出一秒中其变化的次数即是其输出正弦波的频率。在这个思想之上,这个电路需要提供一个频率为0.5赫兹、占空比为50%的脉冲,这个可以通过对1赫兹的频率的二分频得到。而利用一个计数器记录下这期间的脉冲个数,就实现了测频。由于采用频率字采用四位,基本脉冲频率为1MHz,所以这个信号源提供的正弦波的频率范围为03662赫兹( f0=fCK/2N fC为基准时钟频率,N为累加器的位数)。因此,计数器的范围为03999就可以了,显示只要做四位。根据此思想,我们设计出如下的电路图:封装后得到测频电路模块:3.6 动态显示模块此次设计的显示电路为动态显示电路即使用一片译码器,轮流扫描显示相位字以及输出频率。由于人眼的视觉暂留现象,频率稍高就感觉不到轮流显示的现象,与同时显示的结果一致。对于动态显示,设计思想如下:频率显示以及相位字的显示共6位,一共6路信号。因此可以使用八选一数据选择器依次选择八路信号单独通过译码器7447,并使用3-8译码器控制对应的数码管显示。而对于显示信号的输出,只需要使用一个模6计数器不断的循环计数就可以简单的实现控制。此模块的设计电路图如下:封装得到的译码显示电路模块为:3.7 不同波形选择输出电路模块通过观察分析,只要改变ROM中所存储的幅值大小,并将改变后的幅值按一定的波形关系存储,在某种程度上就可得到一些固定的波形。在制作好不同波形的ROM后,我们还必须处理波形的选择输出,因为Smart SOPC实验箱只有2片D/A芯片,也就是说每次允许通过的波形只有2路,所以,我们设计了波形选择电路模块,利用数据选通器74151,通过2路开关的拨动选择需要输出的信号(也可直接用软件中自带的专门选通ROM地址的器件),电路原理图如下:(由于屏幕尺寸原因,该截图未能包含所有电路,该电路由20块74151构成)封装后的电路模块如下:4.总电路图通过以上各个模块的设计与性能分析,依照设计原理与思路,将各模块有机地结合起来,就可以构成DDS的整体电路。具体各模块连接方式如下图所示:5.电路下载波形仿真正确无误后,就可以将设计好的电路下载到芯片上,以进行硬件实施。在下载之前,必须先对每个管脚进行分配。具体操作为选择“AssignmentsPins”,打开“Pin Planner”对话框。在All Pins一栏的location位置出写入每个输入输出端口对应的管脚号。每个管脚都配置完成后,在对整个电路编译一下。同时注意,为了防止烧坏芯片我们还要将不用的管脚选择输出高阻态。具体操作为选择“Assignments-Device”,此时打开“Setting”对话框,在“Device”一栏,打开“Device & Pin Options”对话框,选择“Unused Pins”标签,在Reserve all unused pins处选择“As input tri-stated”将没有用到的管脚设置为高阻态。打开实验箱电源开关,点击主编辑页面的下载按钮,当出现下载界面后,选中“Program configure”,点击“Start”按钮,开始从实验箱下载。本实验用的是QuartusII7.0软件和Smart SOPC实验箱,所以要选用Altera公司的Cyclone系列芯片,并配置好相应的管脚。6.实验感想收获6.1 遇到的问题与解决方案因为有了上一周刚刚做过的EDA的实验,我们在软件使用和电路设计上都有了很多经验,所以本次实验完成速度较快,并且做了很多附加电路。当然,在本次实验过程中我们也还是遇到了一些问题,具体如下:(1) 波形输出问题在这次实验中,当我们把电路下载到实验箱时,用示波器观察波形,正弦信号出现明显的失真现象,即被截底。在仔细询问了老师后,我们得到结论电路可能没有错,出现失真现象可能是由于实验箱或示波器等硬件问题。(2) 译码显示问题在这次实验中,我们设计了相位控制字在数码管上的的显示,但再将电路下载到实验箱后发现对于相位控制

温馨提示

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

评论

0/150

提交评论