发布时间: 2024-04-09 18:08:14 来源:产品中心
苹果创造了资本主义历史上最成功的产品,成为第一家市值达到 1 万亿美元的企业。让我们大家一起探究苹果最神秘的芯片研发部门,回顾苹果历代 CPU 架构,从 1984 的 68k 到自研芯片。
最近苹果终于对外公开了企业内部最神秘的部门 —— 芯片研发中心,媒体第一次进入这个部门,一窥苹果全部的产品核心的诞生地。
苹果创造了资本主义历史上最成功的产品,成为第一家市值达到 1 万亿美元的企业。
通过畅销的 iPod 等产品、无与伦比的品牌推广,以及史蒂夫・乔布斯的独特魅力,成功地让科技变得时尚和优雅。
苹果在硬件优化方面的执着令人印象非常深刻,从 1984 年发布 Mac 以来,已经三次改变了 CPU 架构。
每当一家科技公司宣布要改变 CPU 架构时,人们普遍发出质疑,这一些企业是否能在整个软件ECO被抛弃的情况下生存下来。
著名科技专栏作家约翰・德沃夏克曾表示,将 PowerPC 架构转变为英特尔的 x86 架构,为苹果引入了 Windows 世界的前奏。打开了苹果与 Windows 更深入沟通的大门。
一开始,Macintosh 是一种相对便宜的电脑,当乔布斯领导下,Macintosh 开始专注于一件事情:赢过 LISA 团队。
但是,在 20 世纪 80 年代,如果想要设计一台功能强大的 PC 电脑,要选择现代的 16bit 处理器架构。
CPU 是一种将数据从计算机内存 (RAM) 移至快速临时内存(寄存器)、对该数据运行操作,然后将输出移回内存的设备。
寄存器是电子存储器中最小的单元 —— 它们在 CPU 的核心中只保存几个位。CPU 按照指令(计算机程序)对该数据执行操作,操作位是 1 和 0。
这些运算由算术逻辑单元 (ALU) 执行。这绝大多数都是执行简单、专门工作的电路的集合,例如:
CPU 的控制单元一次解码一条指令,以决定哪些数据应移至哪个寄存器,以及哪个寄存器的数据应通过哪个 ALU 电路。
非常快速地多次执行这些操作,它会累加输出,例如矩阵乘法、视频游戏中的碰撞物理或将图像数据光栅化为屏幕像素。
首先,Intel 8088 有着 16 位微处理器,支持 640kB RAM,IBM PC 采用了这种芯片架构,因此拥有强大的现有软件ECO,由于英特尔巨大的规模经济,低端价格约为 35 美元(以 1983 年美元计算)。
而 Zilog Z8000 是纯 16 位微处理器,支持 8MB RAM,很少有大型竞争对手使用这种架构,最小的软件ECO,中档价格点约为 55 美元。
总的来说,选择摩托罗拉 68k 处理器似乎是具有前瞻性的,这解释了为什么 1984 年的 Macintosh 不同于其他电脑。
尽管它在开发ECO和兼容性方面不如主流的 IBM PC,但这个选择为品牌带来了差异化。
更重要的是,68k 拥有一个几乎完全正交的指令集,这在某种程度上预示着几乎每个 CPU 操作都可以在几乎每个寄存器上执行,而许多竞争的 CPU 则限制了指令的寄存器选择。
这种正交性使 CPU 更容易编程,对于培育新兴的软件ECO来说是一个理想的选择。
最终,16MB 的内存寻址范围变得很重要,Macintosh 保留了顶部 12MB 的内存供操作系统使用,同时共享了 4MB 的内存给不同的软件应用程序。
如果查看 2012 年 16GB iPod Touch 中的可用存储空间,你就会发现可用空间其实非常的少。
1994 年,当时史蒂夫・乔布斯已经离开苹果,开始投身皮克斯和 NeXT 的创业事业时,苹果逐渐失去了市场影响力。
与之前的竞争对手 IBM 相比,他们正在经历着微软的竞争,这一过程既漫长又痛苦。
在此期间,英特尔和比尔・盖茨(在 20 世纪 90 年代被戏称为“魔鬼”)结成了一种名为 Wintel 的邪恶联盟,这使得这两家公司几乎垄断了市场。
这并不是要低估 x86 芯片架构的威力,英特尔凭借其 100MHz 的速度和出色的能效表现,获得了市场主导地位。
而带领 Macintosh 进入 90 年代的摩托罗拉 68k 系列芯片却未能跟上发展。
面对垄断的威胁,苹果与长期合作伙伴摩托罗拉以及不太可能的盟友 IBM 合作,旨在用团结对抗资本主义势力。
于是,AIM(苹果、IBM、摩托罗拉)联盟应运而生。他们认识到 x86 架构存在一个重要弱点:它采用了 CISC 架构。
苹果开发了一个仿真器,使 PowerPC 能够模拟摩托罗拉 CPU。这在某种程度上预示着它可以实时将指令从一种架构转换为另一种。
显然,这会带来性能成本。不过,幸运的是,由于 PowerPC CPU 很强大,因此对于升级硬件的用户来说,这种模拟通常不是大问题。
苹果采取的另一策略是在过渡期内使用宽二进制文件。这样,软件可以包含针对 68k 和 PowerPC 架构编译的代码。
因此,工程师可以发布单个应用程序,其中包含两个单独的二进制文件,可以在两种 Mac CPU 平台上运行。
在当时,硬盘驱动器容量通常只有 80MB,这种情况变得很烦人。因此,出现了二进制剥离工具,使最终用户只需要保存适用于他们设备的文件。
总的来说,苹果的过渡是成功的。从 68k 过渡到 PowerPC 带来了巨大的性能提升。仿真和宽二进制文件使软件ECO得以顺利过渡。
然而,不幸的是,Wintel 联盟就没有受一定的影响。随着 Pentium 和 Windows 95 的发布,它们的市场主导地位达到了前所未有的水平。Windows 慢慢的变成为默认的计算平台,将全球各地的学校 ICT 课程变成怎么样去使用 Microsoft Office。
现在,他们已拥有了坚实的硬件平台,而苹果陈旧的 System 7 Mac 操作系统成为了主要障碍。
他们曾尝试内部项目来创建 Windows 的竞争对手,但未成功,因此他们不得不通过收购的方式来解决这一个问题,即简单地购买一个新的操作系统。
2000 年代初,苹果再次恢复了魔力,乔布斯王者归来之后,划时代的 Mac OS X 以及 iPod 取得的成功使陷入困境的苹果转变为消费电子产品巨头。
笔记本电脑的市场越来越庞大,而 PowerPC CPU 的耗电和发热成为了劣势,无法打造出乔布斯所设想的超薄笔记本电脑。
那么,是什么让 Intel x86 架构如此出色?这里我们稍微讨论一下 CPU 设计中的一些概念,以及当时的英特尔在 CPU 各个方面上所进行的创新。
CPU 从内存 (RAM) 获取数据后,需要将其放入片上的寄存器中执行操作。但 CPU 的时钟频率远高于 RAM,于是 RAM 成为了系统速度的瓶颈。
因此,CPU 发展了片上缓存(Caches)来存储中等数量的数据。作为缓冲地带更靠近芯片本身,并允许更快地访问必要的数据。
计算机系统中存储的分层遵循以上的金字塔结构,由下到上,存储介质的容量越来越小,但速度越来越快,充分利用了计算机程序的“局部性”原理,大大提高了整体的效率。
分支指令用于处理条件语句。聪明的 CPU 使用统计数据来猜测代码的去向,并尝试保持指令管道的填充以获得最大利用率。
其机制涉及直接内置于 CPU 电路中的硬件算法。称为分支历史表的缓冲区缓存最近的分支结果。
超标量架构是多任务处理的终极目标。超标量 CPU 可以在单个时钟周期内同时执行多条指令。
这种架构之所以有效,是因为算术、在寄存器之间移动内存以及浮点运算等操作需要 ALU 上的不同电路。
对于拥抱 Intel x86 这种重大的转变,Apple 再次采用其历史悠久的过渡技术来实现 CPU 架构的平稳迁移。
Apple 推出了为两种 CPU 架构构建的通用二进制文件,可以通过简单的 Xcode 构建配置进行设置。
在硬件和软件的共同助力之下,苹果公司交付了完美的作品,实现了乔布斯的“超薄”梦想,同时也将苹果公司带入了新的时代。
了解乔布斯,了解苹果的人,一定会明白他们的最终竞争优势:硬件和软件的紧密集成。
十年后的 2018 年,苹果再次以 3 亿美元的价格部分收购了欧洲芯片设计公司 Dialog。
那么,对比前面所说的 Intel X86 架构,M1 又有什么自己的秘密武器呢?
首先,M1 芯片采用异构计算策略,这意味着针对特定工作负载使用专用的组件。M1 SoC 的组件专门用于许多计算任务。
其次,M1 芯片具有 GPU 和 CPU 之间共享的统一内存架构,Apple 分配相同的内存块(RAM 和 L3 缓存)在两个处理器之间共享,并且它的格式可以同时满足 CPU 所需的高吞吐量以及 GPU 所偏好的大块数据。
传统情况下,当将数据发送到外部 GPU 进行处理时,CPU 通常需要将数据复制到 GPU 拥有的内存中,然后才能拾取数据进行处理,而统一内存架构解决了这样的一个问题。
我们之前讨论过超标量架构,该架构使 CPU 内核能够同时读取、解码和分派多个指令。M1 芯片凭借其 RISC 架构,使苹果可以通过乱序执行将其提升到一个新的水平。
基本的 M1 芯片有 8 个解码器,CPU 内核在每个时钟周期同时填充这些解码器。这些指令被并行地分派到各种专用电路。
最后,M1 芯片上的所有部件在物理上都非常接近。即使电信号以闪电般的速度移动,当传输距离较短时,操作也会更快。
苹果之所以是苹果,也许正是来源于一直以来对于硬件和软件的极致把控,那么,在开源时代的今天,苹果的未来又会怎么样呢?
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更加多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。