郑昀
25-10-10 16:26 微博认证:云纵世纪(天津)数字科技有限公司CTO

#昀哥看数# 身边的约定俗成从何而来——为什么IBM PC早期CPU主频是4.7727MHz?
上个世纪IBM PC刚推出的时候,时钟频率(或叫CPU主频)是 ​4.7727 MHz。这个奇怪的数字是怎么来的?
这是因为它主板上的晶振是 14.31818 MHz。那这个奇怪的数字又是怎么来的?
因为早期彩色电视的晶振是 14.31818 MHz。由于彩色电视机产量巨大,​14.31818 MHz​的晶振变得非常廉价和普遍。
当IBM在1981年设计个人电脑时,为了控制成本,直接采用了这种现成的、价格低廉的电视标准晶振。通过一个简单的三分频电路(14.31818 MHz ÷ 3),就得到了4.7727 MHz​(通常简称为 4.77 MHz),作为Intel 8088 CPU的工作时钟。

发现没有,很多东西都是从电视这儿衍生来的,就像两个马屁股的宽度决定了现代火箭的直径。比如说,电视决定了录制音频选择44.1kHz(http://t.cn/AXzUjQvB),电视决定了电脑一开始的分辨率是640*480(http://t.cn/AXzU2QMh)。

那 14.31818 MHz 到底怎么来的?

①14.31818 来自于4倍的色度副载波频率:14.31818=3.579545 MHz*4
NTSC制彩色电视需要将一个色度副载波信号“嵌入”到亮度信号中。这个频率的计算非常精密,公式为:色度副载波频率 = 帧频 × 每帧扫描行数 × (每行色度周期数 / 2) ÷ 1.001
代入数值则为:30 fps × 525 行 × (455/2) ÷ 1.001 ≈ 3.579545 MHz。
②525 来自于CRT电视的扫描线。
以NTSC制式电视为例,有525行扫描线。选择525这个数字,确实因为它能被3、5、7等整数整除,这简化了当时电视同步电路和倍频电路的设计。
③30fps 是因为美国交流电供电频率为 60Hz,为了在有限的带宽下平衡流畅度和画面闪烁感,工程师采用了隔行扫描。它不是一次性完整地绘制一帧图像,而是将一帧图像分为两场来扫描,用两个完整周期去画一帧,所以每秒能够显示的帧数就是 ​30帧(30fps)​。
④455 是一个精心选择的系数。
第一,455这个数字可以被5、7、13等多个质数整除(455 = 5 × 7 × 13)。这是为了简化电路设计,方便从主振频率中分频得到系统所需的各种时序信号。
第二,“455/2”​​ 是为了计算出精确的色度副载波频率,并实现相位互补,核心目标是消除彩色信号对黑白电视机的干扰,实现兼容。

总结:这又是一个技术传承和工程智慧的经典案例,如图所示,美国交流电频率 60Hz,决定了NTSC制式电视的帧数 30fps和扫描线行数 525,进一步决定了色度副载波频率 3.579545,进一步决定了 IBM PC 早期的CPU主频。
当然,现在主流消费级CPU(如 Intel Core i9, AMD Ryzen 9)的​基础频率已经到了约 3-4 GHz,加速频率可达 5-6 GHz。

发布于 北京