SR锁存器—>带EN的SR锁存器—>D锁存器—>边沿触发式D触发器—>寄存器

其实选择与非门当做构成SR锁存器的基本逻辑电路是有漏洞的,所以才导致了后续的都为低电平的时候,Q和非Q都是亮起的。但是我们设计的初衷是:Q和非Q是互斥的,是不能同时亮起的,且为了达到这一点,要使得其中两者中的任意一个发生了变化,那么这个变化都要正反馈给另外一个,以此达到通知的目的,这就是为什么最后SR锁存器中,最后输出的结果为另外一个输出的输入,我们都知道一开始有两个原始输入来控制这两个输入,那么这个原始输入和另一个结果的输出的输入是什么关系呢?这就设计了逻辑推导。首先因为Q和非Q是互斥的,比如当Q是亮的时候,那么这个时候一定要保持非Q是暗的,即*(原始输入R,Q输入) = (0,1)(1,1)通过一个逻辑电路一定是低电平的,且当Q时暗的时候,非Q一定是亮的,即(1,0)(0,0)通过一个逻辑电路一定是高电平,这样的逻辑电路还真不好找,但是发现其中逻辑与非门可以满足其中的三个,之后其中的(0,1)不能满足,这样的话,那只能将这种情况人为的设置为无效的条件,但是也为后续这种锁存器的不好用埋下了伏笔,故而就有了锁存器的不断改进,最后到了沿触发式D触发器,才是真正解决了既能锁,又没有特殊情况的问题。

———————————————————————————————————————————

  • SR锁存器到底是什么?其实SR锁存器有两种方式,一种是与非门的锁存器,一种是或非门的锁存器,我们只讲与非门的锁存器,与非门构成的SR锁存器是是一个以低点平为信号的锁存器,其中S,R的初始状态都是高电平的,其中的S是set是设置Q的,其中的R是reset是设置Q非的。当如果S,R一开始都是高电平的话,那么其中的Q和非Q都是不确定的,因为这个结构是循环的,上一个与非门的结果会通过正反馈来控制下面的与非门(相反也是一样的),所以当两个都设置为为1的时候,其中的Q和非Q到底谁亮是取决于上次电路的结果的。当S,R都处于初始位置的时候,即都是高亮的时候,这个时候就需要一个发号施令进入低电平来行使对应的功能,比如其中的R变成低电平的话,那么就会让非Q变亮,而Q会被暗淡下来,为什么呢?是有一个过程的,其中R是通过低电平来重置Q的,让其回到非Q的状态,而由于非Q是和Q是相斥的,所以这个时候就得有一条电路进行正反馈,通知Q,要他变为低电平的(这个时候的S是始终都是亮的,因为这个是正常的状态,还没有轮到S来行使功能),这个时候不管R怎么变化,那么其中非Q的值也不会变化,因为其中Q的反馈是低电平的,无论R怎么变化,也达不到两个都是高电平的状态,这个电路设计的非常巧妙,难以用基本的逻辑来从0-1,所以记住即可,因为这个结构会在后面经常使用。

    所以总的来说,在与非门的SR锁存器中,S控制和其平行的Q的信号的,使用低电平控制;而R是控制与其平行的非Q信号的,使用低电平控制。记住,高电平是S和R的基本状态

        

  • 既然我们有了一个基本的锁存器,能够锁定住在Q中的状态,那么我们能够设置一个开关,来决定是否动用这个锁存器呢?可以的,只需要引入一个EN就好了,这个就是开关。

