0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于同步复位与异步复位的仿真详解

FPGA技术驿站 来源:Lauren的FPGA 作者:Lauren的FPGA 2021-04-09 11:29 次阅读

FPGA设计中,我们遵循的原则之一是同步电路,即所有电路是在同一时钟下同步地处理数据。这个概念可进一步展开,即不局限于同一时钟,只要时钟之间是同步关系(两者之间有明确的相位延迟,例如同一个MMCM生成的时钟),这是因为目前的芯片规模越来越大,设计越来越复杂,往往需要多个时钟同时运算。

通常,我们说某个信号与指定时钟同步,意味着这个信号是由该时钟驱动的逻辑生成的,或者这个信号只有在时钟有效沿(一般是上升沿有效)下才会被触发。以复位信号为例,就有同步复位和异步复位之分。我们从HDL代码角度看一下二者的区别。如下图所示代码,描述的是同步复位触发器,左侧为VHDL-2008版本的描述方式,右侧为System Verilog版本的描述方式。可以看到敏感变量列表(左侧第15行,右侧第8行)中只有时钟clk,因此,进程中的状态变化就依赖于时钟的变化即时钟有效沿。

853274ae-986d-11eb-8b86-12bb97331649.png

我们再看看异步复位是如何描述的,如下图所示。左侧是VHDL-2008版本,右侧是System Verilog版本。可以看到,此时敏感变量列表中除了时钟clk之外还有复位信号rst。在VHDL版本中,可以明确地看到复位信号位于if条件分支,而时钟有效沿位于elsif分支,优先级低于复位信号。因此,这里只要复位有效,无论时钟沿是否有效都会触发操作。

853cf26c-986d-11eb-8b86-12bb97331649.png

进一步,我们从仿真角度看看这两者的区别。同步复位触发器的仿真结果如下图所示。可以看到复位信号只有在时钟有效沿下才起作用。图中第二个复位脉冲并没有被时钟有效沿采到,故不会导致触发器复位。

8554e4c6-986d-11eb-8b86-12bb97331649.png

异步复位触发器仿真结果如下图所示。可以看到第二个复位脉冲尽管没有在时钟有效沿下,但仍促使触发器复位。这正是异步的原理。

85698eda-986d-11eb-8b86-12bb97331649.png

对比两个仿真结果,我们可以看到同步复位的一个明显的好处就是利用了时钟的过滤功能,去除了复位信号上的毛刺,而异步复位下,如果复位信号有毛刺就会导致触发器误操作,这在状态机电路中尤为严重,很有可能导致状态机进入无效状态。
编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    50

    文章

    4017

    浏览量

    133322
  • 同步复位
    +关注

    关注

    0

    文章

    26

    浏览量

    10694
  • 异步复位
    +关注

    关注

    0

    文章

    46

    浏览量

    13297

