ImageVerifierCode 换一换
格式:DOC , 页数:17 ,大小:320KB ,
资源ID:2939281      下载积分:7 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2939281.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(dds课程设计报告正文.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

dds课程设计报告正文.doc

1、摘 要 本篇报告主要介绍了用EDA设计完成直接数字频率合成器DDS的过程。该直接数字频率合成器输出的频率及相位均可控制,且能输出正弦、余弦、三角波、锯齿波、方波五种波形,经过转换之后还能在示波器上显示,在控制电路的作用下能实现保持、清零功能,另外还能同时显示输出频率、相位控制字、频率控制字。本设计利用QuartusII 5.0软件进行DDS的设计,最后下载到SmartSOPC实验系统中进行硬件测试。Abstract This report introduces the EDA design is completed with Direct Digital Synthesis DDS proce

2、ss. The direct digital frequency synthesis of the output frequency and phase can control, and can output sine, cosine, triangle wave, sawtooth, square waveform five, after conversion after also displayed on the oscilloscope, in the role of the control circuit can be Implementation maintained cleared

3、 function, and also shows the output frequency, phase control characters, frequency control word. This design uses DDS QuartusII 5.0 software design, the final download SmartSOPC experimental system hardware testing.关 键 词EDA设计、直接数字频率合成器DDS、QuartusII 5.0软件、SmartSOPC实验系统Key wordsEDA design,Direct Digi

4、tal Synthesizer DDS, QuartusII 5.0software, SmartSOPC experiment system目 录摘要 关键词第1篇 多直接数字频率合成器DDS设计要求说明 1.1 设计基本要求第3页 1.2 设计提高部分要求第3页第2篇 对整体电路工作原理的方案论证 第4页第3篇 各子模块设计原理说明 3.1频率预置与调节电路第5页 3.2相位累加器模块第5页 3.3波形存储器模块第7页 3.4相位调节器第9页 3.5波形输出模块第9页 3.6频率测定模块 第10页3.7显示模块模块 第12页 3.8开关功能说明 第14页第4篇 调试、仿真、编程下载过程第1

5、4页第5篇 实验总结 5.1 对本设计的一些改进方案第15页 5.2 实验感想第15页参考文献第1篇 直接数字频率合成器DDS设计要求说明1.1 设计基本要求1) 利用QuartusII软件和SmartSOPC实验箱实现DDS的设计;2) DDS中的波形存储器模块用Altera公司的Cyclone系列FPGA 芯片中的ROM实现,ROM结构配置成409610类型;3) 具体参数要求:频率控制字K取4位;基准频率fc=1MHz,由 实验板上的系统时钟分频得到;4) 系统具有清零和使能的功能;5) 利用实验箱上的D/A转换器件将ROM输出的数字信号转换为模拟信号,能够通过示波器观察到正弦波形;6)

6、 通过开关(实验箱上的Ki)输入DDS的频率和相位控制字,并能用示波器观察加以验证;1.2 设计提高部分要求1) 通过按键(实验箱上的Si)输入DDS的频率和相位控制字,以扩大频率控制和相位控制的范围(注意:按键后有消颤电路);2) 能够同时输出正余弦两路正交信号;3) 在数码管上显示生成的波形频率;4) 充分考虑ROM结构及正弦函数的特点,进行合理的配置,提高计算精度;5) 设计能输出多种波形(三角波、锯齿波、方波等)的多功能波形发生器;第2篇 对整体电路工作原理的方案论证 DDS即Direct Digital Synthesizer数字频率合成器,是一种基于全数字技术,从相位概念出发直接合

7、成所需波形的一种频率合成技术,是一种新型的数字频率合成技术。具有相对带宽大、频率转换时间短、分辨力高、相位连续性好等优点,很容易实现频率、相位和幅度的数控调制,广泛应用于通讯领域。fc相位累加器相位调节电路波形存储器D/A转换器频率控制字、相位控制字、频率显示电路低通滤波器kfkpN位fo2.1 DDS基本结构图频率预置与调节电路图1.本设计DDS基本结构图2.2工作原理说明 本设计DDS主要由频率预置电路、相位累加器、波形存储器、D/A转换器、低通滤波器组成。可通过频率控制字kf和相位控制字kp输出频率和相位均可调的正弦波、余弦波、三角波、锯齿波、方波。输出频率fo是对基准频率fc的分频,其

