《2022年锁存器、触发器、寄存器和缓冲器原理 .pdf》由会员分享,可在线阅读,更多相关《2022年锁存器、触发器、寄存器和缓冲器原理 .pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、锁存器、触发器、寄存器和缓冲器 一、 锁存器锁存器(latch )- 对脉冲电平敏感,在时钟脉冲的电平作用下改变状态。锁存器是电平触发的存储单元, 数据存储的动作取决于输入时钟 (或者使能)信号的电平值,仅当锁存器处于使能状态时,输出才会随着数据输入发生变化。(简单地说,它有两个输入,分别是一个有效信号EN,一个输入数据信号DATA_IN ,它有一个输出Q ,它的功能就是在EN有效的时候把 DATA_IN的值传给Q ,也就是锁存的过程)。 锁存器不同于触发器,它不在锁存数据时,输出端的信号随输入信号变化,就像信号通过一个缓冲器一样;一旦锁存信号起锁存作用,则数据被锁住,输入信号不起作用。 锁存
2、器也称为 透明锁存器 ,指的是不锁存时输出对于输入是透明的。 应用 场合:数据有效迟后于时钟信号有效。这意味着时钟信号先到, 数据信号后到。在某些运算器电路中有时采用锁存器作为数据暂存器。缺点:时序分析较困难。 不要锁存器的原因有二:1、锁存器容易产生毛刺,2、锁存器在ASIC (专用集成电路)设计中应该说比ff (触发器)要简单,但是在FPGA 的资源中,大部分器件没有锁存器这个东西,所以需要用一个逻辑门和ff 来组成锁存器,这样就浪费了资源。 (用 CPLD(复杂可编程逻辑器件)和FPGA(现场可编程逻辑阵列)来进行 ASIC 设计是最为流行的方式之一)优点:面积小。锁存器比FF快,所以用
3、在地址锁存是很合适的,不过一定要保证所有的 latch信号源的质量, 锁存器在 CPU 设计中很常见, 正是由于它的应用使得 CPU 的速度比外部 IO 部件逻辑快许多。latch完成同一个功能所需要的门较触发器要少,所以在asic 中用的较多。 二、触发器触发器(Flip-Flop ,简写为FF ),也叫双稳态门,又称双稳态触发器。是一种可以在两种状态下运行的数字逻辑电路。触发器一直保持它们的状态, 直到名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - -
4、 - - - - - - 它们收到输入脉冲, 又称为触发。当收到输入脉冲时,触发器输出就会根据规则改变状态,然后保持这种状态直到收到另一个触发。 触发器(flip-flops)电路相互关联,从而为使用内存芯片和微处理器的数字集成电路(IC)形成逻辑门。它们可用来存储一比特的数据。该数据可表示音序器的状态、计数器的价值、在计算机内存的ASCII 字符或任何其他的信息。 有几种不同类型的触发器(flip-flops)电路具有指示器,如T(切换)、S-R (设置/ 重置)J-K(也可能称为Jack Kilby )和 D (延迟)。典型的触发器包括零个、一个或两个输入信号,以及时钟信号和输出信号。一些
5、触发器还包括一个重置当前输出的明确输入信号。第一个电子触发器是在1919年由W.H.Eccles 和 F.W.Jordan 发明的。 触发器(flip-flop)-对脉冲边沿敏感,其状态只在时钟脉冲的上升沿或下降沿的瞬间改变。T 触发器(Toggle Flip-Flop ,or Trigger Flip-Flop)设有一个输入和输出,当时钟频率由 0 转为 1 时,如果 T 和 Q不相同时,其输出值会是1。输入端 T 为1 的时候,输出端的状态Q发生反转;输入端 T为 0 的时候,输出端的状态Q保持不变。把 JK触发器的 J 和 K输入点连接在一起,即构成一个T触发器。 应用场合: 时钟有效迟
6、后于数据有效。这意味着数据信号先建立,时钟信号后建立。在 CP上升沿时刻打入到 寄存器 。三、寄存器寄存器(register ):用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果, 它被广泛的用于各类数字 系统和计算机中。 其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储1 位二进制数,所以由N个锁存器或触发器可以构成N位寄存器。 工程中的寄存器一般按计算机中字节的位数设计,所以一般有8位寄存器、16 位寄存器等。 对寄存器中的触发器只要求它们具有置1、置 0 的功能即可,因而无论
7、是用同步 RS结构触发器,还是用主从结构或边沿触发结构的触发器,都可以组成寄存器。一般由 D触发器组成,有公共输入/ 输出使能控制端和时钟,一般把使能控制端作为寄存器电路的选择信号,把时钟控制端作为数据输入控制信号。 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 寄存器的应用1.可以完成数据的并串、串并转换; 2.可以用做显示数据锁存器: 许多设备需要显示计数器的记数值, 以 8421BCD 码记数,以七段显示器显示,如果记数
8、速度较高,人眼则无法辨认迅速变化的显示字符。在计数器和译码器之间加入一个锁存器,控制数据的显示时间是常用的方法。 3.用作缓冲器; 4.组成计数器:移位寄存器可以组成移位型计数器,如环形或扭环形计数器。 四、移位寄存器移位寄存器: 具有移位功能的寄存器称为移位寄存器。 寄存器只有寄存数据或代码的功能。有时为了处理数据, 需要将寄存器中的各位数据在移位控制信号作用下,依次向高位或向低位移动1 位。移位寄存器按数码移动方向分类有左移,右移,可控制双向(可逆)移位寄存器;按数据输入端、输出方式分类有串行和并行之分。除了D边沿触发器构成移位寄存器外,还可以用诸如 JK等触发器构成移位寄存器。 五、 总
9、线收发器/ 缓冲器缓冲寄存器:又称缓冲器缓冲器(buffer):多用在总线上,提高 驱动能力、隔离前后级, 缓冲器多半有三态输出功能。 当负载不具有非选通输出为高阻特性时,将起到隔离作用;当总线的驱动能力不够驱动负载时,将起到驱动作用。由于缓冲器接在数据总线上,故必须具有三态输出功能。 它分输入缓冲器和输出缓冲器两种。 前者的作用是将外设送来的数据暂时存放,以便处理器将它取走;后者的作用是用来暂时存放处理器送往外设的数据。有了数控缓冲器,就可以使高速工作的CPU 与慢速工作的外设起协调和缓冲作用,实现数据传送的同步。 Buffer:缓冲区,一个用于在初速度不同步的设备或者优先级不同的设备之间传
10、输数据的区域。 通过缓冲区,可以使进程之间的相互等待变少,从而使从速度慢的设备读入数据时,速度快的设备的操作进程不发生间断。 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 缓冲器主要是计算机领域的称呼。具体实现上, 缓冲器有用锁存器结构的电路来实现,也有用不带锁存结构的电路来实现。一般来说,当收发数据双方的工作速度匹配时, 这里的缓冲器可以用不带锁存结构的电路来实现;而当收发数据双方的工作速度不匹配时, 就要用带锁存结构的电路
11、来实现了(否则会出现数据丢失)。 缓冲器在数字系统中用途很多: (1)如果器件带负载能力有限,可加一级带驱动器 的缓冲器; (2)前后级间逻辑电平不同,可用电平转换器 加以匹配; (3)逻辑极性不同或需要将单性变量转换为互补变量时,加带反相缓冲器;(4)需要将缓变信号变为边沿陡峭信号时,加带施密特电路的缓冲器 (5)数据传输和处理中不同装置间温度和时间不同时,加一级缓冲器进行弥补等等。 锁存器与触发器的区别锁存器和触发器是具有记忆功能的二进制存贮器件,是组成各种时序逻辑电路的基本器件之一。 区别为:latch同其所有的输入信号相关,当输入信号变化时 latch 就变化,没有时钟端;flip-f
12、lop受时钟控制,只有在时钟触发时才采样当前的输入, 产生输出。当然因为latch和 flip-flop二者都是时序逻辑,所以输出不但同当前的输入相关还同上一时间的输出相关。 1、latch由电平触发,非同步控制。在使能信号有效时latch相当于通路,在使能信号无效时latch 保持输出状态。DFF 由时钟沿触发,同步控制。 2、latch对输入电平敏感,受布线延迟影响较大,很难保证输出没有毛刺产生;DFF则不易产生毛刺。 3、如果使用门电路来搭建latch 和 DFF ,则 latch消耗的门资源比 DFF要少,这是 latch比 DFF优越的地方。 所以,在 ASIC中使用 latch的集
13、成度比 DFF高,但在 FPGA 中正好相反, 因为 FPGA 中没有标准的 latch单元,但有 DFF单元,一个 LATCH 需要多个 LE才能实现。latch是电平触发,相当于有一个使能端,且在激活之后(在使能电平的时候)相当于导线了,随输出而变化。在非使能状态名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 8 页 - - - - - - - - - 下是保持原来的信号,这就可以看出和flip-flop的差别,其实很多时候latch是不能代替 ff 的。 4、lat
14、ch将静态时序分析变得极为复杂。 5、 目前 latch只在极高端的电路中使用, 如 intel的 P4等 CPU 。 FPGA 中有 latch单元,寄存器单元就可以配置成latch单元,在 xilinx v2p的手册将该单元配置成为 register/latch单元,附件是 xilinx半个 slice的结构图。其它型号和厂家的 FPGA 没有去查证。个人认为xilinx是能直接配的而 altera或许比较麻烦,要几个LE才行,然而也非xilinx的器件每个 slice都可以这样配置,altera的只有 DDR 接口中有专门的 latch单元,一般也只有高速电路中会采用latch的设计。a
15、ltera的 LE是没有 latch的结构的,又查了 sp3 和 sp2e,别的不查了,手册上说支持这种配置。有关altera的表述 wangdian 说的对,altera的 ff 不能配置成 latch ,它使用查找表来实现latch 。 一般的设计规则是:在绝大多数设计中避免产生latch 。它会让您设计的时序完蛋,并且它的隐蔽性很强,非老手不能查出。 latch最大的危害在于不能过滤毛刺。这对于下一级电路是极其危险的。所以,只要能用D触发器的地方,就不用 latch 。 有些地方没有时钟, 也只能用 latch了。比如现在用一个 clk 接到 latch的使能端(假设是高电平使能), 这
16、样需要的setup 时间,就是数据在时钟的下降沿之前需要的时间,但是如果是一个DFF ,那么 setup 时间就是在时钟的上升沿需要的时间。这就说明如果数据晚于控制信号的情况下,只能用latch , 这种情况就是,前面所提到的latch timing borrow。基本上相当于借了一个高电平时间。也就是说,latch借的时间也是有限的。 在 if 语句和 case 不全很容易产生 latch ,需要注意。 VIA 题目这两个代码哪个综合更容易产生latch :代码 1always(enable or ina or inb) begin if(enable) begin 名师资料总结 - - -
17、精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - - - - - - data_out = ina; end else begin data_out = inb; end end 代码 2 input3:0 data_in; always(data_in) begin case(data_in) 0 : out1 = 1b1; 1,3 : out2 = 1b1; 2,4,5,6,7 : out3 = 1b1; default: out4 = 1b1; endcase end
18、 答案是代码 2 在综合时更容易产生latch。 对 latch 进行 STA的分析其实也是可以, 但是要对工具 相当熟悉才行,不过很容易出错。 当前 PrimeTime 是支持进行 latch分析的,现在一些综合工具内置的 STA分析功能也支持, 比如RTL compiler, Design Compiler 。除了ASIC里可以节省资源以外,latch在同步设计里出现的可能还是挺小的,现在处理过程中大都放在 ff 里打一下。 锁存器电平触发会把输入端的毛刺带入输出;而触发器由于边沿作用可以有效抑制输入端干扰。 在 CMOS 芯片内部经常使用锁存器, 但是在PCB板级结构上, 建议用触发器在
19、时钟边沿上锁存数据。 这是因为在锁存器闸门开启期间数据的变化会直接反映到输出端, 所以要注意控制闸门信号的脉冲宽度,而对于触发器,只考虑时钟的边沿。 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - - - - 门电路是构建组合逻辑电路的基础 , 而锁存器和触发器是构建时序逻辑电路的基础。门电路是由晶体管构成的,锁存器是由门电路构成的,而触发器是由锁存器构成的。也就是晶体管-门电路-锁存器-触发器, 前一级是后一级的基础。锁存器和触发器它们的
20、输出都不仅仅取决于目前的输入,而且和之前的输入和输出都有关系。它们之间的不同在于: 锁存器没有时钟信号, 而触发器常常有时钟触发信号。锁存器是异步的, 就是说在输入信号改变后, 输出信号也随之很快做出改变非常快。而另外一方面,今天许多计算机是同步的,这就意味着所有的时序电路的输出信号随着全局的时钟信号同时做出改变。触发器是一个同步版锁存器。触发器泛指一类电路结构,它可以由触发信号 (如: 时钟、置位、复位等)改变输出状态, 并保持这个状态直到下一个或另一个触发信号来到时。触发信号可以用电平或边沿操作,锁存器是触发器的一种应用类型。 D 触发器和 D 锁存器的区别钟控 D触发器其实就是 D锁存器
21、,边沿 D触发器才是真正的D触发器,钟控D触发器在使能情况下输出随输入变化,边沿触发器只有在边沿跳变的情况下输出才变化。两个锁存器可以构成一个触发器, 归根到底还是dff 是边沿触发的,而 latch是电平触发的。 锁存器的输出对输入透明的,输入是什么,输出就是什么,这就是锁存器不稳定的原因, 而触发器是由两个锁存器构成的一个主从触发器,输出对输入是不透明的,必须在时钟的上升 / 下降沿才会将输入体现到输出,所以能够消除输入的毛刺信号。 寄存器与锁存器的区别寄存器与锁存器的功能是提供数据寄存和锁存。寄存功能是指把数据暂时保存,需要时取出。锁存功能是指总线电路中,锁定数据输出,使输出端不随输入端
22、变化。一、数字密码锁的基本原理电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - 制机械开关的闭合,完成开锁、闭锁任务的电子产品。 电子密码锁是以51 系列单片机 (AT89C51)为核心, 配以相应硬件电路,完成密码的识别和显示。 单片机接收键入的代码,并与存贮在存储器中的密码进行比较,如果密码正确,则可更改密码;如果密码不正确, 则允许操作人员重新输入密码,单片机将每次开锁操作和同时将接收来自传感器接口的报警信息。 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -