【 FPGA 】寄存器输出的不稳定态

举报
李锐博恩 发表于 2021/07/15 06:00:36 2021/07/15
【摘要】 不稳定态,指的就是不稳定的状态。请注意,寄存器输出的不稳定状态并不是由于赋值冲突而导致的不确定状态(‘X’状态),而是由于不同路径的延迟不一致所导致的数据线上出现了一个或多个非预期的中间状态。 时序仿真时,寄存器的输出从A变为B时,中间会有一小段毛刺。毛刺其实是有确切的取值的。 单触发器寄存器 如果寄存器只包含一个触发器,即寄存器的容量为1bit。例如,在下一个有效时钟...

不稳定态,指的就是不稳定的状态。请注意,寄存器输出的不稳定状态并不是由于赋值冲突而导致的不确定状态(‘X’状态),而是由于不同路径的延迟不一致所导致的数据线上出现了一个或多个非预期的中间状态。

时序仿真时,寄存器的输出从A变为B时,中间会有一小段毛刺。毛刺其实是有确切的取值的。

单触发器寄存器

如果寄存器只包含一个触发器,即寄存器的容量为1bit。例如,在下一个有效时钟边沿到来时,要将一个1bit位宽的寄存器的输出从逻辑0变为逻辑1,那么波形图是否会出现若干次从0到1的振荡呢?

事实证明,不会出现不稳定态,因为一个时钟有效边沿最多只能改变输出一次

多触发器寄存器

对于多触发器寄存器,无论寄存器的位宽如何,它们都是由最基本的触发器构成的,而触发器在每个时钟的有效边沿只能改变一次,因此,除非经历多个时钟周期,否则寄存器的输出怎么会变化出多个值呢?

这是由于组成寄存器的各个触发器变化不一致。更精确地说,由于线延迟的存在,导致时钟信号到达各个寄存器的时间可能不一致,也导致各个触发器的输出端口到信号接收端所需的时间可能不一样,再加上各个寄存器的t_{co}等参数不可能精确一致,所以当我们改变多触发器寄存器的输出时,就会出现不稳定态。

 

文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。

原文链接:reborn.blog.csdn.net/article/details/84439777

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。