服务主机网络服务,廊坊关键词优化排名,WordPress 支付宝支付,网站左侧树形导航怎么做文章目录 1 定义1.1 锁存器#xff08;latch#xff09;1.2 触发器#xff08;flip-flop#xff09;1.3 寄存器#xff08;register#xff09; 2 比较2.1 锁存器#xff08;Latch#xff09;危害即产生原因2.2 寄存器和锁存器的区别2.3 锁存器和触发器的区别 3 结构3.… 文章目录 1 定义1.1 锁存器latch1.2 触发器flip-flop1.3 寄存器register 2 比较2.1 锁存器Latch危害即产生原因2.2 寄存器和锁存器的区别2.3 锁存器和触发器的区别 3 结构3.1 锁存器基本结构3.2 触发器基本结构 参考 1 定义
1.1 锁存器latch 锁存器是一种由电平触发的存储单元为异步电路数据存储的动作取决于输入信号的电平值只要输入发生变化输出即随之发生变化。
1.2 触发器flip-flop 触发器是边沿敏感的存储单元数据存储的动作由某一信号的上升或者下降沿进行同步的即输出数据只在信号的上升沿或者下降沿到来时被改变。
1.3 寄存器register 1、寄存器用来存放数据的一些小型存储区域用来暂时存放参与运算的数据和运算结果是一种常用的时序逻辑电路但这种逻辑电路只包含存储电路。 2、寄存器的存储电路是由锁存器或触发器构成的因为一个锁存器或触发器能存储1位二进制数所以由N个锁存器或触发器可以构成N位寄存器。
2 比较
2.1 锁存器Latch危害即产生原因 1、危害
锁存器容易产生毛刺锁存器的出现使得静态时序分析变得更加复杂锁存器在ASIC设计中应该说比ff要简单但是在FPGA的资源中大部分器件没有锁存器这个东西所以需要用一个逻辑门和ff来组成锁存器这样就浪费了资源 2、产生原因
不完整的if或者case语句不完整的敏感信号列表输入信号没有对应的输出 3综合来看锁存器的产生总是与电路的不完整有关系因此在编写verilog代码时最好对于if语句和case语句一定要做到完全描述最常用的方法就是总是加上else和default。
2.2 寄存器和锁存器的区别 寄存器受同步时钟信号控制而锁存器受输入信号控制前者是边缘敏感型电路后者则是电平敏感型电路。寄存器的输出端平时不随输入端的变化而变化只有在时钟有效时才将输入端的数据送输出端打入寄存器而锁存器的输出端平时总随输入端变化而变化只有当锁存器信号到达时才将输出端的状态锁存起来使其不再随输入端的变化而变化。
2.3 锁存器和触发器的区别
锁存器同所有的输入信号相关当输入信号变化时锁存器就变化没有时钟端触发器受时钟控制只有在时钟触发时才采样当前的输入产生输出。锁存器是电平触发非同步控制。在使能信号有效时锁存器相当于通路在使能信号无效时锁存器保持输出状态。触发器由时钟沿触发同步控制。锁存器对输入电平敏感(输出随输入的变化而变化)受布线延迟影响较大很难保证输出没有毛刺产生触发器则不易产生毛刺。
3 结构
3.1 锁存器基本结构 1、锁存器分为普通锁存器和门控锁存器普通锁存器无控制信号输出状态始终直接由输入决定。而在实际的数字系统中为了协调各部分的工作往往需要有一个特定的控制信号去控制锁存器状态转换的时间在控制信号无效时输出保持不变不随输入变换当控制信号有效时输出由输入决定跟随输入变化。
3.2 触发器基本结构 触发器为边缘敏感型因此其分为上升沿触发和下降沿触发。
参考 https://blog.csdn.net/h_kingone/article/details/56671517 https://blog.csdn.net/Times_poem/article/details/85986055