ImageVerifierCode 换一换
格式:DOCX , 页数:50 ,大小:1.67MB ,
资源ID:21505283      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(南昌大学EDA实验报告完整版Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

南昌大学EDA实验报告完整版Word格式文档下载.docx

1、b.全加器module f_adder(ain,bin,cin,cout,sum); output cout,sum; input ain,bin,cin; wire net1,net2,net3; h_adder U1(ain,bin,net1,net2); h_adder U2(.A(net1),.SO(sum),.B(cin),.CO(net3); or U3(cout,net2,net3);2.选目标器件CycloneII中的EP2C35F672C8并编译。3.建立仿真波形文件,进行波形仿真。仿真波形与真值表对应,结果一致,说明程序编写正确,仿真成功。4.引脚锁定,包装元件。5 .下载

2、测试 下载到试验箱上进行测试。拨动开关得出结果,按照真值表上对结果进行验证。可以发现与真值表上的结果完全一致,说明设计符合设计要求。6 实验总结 初步了解verilog语言以及学习Quartus ii软件的使用,能够熟练地使用软件建立工程,编写代码,建立波形文件,引脚锁定,下载程序到试验箱。除此,还知道了verilog HDL元件例化语句的编写与调试。使我对EDA从理论到实践,大体上有了一个初步的了解及认识。2015.10.26 实验成绩: 实验二 模可变计数器的设计(一)实验目的1、进一步熟悉实验装置和Quartus软件的使用;2、 进一步熟悉和掌握EDA设计流程;3、 学习简单组合、时序电

3、路的EDA设计;4、 学习计数器中二进制码到BCD码的转换技巧;5、 学习实验装置上数码管的输出方法。(二) 设计要求完成设计、仿真、调试、下载、硬件测试等环节,在EDA实验装置上实现模可变计数器功能,具体要求如下:1、设置一个按键控制改变模值,按键按下时模为10-99之间(具体数值自行确定)的数,没按下时模为100-199之间(具体数值自行确定)的数;2、计数结果用三位数码管十进制显示。3、利用控制位m来改变模长要求m=0时模为120计数,m=1时模为21计数;(三) 主要仪器设备1、 微机 1台2、 QuartusII集成开发软件 1套3、 EDA实验装置 1套(四)实验步骤1.建立工作库

4、文件夹,输入计数器的Verilog HDL代码并存盘。module clk_div(clk,m,en,rst,a,sel,SG,d); input clk,m,en,rst; output 7:0 SG; output 2:0 sel; output a; (* synthesis, keep *) reg clk1; (* synthesis, keep *) wire 3:0 gw,sw,bw; /*(* synthesis, keep *) */reg 3:0a; reg 11:0 q;0 model; reg 7:0 cnt,SG; reg 2:reg 0:0d;output 0: a

5、lways (posedge clk) begin cnt=cnt+1; if (cnt=200) begin clk1=1b1; cnt=0; end else clk1=1b0; /200分频,CLK为数码管扫描频率,CLK1为计数频率 if (sel2) sel=sel+1; else sel=0; end /sel为数码管选择 always (sel) begin case (sel) 0: a=bw; /0数码管为百位 1: a=sw; /1数码管为十位 2: a=gw; /2数码管为个位 default: a=0; endcase case (a)SG=8b00111111;b00

6、000110;b01011011; 3:b01001111; 4:b01100110; 5:b01101101; 6:b01111101; 7:b00000111; 8:b01111111; 9:b01101111; /8段译码值 SG=8b11111111; endcase end always (m) if (m) model=12b000000100000; /模值20 else model=12b000100011001; /模值119 assign gw=q3:0; assign sw=q7:4; assign bw=q11:8; always (posedge clk1,neged

7、ge rst) begin if (!rst) q=0; else if (en) if (qmodel) if (gw=9) begin q=q+7; if (sw=9) q=q+96; end /BCD调整 else q=q+1; else q=0;always (q) if(qmodel) d=0; else d=1; endmodule(复位清零以及使能仿真,当rst=0时,清零,当en=0,计数值维持不变)(M=0时模119计数仿真,当q=119时,d为高电平)(M=1时模20计数仿真,当q=20时,d为高电平)波形分析:当置位rst为低电平时,计数清零,当RST为高电平,使能位en

8、为高电平时,开始计数:模控制位m为低电平时,则计数器记到119时归0后重新计数,实现模为120的计数功能;模控制位m为高电平时,则计数器记到20时归0后重新计数,实现模为21的计数功能。5 、下载测试。下载到实验箱上测试,下推K3(m=0),可以从实验箱数码管观察到0119模120计数。按下K2(RST=1)可以使计数器复位清零。K1 下推(en=0),计数值维持不变。将K3上推(m=1),可在数码管上观察020模21的计数,可知测试结果符合模可变计数器要求。6、实验小结在前面基础实验的基础上进一步深入理解实验台的配置,个人觉得知识学习了更重要的在于整合内化成为自己的东西,才能运用的游刃有余,

9、才能在以后的世纪应用中使用到。对于参考程序中的不理解的寄存器设置或者不理解的语句要学会查用户手册寻找答案;另外分析程序时,要将硬件和软件结合起来看,分析其各个部分连接能够实现的功能。 首先,通过这次实验,我能完成简单的设计;其次,在对模可变计数器设计过程中,花了很多时间,发现自己有很多不足,需要多看书多程序,训练自己的逻辑思维也非常重要最后,希望在以后的学习中,多用心去学习EDA这门技术,在实际操作中慢慢提高自己的设计能力。2015.11.2 实验成绩:实验三 序列信号检测器的设计1、 进一步熟悉EDA实验装置和Quartus软件的使用方法;2、 学习有限状态机法进行数字系统设计;3、 学习使

10、用原理图输入法进行设计。(二)设计要求完成设计、仿真、调试、下载、硬件测试等环节,在EDA实验装置上实现一个串行序列信号发生器和一个序列信号检测器的功能,具体要求如下:1、 先用设计0111010011011010序列信号发生器,其最后6BIT数据用LED显示出来;2、 再设计一个序列信号检测器,检测上述序列信号,若检测到串行序列“11101”则输出为“1”,否则输出为“0”;(三)主要仪器设备3、 EDA实验装置 1套(四)状态转移(五)实验步骤 module xulie (clk,f,m,clr1,clr2,ld,s,c); input clk,clr1,clr2,ld; output f

11、,m,c; output 4:0 s; reg f,m;0 q2; reg 4:0 z,s; reg 15:0 wo; assign c=clk; parameter 15:0 xulie=16b0111010011011010; /要产生的序列 parameter 4:0 q1=5b11101; /要检测的序列;. always (posedge clk,negedge clr1) if (clr1) f /清产生序列 else if (ld) wo=xulie; else begin wo0=wo15; f wo15:1=wo14: /并行转换为串行 always (posedge clk

12、 or negedge clr2) begin if (clr2) q2= 0; /清检测序列 else case (q2) 0 : if (f=q14) q2 else q2 1 : if (f=q13) q2=2; 2 : if (f=q12) q2=3; 3 : if (f=q11) q2=4;= 3; 4 : if (f=q10) q2=5; /状态转移 q2 always (q2) if (q2=5) m= 1; else m /检测到11101,输出1 z4:1=z3: z0=f; s=z; / 转换为并行输出(检测到序列11101时,m=1)说明:当检测到“11101”序列时,m

13、=1,clr1=1,clr2=15 、下载测试1)连接电源,将开关k1,k2拨上,将k3拨上再拨下,即此时clr1=1,clr2=1,输入下一个脉冲即LED灯1、2、3、4亮时,LED灯6亮,即m=1,为高电平,说明检测到了序列11101。2)将开关K2拨下即clr2=0,观察得当第LED灯1、2、3、4亮时,即产生序列11101时,LED灯6不亮,说明m=0时,即clr2=0时,清检测序列。3)将开关K1拨下,K2拨上,即clr1=0,LED灯不再亮,清产生序列。通过本设计,进一步加深了对VerilogHDL语言的理解及应用,用VerilogHDL语言来设计电路,思路更清晰,更简洁,实现起来

