同步时钟与异步时钟介绍

本文详细探讨了同步时钟与异步时钟的概念,重点分析了同源同频时钟的不同相位情况对时序的影响。同步时钟中,即使相位不同,只要满足一定的相位偏差条件,依然可以保证时序正确。同源整数倍分频的时钟也是同步时钟的一种。而在异步时钟环境下,特别是不同源或非整数倍分频时,满足时序要求变得更加复杂。文章深入解析了这些情况下的时序计算公式,强调了组合逻辑的约束和建立时间的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1. 同步时钟

时钟同源可称为同步时钟,不过时钟频率相同、相位差固定,以及时钟频率比为整数倍的时钟也可称为同步时钟,其重点在于对于每个发起时钟沿,其捕获时钟沿 都是确定且合理的

同源时钟:时钟产生的源头相同,例如PLL,相位不需要相同,只要求相位固定。

1.1. 同源同频

说明两个时钟的相位差是常数

同相位

不解释

不同相位

在这里插入图片描述

我们从公式去分析,STA中只有建立时间检查与时钟有关,而对于同频不同相位的时钟而言,公式变成

T s e t u p U F F 1 < T △ p h a s e + T c l k 2 U F F 1 − ( T c l k 2 U F F 0 + T C K 2 Q U F F 0 + T U F F 02 U F F 1 ) (a) T^{UFF1}_{setup}<T_{△phase}+T_{clk2UFF1}-(T_{clk2UFF0}+T^{UFF0}_{CK2Q}+T_{UFF02UFF1}) \tag{a} TsetupUFF1<Tphase+Tclk2UFF1(Tclk2UFF0+TCK2QUFF0+TUFF02UFF1)(a)

( a ) (a) (a)式中的相位偏差 T △ p h a s e T_{△phase} Tphase替换了原来的时钟周期 T c l k T_{clk} Tclk

注意一定有 T △ p h a s e < T c l k T_{△phase}<T_{clk} Tphase<Tclk成立,距离发起沿最近的时钟沿才是捕获沿。

在这种情况下, ( a ) (a) (a)式依旧可以满足,不过有了一些变化

T △ p h a s e T_{△phase} Tphase不能过小,否则亚稳态

一般来说时钟周期 T c l k T_{clk} Tclk比建立时间 T s e t u p U F F 1 T^{UFF1}_{setup} TsetupUFF1还是大很多的,但是这里的相位差 T △ p h a s e T_{△phase} Tphase可就不一定了,谁知道大多少呢?

● 组合逻辑 T U F F 02 U F F 1 T_{UFF02UFF1} TUFF02UFF1要求更严格了, 即能取到的最大值更小了

相比于同源同频同相,同源同频不同相的 ( a ) (a) (a)式右侧被减数变小了,又因为是同源 T c l k 2 U F F 1 − T c l k 2 U F F 0 − T C K 2 Q U F F 0 T_{clk2UFF1}-T_{clk2UFF0}-T^{UFF0}_{CK2Q} Tclk2UFF1Tclk2UFF0TCK2QUFF0没变化,所以要想继续满足该不等关系,减数能取到的最大值变小了。

注意,此处说的是产生时钟的这个时钟源是同频固定相位差的,不是时钟偏斜导致沿到达各触发器CK端的时间存在相位差

1.2. 同源 整数倍分频

2. 异步时钟

2.1. 不同源

2.2. 同源 非整数倍分频

2.3. 同源 整数倍分频 不满足时序要求

### ADC同步时钟异步时钟的区别 #### 定义工作原理 同步时钟是指ADC的控制逻辑时钟信号严格保持一致,所有的操作均依赖于固定的时钟周期完成。对于一个分辨率为N位、采样率为Fs的ADC而言,其内部时钟频率需满足至少为\( Fs \times (N+1) \)[^3]。这种设计方式简单直观,但由于固定时钟周期的存在,在某些情况下可能会导致效率低下。 相比之下,异步时钟并不依赖特定的全局时钟源来驱动整个转换过程。它通过检测比较器状态并动态调整后续动作的方式实现逐次逼近算法中的每一步骤[^2]。这种方式能够更灵活地适应不同输入条件下的实际需求,减少不必要的等待时间。 ```python # 示例伪代码展示两种模式下可能的操作差异 def synchronous_ADC_conversion(): for i in range(N_bits): # 预定义好的循环次数基于分辨率 wait_for_clock() # 等待下一个时钟沿到来才继续下一步 def asynchronous_ADC_conversion(comparator_output): step = initial_step() while not conversion_complete(): adjust_based_on_comparator(comparator_output) update_step_size_if_needed(step) ``` #### 性能特点对比 从性能角度来看,采用同步方法虽然便于硬件实现且稳定性较好,但存在显著弊端:一是所需高频频率先不说增加复杂度还带来额外能耗;二是未能充分利用具体应用场景特性优化整体流程长度—即无论当前阶段是否真的需要那么多时间都得按照最坏情况预留间隔。 另一方面,运用异步机制则可以在一定程度上缓解上述问题 。例如 ,当面对较大差值 的 输入信号变化时可迅速做出反应无需经历完整预定序列即可得出初步结论进而加快总体进度 ; 同时也避免了引入过高频率的工作节奏从而降低能源消耗水平. #### 应用场景分析 鉴于两者各自的优劣势,它们适用于不同的场合: - **同步时钟** 更适合那些对精确性一致性要求较高而且资源允许支持相应等级运算能力环境之中 ,比如工业测量设备或者医疗仪器等领域当中经常可以看到此类应用实例.[^4] - 而 **异步时钟**,由于具备更好的灵活性以及相对较低的成本优势,则广泛应用于消费电子产品如手机摄像头图像传感器等方面,在这些地方往往更加注重功耗表现同时也要兼顾一定的精度标准 . ### 结论 综上所述,选择合适的ADC时钟方案取决于目标系统的具体需求平衡考量多个因素之后作出决定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Starry丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值