8、关系如下:fo=(kf/2N)fc 在本设计中,N取12位,基准频率fc取1MHz,kf从0000(0)到1111(15),所以输出频率从0到3840Hz。第3篇 各子模块原理说明3.1 频率预置与调节电路 本模块的主要功能是产生基准频率fc、频率控制字kf、相位控制字kp。 SmartSOPC实验箱提供的是48MHz的系统时钟,需要经过48分频得到基准频率fc,48分频用一个模48计数器即可实现。具体电路如图2所示(参见原理图文件48counter74161.bdf)。图2.模48计数器 如图所示,用两片二进制加法计数器74161实现模48计数器,在74161时钟输入端输入系统时钟48MHz

9、,q5端输出的就是基准频频1MHz。 频率控制字kf设计的是从0000到1111的四位二进制数,但是为了与相位累加器相匹配,kf需要定义成12位的二进制数。所以kf的高8为都要赋零,只需要控制低四位。若直接用开关输入需要4个开关,而SmartSOPC实验箱提供的只有8个开关,为了节省开关,本设计利用一个模16计数器来产生频率控制字kf。计数频率采用1Hz,1秒钟计一次数,通过开关来控制使kf达到需要频率控制字(参见原理图文件dds.bdf)。 同样,为了与加法器匹配,相位控制字也定义成了12位的二进制数,为了方便起见,kp也设计了从0000到1111十六个状态,但是若加在低四位,当kp也从00

10、00到0001时,相位只变化了2/212=/2048,肉眼很难观测到,从0000到1111也之变化了/204816=/128,在示波器上很难看到。所以本设计将4位相位控制字加在高四位,低八位赋零。这样从0000到1111,相位变化了2/21227=/16,在示波器上很容易看到的,从0000到1111相位变化了。3.2 相位累加器模块kf相位寄存器相位累加器fc相位量化序列N位 相位累加器的结构图如图3所示。 图3.相位累加器结构图 相位累加器在基准频率信号fc的控制下以频率控制字kf为步长进行累加运算,产生所需要的频率控制数据。相位寄存器则在时钟的控制下把累加的结果作为波形存储器ROM的地址,

