数字电路与逻辑设计-移位寄存器逻辑功能测试和应用

news2024/12/30 21:45:35

一、实验目的

l.验证移位寄存器的逻辑功能;

2.掌握集成电路4位双向移位寄存器的使用方法;

3.学会应用移位寄存器实现数据的串行、并行转换和构成环形计数器。

二、实验原理

l.移位寄存器的特点

寄存器中所存的数据在CP脉冲作用下能依次左移或右移。有些集成移位寄存器同时设有左移或右移控制端,可根据左移或右移信号实现双向移位的要求。根据移位寄存器存取信息方式的不同分为串入串出、串入并出、并入串出、并入并出这4种形式。

本实验选用的4位双向通用移位寄存器CD40194或74LS194,两者功能和引脚相同,可互换使用。逻辑符号及引脚排列如图47-1所示。

其中,D0、D1、D2、D3为并行输入端;Q0、Q1、Q2、Q3为并行输出端:DIR为右移串行输入端,DIL为左移串行输入端;S1、S0为操作模式控制端;Rd 为异步(亦称为无条件)清零端;CP为时钟脉冲输入端。

CD40194有5种不同操作模式:即数据在D3、D2、D1、D0端并行送入寄存、右移(数据由Q0→Q3移动)、左移(数据由Q3→Q0移动)、保持及清零。

S1、S0和¯Rd端的控制作用如表47-1所示。     

2.移位寄存器的用途

移位寄存器除了可以作为寄存器外,通过适当的连接,还可以成为移位寄存器型计数器、顺序脉冲发生器、串行累加器等,还可用作数据转换,即把串行数据转换为并行数据、并行数据转换为串行数据等。本实验研究移位寄存器如何成为环形计数器和数据的串、并行转换。其他用途自行参考有关资料。

(1)环形计数器

环形计数器如图47-2所示,是把移位寄存器的输出反馈到它的串行输入端,利用循环移位实现计数。把输出端Q3与右移输入端DIR相连,设初始状态Q0Q1Q2Q3=1000,则在时钟脉冲CP的作用下,Q0Q1Q2Q3将依次变为0100→0010→0001→1000→……,如表47-2所示。显然它是利用4个有效状态表示计数结果,这种类型的计数器通常称为环形计数器。图47-2所示电路可以由各个输出端输出在时间上有先后顺序的脉冲,因此也可作为顺序脉冲发生器。如果将输出端Q0与左移串行输入端DIL相连接,即可左移循环移位。

 (2)实现数据串行、并行输入输出相互转换

    ①串行输入/并行输出转换电路

串行输入/并行输出转换是指串行输入的数据,经转换电路后并行输出。图47-3所示是由CD40194(74LS194)4位双向移位寄存器组成的7位串行输入/并行输出转换电路。

电路中S0端接高电平l,S1受Q7控制,两片寄存器连接成串行输入右移工作模式。Q7是转换结束标志。当Q7=l时。S1为0,使之成为S1S0=0l的串入右移工作方式,当Q7=0时,S1=1,有S1S0=11,则串行送数结束,标志着串行输入的数据已转换成并行输出了。其中所使用的非门可用74LS04(见实验43)或CD4069(见实验62)。

串入/并出转换具体过程如下: 转换前,¯Rd加低电平,使1、2两片寄存器的内容清零,此时S1S0=11,寄存器执行并行输入工作方式。当第一个CP脉冲到来后,寄存器的输出状态Q0~Q7为01111111,与此同时S1S0变为01,转换电路变为执行串入右移工作方式,串行输入数据由1片的DIR端加入。随着CP脉冲的加入,输出状态的变化可列成表47-3所示。

由表47-3可知,右移操作七次后,Q7变为0,S1S0又变为11,说明串行输入结束。这时,串行输入的数码已转换成了并行输出。

当再来一个CP脉冲时,电路又重新执行一次并行输入,为第二组串行数码转换作好了准备。

②并行输入/串行输出转换器

并行输入/串行输出转换器是指并行输入的数码经转换电路之后,换成串行输出。

图47-4所示是用两片CD40194(74LS194)组成的7位并行输入/串行输出转换电路,它比图47-3所示电路多了两个与非门G1和G2,电路工作方式同样为右移。

寄存器清零后,加一个转换启动信号(负脉冲或低电平)。此时,由于方式控制S1S0为11,转换电路执行并行输入操作。当第一个CP脉冲到来后,Q0Q1Q2Q3Q4Q5Q6Q7的状态为0DlD2D3D4D5D6D7,并行输入数码存入寄存器。从而使得G1输出为1,G2输出为0,结果S1S0变为01,转换电路随着CP脉冲的加入,开始执行右移串行输出,随着CP脉冲的依次加入,输出状态依次右移,待右移操作7次后,Q0~Q6的状态都为高电平1,与非门G1输出为低电平,G2门输出为高电平,S1S0又变为11,表示并/串行转换结束,且为第二次并行输入创造了条件。转换过程如表47-4所示。