那为什么这样设计呢?我们需要的是,当我们开启EN的时候,那么就可以正常的去控制的,否则的话是控制不了的。那怎么设计呢?我们知道与非门的SR锁存器是通过低电平控制的,那么只要控制其在EN没有打开的时候,一定输出不了低电平就好了,也就是说,当EN是低电平的时候,S和EN的输入永远都是高电平,即EN,S = (0,1)和(0,0)都是表示高电平,同时保证当EN是高电平的时候,其中的(1,0)(1,1)存在低电平,或电路不可以,与电路也不可以,这个时候与非刚好可以,那么这个时候,就可以在S和EN之间建立一个与非门来控制电路了,但是由于这个时候是(1,1)输出的是低电平从而控制了整个锁存器,所以这个时候的带EN的锁存器,从原来的锁存器由低电平控制,变成了现在的由高电平控制了,即当EN通的时候,S的高电平控制Q的置位,Q的高电平控制非Q的置位。

  • 是不是上面的锁存器就很厉害了呢?其实并不是,因为我们在设计之处,是想让Q一定是位非Q的反面的,两者是不能同时存在的,但是上面的锁存器中,当普通的SR锁存器S和R都是低电平的时候,会出现两个Q和非Q都是亮的情况,那么这个和我们原来的初衷是相反的,是无效的。为什么说和我们的初衷是相反的呢?这是因为当S,R都为低电平的时候,我们确实存储了一个高电平的Q,但是当我们的S,R同时变化成高电平的时候,那么这个时候就会出现竞争,因为率先达到与非门进行计算的就一定会让对应的Q或者非Q变成低电平从而影响到另外一个Q或者非Q,那么这个时候,Q或者是非Q的输出就非常地不确定,可能是Q亮,也可能是非Q亮,因为其中一个输出一旦熄灭了,那么另外一个就一定不可能熄灭了,因为被熄灭的这个正反馈锁住了。与其说是有这种情况存在,不如说是这种结构就导致了这种情况的存在,那么唯一的办法就是改变这种结构,即不让其有两个输入,只有一个输入就好了,同时一个输入表示两个不同的状态,就避免了S,R同时是一种状态了

这个就是大名鼎鼎的D锁存器(其中的Q是跟随D变化的),其中的输入状态还是高电平来控制Q亮,D高电平的话,那么Q亮就进入输出存储。且一定锁住(因为没有另外一个输入R来影响了,只有一个D来影响,身兼两职,且D是稳定的),且不会发生下一步Q和非Q的不确定。

  • 那是不是这种方式就很完美了呢?并不是的!我们锁存的条件是EN是开启的,且D高电平Q才能输入锁存,但是D一旦关闭的话Q就没了,比如D是低电平的话,那么Q就重置了,变成了非Q,即在EN开启的时候,Q的是否是亮的,即Q是否能锁住,取决于D本身是否是稳定的,如果D是不稳定的,那么其中存储的Q也就是不稳定的,所以有没有一个东西,让D高亮锁存的一瞬间就让Q脱离D的关系呢?这个一瞬间怎么来表示呢?记不记得我们前面提到过的需要等到EN高亮的时候,D才能存进去Q,存的条件是EN是一直高亮的,也就是说通道一直是开着的,所以D波动才能影响到Q,那么如果我们让通道不是常开的,我们设置一下,让通道快要开启的时候,这个时候让D锁存,然后等到EN高亮的时候,反而D锁存不了呢?也就是在EN从低电平到高电平拉高的一瞬间让其存进去呢?有的!看下面的电路!

怎么分析呢?这样的电路设计的太巧妙了!其首先是让D是处于一个亮的状态的,同时中间使用了一个非门,使得就算EN的通道没有开放的话,那么也能让信号输出到第一个D锁存器的Q口,那么这个时候,就得等通道的信号了,通道的信号来了之后,同时第二个D口连接着上一个的Q口,这个时候就能里面 缩进去,同时由于通道已经打开,导致第一个锁存器无法正常输出Q亮,所以就堵住了前往后续的道路,故这时无论怎么变化D,里面锁住的信息都不会发生改变。那么这样边沿触发的D触发器才是真正能隔绝外界干扰的锁存器,即一个bit的锁存器,那么多个这样的锁存器拜访在一起的话,就变成了一个寄存器,非常的nice.

所以最终的效果是:下面的通道是由时钟控制的,每秒都会输入多少次高电平,一旦我们输入了D之后呢,那么数据就已经存进去了,之后无论D怎么变化之后,里面的值是不会改变的。

——————————————————————————————————————————