原文标题:同步复位与异步复位

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    复位电路介绍 复位电路的原理及作用

    复位电路(Reset Circuit)是现代电子设备中常见的一种关键电路,它用于确保在正确的时间和条件下将系统恢复到初始状态。复位电路的设计和应用对于保障电子系统的稳定性和可靠性至关重要。 一、复位
    的头像 发表于 10-18 16:44 517次阅读

    STM32复位电路用复位芯片和阻容复位电路区别

    STM32是一款广泛使用的微控制器,其复位电路设计对于系统的稳定性和可靠性至关重要。本文将详细介绍STM32复位电路中使用复位芯片和阻容复位电路的区别,以及各自的优缺点和应用场景。 引
    的头像 发表于 08-06 10:26 915次阅读

    FPGA同步复位异步复位

    FPGA(Field-Programmable Gate Array,现场可编程门阵列)中的复位操作是设计过程中不可或缺的一环,它负责将电路恢复到初始状态,以确保系统的正确启动和稳定运行。在FPGA设计中,复位方式主要分为同步
    的头像 发表于 07-17 11:12 1193次阅读

    MCU复位RAM会保持吗,如何实现复位时变量数据保持

    在使用MCU时,通常大家默认MCU复位时RAM会被复位清零,那实际MCU复位时RAM是什么状态?如何让mcu复位时RAM保持不变呢?
    的头像 发表于 03-01 09:32 2253次阅读
    MCU<b class='flag-5'>复位</b>RAM会保持吗,如何实现<b class='flag-5'>复位</b>时变量数据保持

    什么是复位同步电路 reset synchronizer?

    复位同步电路 reset synchronizer 其实只在复位信号 release 的时候派上用场。复位结束后,这个电路其实就没用了。 但这个电路的时钟还在 switch,这个电路还
    的头像 发表于 02-19 09:21 1272次阅读
    什么是<b class='flag-5'>复位</b><b class='flag-5'>同步</b>电路 reset synchronizer?

    如何排查GD32 MCU复位是由哪个复位源导致的?

    上期为大家讲解了GD32 MCU复位包括电源复位和系统复位,其中系统复位还包括独立看门狗复位、内核软复位
    的头像 发表于 02-03 09:46 1616次阅读
    如何排查GD32 MCU<b class='flag-5'>复位</b>是由哪个<b class='flag-5'>复位</b>源导致的?

    GD32 MCU电源复位和系统复位有什么区别

    GD32 MCU的复位分为电源复位和系统复位,电源复位又称为冷复位,相较于系统复位,上电
    的头像 发表于 02-02 09:37 1381次阅读
    GD32 MCU电源<b class='flag-5'>复位</b>和系统<b class='flag-5'>复位</b>有什么区别

    异步复位异步释放会有什么问题?FPGA异步复位为什么要同步释放呢?

    一般来说,复位信号有效后会保持比较长一段时间,确保 register 被复位完成。但是复位信号释放时,因为其和时钟是异步的关系,我们不知道它会在什么时刻被释放。
    的头像 发表于 01-24 09:32 1645次阅读
    <b class='flag-5'>异步</b><b class='flag-5'>复位</b><b class='flag-5'>异步</b>释放会有什么问题?FPGA<b class='flag-5'>异步</b><b class='flag-5'>复位</b>为什么要<b class='flag-5'>同步</b>释放呢?

    同步复位异步复位到底孰优孰劣呢?

    同步复位异步复位到底孰优孰劣呢? 同步复位异步
    的头像 发表于 01-16 16:25 1561次阅读

    复位电路的复位条件和复位过程

    电源监测芯片复位电路:这是最常见的复位电路类型,使用专用的电源监测芯片来监测电源电压,并在电压低于或高于预设阈值时触发复位信号。
    的头像 发表于 01-16 16:04 1145次阅读

    对于芯片中的复位信号我们通常会有哪些特殊处理?

    经常在面试时问到一个问题:对于芯片中的复位信号我们通常会有哪些特殊处理?这个时候我一般希望得到的回答包括:复位消抖、异步复位同步撤离、降频
    的头像 发表于 12-25 09:52 2005次阅读
    对于芯片中的<b class='flag-5'>复位</b>信号我们通常会有哪些特殊处理?

    复位那些小事—系统解复位的特殊处理

    复位就是复位撤离,系统解复位就是复位结束了系统准备开始工作。
    的头像 发表于 12-04 15:25 1507次阅读
    <b class='flag-5'>复位</b>那些小事—系统解<b class='flag-5'>复位</b>的特殊处理

    异步复位同步撤离是什么意思?如何做到异步复位同步撤离呢?

    复位消抖之后的下一件事,[异步复位]()同步撤离。这句话什么意思呢?
    的头像 发表于 12-04 13:57 4515次阅读
    <b class='flag-5'>异步</b><b class='flag-5'>复位</b><b class='flag-5'>同步</b>撤离是什么意思?如何做到<b class='flag-5'>异步</b><b class='flag-5'>复位</b><b class='flag-5'>同步</b>撤离呢?

    复位那些小事—典型的软复位流程

    在聊到复位的时候总会区分两个概念:硬复位和软复位
    的头像 发表于 12-04 13:46 2761次阅读

    关于STM32复位的那些事

    硬件复位电路如下图,直接将RESET引脚拉低即可
    的头像 发表于 11-24 15:23 2114次阅读
    <b class='flag-5'>关于</b>STM32<b class='flag-5'>复位</b>的那些事