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

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

3天内不再提示

D触发器的几种表示形式同步复位、同步释放

FPGA之家 来源:陈年丽 2019-07-26 10:17 次阅读

首选我们来聊聊时序逻辑中最基础的部分D触发器的同步异步,同步复位即复位信号随系统时钟的边沿触发起作用,异步复位即复位信号不随系统时钟的边沿触发起作用,置数同理,rst_n表示低电平复位,我们都知道D触发器是一个具有异步复位异步置数的器件,那么怎么样Verilog来具体描述这个器件呢,接下来我们就来看一下,

D触发器的几种表示形式同步复位

异步复位

异步置数,同步置数。

异步复位,异步置数

同步异步无非就是一个是否受系统时钟边沿触发,如果想要异步就直接加一个敏感信号就好了。不过一般工程中的书写形式就是异步复位,不过这种设计方法也有弊端,原因就是时序逻辑的冒险与竞争的问题。

异步复位、同步释放

如下图可以看到异步复位的结构图,D触发器是复位优先级高于clk优先级,所以采用通异步复位的方法,但是异步复位D触发器存在竞争与冒险,比如当clk的上升沿和rst_n的下降沿同时来临的时候这时候系统应该听谁的,同样当clk的上升沿和rst_n的上升沿同时来临的时候容易使寄存器出现亚稳态。

亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发器进入亚稳态引时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在这个稳定期间,触发器输出一些中间级电平,或者可能处于振荡状态,并且这种无用的输出电平可以沿信号通道上的各个触发器级联式传播下去。这时系统是处于极不稳定的状态,这也是我们需要考虑的。

有人说既然异步复位会出现冒险竞争那我们使用同步复位不就行了,我们来看看同步复位的逻辑结构图,同步复位虽然解决了当clk的边沿来临的时候rst_n的边沿也正好来临所出现的冒险与竞争,但是从综合的电路上可以看出,多了一个组合逻辑,选择器(MUX),可想而知如果所有的寄存器复位都是这样,那会多浪费多少资源。那么这样就没有办法再解决了吗?答案是有的,一位前辈曾经说过,从正确到完美的道路是十分艰辛的,我们为了追求完美,引入异步复位、同步释放机制,即解决了同步复位浪费资源问题,又解决了异步复位带来的亚稳态。

这是复位信号同步化代码,系统时钟不变化,还是采用异步复位的方法,但是当复位信号操作时会进入一个同步寄存器,使得复位信号同步化,这样既避免了异步复位的冒险与竞争,又避免了同步复位耗费太多资源。只需要将复位信号同步化编写成独立模块,然后顶层例化就好了。系统时钟信号不变化。

上电延时

开发板接通电源后会有一小段不稳定的状态,在比较大的工程中,逻辑资源利用的比较多的情况下,如果加上电源后直接进行复位操作,同样会使寄存器不稳定,所以,类似于按键消抖的方法,我们也给板子加电源后延时50ms,当系统稳定后在进行复位操作,再看bingo的书时,他是将这两个个分成两个模块然后实例化到一起,但为了提高代码的可移植性,我将异步复位同步释放和上电延时50ms写在一个模块。具体实现如下。

对于较小的工程,进行这些操作与否也就无可厚非,如果对于一个项目,需要要求必须尽善尽美,FPGA的优势便是数字信号处理,速度快,我们在保持速度的前提下,还需要使其准确率也提高,尽量占用少量的资源。这样异步复位,同步释放的机制就体现出来了。

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

    关注

    31

    文章

    5336

    浏览量

    120230
  • D触发器
    +关注

    关注

    3

    文章

    164

    浏览量

    47902