11、实现对波形存储器ROM的寻址。当累加器加满量时就会产生一次溢出,完成一个周期性的动作。这个周期也就是DDS信号的一个频率周期。 本设计相位累加器采用文本输入法VHDL语言设计,具体如下(参见VHDL源文件SUM4096.vhd):-SUM4096.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SUM4096 IS PORT(K:IN STD_LOGIC_VECTOR(11 DOWNTO 0); CLK:IN STD_LOGIC; EN: IN STD_LOGIC; RESET

12、:IN STD_LOGIC; OUT1:OUT STD_LOGIC_VECTOR(11 DOWNTO 0);END ENTITY SUM4096;ARCHITECTURE ART OF SUM4096 IS SIGNAL TEMP: STD_LOGIC_VECTOR(11 DOWNTO 0); BEGIN PROCESS(CLK,EN,RESET)IS BEGIN IF RESET=1 THEN /清零端为1时累加器清零 TEMP=000000000000; ELSE IF CLKEVENT AND CLK=1 THEN IF EN=1 THEN /使能端EN为1时累加器正常工作 TEMP=T

13、EMP+K; /时钟CLK上升沿到来时以kf为步长递增 END IF; END IF; END IF; OUT1=TEMP; /将目前的累加结果保存并输出,下次上升沿时实现累加 END PROCESS;END ARCHITECTURE ART; 以上程序不仅定义了累加器还添加了清零和使能功能。相位寄存器是与相位累加器同步的寄存器,也是采用文本输入法VHDL语言设计,具体如下(参见VHDL源文件REG1.vhd):-REG1.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG1 IS PORT(D:IN STD_LOGIC_VECTOR(

14、11 DOWNTO 0); CLK:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(11 DOWNTO 0);END ENTITY REG1;ARCHITECTURE ART OF REG1 IS BEGIN PROCESS(CLK) IS BEGIN IF(CLKEVENT AND CLK=1 )THEN Q=D; /当时钟上升沿到来时输出相位累加器的结果 END IF; END PROCESS; END ARCHITECTURE ART; 相位寄存器的输出就是波形存储ROM的地址。3.3 波形存储器模块 用累加器的输出作为波形存储器的取样地址,进行波形的相位幅值转

15、换,即可在给定的时间上确定输出的波形的抽样幅值。以正弦波形存储器sine_rom为例,N(12)位的寻址ROM相当于把02的正弦信号离散成具有2N个样值的序列,波形ROM有D(10)位数据位,所以设置2N个样值的sin值以D位二进制数值固化在ROM中,这里设置D=10,所以ROM中的数据范围应该从0到1023,但是正弦值只从-1到1,所以要对其进行量化,公式如下:存储数据=round(sin(n2/4096)512+512 其中,n为存储地址,范围是从0到4095。地址数据波形存储器ROM相位量化序列12位正弦幅度量化序列10位 按照地址的不同可以输出相应相位的正弦信号的幅值。相位幅度变换原理

16、如图4所示。图4.相位-幅度变换原理图 同理,余弦波ROM、锯齿波ROM、三角波ROM、方波ROM只需在ROM里存储相应波形的幅度量化序列即可。1) 正弦ROM的存储数据表参见dds.mif。2) 余弦ROM的存储数据表与正弦ROM类似(参见cos.mif):存储数据=round(cos(n2/4096)512)+512存储数据存储地址n0102351110232047307140953) 三角波ROM的数据表参见sanjiao.mif。三角波的数据没有现成的生成三角波的数据,本设计根据图5做出相应的函数产生三角波的数据表。图5. 三角波 所以三角波函数如下:当n(0,1023)时,存储数据r

17、ound(n2)512;当n(1023,3071)时,存储数据 1024round(n2)512;当n(3071,4095)时,存储数据 round(n2)2048512;存储数据存储地址n0102340954) 锯齿波ROM的数据表参见juchibo.mif。锯齿波的波形如图6所示。 图6.锯齿波 由图6可得出锯齿波的函数如下:存储数据=round(n4)5) 方波ROM的数据表参见fangbo.mif。方波的波形如图7所示。存储数据存储地址n0102340952047 图7.方波 由图7可得出方波的函数如下:1023,n (0,2047) 0, n (2047,4095)存储数据= 最后,