14、更加的得心应手。这就是电子系统EDA最好的体现。对序列信号检测器的设计的设计更加明白了,同时清产生序列和检测序列的原理也弄懂了。还有引脚锁定的时候,clr1,clr2都是选择用户开关而不是用户按键,是为了方便操作。2015.11.9 实验成绩:实验四 交通灯控制器设计合作人:陈亚亚(8001713021)1、 学习与日常生活相关且较复杂数字系统设计;2、 进一步熟悉EDA实验装置和Quartus软件的使用方法;3、 学习二进制码到BCD码的转换;4、 学习有限状态机的设计应用。完成设计、仿真、调试、下载、硬件测试等环节,在型EDA实验装置上实现一个由一条主干道和一条乡间公路的汇合点形成的十字交

15、叉路口的交通灯控制器功能,具体要求如下:1、 有MR(主红)、MY(主黄)、MG(主绿)、CR(乡红)、CY(乡黄)、CG(乡绿)六盏交通灯需要控制;2、 交通灯由绿转红前有4秒亮黄灯的间隔时间,由红转绿没有间隔时间;3、 乡间公路右侧各埋有一个串连传感器,当有车辆准备通过乡间公路时,发出请求信号S=1,其余时间S=0;4、 平时系统停留在主干道通行(MGCR)状态,一旦S信号有效,经主道黄灯4秒(MYCR)状态后转入乡间公路通行(MRCG)状态,但要保证主干道通行大于一分钟后才能转换;5、 一旦S信号消失,系统脱离MRCG状态,即经乡道黄灯4秒(MRCY)状态进入MGCR状态,即使S信号一直

