• 浅谈同步设计


      同步设计,顾名思义,就是设计要“步调保持一致”的处理数据,在数字电路的设计当中,这个所谓的“步调一致”就是指同一时钟的上升沿或者下降沿,即就是说,所有的电路在同一时钟沿的触发下同步的处理数据。

      然后,在大多数系统的设计当中,往往存在于多个时钟域的情况,这个时候同步设计不再单单的指整个设计同一时钟,而是一个时钟域里保持同一时钟即可。

      一、同步设计的优点

      1、同步设计能有效避免毛刺的影响,使得设计更加可靠。

      毛刺是逻辑设计的天敌,毛刺使得数据变得混乱,可能引起电路功能的误判断。当毛刺引入于时钟端或者异步复位端,就极有可能引起触发器的误翻转或者出现不正常的复位。但是毛刺是与生俱来的,也就是说毛刺是不可避免的,一般来讲凡是有组合逻辑的地方肯定就有毛刺。同步设计是避免毛刺的最简单有效的方法。

      如下图,由于X1信号和x2信号到达与门的时延是不同的,导致与门输出Y产生了毛刺,由于设计是同步的。在下一级的时钟信号到来之前数据已经稳定,在经过下一级触发器的输出dout也是稳定的,所以同步设计可以有效的避免毛刺的产生。

      2、同步设计可以减少环境对芯片的影响

      由于芯片的实际工作环境比我们在测试的实验室环境恶劣的多,加之长时间运行,随着芯片的温度的升高,电压的不稳定,将会使得器件内部时延发送变化,如果不使用同步设计的话,对于时序要求比较苛刻的电路将无法正常工作。因为只有满足芯片的Static timing 的要求,才能保证芯片在预知的过程中工作。

      3、 同步设计可借助与STA工具进行时序分析,有助于提高设计的可靠性。

  • 相关阅读:
    C++学习(c++17)——2.X.使用string和string_view
    C++学习(c++17)——1.3一个小程序(part2.Datebase类)
    论++i + ++i + ++i
    C++学习(c++17)——1.3 一个小程序(part1.Employee类)
    C++学习(c++17)——1.2 稍微深入研究C++
    VS2019社区版关于Qt的设置
    C++学习(c++17)——1.1 C++基础知识
    2020杭电多校第五场
    2020杭电多校第四场
    2020杭电多校第三场
  • 原文地址:https://www.cnblogs.com/nucfrank/p/2073637.html
Copyright © 2020-2023  润新知