实验三 时序电路实验
一、实验步骤与实验结果
第一步:创建一个工程项目。首先实现连续节拍脉冲发生器电路。
电路图如下:
图1.1 连续节拍脉冲发生器电路
仿真图如下:
图1.2 节拍脉冲发生器工作波形
分析此仿真图:当RST复位端给低电平,不论什么时钟信号,T1恒为高电平,T2,T3,T4恒低电平;当RST复位端给高电平,此时T1为高电平,T2,T3,T4低电平,当遇到CLK时钟信号为上升沿的时候,实现节拍的循环。
第二步:接下来实现单步节拍发生电路设计。
电路图如下:
图1.3 单步节拍发生电路
图1.4 单步节拍脉冲发生器工作波形
仿真分析:当SETP置0的时候T1、T2、T3、T4节拍信号恒为0。只有当SETP置1的时候,CLK为上升沿,逐步输出T1=1,T2=1,T3=1,T4=1,最后当T5=1的时候,CLK|T5恒为1,时钟就不起作用了。见下图可以更好的理解。
图1.5 单步节拍发生电路仿真图
第三步:设计单步/连续节拍发生电路。
电路图如下:
图1.6 单步/连续节拍发生器电路
仿真图如下:
图1.7 单步/连续节拍电路运行仿真波形
仿真图分析如下:当RST为0时,T1-T5均输出0,是复位键。当RST为1时,STEP为0和RST的作用是相似的,当STEP和RST均为1的时候开始执行单步或连续节拍发生器,此时H_RUN是选择是单步还是连续节拍的选择位,当H_RUN为0说明是单步节拍发生器,当H_RUN为1说明是连续节拍发生器,当STOP端为1时起到停止电路的作用。
二、实验讨论与总结
1、单步运行与连续运行有何区别,它们各自的使用环境怎样?
解答:区别:单步运行只在复位后T1-T4依次产生一个脉冲,对应与计算机中执行一条指令,而连续运行复位后T1-T4将依次产生脉冲不断循环下去。使用环境:单步运行用于调试器对单步指令运行的控制,连续运行用于程序的正常运行和连续运行控制连续指令执行。
2、如何实现单步/连续运行工作方式的切换?
解答:通过S控制21MUX的2选1控制端。当S为低电平时,Y=A,即实现了连续方式;当S为高电平时,Y=B,即切换到单步方式。
3、用Verilog HDL设计实现节拍控制电路,并通过实验台验证其功能。
解答:代码详见实验报告底部附件一:程序源代码
该程序的电路图如下:
图2.1 verilog实现的单步/连续节拍电路
该程序的仿真图如下:
图2.2 verilog实现的单步/连续节拍电路运行仿真波形
附件一:程序源代码
1、用Verilog HDL设计实现节拍控制电路代码清单如下:
module shiyan3_2 ( CLK,RST,STEP,H_RUN,STOP,T);input CLK,RST,STEP,H_RUN,STOP;output [4:0]T;reg [4:0]T;//临时变量reg [4:0]t1=5'b00000;//reg t[3:0];always @ (posedge CLK or negedge RST or negedge STEP )beginif(!RST)beginT<=5'b0000;t1<=5'b0000;endelse if(!STEP)beginT<=5'b0000;t1<=5'b0000;end//保持状态不变else if(STOP)beginT<=T;t1<=T;endelsebeginif(!H_RUN)begin//单脉冲case(t1)5'b00000:begin t1<=5'b00001; T<=5'b00001; end5'b00001:begin t1<=5'b00010; T<=5'b00010; end5'b00010:begin t1<=5'b00100; T<=5'b00100; end5'b00100:begin t1<=5'b01000; T<=5'b01000; end5'b01000:begin t1<=5'b10000; T<=5'b10000; end//其余输出default:begin t1<=5'b10000; T<=5'b10000; endendcaseendelsebegin//连续脉冲case(t1)5'b00000:begin t1<=5'b00001; T<=5'b00001; end5'b00001:begin t1<=5'b00010; T<=5'b00010; end5'b00010:begin t1<=5'b00100; T<=5'b00100; end5'b00100:begin t1<=5'b01000; T<=5'b01000; end5'b01000:begin t1<=5'b10000; T<=5'b10000; end5'b10000:begin t1<=5'b00001; T<=5'b00001; end//其余输出default:begin t1<=5'b00000; T<=5'b00000 ;endendcaseendendendendmodule
实验三 时序电路实验相关推荐
- 计算机系统实验:时序电路实验
2019年3月21日 题目:时序电路实验 解释:时序电路的实现相对来讲较为简单,并没有什么特别的东西,唯一需要新学的就是如果用quartus画一张状态机图,并产生相应的vhdl文件.如图所示: 生成的 ...
- 实验二 组合逻辑电路设计;实验三 时序逻辑电路设计
文章目录 实验二 组合逻辑电路设计实验报告 实验三 时序逻辑电路设计实验报告 实验二 组合逻辑电路设计实验报告 一.实验目的 1.加深理解组合逻辑电路的工作原理. 2.掌握组合逻辑电路的设计方法. 3 ...
- 红灯停绿灯行c语言编程,C语言 实验三C语 实验三.doc
C语言 实验三C语 实验三 1221410042 张锦华 18.3 最简单的C程序设计 -----实验报告 (1)①源程序 #include void main() {int a,b; float d ...
- 大数据技术基础实验三:HDFS实验——部署HDFS
大数据技术基础实验三:HDFS实验--部署HDFS 文章目录 大数据技术基础实验三:HDFS实验--部署HDFS 一.前言 二.实验要求 三.实验原理 1.什么是HDFS? 2.HDFS的体系结构 3 ...
- 计算机模拟双缝干涉实验报告,电磁场与微波实验三报告——双缝干涉实验.docx...
<电磁场与微波实验三报告--双缝干涉实验.docx>由会员分享,提供在线免费全文阅读可下载,此文档格式为docx,更多相关<电磁场与微波实验三报告--双缝干涉实验.docx>文 ...
- 单片机广告灯实验总结_单片机实验三(广告灯实验)分析报告.ppt
微机原理与接口技术(A)实验三 广告灯实验 1.状态信息窗口 2.程序区与数据区 3.智能一键通 4.智能一键通设置状态窗口 5.文件更新按钮 6.复位目标板 7.操作状态窗口 8.菜单与工具条 9. ...
- 实验三 ShellShock 攻击实验
ShellShock 攻击实验 沙雨济 一. 实验描述 2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发.在本实验中,学生需 ...
- linux实验三shell程序设计,实验三 LINUX SHELL编程
精选文库 -实验三LINUX SHELL 编程 四.实验内容 本实验包含两个具体的SHELL程序编写任务,较为全面地涉及了SHELL 程序的设计方法和技术.内容如下: 1.创建以下菜单程序: USER ...
- python实验三答案_20192116 实验三《Python程序设计》实验报告
20192116 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 饶欢 学号:20192116 实验教师: ...
最新文章
- 11.CCNA第十一天-配置OSPF/EIGRP(增强型内部网关协议)
- 计算机组成原理的中央控制器,计算机组成原理第六章中央控制器(6-7,8,9).pdf
- 祝全天下的教师,节日快乐!
- 帆软正则表达式定义规则
- sap百分数表示Demo
- Ember.js 入门指南——路由切换的终止和回跳
- HDOJ5542-The Battle of Chibi【树状数组,dp】
- 将Ubuntu安装到U盘
- 为什么c相电路在前面_第十二章 三相电路知识点
- SDP 软件定义边界
- 2021-08-12初识maven
- 机器学习和深度学习资料列表
- Java学习笔记:统计视频播放量
- 你手机里装过最牛的软件是什么,精选15款分享,有一个你没用过
- mysql 拖库_【渗透测试】温故知新之拖库七种方法
- 个性互踩留言代码: 『寶貝』駕到,{豬頭}.接駕
- WebScoket 实例 简单的网页聊天室
- android什么意思!读完我这份《Android开发核心源码精编解析》面试至少多要3K!面试建议
- mysql 导出gtid_mysqldump导出时 --set-gtid-purged=OFF
- docker-Alpine添加字体支持功能