【上海大学数字逻辑实验报告】六、时序电路

news2024/12/23 4:20:35

一、 实验目的

  1. 掌握同步二进制计数器和移位寄存器的原理。
  2. 学会用分立元件构成2位同步二进制加计数器。
  3. 学会在Quartus II上设计单向移位寄存器。
  4. 学会在Quartus II上设计环形计数器。

二、 实验原理

  1. 同步计数器是指计数器中的各触发器的时钟脉冲输入端连接在一起,接到输入的计数脉冲的CP端,所以各触发器在同一时钟脉冲的作用下,其翻转是同步进行的。

    下面是一个用JK触发器构造的4位同步二进制加计数器:

在这里插入图片描述

由图可知:

在这里插入图片描述

所以电路的输出方程即进位为:

在这里插入图片描述

注意:

①. 上述方程均在CP下降沿有效。

②. 计数前应清零,清零后每当输入一个脉冲,计数器将按加1规律变化。

  1. 74LS74是一种双D触发器芯片,它具有12个引脚,其中8个输入引脚,4个输出引脚,其逻辑电路图如下图所示:

在这里插入图片描述

74LS74的引脚中:

输入端:1D、2D

时钟输入端:1CLK、2CLK

直接置位端(低电平有效):1PRN、2PRN

直接复位端(低电平有效):1CLRN、2CLRN

输出端:1Q、1QN、2Q、2QN

三、实验内容

实验任务一:用74LS112芯片构成2位同步二进制加计数器

(1) 实验步骤
  1. 将74LS112的输入引脚1J和1K同时连接到K16,输入引脚2J、2K同时连接到输出引脚1Q,输入引脚1CLK连接到连续脉冲1H,输入引脚1PRE、1CLR、2PRE、2CLR分别连接K5、K6、K8、K7,最后将输出引脚1Q和2Q分别连接到数码管LED6和LED5,接电接地后所构成的2位同步二进制加计数器如下所示:

在这里插入图片描述

  1. 将2位同步二进制加计数器清零,拨动开关,观察数码管的变化。
(2) 实验现象

①. 计数器清零时,数码管的值为0。

②. 当时钟脉冲到达时,计数器的值递增。

③. 当计数器的值达到最大也就是3时,它将从0重新开始计数。

(3) 实验结论

通过74LS112作为搭建平台,我们成功地实现了一个2位同步二进制加计数器。实验结果表明,计数器能按照预期进行计数。

实验任务二:在Quartus II用2片双D触发器74LS74构成单向移位寄存器

(1) 实验步骤
  1. 用Quartus II设计出如下电路:

在这里插入图片描述

  1. 编译通过后进行波形仿真,验证电路逻辑功能:

在这里插入图片描述

  1. 仿真通过后,参照原理图定义引脚:

在这里插入图片描述

  1. 生成编程并将文件下载到FPGA。
  2. 将开关连接对应的输入引脚,输出引脚连接到发光二极管:

在这里插入图片描述

  1. 用开关和发光二极管测试FPGA的功能。
  2. 记录测试结果。
(2) 实验现象

①. 在开始时,环形计数器为初始值。

②. 当时钟脉冲到达时,数据会按照时钟脉冲的触发进行移位,也就是数据从第一个74LS74移位到第二个74LS74,第一个74LS74的Q输出变为新的数据,第二个74LS74的Q输出也变为新的数据。

(3) 实验结论

通过使用Quartus II设计工具,我们成功地用74LS74设计了一个单向移位寄存器。实验结果表明,数据会按照时钟脉冲的触发进行移位,符合预期行为。

实验任务三:在Quartus II上设计环形计数器

(1) 实验步骤
  1. 用Quartus II设计出如下电路:

在这里插入图片描述

  1. 编译通过后进行波形仿真,验证电路逻辑功能:

在这里插入图片描述

  1. 仿真通过后,参照原理图定义引脚:

