0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

锁存器与寄存器有哪些区别

润和软件 来源:CSDN技术社区 作者:jf_1689824307.4557 2021-08-12 10:26 次阅读

首先应该明确锁存器和触发器也是由与非门之类的东西构成。尤其是锁存器,虽说数字电路定义含有锁存器或触发器的电路叫时序电路,但锁存器有很多组合电路的特性。

组合电路就是一个真值表,一个函数,一组输入对应一组输出,当前什么输入就根据函数得到什么输出,实时跟踪变化,这样也就容易有冒险、竞争之类的问题产生毛刺。

锁存器:电平敏感

always @ (enable)

??if (enable) ?q 《= d;

那就是说,在enable有效的时间内,q完全跟踪d的值,比如在这个时间内d变化了,q跟着变化,当enable失效的时候,q存储d最后的值。

触发器:我们把输出只在时钟某个时刻变化的玩意儿叫触发器。边沿敏感

always @ (posedge enable)

??if (enable) q 《= d;

这个便是一个d触发器。只在enable(一般大家都叫它clock)的上升沿q采样d,而且在每个时钟的上升沿都会采样。

fpga中一般避免用latch,因为在FPGA中触发器资源丰富,不用白不用,latch由于是电平触发的,相对触发器来说容 易产生毛刺,电路不稳定.

latch的优点是完成同一个功能所需要的门较触发器要少,所以在asic中用的较多

那最后再说寄存器,寄存器这个玩意儿是一个概念层次的东西,1个寄存器就是能存1bit数据的东西。既可以用触发器实现也可以用锁存器实现。以触发器为例,由于触发器每个时钟上升沿都会采样,所以触发器会有一个反馈逻辑,当load有效的时候才会采样d,否则保持不变。

always @ (posedge clk or negedge rst_n)

if (!rst_n)

q 《= 0;

else if (load)

q 《= d;

这便就是一个寄存器了。

1. 寄存器

在实际的数字系统中,通常把能够用来存储一组二进制代码的同步时序逻辑电路称为寄存器.由于触发器内有记忆功能,因此利用触发器可以方便地构成寄存器。由于一个触发器能够存储一位二进制码,所以把n个触发器的时钟端口连接起来就能构成一个存储n位二进制码的寄存器。

2 .锁存器

由若干个钟控D触发器构成的一次能存储多位二进制代码的时序逻辑电路。数据有效迟后于时钟信号有效。这意味着时钟信号先到,数据信号后到。在某些运算器电路中有时采用锁存器作为数据暂存器。

3. 锁存器与寄存器的区别:

(1)寄存器是同步时钟控制,而锁存器是电位信号控制。锁存器一般由电平信号控制,属于电平敏感型。寄存器一般由时钟信号信号控制,属于边沿敏感型。

(2)寄存器的输出端平时不随输入端的变化而变化,只有在时钟有效时才将输入端的数据送输出端(打入寄存器),而锁存器的输出端平时总随输入端变化而变化,只有当锁存器信号到达时,才将输出端的状态锁存起来,使其不再随输入端的变化而变化

可见,寄存器和锁存器具有不同的应用场合,取决于控制方式以及控制信号 和数据之间的时间关系:若数据有效一定滞后于控制信号有效,则只能使用锁存器;数据提前于控制信号而到达并且要求同步操作,则可用寄存器来存放数据。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5022

    浏览量

    117633
  • 锁存器
    +关注

    关注

    8

    文章

    742

    浏览量

    41018
  • 触发器
    +关注

    关注

    14

    文章

    1675

    浏览量

    60382

原文标题:锁存器与寄存器的区别

