网站大量收购独家精品文档,联系QQ:2885784924

Latch和flip-flop..doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Latch和flip-flop.

锁存器和D触发器 D触发器是指由时钟边沿触发的存储器单元,锁存器指一个由信号而不是时钟控制的电平敏感的设备。锁存器通过锁存信号控制,不锁存数据时,输出端的信号随输入信号变化,就像信号通过缓冲器一样,一旦锁存信号起锁存作用,则数据被锁住,输入信号不起作用。 锁存器和D触发器实现的逻辑功能基本相同,都是暂存数据。由与非门搭建的话,锁存器所耗用的逻辑资源比D触发器少,所以使用锁存器有更高的集成度,但锁存器有一下缺点: (1)对毛刺敏感,毛刺信号会传递下去,无异步复位端,不能在芯片上电时处在一个确定的状态; (2)会使静态时序分析变得复杂,可测性不好,不利于设计的可重用,所以当今的ASIC设计中除了CPU这种甚高速电路,一般不提倡使用锁存器; (3)FPGA器件中有大量的D触发器结构而没有锁存器这种现成的结构,使用锁存器会更耗资源, 如何避免使用锁存器: (1)时序逻辑电路中,可用带使能端的D触发器实现; (2)在组合进程中赋默认值; (3)对所有输入条件赋输入值,以覆盖所有条件分支(特别是if..else..和case结构); (4)避免产生组合电路反馈,组合电路反馈会引起精确静态时序分析难以实现等一系列问题。 在有些设计中,不可避免的需要用到锁存器,如在PCI接口设计中要完成PCI规范中对Reset功能的定义。可以通过多位选择器,有测试模式管脚做选择控制位来使设计是可测试的。 触发器 泛指一类电路结构, 它可以由触发信号 (如: 时钟, 置位, 复位等) 改变输出状态, 并保持这个状态直到下一个或另一个触发信号来到时, 触发信号可以用电平或边沿操作. 锁存器是触发器的一种应用类型. 在 CMOS 电路中典型的锁存器 (LATCH) 是由两个反相器和两个数据开关组成, 其中输入数据开关在闸门 (GATE) 电平操作下开启送入数据. 当闸门关闭后, 另一个数据开关开启, 使两个反相器的串联闭合, 形成 RS 触发器类型的正反馈电路, 数据保持在这个 RS 触发器中, 以达到锁存的目的, 直到下一个闸门周期.? 由两个这样的锁存器可以级联成主从结构, 并执行互补的操作. 即前一个送入数据时, 后一个保持先前的数据, 而前一个锁存数据时, 后一个送入这个新数据到输出端. 形成一个边沿触发的 D 触发器, 而闸门控制信号成为触发器的时钟. 也可以认为 D 触发器是用时钟边沿锁存数据的, 但习惯上不称其为锁存器 LATCH. 在 CMOS 芯片内部经常使用锁存器, 但是在 PCB 板级结构上, 建议用触发器在时钟边沿上锁存数据. 这是因为在锁存器闸门开启期间数据的变化会直接反映到输出端, 所以要注意控制闸门信号的脉冲宽度. 而对于触发器, 只考虑时钟的边沿 latch和flip-flop都是时序逻辑,区别为:latch同其所有的输入信号相关,当输入信号变化时latch就变化,没有时钟端;flip-flop受时钟控制,只有在时钟触发时才采样当前的输入,产生输出。当然因为二者都是时序逻辑,所以输出不但同当前的输入相关还同上一时间的输出相关。 latch缺点: 1、没有时钟端,不受系统同步时钟的控制,无法实现同步操作,和当前我们尽可能采用时序电路的设计思路不符; 2、latch对毛刺敏感,受布线延迟影响较大,很难保证输出没有毛刺产生;latch是电平触发,相当于有一个使能端,且在激活之后(在使能电平的时候)相当于导线了,随输出而变化,在非使能状态下是保持原来的信号,这就可以看出和flip-flop的差别,其实很多时候latch是不能代替ff的。如果使用门电路来搭建latch和ff,则latch消耗的门资源比ff要少,这是latch比ff优越的地方。 3.在ASIC中使用latch的集成度比DFF高,但在FPGA中正好相反,因为FPGA中没有标准的latch单元,但有DFF单元,一个LATCH需要多个LE才能实现。 4.latch将静态时序分析变得极为复杂,目前latch只在极高端电的路中使用,如intel 的P4等CPU。 一般的设计规则是:在绝大多数设计中避免产生LATCH.它会让您设计的时序完蛋,并且它的隐蔽性很强,非老手不能查出.latch最大的危害在于不能过滤毛刺。这对于下一级电路是极其危险的。所以,只要能用D触发器的地方,就不用latch。有些地方没有时钟,也只能用latch了。 组合逻辑避免产生latch的一种常用做法。 在process里面的最开头对组合逻辑的输出赋初值。 举例说明如下: ????????????? process (Rd_lenth,Wr_Addr_En,Rd_Addr_En,MRd_En,MWr_En,lm_Ack_n) ???????? begin ??????????? next_state=cur_sta

文档评论(0)

xznh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档