在这里插入图片描述

  1. 生成编程并将文件下载到FPGA。
  2. 将开关连接对应的输入引脚,输出引脚连接到发光二极管:

在这里插入图片描述

  1. 用开关和发光二极管测试FPGA的功能。
  2. 记录测试结果。
(2) 实验现象

①. 在开始时,环形计数器为初始值。

②. 当时钟脉冲到达时,数据会按照时钟脉冲的触发进行移位,也就是数据从第一个74LS74移位到第二个74LS74,第一个74LS74的Q输出变为新的数据,第二个74LS74的Q输出也变为新的数据。

③. 当移动到最高位后,环形计数器将返回到初始值,形成一个循环。

(3) 实验结论

通过使用Quartus II设计工具,我们成功地用74LS74设计了一个环形计数器。实验结果表明,数据会按照时钟脉冲的触发进行移位并循环,符合预期行为。

四、思考题

(1) 如何构成3位同步二进制加(减)计数器?

3位同步二进制加计数器电路图:

在这里插入图片描述

3位同步二进制减计数器电路图:
在这里插入图片描述

(2) 如何用74LS74构成双向移位寄存器?

答:在构成单向移位寄存器的基础上,只需要改变左移、右移的控制信号即可以实现双向移位。

五、建议和体会

  1. 在实验前,要熟悉同步二进制计数器和移位寄存器的原理。
  2. 实现环形计数器时,必须设置适当的初态,这样电路才能实现计数。
  3. 本实验有助于增进对同步二进制计数器和移位寄存器的理解,同时也提供了一个实际的设计和模拟测试经验。为后续进行更复杂的电路设计打下基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1305377.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

做题总结 707. 设计链表

做题总结 707. 设计链表 leetcode中单链表节点的默认定义我的尝试正确运行的代码(java) leetcode中单链表节点的默认定义 class ListNode {int val;ListNode next;//无参public ListNode() {}//有参:1public ListNode(int val) {this.val val;}//有参:…

【项目小结】优点分析

一、 个人博客系统 一)限制强制登录 问题:限制用户登录后才能进行相关操作解决: 1)前端: ① 写一个函数用于判断登录状态,如果返回的状态码是200就不进行任何操作,否则Ajax实现页面的跳转操作…

Apollo配置发布原理解析

📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化,文章内容兼具广度、深度、大厂技术方案,对待技术喜欢推理加验证,就职于…

Windows下查看删除某一个端口号

背景:Java项目运行时,提示端口号被占用,然后就忘记之前是怎么处理的了,感觉还是像Linux中杀掉端口号就命令行的方式比较简单一些,然后就是各种搜索,记录一下 第一步:在cmd中查看该端口号是否被…

最强文生图跨模态大模型:Stable Diffusion

文章目录 一、概述二、Stable Diffusion v1 & v22.1 简介2.2 LAION-5B数据集2.3 CLIP条件控制模型2.4 模型训练 三、Stable Diffusion 发展3.1 图形界面3.1.1 Web UI3.1.2 Comfy UI 3.2 微调方法3.1 Lora 3.3 控制模型3.3.1 ControlNet 四、其他文生图模型4.1 DALL-E24.2 I…

Nginx的location匹配和rewrite重写

一、location匹配 常用的正则表达式 ^ :匹配输入字符串的起始位置 $ :匹配输入字符串的结束位置 * :匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll”:匹配前面的字符一次或多次。如“ol”能匹配“ol”及“oll…

MySQL笔记-第14章_视图

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第14章_视图1. 常见的数据库对象2. 视图概述2.1 为什么使用视图?2.2 视图的理解 3. 创建视图3.1 创建单表视图3.2 创建多表联合视…

C++ exception类:C++标准异常的基类

