如果 CPU 时钟速度为 1 GHz,基本上每 1 ns 就会触发一次时钟信号,但我想知道在完整的 ALU/寄存器/缓存/内存计算周期中信号的“实际”传播时间是多少?
据我所知,电子信号以光速3x10^8
(m/s)传播,因此它在 1 纳秒内传播 0.3 米。考虑到典型 CPU 的大小,这是 CPU 时钟没有随着计算能力而增加太多的原因吗?
答案1
运行时间只是决定 CPU 最大时钟速度的一个小因素。其他因素包括:
可以为 CPU 提供多少电力?CMOS 电路的时钟频率越高,其对电力的要求就越高,因为打开或关闭电路需要一定的电力,而且时钟频率越高,打开或关闭电路的频率就越高。
CPU 可以散发多少热量?请参阅 1 了解为什么热量会随着频率而增加。
将信号从确定的 0 切换到确定的 1 需要多长时间?信号在源能够产生之前无法开始传播。
我们希望在单个时钟周期内能够容纳多长的路径和多少个开关。您可以通过仅使用单个开关和一条短路径来获得非常高的时钟,但这会使电路设计非常复杂和庞大。您可能希望允许三到四个电路在单个时钟操作的开始和结束之间处理数据,这意味着时钟周期之间需要更多时间进行转换和传播。
接收到的信号需要多长时间才能稳定下来并被下一个输入可靠地检测到或锁存?您可以通过将输入绑定到每个输出来加快这一速度,但这也会使设计变得复杂。假设一个输出馈送十个输入。您是否将所有十个输入都连接到输出?但这样需要很长时间才能驱动所有这些输入。或者你通过门将其展开?但这样传播距离会更长,您需要等待该门切换后才能将输出开始传送到下一个输入。
答案2
太长不看
截至目前,最高实际可实现的时钟速度与良好的分级(精心挑选以获得最佳表现) 部件的频率约为 5 GHz。这是因为增加 CPU 的时钟速度会导致发热量急剧增加,使得冷却此类部件变得不切实际且成本高昂。
更多细节
本文来自 maketecheasier很好地总结了起作用的因素,而没有深入探讨。(强调我的)
在芯片上塞入数十亿个晶体管并每秒打开和关闭数千次会产生大量热量......这些热量必须散去,而且需要适当的冷却解决方案和芯片设计来维持合理的时钟速度。添加的晶体管越多,冷却系统就必须越坚固,以容纳增加的热量。
时钟速度的提高也意味着电压的增加,这会导致芯片功耗的立方增加。... 运行这些晶体管并提高时钟速度需要更多的电压,从而导致功耗大幅增加。因此,当我们尝试提高时钟速度时,我们发现热量和功耗会急剧增加。最终,功率需求和热量产生超过了时钟速度的增长。