原文标题:异步复位同步释放机制-系统完美稳定

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Xilinx FPGA异步复位同步释放同步后的复位该当作同步复位还是异步复位

    针对异步复位同步释放,一直没搞明白在使用同步化以后的复位信号时,到底是使用同步
    发表于 06-21 09:59 1463次阅读
    Xilinx FPGA异步<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><b class='flag-5'>复位</b>还是异步<b class='flag-5'>复位</b>?

    D触发器,CLK突变时,输入D也突变,触发器的输出应该如何判定?

    波形图,复位信号无效时,输出led_out居然与输入key_out的值同步变化,也就是输出居然不满足D触发器的特性。引出了一个问题,D
    发表于 01-25 22:41

    钟控同步RS触发器教材

    教学目标:1、 掌握钟控同步RS触发器的电路组成2、 掌握钟控同步RS触发器的工作原理及逻辑功能3、 了解触发器
    发表于 08-18 14:57 16次下载

    D触发器

    D触发器 同步D触发器逻辑电路图 D触发器功能
    发表于 10-20 09:57 2579次阅读
    <b class='flag-5'>D</b><b class='flag-5'>触发器</b>

    第十一讲 同步触发器

    4.2.2 同步触发器二、同步D触发器1.电路结构2.逻辑功能3.特性方程4.状态转换图三、同步
    发表于 03-30 16:17 4663次阅读
    第十一讲 <b class='flag-5'>同步</b><b class='flag-5'>触发器</b>

    同步RS触发器原理

    由与非门构成的同步RS触发器如图13-5(a)所示,其逻辑符号如图13-5(b)所示。图中门A和B构成基本触发器,门C和E构成触发引导电路。由图13-5(a)可见,基本
    发表于 08-18 09:00 1.6w次阅读
    <b class='flag-5'>同步</b>RS<b class='flag-5'>触发器</b>原理

    同步D触发器原理

    为了避免同步RS触发器的输入信号同时为1,可以在S和R之间接一个“非门”,信号只从S端输入,并将S端改称为数据输入端D,如图15-8所示。这种单输入的触发器称为
    发表于 08-18 09:06 1.3w次阅读
    <b class='flag-5'>同步</b><b class='flag-5'>D</b><b class='flag-5'>触发器</b>原理

    同步触发器触发方式和空翻问题

    一、空翻问题由于在CP=1期间,同步触发器触发引导门都是开放的,触发器都可以接收输入信号而翻转,所以在CP=1期间,如果输入信号发生多次变化,触发
    发表于 08-18 09:08 2.1w次阅读
    <b class='flag-5'>同步</b><b class='flag-5'>触发器</b>的<b class='flag-5'>触发</b>方式和空翻问题

    FPGA设计中的异步复位同步释放问题

    异步复位同步释放 首先要说一下同步复位与异步复位的区别。
    发表于 06-07 02:46 2151次阅读

    【FPGA】异步复位同步释放的理解

    异步复位同步释放的理解目录目录 同步复位和异步复位 异步
    发表于 01-17 12:53 4次下载
    【FPGA】异步<b class='flag-5'>复位</b>,<b class='flag-5'>同步</b><b class='flag-5'>释放</b>的理解

    什么是D触发器D触发器如何工作的?

    锁存触发器有时组合在一起,因为它们都可以在其输出上存储一位(1或0)。与锁存相比,触发器是需要时钟信号(Clk)的同步电路。
    的头像 发表于 06-29 11:50 3.8w次阅读
    什么是<b class='flag-5'>D</b><b class='flag-5'>触发器</b>,<b class='flag-5'>D</b><b class='flag-5'>触发器</b>如何工作的?

    浅析异步复位同步释放同步复位打拍模块

    异步复位同步释放:rst_synchronizer.v
    的头像 发表于 08-21 09:27 990次阅读
    浅析异步<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>打拍模块

    D触发器的类型详解 同步复位和异步复位D触发器讲解

    的存储单元,具有时钟同步的特性。其中,D触发器是数字电路设计中使用最广泛的一种触发器类型之一,因为它具有简单、稳定和多功能等优点。
    的头像 发表于 08-31 10:50 1.6w次阅读
    <b class='flag-5'>D</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'>D</b><b class='flag-5'>触发器</b>讲解

    如果只做一级触发器同步,如何?

    如果只做一级触发器同步,如何? 一级触发器同步是指只考虑最基础的触发信息进行同步,而不考虑更高层
    的头像 发表于 01-16 16:29 452次阅读

    同步触发器和边沿触发器的区别

    同步触发器和边沿触发器是数字电路中两种常见的触发器类型,它们在触发方式、工作原理、性能特点以及应用场景等方面存在显著的差异。
    的头像 发表于 08-12 11:26 1354次阅读