FPGA逻辑设计--时序逻辑

声明:

本博客参考学习正点原子教程,用做个人学习笔记以及帮助他人学习,不做其他用途,后续根据学习深度的增加进行知识的补充,也欢迎各位大佬指点传授知识。

时序逻辑

之前的理解

信号使用reg类型,在always块中使用时钟跳变沿进行赋值就行

现在的理解

  • 时序逻辑电路是有记忆功能的,任何时刻的输出不仅与当前时刻的输入信号有关,还有之前的输入信号有关。
  • 时序逻辑是有组合逻辑和存储逻辑组成的,其中组合逻辑完成输入到输出的逻辑处理,处理的结果会进入存储逻辑进行存储,等待下一个时刻的输入记性逻辑处理,得到最终的处理结构
  • 如图请添加图片描述

问题来了,先前介绍了什么是组合逻辑,那什么是存储逻辑?

  • 存储电路是有锁存器,触发器, 寄存器组成
    • 锁存器: 具有记忆功能,电平触发的存储单元,存储的动作取决于时钟信号电平值,当处于使能状态时,输出才会随着数据输入发生变化,没有处于使能状态时,数据被锁住,输入信号不起作用(在设计的时候组合逻辑的always块内没有else或者default才会综合锁存器,时序逻辑的always块内不会综合锁存器)请添加图片描述
    • 触发器: 具有记忆功能,边沿敏感的存储单元,数据存储的动作由某一信号的上升或者下降沿进行同步的。(钟控 D 触发器其实就是 D 锁存器,边沿 D 触发器才是真正的 D 触发器)请添加图片描述
    • 寄存器:有多个触发器组成,用来暂时存放参与运算的数据和运算结果。在实际的数字系统中,通常把能够用来存储一组二进制代码的同步时序逻辑电路称为寄存器.请添加图片描述
  • 问题又来了,既然寄存器是有多个触发器组成,那主要的区别是什么?
    • 由于触发器具有记忆功能,一个触发器能够存储一位二进制码,所以把n 个触发器的时钟端口连接起来就能构成一个存储 n 位二进制码的寄存器,主要区别可能就是触发器只能存储1bit数据,而使用一个时钟将N个触发器连接到一块可以存储Nbit数据
  • 寄存器和锁存器的区别是什么?为什么不是有多个锁存器组成寄存器?
    • 从寄存器的角度来讲,寄存器和锁存器的功能是相同的,区别是寄存器是有同步时钟控制,锁存器是有电位信号控制
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

如何学会学习?

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值