芯片跨时钟域同步,即异步处理的理解

网上有一套资料Clifford E. Cummings论文合集,还不错。

以下是临时想到的

  • 亚稳态就是时序违反的后果,异步信号肯定有时序违反可能。
  • 单bit 源时钟域打一拍,目的时钟域打两拍或者更多拍
    – 注意快时钟和慢时钟。
    – 注意源数据信号,是不是脉冲信号。 单拍源时钟信号,做展宽+打拍同步+上升沿检测等,来实现同步。
  • 多bit fifo方法,原理是格雷码指针判断空满,深入了解,可以分析一下源目的时钟分别是快或慢的情况。架构简单,设计review快,质量可靠。
    – 注意格雷码的set_max_delay的约束
  • 所有异步处理机制,都多想一下。源目的时钟分别是快或慢的情况下,相应同步机制是否靠谱。别出现丢失和多采情况。
  • 握手实现同步,不是一拍完成的,所以很影响数据传输效率。
  • dmux机制(数据利用控制信号有效的同步方法),同步条件要求高,不适合很多场景,新手不建议使用。
  • 参考synopsys的set_max_delay等异步时序要求。
    – https://blog.csdn.net/u011729865/article/details/126027877?spm=1001.2014.3001.5501在这里插入图片描述

芯片规模大,投资大,重点是稳定可靠。设计多用成熟设计,多用公司已有量产过的成熟设计。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
FPGA异步时钟约束方法有几种常见的做法: 1. 异步复位:在异步时钟中添加一个异步复位信号,用于保证系统在上电或者复位时的正确初始化。复位信号需要经过适当的同步处理,以确保在时钟稳定后再生效。 2. 时序同步器(Synchronizer):在异步时钟同步时钟之间插入一个时序同步器,用于将异步信号转换为同步信号。时序同步器包括两个触发器(Flip-Flop),一个触发器位于异步时钟,另一个触发器位于同步时钟。通过两个触发器的级联,可以确保异步信号在同步时钟中得到稳定的采样。 3. 时序约束:使用时序约束(Timing Constraint)来限制异步时钟中的逻辑路径。时序约束定义了信号在电路中传输的最大延迟和最小延迟,以及时钟与数据的关系等。通过正确设置时序约束,可以确保异步时钟中的逻辑在同步时钟的正确操作。 4. FIFO缓冲:在异步时钟同步时钟之间添加一个FIFO缓冲区,用于缓解两个时钟之间的不匹配。FIFO缓冲区可以通过流水线技术实现,将异步时钟中的数据按照同步时钟的速率进行处理。 这些方法可以根据具体的设计需求选择使用,通常需要结合具体的FPGA开发工具和芯片手册来实施。同时,对于复杂的异步时钟设计,还需要进行静态时序分析和时钟交叉验证等工作,以确保设计的正确性和可靠性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值