欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    实验三 VHDL时序逻辑电路设计.docx

    • 资源ID:3436047       资源大小:38.76KB        全文页数:6页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    实验三 VHDL时序逻辑电路设计.docx

    实验三 VHDL时序逻辑电路设计 实验三 VHDL 时序逻辑电路设计 一、实验目的 1 熟悉用VHDL语言设计时序逻辑电路的方法 2 熟悉用Quartus文本输入法进行电路设计 二、实验所用仪器元件及用途 1 计算机:装有Quartus软件,为VHDL语言提供操作场所。 2 直流稳压电源:通过USB接口实现,为实验开发板提供稳定电源。 3 数字系统与逻辑设计实验开发板:使试验结果下载到开发板上,实现整个实验的最终结果。 三、实验内容 1 用VHDL语言设计实现一个8421码十进制计数器。 实验内容及要求:在Quartus平台上设计程序和仿真题目要求,并下载到实验板上验证试验结果。 试验结果:VHDL代码和仿真结果。 2 用VHDL语言设计实现一个分频系数为8,分频输出信号占空比为50%的分频器。 实验内容及要求:在Quartus平台上设计程序和仿真题目要求。 试验结果:VHDL代码和仿真结果。 3 用VHDL语言设计实现一个控制8个发光二极管亮灭的电路。 实验内容及要求:在Quartus平台上设计程序和仿真题目要求,并下载到实验板上验证试验结果。 a. 单点移动模式:一个点在8个发光二极管上来回的亮 b. 幕布式:从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,依次往复 c. 通过拨码开关或按键控制两种模式的转换 试验结果:VHDL代码和仿真结果。 四、实验设计思路及过程 1.8421码十进制计数器状态转移表 a b c d A B C D 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 左图为8421码十进制计数0 0 1 0 0 0 1 1 器的状态转移表,abcd为初0 0 1 1 0 1 0 0 状态,ABCD为下一状态,0 1 0 0 0 1 0 1 每当有“1”出现时,相应0 1 0 1 0 1 1 0 的管脚就亮灯,从而从00000 1 1 0 0 1 1 1 到1001的灯依次出现。 0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 VHDL代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY count12 IS PORT( clk,clear:IN STD_LOGIC; q :OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END count12; ARCHITECTURE a OF count12 IS SIGNAL q_temp:ATD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(clk) BEGIN IF(clk'event and clk='1') THEN IF clear='0' THEN q_temp<="0000" ELSIF q_temp="1011"THEN q_temp<="0000" ELSE q_temp<=q_temp+1; END IF; END IF; END PROCESS; q<=q_temp; END a; 2.分频系数为8,输出占空比为50%的分频器的设计 a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 A 0 0 0 1 1 1 1 0 B 0 1 1 0 0 1 1 0 C 1 0 1 0 1 0 1 0 F 0 0 0 0 1 1 1 1 左图为八分频器 的状态转移图,其中abc为原状态,ABC为下一状态。当输出F为“1”时,输出波形。 VHDL代码为: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY div_8 IS PORT( clk:IN STD_LOGIC; clear:IN STD_LOGIC; clk_out:OUT STD_LOGIC); END div_8; ARCHITECTURE a OF div_8 IS SIGNAL tmp:INTEGER RANGE 0 TO 7; BEGIN p1:PROCESS(clear,clk) BEGIN IF clear='0'THEN tmp<=0; ELSIF clk'event AND clk='1' THEN IF tmp=7 THEN tmp<=0; ELSE tmp<=tmp+1; END IF; IF tmp<=4 THEN clk_out<='0' ELSE clk_out<='1' END IF; END IF; END PROCESS p1; END a; 五、实验结果 一、.8421码十进制计数器 其中,end time 设为 50us, clear和clk的period 分别为1和1us. 对结果进行分析: 由仿真波形可以看出,当输入在0000到1001时,输出对应亮灯随着1的出现依次变化,每拨动一次时钟clk的锁定管脚,就由一个状态转换到下一状态,亮灯也进入下一状态。 二、八分频器 波形分析: 每出现八次时钟为分频器的周期,输出的波形如图为占空比为50%的矩形波,构成了如题所要求的分频器。 六、故障及问题分析 1.每次实验中都应该注意到VHDL的文件名应与实体名一致,如果不一致编译会报错。我在实验过程中虽然原理图设计名与工程名相同,但在其后某程序名上犯了错误,导致出错。 2.在仿真波形的观察中,一定要调节好zoom一选项,缩放出便于观察的波形。 3.在命名过程一定要注意规范,不要出现非法字符。 4.在做10进制计数器时,由于板的固有频率为晶振的频率50兆赫兹,所以当以微秒级的时钟去自动跳变太快根本无法看清,应该加一段程序令时钟在微秒级跳变25兆次时外部时钟输出,从而令外部时钟变为秒级的,才能看见自动跳变现象。 七总结和结论 1.本次实验是有关于VHDL的第三次实验,在前几次的实验中已经基本掌握了软件的用法,所以实验起来比较上手,还需要多加练习。 2.由于上次实验仅仅是运用图形工具,所以对VHDL语言的学习成了本次实验的难点,在仔细看过相关参考书后,发现其实VHDL语言还是相对比较好理解的,多次研读语言后应该能自行进行修改等工作。 3.有许多有语言功底的同学能编出十分简洁而有效的编码,值得我向其请教学习,还要更加努力掌握这门语言。 VHDL 数电实验三 班级:07115 学号:30号 姓名:杨帆 时序逻辑电路设计

    注意事项

    本文(实验三 VHDL时序逻辑电路设计.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开