FPGA
和
Verilog
设计中的
latch
锁存器的问题
一直都知道
fpga
中有
latch
这么一回事,
但是一直都不太清楚到底什么是锁存器,它是怎
么产生的,它到底和寄存器有多少区别,它怎么消除。为什么说他不好?
一,是什么
锁存器是一种在异步时序电路系统中,对输入信号
电平
敏感的单元,用来
存储信息。
一个锁存器可以存储
1bit
的信息
,
通常,锁存器会多个一起出现,如
4
位锁存
器,
8
位锁存器。
锁存器在数据未锁存时,输出端的信号随输入信号变化,就像信号通过一个缓
冲器,一旦锁存信号有效,则数据被锁存,输入信号不起作用。因此,锁存器也被称为透明
锁存器,指的是不锁存时输出对于输入是透明的。
二
锁存器与寄存器的区别:
两者都是基本存储单元,单锁存器是
电平触发
的存储器,触发器是
边沿
触发的存储器。
本质是,
两者的基本功能是一样的,都可以存储数据。
意思是说一个是组合
逻辑的,一个是在时序电路中用的,时钟出发的。
三,锁存器的危害:
对毛刺敏感,不能异步复位,所以上电以后处于不确定的状态;
Latch
会使静态时序分析变得非常复杂;
在
PLD
芯片中,基本的单元是由查找表和触发器组成的,若生成锁存器反而需要更
多的资源。
第三条也是最基本的原因。
四,产生的原因
********
ps
重重之重
上面说了那没多只是觉得网上的没把锁存器说明白。下面的才是重点。