寄存器_触发器_锁存器区别与联系.docx

上传人:scccc 文档编号:13837349 上传时间:2022-01-24 格式:DOCX 页数:10 大小:73.67KB
返回 下载 相关 举报
寄存器_触发器_锁存器区别与联系.docx_第1页
第1页 / 共10页
寄存器_触发器_锁存器区别与联系.docx_第2页
第2页 / 共10页
寄存器_触发器_锁存器区别与联系.docx_第3页
第3页 / 共10页
寄存器_触发器_锁存器区别与联系.docx_第4页
第4页 / 共10页
寄存器_触发器_锁存器区别与联系.docx_第5页
第5页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《寄存器_触发器_锁存器区别与联系.docx》由会员分享,可在线阅读,更多相关《寄存器_触发器_锁存器区别与联系.docx(10页珍藏版)》请在三一文库上搜索。

1、1.1 寄存器在实际的数字系统中, 通常把能够用来存储一组二进制代码的同步时序逻辑 电路称为寄存器 由于触发器有记忆功能, 因此利用触发器可以方便地构成寄存 器。由于一个触发器能够存储一位二进制码, 所以把 n 个触发器的时钟端口连接 起来就能构成一个存储 n 位二进制码的寄存器。1.2 锁存器由若干个钟控 D 触发器构成的一次能存储多位二进制代码的时序逻辑电路。 数据有效迟后于时钟信号有效。 这意味着时钟信号先到, 数据信号后到。 在某些 运算器电路中有时采用锁存器作为数据暂存器。1.3 缓冲器缓冲器相当于一个寄存器, 暂时保存数据 . 缓冲是用来在两种不同速度的设 备之间传输信息时平滑传输

2、过程的常用手段。 除了在关键的地方采用少量硬件缓 冲器之外, 大都采用软件缓冲。 软件缓冲区是指在 I/O 操作期间用来临时存放输 入/ 输出数据的一块存储区域。在操作系统中,引入缓冲的主要原因如: 缓和 CPU与 l/0 设备间速度不匹配的矛盾。 一般情况下, 程序的运行过程是时 而进行计算,时而进行输入或输出。以输出为例,如果没有缓冲,则程序在输出 时,必然由于打印机的速度跟不上而使 CPU停下来等待 ; 然而在计算阶段,打印 机又无事可做。 如果设置一个缓冲区, 程序可以将待输出的数据先输出到缓冲区 中,然后继续执行 ; 而打印机则可以从缓冲区取出数据慢慢打印。1.4 寄存器和锁存器的区

3、别 (1)寄存器是同步时钟控制,而锁存器是电位信号控制。( 2)寄存器的输出端平时不随输入端的变化而变化,只有在时钟有效时才将输 入端的数据送输出端 (打入寄存器) ,而锁存器的输出端平时总随输入端变化而 变化,只有当锁存器信号到达时, 才将输出端的状态锁存起来, 使其不再随输入 端的变化而变化可见,寄存器和锁存器具有不同的应用场合,取决于控制方式以及控制信号 和数据之间的时间关系:若数据有效一定滞后于控制信号有效,则只能使用锁; 数据提前于控制信号而到达并且要求同步操作,则可用寄存器来存放数据。一、锁存器1. 锁存器的工作原理 锁存器不同于触发器, 它不在锁存数据时, 输出端的信号随输入信号

4、变化, 就像 信号通过一个缓冲器一样; 一旦锁存信号起锁存作用, 则数据被锁住, 输入信号 不起作用。锁存器也称为透明锁存器,指的是不锁存时输出对于输入是透明的 。 锁存器原理见图锁存器 是锁存控制信号输入端, D数据输入端, Q和 是数据互补输出端。: =0 , 左与门被封锁 , 被封锁输出 : 时,分两种情况(a) 输出 ,所以 D 不影响(b) 输出 ,所以 D 也不影响结论:原来状态不被改变, D 不影响 .由上述分析看出:也就是说 , 由 0 1 时刻将数据 D 锁定并保持,直到 由 1 0.本例锁存器是控制信号 上升沿锁存数据,高电平保持,非号的意义是低电平时 输入数据可以直达输出

