初心迥异 | ARM和X86的系统架构差异分析(篇一)

简介: 本节中,我们先来看看ARM和Intel,他们的迥异初心。

作者 | 衍云

本周项目组有探讨到ARM和X86的架构最大差异点是什么?

差异很可能在最早的时候就已经确定了,那就是他们的初“心”(体系架构)。

ARM和X86之间的体系架构分歧明显,架构的各自优点也确定了它们各自在市场中的地位。而如今处理器的底层技术却又不断的在融合,市场也出现了交集。

曾经的两条平行线,如今终于要交叉,面临厮杀。现在ARM让IntelX86感到了压力,但是螳螂捕蝉黄雀在后,新出来的RISV-V却又让ARM难受很多。

本系列分析这三者体系架构差异和具体处理器微架构之间的差异,也是《国产处理器的架构现状和演进》续,也是又一次探讨和进一步抛砖,那么让“初心”开始,也回归技术的初心。

PS:ARM架构和优化专题:
https://www.atatech.org/specials/698?spm=ata.13269424.0.0.83c15f857Fk0zv

本系列涉及的面比较多,有些点到为止,有些则有细化讨论。都是在周末连续的大块时间中素材提炼和文字整理的,信息量个人感觉还有挺多,建议同学们进行收藏,茶余饭后慢慢看。

初心迥异——篇一

处理器(Central Processing Unit)本身其主要由运算器、控制器、寄存器三部分组成,完成程序控制、操作控制、时间控制、数据加工,所有设备都围绕它展开。大逻辑上其实非常简单,但细化开来确是那么的复杂,其主要组成部分如下图所示。
image.png
正如很多疑难问题,从顶层设计向下看底层的时候可以抽象的相对简单,但是当立足底层视角的时候,总会碰到一些难题。

上篇中,我们先来看看ARM和Intel,他们的迥异初心。

ARM

ARM公司最早是由赫尔曼·豪泽(Hermann Hauser)和工程师Chris Curry在1978年创立(早期全称是 Acorn RISC Machine)。最早ARM公司在争取英国BBC教育项目中,寻找Intel与其286处理器合作,但是被Intel拒绝, 这间接导致了早期的ARM公司开始自主研发RISC(当然得益于BSD的RISC的研究) 芯片。

不过,ARM公司实现第一枚硅片(Acorn RISC Machine),被同年Intel 386吊打。意外的是,虽然性能差了点意思,但是芯片功耗很低(是386功耗的1/20),这样误打误撞从此就走入了移动市场。

1990年苹果(2000年后苹果公司通过出售该股票渡过了苹果的财务危机)等入资Acorn公司,接着改名为现在的ARM公司(Advanced RISC Machine),也开始进行IP授权。授权模式是三种:处理器、POP和架构授权。处理器授权只能调整功率和功耗,POP则是定制性能优化版本,架构授权则是授权厂商使用自己的架构设计处理器(高通/苹果/华为),当然华为目前是没有拿到ARMv9架构的授权的。
image.png
其实在97年之前ARM也不算不上一帆风顺,直到诺基亚6110(1997年上市产品)用上ARM芯片,这才让ARM和诺基亚一飞冲天。继而,2007年的iphone上市,及08年的android手机上市等都采用的ARM处理器,终于完成了蜕变,拥有了今天的地位。

ARM公司的初心,基于精简指令集(RISC)架构,定位于嵌入式,轻量级、目的单一明确的程序,在移动设备上得心应手。因为指令集数量少,从而可简化硬件逻辑的设计,减少晶体管数量,也减少了功耗,形成了一个市场闭环。

在之前的移动环境下,例如平板、ipad、智能手机。应用程序,相对逻辑简单功能单一,“计算”较少(现在也正在发现变化,移动端的应用在不断的复杂化)。

当前ARM公司的产品演化了几个大系列:

系列 场景 备注
Cortex-A 最佳功率下的卓越性能 华为鲲鹏自研核,和该系列比较近
Cortex-R 可靠的关键任务性能
Cortex-M 最节能的嵌入式设备
Neoverse 可扩展且灵活的云到边缘基础架构 安培处理器的核是基于Neoverse N1原生核
SecurCore 物理安全应用程序的解决方案
Ethos 机器学习推理的场景

