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

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

3天内不再提示

什么是时钟偏差 时钟分配网络中的时钟偏移问题分析

要长高 来源:eetop 作者:eetop 2023-12-05 11:43 次阅读

本文将通过了解同步电路、时钟传输和时钟分配网络,进而了解什么是时钟偏差(clock skew)以及它对现代系统的影响。

现代数字电子产品设计的最大挑战之一是满足时序约束的能力。保持可预测和组织良好的操作逻辑流程的方法之一是在数字电路中拥有控制良好、定义明确的时序。 clock skew是这些电路中的一个设计考虑因素,如果没有得到适当的考虑,它可能是一个重要的问题来源。事实上,在许多情况下,系统的clock skew可能是整个系统速度和时钟频率的限制因素。要了解clock skew,我们必须首先讨论同步电路。

同步电路和时钟——最小时钟周期计算

大多数现代数字计算机的一个基本特征是同步电路。 同步电路需要一种计时机制来保持有序和周期性的时序逻辑流。在数字电子学中,这种计时机制被称为时钟,简单来说,它是一个具有恒定频率的方波。 如图 1 所示,这些电路通过将静态数据存储在数据寄存器中来工作,该数据寄存器旨在锁存数据,直到寄存器遇到时钟的上升(或下降)沿。当时钟沿发生时,数据从寄存器中释放,通过组合逻辑块发送,然后存储在下一个寄存器中。

1666413310759739.jpg

图 1. 具有两个顺序寄存器的数据路径同步电路。

这些操作发生的频率由时钟频率设置,时钟频率由其他几个参数设置。最小时钟周期的一般公式定义为: Tc=tpcq+tpd+tsetup+tskew 式中:

Tc是时钟周期

tpcq是数据寄存器时钟到 Q 的时间

tpd是组合逻辑传播延迟

tsetup是下行寄存器的建立时间

tskew是两个寄存器之间的时钟偏差

最大时钟频率定义为1/Tc

时钟传送和clock skew

由于数字逻辑往往是同步电路,所有逻辑块的精确时序对于正确的系统行为至关重要。当考虑将图 1 中的设置从一个数据路径扩展到数百万个数据路径(因为它存在于实际芯片设计中)时,很快就会发现保持一切同步是一项不小的挑战。 在实践中,时钟信号通常由晶体振荡器生成,馈入锁相环 (PLL),并在整个 IC 中分布到系统内的每个逻辑块和晶体管。这种追求中最大的挑战之一就是clock skew,它可以定义为顺序相邻寄存器的时钟信号到达时间之间的差异。

这种情况在数学上可以定义为:

1666413311708903.jpg

发生clock skew的传统设置如图 2 所示,其中时钟分配网络中的延迟导致数据寄存器 B 比寄存器 A 更晚地接收其时钟信号。

1666413312181980.jpg

图 2. 时钟偏差通过在时钟传输网络中插入延迟来证明。

如果接收寄存器晚于发送寄存器接收时钟,则偏移可以定义为正,反之则定义为负。clock skew成为数字设计中的一个严重问题,因为它可能违反同步电路所依赖的时序约束。 例如,给定一个恒定的时钟频率和负偏斜,如图 3 所示,时钟到达接收寄存器 B 的时间要比发送寄存器 A 早得多。在这种情况下,从发送寄存器发出的数据将到达时钟到达后接收寄存器。这里,数据不满足接收寄存器的建立和保持要求(即,在时钟到达时,接收登记处还没有现成的数据)。因此,由于接收寄存器不能安全地锁存数据,数据将会丢失。这个概念会产生复合效应,因为后续依赖丢失数据的逻辑操作也会失败。

1666413313868651.jpg

图 3. 负时钟偏移导致数据在其时钟之后到达接收寄存器 B。 正如我们在最大时钟频率等式中看到的,clock skew的增加将增加最小时钟周期并降低系统的最大时钟频率。这是因为clock skew有效地增加了排序开销,减少了组合逻辑中有用工作的可用时间。还值得注意的是,时钟不需要同时到达,但clock skew通常存在可接受的误差范围。