5、端。有的锁存器是控制信号 C 下降沿锁存低电平保持, 即加一个非门将控制信号 C 反相;有的锁存器在输出端加一个三态门,由另一 个控制信号 OC 控制;另外还有的锁存器带有直接置 0(清除)、置 1(预置) 输入端,等同于触发器的 RD,SD 端。集成锁存器有多种型号, 如 TTL 的 74LS77,74LS363 等,也有 CMOS 的如 4508 , 4042 ,74HL373 等,需要使用时可以查阅手册。二、数据寄存器寄存器用于寄存一组二值代码, 它被广泛的用于各类数字系统和计算机中。 因为 一个触发器能储存 1 位二值代码,所以 N 个触发器组成的寄存器能储存一组 N 位二值代码。对寄

6、存器中的触发器只要求它们具有置 1,置0 的功能即可, 因而无论是用同步 RS 结构触发器, 还是用主从结构或边沿触发结构的触发器, 都可以组成寄存器, 一般由 D 触发器组成。下图给出一个 4 位数码寄存器,时钟 CP 被称为存数指令或存数命令,在 CP 脉 冲的上升沿时刻,各触发器将各自数据输入端 D 的数据存入,除此时刻,无论 CP 是低电平、高电平、还是下降沿,各触发器保持各自的数据不变。四位数码寄存器移位寄存器寄存器只有寄存数据或代码的功能。 有时为了处理数据, 需要将寄存器中的各位 数据在移位控制信号作用下, 依次向高位或向低位移动 1 位。具有移位功能的寄 存器称为移位寄存器。

7、移位寄存器按数码移动方向分类有左移, 右移,可控制双 向(可逆)移位寄存器;按数据输入端、输出方式分类有串行和并行之分。1. 串行码与通信 数据通信几乎都用串行方式将传送的数据按时间顺序一位一位地传送, 以节省电 缆芯线条数, 但是在终端的数据处理是并行的, 这就需要在发送端将要发送的并 行数据变成串行数据才能发送, 而在接收端需要将接收到的串行数据再转换成并 行数据进行处理,这些转换工作是由移位寄存器完成的。2. 串入并出移位寄存器4 位串入并出右移寄存器上图是一个简单的 4 位右移寄存器,在移位指令( CP 脉冲)作用下输入数据 D 存入 FF3,Q3 的状态移存到 FF2,由此得到逻辑式

8、:在四个 CP 脉冲之后,将四个串行码移位存入 4 个触发器, 取出数据方式是在所 有的触发器地 Q 端同时取出,称为并行输出,移位寄存器即完成了串行码到并 行码的转换功能。假设输入串行码为 4 位二进制数 1011 ,输入方式为低位在先,也就是按 1101 地顺序依次输入,可以分析动作特点:经过 4 个时钟脉冲后, 1011 出现在寄存器输出端 ,这样就将串行输入 D 的数据 转换为并行输出。同时在第八个时钟脉冲作用后,数码从 端全部移出寄存器, 这说明存入该寄存器中的数码也可以从 端串行输出。既可以右移,又可以左移,而且除了 D 边沿触发器构成移位寄存器外,还可以 用诸如 JK 等触发器构

9、成移位寄存器。3. 并入串出移位寄存器4 位并入串出右移寄存器上图是一个简单的 4 位右移寄存器取样方式 M=1 时,CP 的作用是取样指令。 在 CP 的作用下, 输入数据 通 过与非门存入 , 即出现在 输出第一个数据。M=0 时,封锁数据输入的与门, CP 脉冲的作用也相应的转变为移位指令用 逻辑式表示: 假设输入并形码为 1011 输出方式位低位在先,也就是按 1、1、0、1 顺序输出, 我们可以画出状态表和波形图。4 位串入并出右移寄存器状态表和状态图4. 双向移位寄存器 前面讲的右向移位寄存器:左边触发器的输出作为右邻触发器的数据的数据输 入。如果让右边触发器的输出作为左邻触发器的