Cortex-A主要面向手机平板市场,看重能效比。Neoverse-N主打服务器、网络市场,要求更高的性能和更高的可靠性。Neoverse N1面向高性能设备,是平台名称,与之对应的CPU核心架构名称也是Neoverse N1处理器。平台包含处理器、总线、多核心系统等。Neoverse N1和相对应的处理器代表了ARM首款专为服务器和基础设施市场设计的专用IP,面向消费市场以Cortex为主,面向行业客户则由Neoverse披挂上阵。安培服务器就是基于Neoverse N1核的。

当前最新的基于ARMv8-a微架构处理器是A78。下图比较老,但是比较直观。
image.png
这几年Arm成功地兑现了其所有性能、效率和面积承诺,为大多数手机旗舰设备提供了一些出色的SoC和器件。2018年Cortex-A76的推出以及随后产生的华为麒麟980以及Snap dragon 855芯片。2019年推出Cortex-A77。目前Arm的发展趋势,每一代Arm的系列CPU都将带来持续稳定的20-25%的性能提升。当然目前Arm真正的竞争对手是苹果的CPU设计团队:今年iphone 12应该是会采用5nm的A14,保持着巨大的性能和效率领先优势,可能是领先了两代微架构。

去年(2019)6月ARM发布了下一代架构设计方案其中包括:Cortex-A77 CPU/Mali-G77 GPU/ARM ML处理器。而今年的微架构就已经到A78了。

目前最新的ARM是cortex-a78微架构处理器,采用了5nm,不过规模上市预计在2022年。相比a77在性能和功耗上具有提升,如下图。
image.png

Intel

从1978年Intel发布一款新型的微处理器“8086”(16位)开始。Intel蹭着IBM的PC机大卖,一票走红,创造了一个PC处理器的时代(IBM当时也为了防止Intel垄断要求Intel授权给第二家公司可制造8086处理器,那就是AMD)。8086这块处理器也意味着x86架构的诞生,而x86也成为了一个特定的CISC计算机指令集,定义了芯片的基本使用规则。由于IBM PC机大卖,随后的各大厂家争纷开发IBM PC兼容机(都要求使用Intel处理器),以及Intel 386从16位到32位的提升,进一步为Intel处理器的起飞推波助澜。后来Intel与微软联盟组成Wintel,相互绑定(狼狈为奸)(PC处理器和PC操作系统,直到2011年微软才宣布支持ARM)。所以从开始,Intel就是在PC机市场。
image.png
所以,Intel x86从开始就定位于PC机,应用多是计算密集型的,如多媒体、科研计算、模拟等(在1999年市值突破了5000亿美金,当然没有一家企业是顺风顺水的,在Intel 奔腾四(高频、高压、高功耗)年代(2005年+),基本是被AMD的速龙XP摁在地上打,而且后来的奔腾四双核为了追进度也是直接是胶水双核,就是将两个DIE直接封装在一起,没有专用总线,成为其历史上最愚蠢的决定之一)。从2006年的酷睿架构开始搭载笔记本电脑,Intel才开始再次的腾飞,并开始甩开AMD。

X86处理器的高效执行一直是Intel发展道路上的追求目标。另外,X86是复杂指令集(CISC)架构,本身存在很多机器指令,可以高效地完成一项专门任务(比如MMX, SSE中的指令)。

当然CISC架构也会使得硬件的逻辑复杂,晶体管数量庞大。为了进一步高效地进行运算,x86架构会有较长的流水线以达到指令级并行(ILP),而长流水线也会带来了弊端,当遇到分支时,如果预载入分支指令不是未来真实的分支,那么要清空整个流水。因此,x86有引入了复杂的分支预测机构,来确保流水线的效率。再加上多级cache,超线程、虚拟化等等技术,使得x86的复杂度越来越高,而向后兼容性也使得Intel历史包袱越来越大。