18、生成5个存有不同波形的存储器,分别是sine_rom、cos_rom、fangbo_rom、juchibo_rom、sanjiao_rom。分别如图8所示。正弦波sine_rom余弦波cos_rom方波fangbo_rom三角波sanjiaobo_rom锯齿波juchibo_rom 图8. 5个波形存储器 所有.mif文件的数据都来源于电子表格ROM地址数据。3.4 相位调节模块 相位控制模块是在ROM地址信号输入波形存储器ROM之前,将相位控制字叠加上去,使相位都增加相应的值。这个功能用一个加法器就能实现。该加法器采用文本输入法VHDL语言设计,具体如下(参见VHDL源文件xiangweij

19、iafa.vhd):-xiangweijiafa.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY xiangweijiafa IS PORT(K1:IN STD_LOGIC_VECTOR(11 DOWNTO 0); K2:IN STD_LOGIC_VECTOR(11 DOWNTO 0); OUT2:OUT STD_LOGIC_VECTOR(11 DOWNTO 0);END ENTITY xiangweijiafa;ARCHITECTURE ART OF xiangweijiaf

20、a IS BEGIN OUT2=K1+K2;END ARCHITECTURE ART; 加法器输出的信号再输入ROM的地址输入端,输出的波形在示波器上会发生平移,即相位输出发生了变化。3.5波形输出模块 由波形存储器ROM输出的是量化的数字信号,这种信号在示波器上显示出来是离散的,所以还要经过D/A转换器,在经过低通滤波器输出才能在示波器上显示出连续的波形。事实上经过D/A转换后不需要低通滤波器就已经可以满足我们的要求了。DDS基本工作流程图如图9所示。相位累加器ROMD/A低通滤波器图9.DDS基本工作流程图 本次实验箱提供了两片D/A转换芯片,本设计中,第一片D/A转换芯片始终输出正弦波,

21、余弦波、三角波、锯齿波、方波通过控制电路在第二篇D/A转换芯片选择输出。选择电路的原路很简单,四种波形由四路数据,每路数据都有10位,所以用两个开关作为地址端来控制5片双四选一数据选择器74153就可实现波形的四选一。具体电路如图10所示(参见原理图文件4xuan1.bdf):图10.四种波形的选择输出 图10中,c9.0是余弦信号,f9.0是方波信号,s9.0是三角波信号,j9.0是锯齿波信号。a1a0是地址端,对应的波形输出如表1所示。表1 输出波形选择a1a0输出信号y9.0对应波形00c9.0余弦波01f9.0方 波10s9.0三角波11j9.0锯齿波3.6频率测定模块 本设计的测频电

22、路是通过测定相位累加器输出的ROM地址信号在1秒钟内溢出的次数来测定输出频率的。原理图如图11所示。二分频单位时钟信号待测信号时钟清零计数器时钟锁存器图11.测频电路原理图 电路波形示意图如图12所示。计数锁存清零反相延时单位时钟单位时钟二分频反相延时待测信号图12.测频电路波形示意图 单位时钟进过二分频之后得到周期为2秒的时钟信号,利用这个时钟信号,使计数器在1秒钟的时间内对待测信号进行计数,在下一秒的时间内对计数结果进行锁存并输出。这里利用了反相器的演示效应,否则锁存器的输出永远都会是0000,而且在编译成功后进行仿真时会发现,功能仿真是输不出结果的,这就是因为软件进行的功能仿真是理想仿真

23、,忽略了门电路的实际延时效应,所以即使计数器输出正确,锁存器的也还是没有结果输出的,只有将总电路下载到试验箱才能检测测频器是否正确。 测频器的电路图如图13所示(参见原理图文件cepinyi.bdf)。图13.测频器电路图 图中,signal就是待测信号,接入的是相位累加器输出的最高位out1(11)。jishuqi4096是用4片十进制加法计数器组成的同步计数器,最大可计到十进制的9999,输出个十百千四路4位的8421BCD码,对于本设计来说输出频率最大是3840Hz,而设计计数器是模10000的,所以完全够用了。寄存器是由4片74173组成的。仿真波形如图14所示(参见波形文件cepin

24、yi.bdf)。图14.测频器仿真波形图 其中,g、s、b、q是寄存器的输出,gg、ss、bb、qq是计数器的输出,可见计数器的输出是没问题的,但是寄存器始终没有输出,这就是上面说到的功能仿真的缺陷。3.7显示模块 该模块实现了频率控制字kf、相位控制字kp、输出频率fo的显示。因为频率控制字和相位控制字都是四位的二进制码,要转换成8421BCD码才能在数码管上显示。输出频率本身就是8421BCD码,不需要转换。频率控制字和相位控制字都是只有从0000到1111十六个状态,也就是从十进制的0到15,各需要2各数码管,加上频率的四位数正好需要8各数码管。 首先看频率控制字和相位控制字的转换电路。

25、频率控制字和相位控制字的数据类型相同,所以可以用同样的转换电路。以下以频率控制字的转换为例。本设计是依据下表来进行码制转换的。表2.二进制与8421BCD码频率控制字kf十进制个位(kfg3.0)十进制十位(kfs3.0)0000(0)0000(0)00000001(1)0001(1)00000010(2)0010(2)00000011(3)0011(3)00000100(4)0100(4)00000101(5)0101(5)00000110(6)0110(6)00000111(7)0111(7)00001000(8)1000(8)00001001(9)1001(9)00001010(10)0

26、000(0)00011011(11)0001(1)00011100(12)0010(2)00011101(13)0011(3)00011110(14)0100(4)00011111(15)0101(5)0001 从上表可以一看出,当kf从0000到1001时,也就是从0到9是1位数时,转换后的8421BCD只有个位计数,十位保持0000,并且此时个位kfg3.0=kf;当kf从1010到1111,也就是从10到15上升为两位数时,转换后的8421BCD码十位一直保持是0001,个位是从0000到0101,也就是从0到5,所以此时个位kfg3.0=kf1010,也就是当kf上升为两位数以后减去1

27、0就是转换后的个位。所以设计电路如图15(参见原理图文件kf-to-8421.bdf)。图15.频率控制字码制转换电路 如图15所示,图中k3.0是频率控制字,首先通过一片4线16线译码器74154判断kf是一位数还是两位数。当kf是一位数时,译码器只有q0q9中的一个为0其余均为1;当kf是两位数时,译码器只有q10q15中的一个为0其余均为1。所以,将q9.0全部与非得到信号c,将q15.10全部与非得到信号d,c和d不可能同时为1或者同时为0,当c=1时,可以判断kf是一位数,当d=1时,可以判断kf是两位数。 根据表2,当kf是一位数即c=1时,kfg=kf,kfs=0;当kf是两位数

28、即d=1时,kfg=kf10,kfs=1。 对于转换后的十位,只需要输出最后一位即可,因为kfs只有0000和0001两个状态,所以前三位全部置零,最后一位直接用d信号表示即可。 对于个位,当kf是两位数时,kfg=kf10,减10即减1010,也即加上0101再加1,所以kfg=kf1010=kf+0110,本设计采用一片4位加法器7483实现,如图15中的jia模块,具体电路图参见原理图文件jia.bdf。加法器输出s3.0信号。所以现在再通过一个二选一电路就可以得到kfg3.0。原理如下:kfg3.0=c&kf3.0+d&s3.0 本设计采用简单的门电路实现2选1的功能,如图15中的to

29、8421模块,具体电路参见原理图文件to8421.bdf。用4个to8421模块就可以实现kfg3.0信号的选择输出。 这样频率控制字就从四位二进制数转换成为8421BCD码,可以在数码管上显示,相位控制字的转换原理同上。 下面就可以将这八路数据通过数码管显示了。本设计的显示电路同样是动态显示,具体电路图参见原理图文件xianshi.bdf。本设计现将八路数据都进行显示译码电路,在通过数据选择器轮流选择七段码,数据选择器的地址端由一个模8计数器的输出x2x1x0控制,同时x2x1x0经过一个三线八线译码器产生8个数码管的片选信号,数据选择器十一1KHz的时钟信号计数的。3.8开关功能说明开关功

30、能key1(en端)使能开关:k1=1正常工作,k1=0保持key2(reset端)清零开关:k2=1清零,k2=0正常工作key3(kf端)频率控制字计数开关:k3=1频率控制字以1Hz的频率递增,k3=0保持当前的频率控制字key4(kp端)相位控制字计数开关:k3=1相位控制字以1Hz的频率递增,k3=0保持当前的相位控制字key5(a0端)选择输出波形key6(a1端)第4篇 调试、仿真、编程下载过程 实验过程中没做完一个模块添加一项功能之后都要进行编译仿真,在确定各子模块的功能都正确之后组合整体电路(参见原理图文件dds.bdf),并对其进行综合编译,编译成功之后就可以准备下载到Sm

31、artSOPC实验箱了。在下载之前要注意将未使用的管脚设置为三态输入。之后就可以给各输入端输出端分配管脚,其中输入端48MHz分配到实验箱的系统时钟48MHz的脉冲,输入端en、reset、kf、kp、a0、a1分别分配到实验箱的手动开关KEY1到KEY6,输出端abcdefg分配到显示管七段码,输出端s7.0分配到数码管的片选端DIG7到DIG0。 之后下载到SmartSOPC实验箱后对各项功能进行验证和调试。第5篇 实验总结5.1 对本设计的一些改进方案1. 本设计的译码显示部分先将8路32位数据进行显示译码后再用数据选择器选择输出,这样32位数据进过显示译码变成8路56位,还需要7个8选

32、1数据选择器。总共用了15个芯片。但事实上可以不用这么多芯片,先用4片8选1数据选择器选出一路数据,再用一片显示译码器就可以了,这样采用了5个芯片,但是实现了同样的功能。具体原理图如图16所示(参见原理图文件xianshi2.bdf)。图16.改进显示电路2. 在波形选择模块,我认为可以把4种波形的数据存入1个ROM中,那么这个ROM就要设置成1638410的。这样通过开关来控制地址端,当控制端加1时,ROM的地址段加4096,跳入到另一个波形的数据存储区,输出就会使另一种波形。但是这样需要对地址输入信号进行处理,ROM地址输入信号要定义成48位的二进制数。控制端加1,实际上就是12位的地址信

33、号向高位移动12位。利用VHDL语言编程如下(参见VHDL源文件12to48.vhd):-addto48.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY addto48 IS PORT(K1:IN STD_LOGIC; K2:IN STD_LOGIC; ADD:IN STD_LOGIC_VECTOR(12 DOWNTO 0); OUT1:OUT STD_LOGIC_VECTOR(47 DOWNTO 0);END ENTITY addto48;ARCHITECTURE ART O

34、F addto48 IS SIGNAL TEMP: STD_LOGIC_VECTOR(47 DOWNTO 0); BEGIN PROCESS(k1,k2)IS BEGIN IF k1=0 AND K2=0 THEN /第一个状态,将12位地址输入ROM的低12位 OUT1(11 DOWNTO 0)=ADD(11 DOWNTO 0); ELSE IF k1=1 AND K2=0 THEN /第二个状态,将12位地址输入ROM的下一个12位 OUT1(23 DOWNTO 12)=ADD(11 DOWNTO 0); ELSE IF k1=0 AND K2=1 THEN /第三个状态,将12位地址输入

35、ROM的第三个12位 OUT1(35 DOWNTO 24)=ADD(11 DOWNTO 0); ELSE IF k1=1 AND K2=1 THEN /第四个状态,将12位地址输入ROM的高12位 OUT1(47 DOWNTO 36)=ADD(11 DOWNTO 0); END IF; END PROCESS;END ARCHITECTURE ART; 这段程序编译不成功,提示的错误是:Error: VHDL syntax error at addto48.vhd(24) near text PROCESS; expecting a sequenial statement, Error: VH

36、DL error at addto48.vhd(25): type of identifier ART does not agree with its usage as void type 找不到是什么原因,但是思路应该是对的。5.2 实验感想 本次实验我们还是只用了不到4天的时间设计了一个直接数字频率合成器,相比上星期的EDA难度增加了很多。也许是老师的训练重点变了,上星期重点是熟悉EDA设计的主要工具QuartusII 5.0软件,而这星期就应该将重点转入利用这个工具完成设计。 这次实验用到了很多以前没接触过个知识,像VHDL语言,本设计里虽然那有几个模块是用VHDL语言编的,但是都是很简

37、单的程序,还是现学的,终于明白了我们所谓的本科大学生对于专业技术还只是略懂一二而已。看来以后要加强自己的专业知识的积淀。 此外,这两星期的实验都是我和谢婷同学合作完成的,不敢说完成的很顺利,至少出错率比较低,因为两个人都在认真的思考、检查,总有一个人会检查到隐藏的错误。如果是我一个人做实验,一定会出更多的错误,也不一定能完成这么多的功能设计。 最后,感谢电子技术实验中心的老师的耐心指导!参考文献1. 蒋立平编著.数字电路.南京理工大学出版社2. 南京理工大学电子技术中心编.EDA设计实验指导书3. 付文红、花汉兵编著.EDA技术与实验.机械工业出版社4. 王毅评、张振荣编著.VHDL编程与仿真.北京人民邮电出版社5. 潘松、黄继业编著.EDA技术实用教程.北京科学出版社6. 邹彦编著.EDA技术与数字系统设计.北京电子工业出版社7. 谭会生、瞿遂春等编.EDA技术综合应用实例与分析.西安电子科技大学出版社

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服