有两个输入的锁存器的输出,都有机会被另外一个输入而重置,即当S让Q亮了之后,S之后再怎么变化都不会影响Q了,所以当S处在原始姿势的时候(原始的姿势,SR锁存器和带EN的SR锁存器不太一样,具体见上文),当R变化的时候,那么Q熄灭,非Q亮起。但是等到后续再D锁存器中,却只被D控制,同步亮和熄灭,但是等到边沿触发式的D锁存器中,又回到了最初的样子,当D输入之后,之后再怎么变化,那么也不会影响里面的Q。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[论文精读]利用大语言模型对扩散模型进行自我修正

本博客是一篇最新论文的精读,论文为UC伯克利大学相关研究者新近(2023.11.27)在arxiv上上传的《Self-correcting LLM-controlled Diffusion Models》 。 内容提要: 现有的基于扩散的文本到图像生成模型在生成与复杂提示精确对齐的图像时仍然存在困难,尤其是需要数值和…

xampp环境安装

XAMPP是完全免费且易于安装的Apache发行版,其中包含Apache、MariaDB、PHP和Perl。 类似XAMPP的服务器套件还有很多,我用过的还有UPUPW,它们都极大的简化了开发环境的配置。 下载链接Download XAMPP 我选的最新的 一路next就安装好了。 访问…

P1006 [NOIP2008 提高组] 传纸条

洛谷的题 网址:P1006 [NOIP2008 提高组] 传纸条 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 还是动态规划,这题和我上一篇博客写的题差不多 区别在于,这个地图不再是方阵,路线不能交叉,而且地图的大小可能大得多…

flex布局实战之自动填充剩余

案例目标 文字部分自适应并且居中 图中是一个弹窗&#xff0c;我现在使用flex的布局来实现&#xff0c;标题和关闭按钮。因为是uni-app,所以标签是view 。你可以自行替换为 代码 <view class"popup-box"><view class"title"><view class&…

Oracle:左连接、右连接、全外连接、(+)号详解

目录 Oracle 左连接、右连接、全外连接、&#xff08;&#xff09;号详解 1、左外连接&#xff08;LEFT OUTER JOIN/ LEFT JOIN&#xff09; 2、右外连接&#xff08;RIGHT OUTER JOIN/RIGHT JOIN&#xff09; 3、全外连接&#xff08;FULL OUTER JOIN/FULL JOIN&#xff0…

【剑指offer|图解|位运算】训练计划VI+撞色搭配

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;数据结构、剑指offer每日一练 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 一. ⛳️训练计划VI&#xff08;题目难度&#xff1a;中等&#xff09;1.1 题目1.2 示例1.3 …

(11_29)畅捷通的 Serverless 探索实践之路

作者&#xff1a;计缘 畅捷通介绍 畅捷通是中国领先的小微企业财税及业务云服务提供商&#xff0c;成立于2010年。畅捷通在2021年中国小微企业云财税市场份额排名第一&#xff0c;在产品前瞻性及行业全覆盖方面领跑市场&#xff0c;位居中国小微企业云财税厂商矩阵领军象限前…

免费WordPress站群插件-批量管理站群的免费软件

WordPress站群插件&#xff1a;让文章管理如丝般顺滑 在众多网站建设工具中&#xff0c;WordPress一直以其简便易用、丰富的插件生态而备受青睐。对于站群管理者而言&#xff0c;如何高效地更新、发布和推送文章是一项不可忽视的任务。本文将专注分享一款WordPress站群插件&am…

SQL Server 2016(分离和附加数据库)

1、实验环境。 基于上一个实验《SQL Server&#xff08;创建数据库&#xff09;》 2、需求描述。 class数据库的数据文件和事务日志文件都位于C:\db_class目录下。现在需要把class数据库的数据文件和事务日志文件分开存放&#xff0c;数据文件class.mdf存放于原位置&#xff0…

GNN Maximum Flow Problem (From Shusen Wang)

Maximum Flow Problem ShusenWang 图数据结构和算法课程笔记 Slides Maximum Flow Problem Description Naive Algorithm Residual Capacity - FlowLeft: Original GraphRight: Residual Graph - Bottleneck capacity 2- Iteration 2:- Find an augmenting path: s -&g…

