推荐答案
测试一下
题目
锁存器(latch)和触发器(filp-flop)的概念和区别?
参考答案与知识点
参考答案
锁存器(Latch)是一种电平敏感的存储单元,其输出在使能信号有效期间随输入变化,即处于“透明”状态;使能信号无效时,输出保持当前值。触发器(Flip-Flop)是边沿敏感的存储单元,仅在时钟信号的有效边沿(上升沿或下降沿)采样输入,其余时间输出保持不变。
主要区别:
1. 敏感方式:锁存器对电平敏感,触发器对边沿敏感。
2. 结构:锁存器由门电路直接构成(如SR锁存器、D锁存器);触发器通常由两个锁存器级联(主从结构或边沿触发结构)实现。
3. 透明特性:锁存器在使能期间输入可直接影响输出,易引入毛刺;触发器仅在时钟沿采样,抗干扰能力更强。
4. 时序约束:锁存器需考虑输入相对于使能信号的建立/保持时间,且可能产生时序竞争;触发器对时钟边沿有严格的建立/保持时间要求。
5. 应用:锁存器常用于异步接口、数据暂存等特定场景,但在同步逻辑中应避免使用,因其静态时序分析复杂且易导致功能错误;触发器是同步电路的基本单元,广泛用于寄存器、计数器、状态机等。
易错点:错将锁存器当作触发器的子类;忽略锁存器的透明期导致的组合逻辑环路;认为锁存器在综合时自动优化而忽略其隐含生成条件(如if语句缺少else或case缺少default)。
涉及知识点
- 电平敏感与边沿敏感
- 锁存器的透明特性
- 触发器的建立/保持时间
- 同步电路基本单元
- 锁存器隐含生成条件
- 静态时序分析差异