10、输入, 则可构成左向移位寄存器。 当然如果增加一些控制门后, 则可以实现双向移位寄存器。 在二进制数之计算中, 左移相当于对数值乘 2,右移相当于对数值除 2,因而在计算机中常使用的既能 左移又能右移的双向寄存器。在移存型计数器中介绍集成双向移位寄存器 74194 。四、寄存器的应用1. 可以完成数据的并串、串并转换2. 可以用做显示数据锁存器许多设备需要显示计数器的记数值,以 8421BCD 码记数,以七段显示器显示, 如果记数速度较高, 人眼则无法辨认迅速变化的显示字符。 在计数器和译码器之 间加入一个锁存器,控制数据的显示时间是常用的方法。3. 用作缓冲器缓冲器在数字系统中用途很多:(

11、1)如果器件带负载能力有限,可加一级带驱 动器的缓冲器;( 2)前后级间逻辑电平不同,可用电平转换器加以匹配;( 3) 逻辑极性不同或需要将单性变量转换为互补变量时,加带反相缓冲器;(4)需 要将缓变信号变为边沿陡峭信号时,加带施密特电路的缓冲器( 5)数据传输和 处理中不同装置间温度和时间不同时,加一级缓冲器进行弥补等等。 74LS373 、 74LS374 即为带动驱动器的组件,可以用作缓冲器,能够完成上述( 1)、(5) 两个任务。4. 组成计数器移位寄存器可以组成移位型计数器,如环形或扭环形计数器。寄存器一般是边沿触发的触发器,电路里叫 register ,而触发器就是楼上所说的 各种

12、逻辑门构成的包含电平触发和边沿触发的两种,而锁存器则是电平触发的。 所以一般说来, 我们只叫寄存器和锁存器两种, 在时序电路中寄存器的作用就是 只在时钟的边沿有效传输 data (setup time 和 hold time 满足),而锁存器则在 有效电平器件都可以传输 data寄存器 :register ,由时钟沿触发的, 一般是主从的 ,我们这数字电路里也学过主要 是由传输门和反向器构成 ,应用很广!锁存器:latch ,由电平触发 ,有很很多种, 有我们数字电路里学的 JK,RS 等,一般 是用传输门和反向器构成构成在较多,其优点是面积小,但时序分析较困难 ! 触发器一般是指寄存器 :f

13、lip-flopD 触发器上电时 Q 和 Q 非的电平是怎样的?D 触发器刚上不定的。只有当有反馈后才知道。可以在 R 、S 端加 RC 延时电路 来预制初态锁存器在实际的数字系统中, 通常把能够用来存储一组二进制代码的同步时序逻辑电路 称为寄存器由于触发器有记忆功能,因此利用触发器可以方便地构成寄存器。 由于一个触发器能够存储一位二进制码, 所以把 n 个触发器的时钟端口连接起来 就能构成一个存储 n 位二进制码的寄存器。 锁存器是电平触发的存储单元, 数据 存储的动作取决于输入时钟 (或者使能) 信号的电平值, 尽当锁存器处于使能状 态时,输出才会随着数据输入发生变化。触发器触发器是边沿敏

14、感的存储单元, 数据存储的动作有某一信号的上升或者下降沿进 行同步的。 在实际的数字系统中, 通常把能够用来存储一组二进制代码的同步时 序逻辑电路称为寄存器 由于触发器有记忆功能, 因此利用触发器可以方便地构 成寄存器。由于一个触发器能够存储一位二进制码, 所以把 n 个触发器的时钟端 口连接起来就能构成一个存储 n 位二进制码的寄存器。 寄存器用来存放数据的一 些小型存储区域, 用来暂时存放参与运算的数据和运算结果。 其实寄存器就是一 种常用的时序逻辑电路, 但这种时序逻辑电路只包含存储电路。 寄存器的存储电 路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储 1 位二进制数, 所以由