clock skew的原因

虽然造成clock skew的原因有很多,但它们最终都归结为时钟分配网络中的延迟差异。 clock skew的一个原因是时钟分配网络中互连之间的长度不同。如果到两个连续寄存器的时钟传输路径中的互连长度变化很大,则可能会发生clock skew。沿着较短互连行进的时钟将比沿着较长互连行进更快地到达其寄存器。 clock skew的另一个原因可能是时钟分配网络中互连延迟的差异。即使两条时钟传输路径的长度相同,它们也会由于诸如电阻电容或电感耦合等寄生效应而经历不同的延迟。在图 4 的示例中,RC 寄生效应的任何差异都会导致寄存器 A 和 B 的时钟到达时间延迟不同。线路上延迟较大的时钟信号自然会比延迟较小的信号更晚到达其目的地. 设计具有相同延迟的互连可能是一项极其困难的任务。

1666413314856129.jpg

图 4. RC 寄生效应的变化会导致时钟偏移。 clock skew也可能是由时钟信号的逻辑路径延迟的差异引起的。例如,在包括时钟门控的设计中,时钟的传输路径中可能存在额外的门,每个门都具有自己的负载电容和传播延迟。如果不平衡,逻辑路径的差异会导致时钟传递时间不等。 其他原因可能包括温度变化、制造变化和材料缺陷。

使用时钟分配网络最大限度地减少时clock skew

随着时钟频率的增加,clock skew可能会成为一个更具挑战性的问题,因为随着时钟频率的提高,误差幅度会显著降低。为了最大限度地减少clock skew,复杂的同步电路采用类似于图 5 所示的时钟分配网络。这些通常也称为时钟树。时钟树中的每个反相器都会放大时钟信号以驱动时钟树的下一级。目标是让时钟信号同时到达所有寄存器输入。

1666413315219764.jpg

图 5.具有并行时钟驱动器的时钟分配网络示例。 对于具有数百万甚至数十亿晶体管的超大型 IC,时钟分配网络可能会比图 4 的简单示例复杂得多。这些网络的创建通常由EDA软件自动处理。工程师输入目标频率、寄存器设置和保持时间限制以及最大时钟偏差等关键参数。然后,软件生成时钟分配网络以满足目标时序约束。

结论

clock skew是数字集成电路设计中需要考虑的重要课题。如果没有正确考虑,时钟偏差会对系统性能造成严重破坏,导致系统操作不当、数据丢失或成为系统时钟频率的限制因素。

审核编辑:黄飞

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

    关注

    31

    文章

    5249

    浏览量

    119166
  • 晶体管
    +关注

    关注

    77

    文章

    9481

    浏览量

    136897
  • 晶体振荡器
    +关注

    关注

    9

    文章

    602

    浏览量

    28809
  • 时钟信号
    +关注

    关注

    4

    文章

    433

    浏览量

    28388
  • 时钟驱动器
    +关注

    关注

    0

    文章

    32

    浏览量

    13786
