我是靠谱客的博主 故意钢笔,最近开发中收集的这篇文章主要介绍FPGA中的锁存器,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

锁存器的定义:

锁存器在数据未锁存时,输出端的信号随输入信号变化,就像信号通过一个缓冲器,一旦锁存信号有效,则数据被锁存,输入信号不起作用。

锁存器与寄存器的区别:

​ 两者都是基本存储单元,单锁存器是电平触发的存储器,触发器是边沿触发的存储器。本质是,两者的基本功能是一样的,都可以存储数据。意思是说一个是组合逻辑的,一个是在时序电路中用的,时钟出发的。

锁存器的危害:

1、对毛刺敏感,不能异步复位,所以上电以后处于不确定的状态;

2、 Latch会使静态时序分析变得非常复杂;

3、在PLD芯片中,基本的单元是由查找表和触发器组成的,若生成锁存器反而需要更多的资源。

产生的原因:

在组合逻辑中,有时候往往不需要生成latch,所以必须知道某些信号会综合为latch,通过实践发现下面两类会出现latch:

1、在if-else和case中没有else和default将会导致产生latch。这个在夏宇闻的verilog中有讲到。

2、always:在赋值表达式右边参与赋值的信号都必须在always@(敏感电平列表)中列出。(注:这个地方未理解:http://blog.sina.com.cn/s/blog_4cfafddd0100een4.html)

如果在赋值表达式右端引用了敏感电平列表中没有列出的信号,那么在综合时,将会为该没有列出的信号隐含地产生一个透明锁存器。

3、在if-else和case中某一情况没有对其他信号赋值,详见:http://www.eefocus.com/liuyuxue/blog/13-11/300280_d7008.html

最后

以上就是故意钢笔为你收集整理的FPGA中的锁存器的全部内容,希望文章能够帮你解决FPGA中的锁存器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部