C语言本身或者标准库抛出的异常都是 exception 的子类,称为标准异常(Standard Exception)。你可以通过下面的语句来捕获所有的标准异常: try{//可能抛出异常的语句}catch(exception &e){//处理异常的语句} 之所以使用引用&a…

GeoPandas实操:读取数据

GeoPandas 支持读取和写入多种地理空间数据格式,如 ESRI Shapefile、GeoJSON、GeoPackage 等,以及与其他 GIS 软件兼容的格式。 1. 读取数据 1.1. 读取ESRI Shapefile数据 ESRI Shapefile(简称 Shapefile 或 .shp 文件)是一种常…

Pandas中的Series(第1讲)

Pandas中的Series(第1讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔…

PHP操作ZIP之ZipArchive类以及如何避免生成压缩文件带有目录层级的问题

常用的方法 php ZipArchive可以说是php自带的一个函数了,他可对对文件进行压缩与解压缩处理,但是使用此类之前我们必须在php.ini中把extensionphp_zip.dll前面的分号有没有去掉,然后再重启Apache这样才能使用这个类库。 ziparchive 可选参数…

解决:Component name “index“ should always be multi-word

原因 要求组件名称以驼峰格式命名,自定义组件名称应该由多单纯组成,防止和html标签冲突,所以index.vue 会报错 解决 1、按照规则驼峰格式,如:appIndex.vue 2、若有.eslintrc.js文件,并在规则中(rules)关…

排序算法4:【快速排序】、查看每趟归并后的结果,定义一个全局变量,用来计数作为总趟数

一、快速排序——时间复杂度:、 最坏的情况 1、原理: 快速排序是通过多次比较和交换来实现排序,首先,先从数列中,任意选择一个数作为基准(或叫分界值),比如,第一个数&a…

MySQL的事务以及springboot中如何使用事务

事务的四大特性: 概念: 事务 是一组操作的集合,它是不可分割的工作单元。事务会把所有操作作为一个整体,一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 注意: 默认MySQ…

图解transformer中的自注意力机制(备忘)

注意力机制 在整个注意力过程中,模型会学习了三个权重:查询、键和值。查询、键和值的思想来源于信息检索系统。所以我们先理解数据库查询的思想。 假设有一个数据库,里面有所有一些作家和他们的书籍信息。现在我想读一些Rabindranath写的书&#xff1a…

网络编程----select 模型总结

为什么要使用select模型? 答:解决基本C/S模型中,accept()、recv()、send()阻塞的问题 select模型与C/S模型的不同点 C/S模型中accept()会阻塞一直傻等socket来链接select模型只解决accept()傻等的问题,不解决recv(),send()执行…

Android View闪烁动画AlphaAnimation,Kotlin

Android View闪烁动画AlphaAnimation,Kotlin private fun flickerAnimation(view: View?) {val animation: Animation AlphaAnimation(1f, 0f) //不透明到透明。animation.duration 500 // 1次过程时长。animation.interpolator LinearInterpolator() // 线性速…

一天搞定jmeter入门到入职全套教程之Jmeter分布式测试

随着并发量的增大,一台机器就不能满足需求了,所以我们采用分布式(Master-Slaver)的方案去执行高并发的测试 注意事项: Master机器一般我们不执测试,所以可以拿一台配置差些的机器,主要用来采集…

YOLOv8改进 | 2023主干篇 | 利用RT-DETR特征提取网络PPHGNetV2改进YOLOv8(超级轻量化精度更高)

一、本文介绍 本文给大家带来利用RT-DETR模型主干HGNet去替换YOLOv8的主干,RT-DETR是今年由百度推出的第一款实时的ViT模型,其在实时检测的领域上号称是打败了YOLO系列,其利用两个主干一个是HGNet一个是ResNet,其中HGNet就是我们…

养牛场北斗综合管理系统解决方案

1.系统架构 随着我国北斗卫星导航定位系统的快速发展和定位精度的持续不断提高,在牛身上穿戴定位终端后可以实现对牛的位置和温度的测量,在蜂窝网络正常的情况下,定位和温度数据通过蜂窝网络通信方式回传到监控云平台,在蜂窝网络缺…