收藏 人收藏

    评论

    相关推荐

    如何改进FPGA时钟分配控制?

    同步数字系统时钟信号(如远程通信中使用的)为系统的数据传送定义了时间基准。一个时钟分配网络
    发表于 10-16 07:11

    时钟偏差的定义以及它对现代系统的影响

    限制以及最大时钟偏差等关键参数。然后,软件生成时钟分配网络以满足目标时序约束。结论clock skew是数字集成电路设计
    发表于 11-02 14:32

    一种FPGA时钟网络锁相环的实现方案

    一种FPGA时钟网络锁相环的实现方案:摘 要:本文阐述了用于FPGA 的可优化时钟分配网络功耗
    发表于 08-08 09:07 25次下载

    FPGA时钟分配网络设计技术

    本文阐述了用于FPGA的可优化时钟分配网络功耗与面积的时钟布线结构模型。并在时钟分配
    发表于 08-06 16:08 12次下载

    时钟网格与时钟树设计方法对比研究

    基于片上偏差对芯片性能的影响,分析对比了时钟树设计与时钟网格设计,重点分析时钟网格抗OCV影响
    发表于 05-07 14:13 36次下载
    <b class='flag-5'>时钟</b>网格与<b class='flag-5'>时钟</b>树设计方法对比研究

    FPGA架构的全局时钟资源介绍

    引言:本文我们介绍一下全局时钟资源。全局时钟是一个专用的互连网络,专门设计用于到达FPGA各种资源的所有时钟输入。这些
    的头像 发表于 03-22 10:09 1.3w次阅读
    FPGA架构<b class='flag-5'>中</b>的全局<b class='flag-5'>时钟</b>资源介绍

    大型多GHz时钟时钟偏移

    本文确定了设计过程、制造过程和应用环境可能导致 1 ps 或更多时钟偏移的几个关注领域。关于这些关注领域,将提供一些建议、示例和经验法则,以帮助读者直观地了解时钟
    的头像 发表于 07-05 10:17 1090次阅读
    大型多GHz<b class='flag-5'>时钟</b>树<b class='flag-5'>中</b>的<b class='flag-5'>时钟</b><b class='flag-5'>偏移</b>

    高速数字设计第11章 时钟分配

    本章的主要内容: 分析时钟驱动器、时钟信号的特殊布线 改进时钟信号分配的特殊电路
    发表于 09-20 14:55 0次下载

    如何优化 PCIe 应用时钟分配

    如何优化 PCIe 应用时钟分配
    发表于 11-07 08:07 0次下载
    如何优化 PCIe 应用<b class='flag-5'>中</b>的<b class='flag-5'>时钟</b><b class='flag-5'>分配</b>

    详解数字设计时钟与约束

    ; ·行波时钟; ·双沿时钟; ·Design Compiler时钟约束。 ·补充:时钟分配
    的头像 发表于 01-28 07:53 2697次阅读
    详解数字设计<b class='flag-5'>中</b>的<b class='flag-5'>时钟</b>与约束

    什么是时钟偏斜?了解时钟分配网络时钟偏斜

    通过了解同步电路、时钟传输和时钟分配网络,了解时钟偏斜、它是什么及其对现代系统的影响。 现代数字电子产品设计的最大挑战之一是满足时序限制的能
    的头像 发表于 01-27 10:05 3095次阅读
    什么是<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>偏斜

    谈谈非理想时钟时钟偏差

    本系列整理数字系统设计的相关知识体系架构,为了方便后续自己查阅与求职准备。在FPGA和ASIC设计时钟信号的好坏很大程度上影响了整个系统的稳定性,本文主要介绍了数字设计的非理想时钟
    的头像 发表于 06-02 15:05 1616次阅读
    谈谈非理想<b class='flag-5'>时钟</b>的<b class='flag-5'>时钟</b><b class='flag-5'>偏差</b>

    时钟偏差时钟抖动的相关概念

    本文主要介绍了时钟偏差时钟抖动。
    的头像 发表于 07-04 14:38 1696次阅读
    <b class='flag-5'>时钟</b><b class='flag-5'>偏差</b>和<b class='flag-5'>时钟</b>抖动的相关概念

    什么是时钟偏差?它对现代系统的影响

    什么是时钟偏差?它对现代系统的影响 时钟偏差是计算机硬件时钟和真实时间之间的差异。具体来说,硬
    的头像 发表于 10-31 09:41 988次阅读

    时钟抖动和时钟偏移的区别

    时钟抖动(Jitter)和时钟偏移(Skew)是数字电路设计两个重要的概念,它们对电路的时序性能和稳定性有着显著的影响。下面将从定义、原因、影响以及应对策略等方面详细阐述
    的头像 发表于 08-19 18:11 353次阅读