图47-4中的G1为8输入与非门,可使用CD4068或74LS30,相关资料见本实验附录。

中规模集成移位寄存器,其位数往往以4位居多,

当需要的位数多于4位时,可把几片移位寄存器用级连的方法来扩展位数。

三、实验设备与器材

l.+5V直流电源

2.单次脉冲源

3.逻辑电平开关

4、逻辑电平显示器

5.CD40194×2(或74LS194)、CD4011(74LS00)(见实验37/38)、CD4068(74LS30)(见本实验附录)

四、实验步骤、过程和记录(数据、图表、计算等)

1.测试CD40194(或74LS194)的逻辑功能

按图47-5所示接线,¯Rd、S1、S0、DIL、DIR、D0、D1、D2、D3分别接至逻辑开关;Q0、Q1、Q2、Q3分别接逻辑电平显示器。CP端接单次脉冲源。按表47-5所规定的输入状态,逐项进行测试。

(1)清零:置¯Rd=0,其它输入为任意态,这时寄存器输出Q0Q1Q2Q3应均为0。清零后,置¯Rd =l。

(2)置数:令¯Rd=S1=S0=l,送入任意4位二进制数,如D0D1D2D3=1101,加单次脉冲至CP端,观察CP=0、CP由0→1、CP由1→0三种情况下寄存器输出状态的变化,观察寄存器输出状态变化是否发生在CP脉冲的上升沿。

(3)右移:清零后,令¯Rd =1、S1S0=01,由右移输入端DIR送入二进制数码,如0100,由CP端连续加4个脉冲,观察输出情况并记录。

(4)左移:先清0或预置,再令¯Rd =1,S1=1,S0=0。由左移输入端DIL送入二进制数码如1111,连续加4个CP脉冲,观察输出端情况并记录过程。

(5)保持:寄存器预置任意4位二进制数码,如1101,令¯Rd=1,S1=S0=0,加CP脉冲,观察寄存器输出状态并记录。

2.环形计数器

自拟实验线路,用并行置数法预置寄存器为某数据(如0100),然后进行右移循环,观察寄存器输出端状态的变化,再进行左移循环,并把过程记入表47-6中。

3.实现数据的串、并行转换

(1)串行输入、并行输出

把两块CD40194接成如图47-3所示,就成为右移串入、并出寄存器,实验时串入数据自定。自行改接线路用左移串入方式实现并行输出,自拟表格并记录过程。

D1=1,D2=0,D3=1,D4=0,D5=1,D6=0,D7=1

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

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

相关文章

深入掌握 Protobuf 与 RPC 的高效结合:实现C++工程中的高效通信

目录 一、Protobuf与RPC框架的通信流程概述二、Protobuf与RPC在C中的实际应用2.1 定义 .proto 文件2.2 编译 .proto 文件生成C代码2.3 实现服务器端逻辑2.4 实现客户端逻辑2.5 使用CMake构建工程2.6 编译与运行2.7 关键组件解析2.8 序列化与反序列化的实现 三、关键实现与解析四…

想不到!手机壁纸变现项目,有人 3 个月怒赚 180000+(附教程)

同学们!今天无意间发现了一个超级有潜力的变现数据账号。这个账号专注于制作 3D 立体膨胀壁纸,我实在是忍不住要和大家分享。 这个账号的笔记内容非常简洁,主要就是展示壁纸作品。然而,就是这样简单的内容,却在短短 8…

介绍我经常使用的两款轻便易用的 JSON 工具

第一款是 Chrome Extension,名叫 JSON Viewer Pro,可以在 Chrome 应用商店下载: 点击右上角的 JSON Input,然后可以直接把 JSON 字符串内容粘贴进去,也直接直接加载本地 JSON 文件。 可以在树形显示和图形显示两种模式…

淘宝自动下单退货RPA自动化脚本(已运行两个月)

使用AdsPower Browser写的两个自动化脚本,一个下单一个退货,我也不知道他为什么要做这个自动化脚本,运行2个月时间,还蛮稳定,可以多窗口并发运行! 下单指定淘宝商品连接,执行下单RPA脚本实现自动操作。 退…

模糊测试SFuzz亮相第32届中国国际信息通信展览会

9月25日,被誉为“中国ICT市场的创新基地和风向标”的第32届中国国际信息通信展在北京盛大开幕,本次展会将在为期三天的时间内,为信息通信领域创新成果、尖端技术和产品提供国家级交流平台。开源网安携模糊测试产品及相关解决方案精彩亮相&…

Flux最新ControlNet 高清修复模型测评,效果好速度快!

上一篇介绍了Jasper AI 发布了三个模型中的法线贴图,没看过的可以看一下哈: Flux目前最快ControlNet模型现身!法线贴图详细测评 (chinaz.com) 这次再介绍一下另一个模型:升频器,可以有比较好的模糊修复效果&#xff…