16、有效,MRCG状态也不得长于20秒钟;6、 控制对象除红绿灯之外,还包括分别在主干道和乡间公路各有一个两位十进制倒计时数码管显示。1、 微机 1台1、交通灯的状态转移 状态转移图共有四个状态:S0=MGCR(主绿乡红)S1=MYCR(主黄乡红)S2=MRCG(主红乡绿)S3=MRCY(主红乡黄)2、建立工作库文件夹,输入计数器的Verilog HDL代码并存盘。module traffic(clk,s,rst,MG,CR,MY,MR,CG,CY,sel,SG); input clk,rst,s; output reg MG,CR,MY,MR,CG,CY; output reg 7: outpu

17、t reg 2: parameter s0=0,s1=1,s2=2,s3=3;0 timMG,timCG,timY;0 tim; reg 1:0 cs;0 next_state; reg 3:0 gw,sw;0 cnt,a; always (cs) /状态机控制 case(cs) s0: if(tim=b0&s=b1) next_state=s1; else next_state=s0; s1:b0) next_state=s2; s2:b0|s=0) next_state=s3; s3: default: next_state endcase always (posedge clk1 or

18、posedge rst) begin if(rst) cs else=next_state; end always (negedge clk1) begin MY=CRMGMRCGCY always (negedge clk1,posedge rst)/倒数计时 if(rst) /设置各种灯的计数器的预置数 begin timMGb01011001; timCGb00011001; timY0) begin begin if (timMG3:0=0) timMG=timMG-7; else timMG=timMG-1;end tim=timMG;timCG else begin timtimM

19、G begin if (timY3:0=0) timY=timY-7; else timY=timY-1; end tim begin if (timCG3:0=0) timCG=timCG-7; else timCG=timCG-1;=timCG;end end b11: default : timMGtim endcase /module fengpym(clk,tim,clk1,sel,SG); cnt=cnt+1; /100分频,CLK为数码管扫描频率 gw=tim3: sw=tim7:7) sel=sel+1; else sel=6; /sel为数码管选择 /1数码管为个位 /0数码管为十位 endcase end 开始60s倒计时初始状态主绿乡红当s=1时,仍然保证是60s的主绿乡红S=1时60s倒计时结束转4s倒计时即状态主黄乡红S=1时 4s倒计时结束转20s倒计时即状态主红乡绿

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1