网站大量收购独家精品文档,联系QQ:2885784924

第七章 跨时钟域信号同步解决方案.pdf

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
跨时钟域信号同步的IP 解决方案 作者:Rick Kelly,Synopsys 研发经理 2009 年1 月 为了确保拥有多个异步时钟域的系统级芯片(Soc )能够可靠运行,设计人员必须使这些跨越了多个域的时钟和数据信号保持同 步。尽管这并不属于新提出的要求,但随着多时钟域的越来越常见和复杂化,使得这一要求具备了新的重要意义。大规模集成 加上对性能的严格要求以及频率调节都导致在许多不同频率下发生了很多时钟域跨越现象-就像一场数字化的―完美风暴‖。 跨时钟域(CDC)问题会以许多种形式出现,其评估难度相当高。幸好,Synopsys DesignWare 库产品提供了许多卓越的CDC 解决方案,这些方案应用简便,设计人员只需掌握在何时以及何处应用它们即可。 本文解释了在时钟和数据信号从一个时钟域跨越到另一个时钟域时所发生的许多类型的同步问题。在任何情况下,本文所包含 的问题都涉及到相互异步的时钟域。随着每一个问题的提出,本文将概述一个或多个DesignWare 解决方案。这些主题和解决 方案包括: • 基本同步 — DW_sync • 临时事件同步 — DW_pulse_sync, DW_pulseack_sync • 简单数据传输同步 — DW_data_sync, DW_data_sync_na, DW_data_sync_1c • 数据流同步 — DW_fifo_s2_sf, DW_fifo_2c_df, DW_stream_sync • 复位排序 — DW_reset_sync • 相关时钟系统数据同步 — DW_data_qsync_hl, DW_data_qsync_lh 基本同步问题 当来自一个时钟系统的信号将用作另一个与其不同步的时钟系统的输入时,就需要对信号进行同步以达成。而不进行同步就无 法达成时序收敛。图1 所示为采用一个单寄存器来同步至目的时钟域的异步输入。 伴随这种方法会出现的一个问题是,当一个触发器的数据输入处于逻辑0 至逻辑1 之间的过渡过程当中时,发给这个触发器时 钟信号时有可能产生亚稳态现象。亚稳态现象也有可能发生在触发器的建立时间或保持时间出现违反现象时。解决亚稳态事件 使其达至逻辑1 或逻辑0 所要求的时间量取决于建立时间或保持时间被违反的严重程度(图2 )。 Clock to Q delay 时钟至Q 延迟 FF Minimum specs 触发器最小规格 图2 解决亚稳态事件所用时间 当亚稳态事件持续时间长至足以影响到下一个逻辑阶段时,同步器就发生了故障。故障间平均时间(MTBF)通常计算如下: 其中: fclk 是采样时钟频率 fdata 是数据变化频率 tres 是解决亚稳态所允许占用的时间 T0 和T1 是与具体触发器相关的常数(下文将进一步叙述) 通常,由于在综合时会尝试在时序能够满足的条件下缩减门电路数以节省占用面积,所以设计人员无法控制至下一阶段间的时 间预算。为了保持稳定一致的解决用时,设计人员可以采用一个2 个触发器组成的序列。但是,这种传统解决方案肯定会增加 时延。 在采用2 个触发器的解决方案,时钟树就以减去触发器FF1 的时钟至Q 延时后的时钟周期以及FF2 的建立时间要求为基础。 对于有着相对较高数据传输速率的高速应用来说,即使两级同步器也有可能无法获得足够的MTBF,特别是在FPGA 实现方案 中。如果加入第3 级,则只有在第1 级在亚稳态保持了足够长的时间,导致侵占了FF2 的建立时间的情况下,第2 级才有可能 发生亚稳态事件(图3)。 图3 3 级同步器 Sampe MTBF test … MTBF 测试电路示例 Error Counter 错误计数器 采用这一方法,MTBF 可计算为: T0 和T1 常数与所选用的具体触发器相关,并有可能从库供应商处获得。库供应商会采用如图4 所示的电路来测定这些常数。 错误计数器用于测量在输入时钟处于某一特定组合的输入频率下的MTBF。通过在不同频率比率下让此电路运行,就可以测定 T0 和T1 的数值。 图4 用于测定触发器常数的电路 参见以下资料,可以了解更多有关亚稳态和MTBF 计算的信息: • ―确保亚稳态不会破坏您的数字设计方案‖,作者:Debora Grosse, Unisys, EDN, 1994/archives/1994/062394/13df2.htm • ―数字系统亚稳态特性‖,作者:K

文档评论(0)

0520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档