15、 N 个锁存器或触发器可以构成 N 位寄存器。 触发器是在时钟的沿进行数 据的锁存的,而锁存器是用电平使能来锁存数据的。所以触发器的 Q 输出端在 每一个时钟沿都会被更新,而锁存器只能在使能电平有效器件才会被更新。 有 一些教科书里的触发器实际是锁存器。在 FPGA 设计中建议如果不是必须那么 应该尽量使用触发器而不是锁存器。钟控 D 触发器其实就是 D 锁存器,边沿 D 触发器才是真正的 D 触发器, 钟控 D 触发器在使能情况下输出随输入变化,边沿触发器只有在边沿跳变的情 况下输出才变化。两个 D 锁存器可以构成一个 D 触发器,归根到底还是 dff 是边 沿触发的,而 latch 是电平

16、触发的。锁存器的输出对输入透明的,输入是什么, 输出就是什么, 这就是锁存器不稳定的原因, 而触发器是由两个锁存器构成的一 个主从触发器,输出对输入是不透明的,必须在时钟的上升 /下降沿才会将输入 体现到输出,所以能够消除输入的毛刺信号。触发器与锁存器的比较:1、latch 由电平触发,非同步控制。在使能信号有效时 latch 相当于通路,在使 能信号无效时 latch 保持输出状态。 DFF 由时钟沿触发,同步控制。2、latch 对输入电平敏感,受布线延迟影响较大,很难保证输出没有毛刺产生; DFF 则不易产生毛刺。3、如果使用门电路来搭建 latch 和DFF ,则 latch 消耗的门

17、资源比 DFF 要少, 这是 latch 比 DFF 优越的地方。所以,在 ASIC 中使用 latch 的集成度比 DFF 高,但在 FPGA 中正好相反,因为 FPGA 中没有标准的 latch 单元,但有 DFF 单元,一个 LATCH 需要多个 LE 才能实现。 latch 是电平触发,相当于有一个使 能端,且在激活之后(在使能电平的时候)相当于导线了,随输出而变化。在非 使能状态下是保持原来的信号,这就可以看出和 flip-flop 的差别,其实很多时候 latch 是不能代替 ff 的。4、latch 将静态时序分析变得极为复杂。5、目前 latch 只在极高端电的路中使用,如 i

18、ntel 的 P4 等 CPU 。 FPGA 中有 latch 单元,寄存器单元就可以配置成 latch 单元,在 xilinx v2p 的手册将该单元 成为 register/latch 单元,附件是 xilinx 半个 slice 的结构图。一般的设计规则是:在绝大多数设计中避免产生 latch 。它会让您设计的时 序完蛋,并且它的隐蔽性很强,非老手不能查出。 latch 最大的危害在于不能过 滤毛刺。这对于下一级电路是极其危险的。所以,只要能用 D 触发器的地方, 就不用 latch 。有些地方没有时钟,也只能用 latch 了。比如现在用一个 clk 接到 latch 的 使能端 (假

19、设是高电平使能 ),这样需要的 setup 时间,就是数据在时钟的下降沿之 前需要的时间,但是如果是一个 DFF ,那么 setup 时间就是在时钟的上升沿需 要的时间。这就说明如果数据晚于控制信号的情况下,只能用 latch, 这种情况就 是,前面所提到的 latch timing borrow 。基本上相当于借了一个高电平时间。也 就是说, latch 借的时间也是有限的。对latch 进行STA的分析其实也是可以 ,但是要对工具相当熟悉才行 .不过很 容易出错 .当前 PrimeTime, 是支持进行 latch 分析的 .现在一些综合工具置的 STA 分析功能也支持 ,比如 RTL compiler, Design Compiler. 除了 ASIC 里可以节省资 源以外。 latch 在同步设计里出现的可能还是挺小的,现在处理过程都放在ff 里打一下。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1