另外,AMD也会通过X86指令集的创新来反逼Intel,迫使Intel x86进行改变。而激烈的市场竞争也会不断的促进的处理器微架构升级,例如核显。从Sandy Bridge开始酷睿增加了核显,而且面积超大如下图。
image.png
而在服务器市场主要是至强系列(从1998年就开始命名服务器市场的至强处理器),不可置疑的是,通过几十年的技术积累,x86服务器在服务器领域的地位已经独孤求败,而Intel 处理器也成为了PC处理器的代名词。
image.png
下篇ARM和X86的狭路相逢

相关文章
|
5月前
|
人工智能 API 数据安全/隐私保护
Apifox 与 Apipost 的 API 文档引擎对比:底层架构、性能与可扩展性分析
深入探索市场上两大主流API工具——Apifox和Apipost的文档能力时,发现了令人惊讶的差距。这不仅仅是功能多寡的问题,更关乎开发效率与团队协作的质变。
|
2月前
|
Java API 开发工具
灵码产品演示:软件工程架构分析
本演示展示灵码对复杂软件项目的架构分析与文档生成能力。通过Qwen3模型,结合PlantUML,自动生成系统架构图、微服务时序图,并提取API接口文档,实现高效、智能的代码理解与文档输出。
207 5
|
2月前
|
存储 JSON 数据处理
ClkLog埋点与用户行为分析系统:架构升级与性能全面提升
随着越来越多企业在实际业务中使用 ClkLog,数据规模和分析需求也不断提升,部分用户日活已经超过10万,为了顺应这一趋势,ClkLog 秉持 “开放透明、持续演进”的理念,推出了迄今为止最重要的一次性能优化升级。新版本在大规模数据处理与复杂查询场景中,性能表现实现了跨越式提升。经过多轮研发与严格测试,新版本现已正式上线:在原有付费版 1.0 的基础上架构全面升级,并同步发布全新的 2.0 版本。为用户带来更强的性能与更广的适用场景。
|
3月前
|
存储 前端开发 JavaScript
如何开发设备管理系统中的经验分析报表板块 ?(附架构图+流程图+代码参考)
设备管理系统(EMS)助力企业高效管理设备生命周期,涵盖采购、维护到报废全流程。本文详解经验分析报表模块设计与开发,涵盖动态看板、点检、巡检、维修、保养及库存统计功能,提供代码示例与架构设计建议,提升设备管理效率与决策水平。
|
6月前
|
机器学习/深度学习 人工智能 算法
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
该研究系统梳理了大型多模态推理模型(LMRMs)的技术发展,从早期模块化架构到统一的语言中心框架,提出原生LMRMs(N-LMRMs)的前沿概念。论文划分三个技术演进阶段及一个前瞻性范式,深入探讨关键挑战与评估基准,为构建复杂动态环境中的稳健AI系统提供理论框架。未来方向聚焦全模态泛化、深度推理与智能体行为,推动跨模态融合与自主交互能力的发展。
470 13
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
|
5月前
|
运维 监控 数据可视化
一文详解:工业软件“低代码开发平台”技术架构研究与分析
本文围绕工业软件低代码开发平台的机遇与挑战,提出基于自动化引擎的技术架构,由工具链、引擎库、模型库、组件库、工业数据网关和应用门户组成。文章分析了其在快速开发、传统系统升级中的应用模式及价值,如缩短创新周期、降低试错成本、解决资源缺乏和提升创新可复制性,为我国工业软件产业发展提供参考和支持。
|
5月前
|
负载均衡 Java API
基于 Spring Cloud 的微服务架构分析
Spring Cloud 是一个基于 Spring Boot 的微服务框架,提供全套分布式系统解决方案。它整合了 Netflix、Zookeeper 等成熟技术,通过简化配置和开发流程,支持服务发现(Eureka)、负载均衡(Ribbon)、断路器(Hystrix)、API网关(Zuul)、配置管理(Config)等功能。此外,Spring Cloud 还兼容 Nacos、Consul、Etcd 等注册中心,满足不同场景需求。其核心组件如 Feign 和 Stream,进一步增强了服务调用与消息处理能力,为开发者提供了一站式微服务开发工具包。
609 0
|
1月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路

热门文章

最新文章