文章出处:【微信号:hoperun300339,微信公众号:润和软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    CPU的6个主要寄存器

    CPU寄存器是中央处理器内的组成部分,是有限存贮容量的高速存贮部件。寄存器是CPU内部的元件,包括通用寄存器、专用寄存器和控制寄存器
    的头像 发表于 02-03 15:15 1079次阅读

    CY8CMBR3xxx系列中的LATCHED_BUTTON_STAT寄存器机制是怎样的?

    请教下CY8CMBR3xxx系列中的LATCHED_BUTTON_STAT寄存器机制是怎样的?器件是在什么时候 去清除LATCHD_BUTTON_STAT?谢谢。
    发表于 01-24 07:43

    请问ADE7880无功功率寄存器是否映射寄存器地址?

    ADE7880: 关于无功功率的寄存器AFVAR,BFVAR,CFVAR,查阅手册,其说明是只能通过HSDC接口进行读取,但是我翻阅论坛之前的帖子,说明其映射寄存器地址,但是手册我
    发表于 12-26 07:12

    移位寄存器和译码什么区别?是不是功能差不多?

    移位寄存器和译码什么区别,是不是功能差不多​
    发表于 11-03 07:28

    的作用是什么?

    数码管的动态显示截取了部分程序,使用了74hc573,但是我觉得去掉程序照样可以执行
    发表于 10-26 07:18

    CPSR寄存器和APSR寄存器的组成

    程序状态寄存器的作用就是反映处理器的状态信息。在程序运行期间我们可以通过查看程序状态寄存器的状态位来进行程序的分支跳转处理,或者我们可以设置程序状态寄存器的模式位来改变处理器的运行模式,或者我们可以设置程序状态
    的头像 发表于 10-20 11:38 1745次阅读
    CPSR<b class='flag-5'>寄存器</b>和APSR<b class='flag-5'>寄存器</b>的组成

    如果想51单片机最小系统P0口多个功能,又是如何的呢?

    51单片机与51单片机最小系统什么区别;如果想51单片机最小系统P0口多个功能,又是如
    发表于 09-28 06:41

    03 ex_2verilog 基本语法,产生原因与避免产生的方法;Modelsim仿真技巧。 -

    fpga软件程序代码
    充八万
    发布于 :2023年08月17日 23:29:20

    03 ex_2verilog 基本语法,产生原因与避免产生的方法;Modelsim仿真技巧。 -

    fpga软件程序代码
    充八万
    发布于 :2023年08月17日 23:28:29

    03 ex_2verilog 基本语法,产生原因与避免产生的方法;Modelsim仿真技巧。 -

    fpga软件程序代码
    充八万
    发布于 :2023年08月17日 23:20:56

    寄存器是什么?怎么操作寄存器点亮LED灯?

    寄存器,是集成电路中非常重要的一种存储单元,通常由触发器组成。在集成电路设计中,寄存器可分为电路内部使用的寄存器和充当内外部接口的寄存器这两类。
    的头像 发表于 07-21 16:59 2943次阅读
    <b class='flag-5'>寄存器</b>是什么?怎么操作<b class='flag-5'>寄存器</b>点亮LED灯?

    寄存器是什么 掌握使用寄存器做设计需要注意的事项

    既然RTL是以寄存器行为为基础,那么就必须先了解寄存器是什么,并且掌握使用寄存器做设计需要注意的事项。
    的头像 发表于 07-13 15:38 852次阅读
    <b class='flag-5'>寄存器</b>是什么 掌握使用<b class='flag-5'>寄存器</b>做设计需要注意的事项

    LX2160A 的 UART 寄存器 (UARTMISC) 规格是什么?

    关于UARTMISC寄存器的行为,我觉得文档描述和实现是区别的。通过设置1,“释放中断屏蔽时发生中断”是否正确? 根据 QorIQ LX 2160 A Reference Manual, Rev.
    发表于 05-19 07:01

    请问sr是如何消除脉冲抖动的?

    数电分析,电平从高到低再到高的过程,sr是如何消除脉冲抖动的?
    发表于 05-10 15:03

    sr是如何消除脉冲抖动的?

    数电分析,电平从高到低再到高的过程,sr是如何消除脉冲抖动的?
    发表于 04-26 11:00