unity 2d入门飞翔小鸟按钮点击功能且场景切换(二)

1、素材包获取 链接: https://pan.baidu.com/s/1KgCtQ_7wt2mlbGbIaMVvmw 提取码: xxh8 2、将素材全部拉进去 3、创建新的场景 并且将场景添加到build settings里面 4、脚本 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityE…

❀My学习Linux命令小记录(14)❀

目录 ❀My学习Linux命令小记录&#xff08;14&#xff09;❀ 56.man指令 57.whatis指令 58.info指令 59.--help指令 60.uname指令 ❀My学习Linux命令小记录&#xff08;14&#xff09;❀ 56.man指令 功能说明&#xff1a;查看Linux中的指令帮助。 &#xff08;ps.man命…

初识Linux——基本指令(详解)1

呀哈喽&#xff0c;我是结衣。 在学习数据结构的同时&#xff0c;也不要忘了Linux的学习啊。今天我们开始Linux的教学&#xff0c;在学习之前我们肯定要会搭建Linux的学习环境&#xff0c;在我们的以前的博客里是有讲解的&#xff0c;所以所以这里我们就不在多说&#xff0c;我…

你好!哈希表【JAVA】

1.初识&#x1f3b6;&#x1f3b6;&#x1f3b6; 它基本上是由一个数组和一个哈希函数组成的。哈希函数将每个键映射到数组的特定索引位置&#xff0c;这个位置被称为哈希码。当我们需要查找一个键时&#xff0c;哈希函数会计算其哈希码并立即返回结果&#xff0c;因此我们可以…

【Math】高斯分布的乘积 Product of Guassian Distribution【附带Python实现】

【Math】高斯分布的乘积 Product of Guassian Distribution【附带Python实现】 文章目录 【Math】高斯分布的乘积 Product of Guassian Distribution【附带Python实现】1.推导2. CodeReference 结果先放在前面 1.推导 在学习PEARL算法的时候&#xff0c;encoder的设计涉及到了…

Linux下安装Nginx

目录 Nginx简介 Nginx安装 Nginx指令 停止nginx服务 安全退出 重新加载配置文件 查看nginx进程 Nginx简介 Nginx 是一个高性能的HTTP和反向代理web服务器&#xff0c;其特点是占有内存少&#xff0c;并发能力强&#xff0c;其并发能力在同类型的网页服务器中表现较好。 …

行业内卷严重到什么程度了?

一.内卷现状 最近大家都吐槽找工作难&#xff0c;确实很难。 不得不说&#xff0c;现在找工作的难度是以前的很多倍。甚至可以说地狱级都不为过。 以前只要简历一挂到网上&#xff0c;就有很多电话打过来。特别是在一线城市&#xff0c;各种类型企业的HR都来找&#xff0c;希…

DFT(离散傅里叶变换)的通俗理解

本文包含了博主对离散傅里叶变换&#xff0c;负频率&#xff0c;实信号与复信号频谱的理解&#xff0c;如有不妥&#xff0c;欢迎各位批评指正与讨论。 文章目录 DFT的理解信号的频谱实信号的频谱复信号的频谱 DFT的理解 傅里叶变换是一种将信号从时域转换到频域的数学工具。…

TCP_握手+挥手过程状态变化分析

TCP状态解读 握手挥手过程状态变化 同时握手 双发同时发起syn请求&#xff0c;状态变化过程如下&#xff1a; 图片来源&#xff1a;http://www.tcpipguide.com/free/t_TCPConnectionEstablishmentProcessTheThreeWayHandsh-4.htm 同时挥手 4次挥手&#xff0c;可以理解为2…

2023.12.2 做一个后台管理网页(左侧边栏实现手风琴和隐藏/出现效果)

2023.12.2 做一个后台管理网页&#xff08;左侧边栏实现手风琴和隐藏/出现效果&#xff09; 网页源码见附件&#xff0c;比较简单&#xff0c;之前用很多种方法实现过该效果&#xff0c;这次的效果相对更好。 实现功能&#xff1a; &#xff08;1&#xff09;实现左侧边栏的手…