一条命令Docker安装常用桌面linux系统含一些系统和应用

分类 一. opens use 15.5 desktop https://hub.docker.com/r/kasmweb/opensuse-15-desktop 这是我最近用的一个,稳定性和性能好过ubuntu,兼容性稍微差,部分依赖无法安装,部分软件运行不起来,界面比ubuntu的要好看.风格是win10的.提供一个开源的webVNC, 可选,但是桌面必定要用…

AIGC专栏16——CogVideoX-Fun V1.1版本详解 支持图文生视频与更大的动态性 为文生视频添加控制

AIGC专栏16——CogVideoX-Fun V1.1版本详解 支持图&文生视频与更大的动态性 为文生视频添加控制 学习前言相关地址汇总源码下载地址HF测试链接 CogVideoX-Fun V1.1详解技术储备Diffusion Transformer (DiT)Stable Diffusion 3EasyAnimate-I2V 算法细节V1.1特点参考图片添加…

20.1 分析pull模型在k8s中的应用,对比push模型

本节重点介绍 : push模型和pull模型监控系统对比为什么在k8s中只能用pull模型的k8s中主要组件的暴露地址说明 push模型和pull模型监控系统 对比下两种系统采用的不同采集模型,即push型采集和pull型采集。不同的模型在性能的考虑上是截然不同的。下面表格简单的说…

二、Spring Boot集成Spring Security之实现原理

Spring Boot集成Spring Security之实现原理 一、Spring Security实现原理概要介绍二、使用WebSecurityConfiguration向Spring容器中注册FilterChainProxy类型的对象springSecurityFilterChain1、未配置securityFilterChain过滤器链时使用默认配置用于生成默认securityFilterCha…

Java SE 总结

Java SE(Standard Edition)是Java编程语言的标准版本,提供了基础的编程环境和API,适用于开发和运行Java应用程序。下面是Java SE的几个重要方面的知识回顾与总结。 1. Java环境基础 具体可参考这里对三者的介绍 传送门 1.1 JVM…

后端-对表格数据进行添加、删除和修改

一、添加 要求: 按下添加按钮出现一个板块输入添加的数据信息,点击板块的添加按钮,添加;点击取消,板块消失。 实现: 1.首先,设计页面输入框格式,表格首行 2.从数据库里调数据 3.添加…

SpringBoot助力墙绘艺术市场创新

3 系统分析 当用户确定开发一款程序时,是需要遵循下面的顺序进行工作,概括为:系统分析–>系统设计–>系统开发–>系统测试,无论这个过程是否有变更或者迭代,都是按照这样的顺序开展工作的。系统分析就是分析系…

数字化智能工厂应用场景

数字化智能工厂的应用场景广泛,涵盖了多个行业和领域。以下是一些主要的应用场景: 一、制造业 汽车制造:数字化智能工厂在汽车制造业中得到了广泛应用。通过自动化生产线、机器人、物联网和人工智能等技术,汽车制造商能够实现高…

三分钟速览:Node.js 版本差异与关键特性解析

Node.js 是一个广泛使用的 JavaScript 运行时环境,允许开发者在服务器端运行 JavaScript 代码。随着技术的发展,Node.js 不断推出新版本,引入新特性和改进。了解不同版本之间的差异对于开发者来说至关重要。以下是一个快速指南,帮…

Redis篇(应用案例 - 附近商户)(持续更新迭代)

目录 一、GEO数据结构的基本用法 二、导入店铺数据到GEO 三、实现附近商户功能 一、GEO数据结构的基本用法 GEO就是Geolocation的简写形式,代表地理坐标。 Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,帮助我们根据经纬度来…

【高性能内存池】基本框架 + 固定长度内存池实现 1

高性能内存池 1. 基本框架2. 定长内存池的实现2.1 介绍定长内存池2.2 T* New()2.3 void Delete(T* obj) 3. 源码(附赠测试)4. 总结 1. 基本框架 高并发内存池主要由三个部分构成: 1.thread cache:用于小于256KB的内存的分配。线程缓存是每个…

opencv实战项目(三十):使用傅里叶变换进行图像边缘检测

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一,什么是傅立叶变换?二,图像处理中的傅立叶变换:三,傅里叶变换进行边缘检测: 一&#xff0c…

适合初学者的[JAVA]: 基础面试题

目录 说明 前言 String/StringBuffer/StringBuilder区别 第一点: 第二点: 总结: 反射机制 JVM内存结构 运行时数据区域被划分为5个主要组件: 方法区(Method Area) 堆区(Heap Area) 栈区&#x…

局部整体(七)利用python绘制圆形嵌套图

局部整体(七)利用python绘制圆形嵌套图 圆形嵌套图( Circular Packing)简介 将一组组圆形互相嵌套起来,以显示数据的层次关系,类似于矩形树图。数据集中每个实体都由一个圆表示,圆圈大小与其代…