RISC-V和ARM是近年来备受关注的两种处理器架构。RISC-V是一种基于精简指令集计算(RISC)原理的开源指令集架构(ISA),而ARM则是一种专有ISA,长期以来在嵌入式系统和移动设备中占据主导地位。
本文将详细探讨RISC-V和ARM的历史、架构特征、性能、功耗、生态系统和未来前景等,以更全面地了解RISC-V和ARM在各个方面的特点。
01、什么是 ISA(指令集架构)?
每个处理器功能的核心在于其指令集架构 (ISA),这规定了处理器可以理解和执行的指令集。它充当硬件和软件之间的基本桥梁,决定了处理器的功能和性能。ISA 的选择会直接影响软件的开发方式,并对处理器的效率、兼容性和灵活性产生长期的影响。
ISA 大致可分为两种类型:开放式和封闭式。封闭式 ISA,如 ARM,是专有的,并由特定公司严格控制,提供的可靠性和兼容性是既定的,并且限制定制。相反,以 RISC-V 为代表的开放式 ISA 是社区驱动的,在定制方面提供了更大的灵活性,能够促进创新并适应特定需求。
RISC-V和ARM之间的比较主要围绕它们所采用的不同ISA,每种 ISA 都有各自不同的优势和方法来满足不断变化的计算需求。
02、RISC-V 与 ARM:背景和历史
ARM
历史上x86架构占据主导地位,推动了英特尔等巨头的发展,但随着ARM的出现,故事开启了新的篇章。
ARM 起源于 Acorn Computers,这家英国公司在 20 世纪 80 年代开发了 Acorn RISC 机器架构。ARM 架构最初设计用于 Acorn 的个人计算机,重点关注功效和简单性。1990 年,Acorn Computers、Apple 和 VLSI Technology 成立了一家名为 Advanced RISC Machines Ltd. 的合资企业,后来演变为 ARM Holdings。
第一个 ARM 处理器 ARM1 于 1985 年推出,随后于1986年推出了ARM2,随着1993 年苹果公司的Newton PDA(Newton personal digital assistant)选择了 ARM610 处理器,ARM 架构开始逐渐出现在大众视野当中,这也标志着 ARM 在移动和嵌入式系统市场的主导地位的开始。
多年来,ARM 开发了多个处理器系列,每个系列都针对特定的细分市场和性能要求。一些 有代表性的包括用于高性能应用的 Cortex-A 系列、用于实时系统的 Cortex-R 系列以及用于微控制器和低功耗设备的 Cortex-M 系列。
ARM的成功可以归功于其创新的许可模式,该模式允许半导体公司授权ARM的IP,并根据他们的特定需求进行定制。这种灵活性使得包括AMD等行业巨头在内的多家公司能够设计和制造基于ARM的CPU和GPU,以优化不同应用。这催生了基于ARM的处理器和设备的庞大生态系统,截至目前,ARM芯片的出货量已超过1800亿颗,每年大约有300亿颗ARM芯片出货。
ARM 架构已成为移动设备、物联网和嵌入式系统事实上的标准,苹果、三星和高通等大公司的产品都依赖 ARM 处理器。
RISC-V
尽管 ARM 在市场上取得了显著的成功,但它是一种专有架构,需要支付许可费用,并在定制方面受到一定的限制。这种专有性质阻碍了小型企业、初创公司以及一些研究人员的使用和开发。RISC-V提供了一种开源的替代方案。
RISC-V 起源于加州大学伯克利分校计算机科学系。该项目始于 2010 年,是由 Krste Asanović 教授、David Patterson 教授及其团队领导的一项研究工作。2011 年发布了第一个 RISC-V 规范。
2015 年,RISC-V 国际组织成立,旨在促进 RISC-V ISA 的采用和标准化。当前该组织拥有 200 多名成员,其中包括谷歌、英伟达和西部数据等主要科技公司。RISC-V在各个行业迅速得到采用,多家公司推出了基于 RISC-V 的处理器和片上系统 (SoC)。
RISC-V 历史上的关键里程碑之一是 2017 年发布的 RISC-V 特权架构规范,它定义了硬件和操作系统之间的接口。该规范推动了更复杂的 RISC-V 处理器的开发,并促进了 Linux 等操作系统向 RISC-V 平台的移植。
另一个重要的里程碑是 2018 年发布的首款商用 RISC-V 处理器 SiFive Freedom U540。该处理器展示了 RISC-V 在商业应用中的可行性,为业界进一步采用该架构铺平了道路。
03、RISC-V 与 ARM:架构
RISC-V
RISC-V 架构框图
RISC-V架构基于RISC原则,强调采用小型、简单且高效的指令集。
RISC-V 的关键架构特征包括加载存储架构、固定长度的 32 位指令格式和少量通用寄存器。RISC-V支持各种整数指令集扩展,例如RV32I(32位)、RV64I(64位)和RV128I(128位)。
以下是 RISC-V 架构的一些独特功能:
模块化和可扩展性:RISC-V 的特征之一是其模块化和可扩展性。ISA 旨在通过自定义指令和协处理器轻松扩展,从而实现定制需求。这种灵活性是通过模块化设计实现的,基本 ISA 可以与可选的标准扩展相结合。
压缩指令集:相对于ARM的Thumb指令集,RISC-V还支持RV32C(或RV64C)的压缩指令集扩展,它提供可以与标准32位指令混合的16位压缩指令。此功能有助于减少代码大小并提高能效,使RISC-V在嵌入式系统和低功耗应用方面特别具有优势。
权限级别和虚拟内存:RISC-V 架构的另一个重要方面是它对权限级别和虚拟内存的支持。RISC-V 特权架构规范定义了三个特权级别:机器模式(M 模式)、管理员模式(S 模式)和用户模式(U 模式)。这些特权级别提供了一种隔离操作系统内核、管理程序和用户应用程序的机制,从而确保了系统的安全性和稳定性。RISC-V还支持基于多级页表方案的虚拟内存系统,从而实现高效的内存管理和保护。
ARM
ARM 架构框图
ARM 架构也基于 RISC 原则。ARM 的关键架构特征包括负载存储架构、固定长度 32 位和可变长度 Thumb 指令的混合以及大量通用寄存器。内存系统采用双端字节排序,使 ARM 处理器能够在硬件级别无缝处理和传输两种端格式的数据。
ARM 处理器分为多个系列,每个系列都针对特定的性能和功耗要求。使用最广泛的 ARM 处理器系列是 Cortex-A、Cortex-R 和 Cortex-M 系列。Cortex-A 系列专为高性能应用而设计,例如智能手机、平板电脑和服务器,支持乱序执行、超标量管道和硬件虚拟化等高级功能。Cortex-R 系列针对实时系统进行了优化,提供快速中断响应时间和确定性行为,通常用于汽车、工业和安全关键型应用。Cortex-M 系列专为微控制器和低功耗设备量身定制,重点关注能源效率和易用性。
Thumb 指令集:Thumb 指令集提供 16 位压缩指令以提高代码密度和能源效率。ARM 引入了 Thumb 指令集,作为传统 32 位 ARM 指令的可选 16 位扩展。此功能可以减少代码大小,同时保障性能,使其适合嵌入式系统等内存受限的设备。
内存管理和保护:ARM 处理器支持各种级别的内存管理和保护,包括用于简单系统的内存保护单元 (MPU) 和用于具有虚拟内存支持的更复杂系统的内存管理单元 (MMU)。2011 年推出的 ARMv8-A 架构增加了对 64 位地址空间的支持,它在现有的32位ARM和Thumb指令集之外提供了一个新的64位指令集。
可选增强功能:除了基本 ISA 之外,ARM 处理器还可以包括可选扩展,例如用于多媒体和信号处理任务的 NEON SIMD(单指令、多数据),以及用于硬件加速加密和解密的密码学,这让 ARM 处理器在能够高效处理各种工作负载的同时保持低功耗和较小的芯片占用空间。
总体而言,ARM通过其专有技术和完善的生态系统成为行业巨头,服务于移动、嵌入式系统和数据中心等多种行业。RISC-V以开源灵活性和适应性为特点,吸引了寻求定制解决方案的用户。两种架构各有优点,具体取决于用户的实际需求。
04、RISC-V 与 ARM:性能
RISC-V 和 ARM 架构之间的比较是多方面的,涉及一系列影响性能的因素。这里列举了 P550 与 Cortex-A75 以及 BeagleV 与 Raspberry Pi的对比。
ARM Cortex-A76 与 SiFive P670 性能对比
如图所示,ARM 的 Cortex-A78 在峰值单线程性能方面略胜于 SiFive 的 P670(RISC-V),但 P670 的计算密度却是它的两倍。因此,考虑到 SiFive 的 P670 处理器的物理尺寸只有竞争对手的一半,其峰值单线程性能可与 Cortex-A78 相媲美。
值得注意的是,Cortex-A78是在2020年12月通过Vivo X60和X60 Pro推出的,而P670是在2022年11月1日发布的,在研发方面存在近两年的差距。ARM 最新的处理器现在在 ARMv9 ISA 上运行,这比 Cortex-A78 的 ARMv8 有了重大改进。ARMv9 处理器的性能提高了约 30%,能效提高了 50%。
就纯粹性能而言,ARM处理器保持领先地位。然而,SiFive 的 P670 的计算密度是 Cortex-A78 的两倍,使 RISC-V 处理器在可穿戴技术中占据有利地位。
在RISC-V与ARM的性能对比中,ARM的迭代速度、完善的生态系统以及广泛的选择使其具有显著的性能优势。然而,RISC-V 的模块化特性和定制潜力对特定用例来说更具吸引力。RISC-V 的开发者还需要努力缩小与 ARM 的性能差距来获得更高的竞争优势。
05、RISC-V 与 ARM:功耗
由于这两种架构都采用RISC理念,因此有必要深入研究区分其功耗性能的具体数据和可测量因素。
RISC-V
功耗是处理器设计的一个重要方面,特别是对于嵌入式系统、物联网设备和电池供电应用而言。RISC-V 的架构强调简单性和模块化,与更复杂的处理器架构相比,这有助于提高能效。RISC-V ISA 处理器物理占用空间更小、功耗低更节能。
RISC-V 固定长度的32位指令格式简化了解码并降低了控制逻辑复杂度,从而降低了功耗。可选的RV32C(或RV64C)压缩指令集扩展提供16位压缩指令,可以通过降低指令读取和解码功率来帮助减少代码大小并提高能源效率。此外,RISC-V 的模块化设计可以根据特定应用要求定制一些仅包含必要功能的处理器,通过减少未使用的硬件功能来降低功耗。
例如针对边缘 AI 和机器学习应用的 GreenWaves GAP8 处理器。GAP8 处理器具有 8 个 RISC-V 内核集群和一个卷积神经网络 (CNN) 专用硬件加速器,可为 AI 工作负载实现高达 200 GOPS/W(每瓦每秒千兆次运算)的功效。
ARM
ARM 的负载存储架构以及固定长度 32 位和可变长度 Thumb 指令的混合使用简化了解码并降低了控制逻辑复杂性,从而降低了功耗。此外,ARM 处理器通常包含电源管理功能,例如动态电压和频率调节 (DVFS),它允许处理器根据工作负载需求调整其工作频率和电压,从而进一步提高能源效率。
ARM 的处理器系列在设计时考虑了不同的功耗和性能目标。例如,Cortex-M 系列针对微控制器和低功耗设备进行了优化,重点关注能效和易用性。Cortex-M4 处理器的运行频率高达 240 MHz,性能达到 1.25 DMIPS/MHz,包括硬件浮点单元 (FPU) 和 DSP(数字信号处理)扩展,适用于低功耗的信号处理和控制应用。在高性能领域,Cortex-A76 等 ARM 处理器实现了出色的每瓦性能比,是智能手机和笔记本电脑等功率受限的高性能设备的理想选择。Cortex-A76 处理器的运行频率高达 3 GHz,可提供 4.0 DMIPS/MHz 的峰值性能,同时保持低功耗。
总体而言,ARM 对功率效率的关注,加上其广泛的生态系统和处理器系列,使其在电源效率方面具有明显的优势。尽管 RISC-V 由于其定制潜力而前景光明,但其开放性需要投入更多的时间和资源才能充分利用其节能功能。
06RISC-V 与 ARM:生态系统和支持
作为一个开源架构,RISC-V吸引了一个由开发者、初创公司和研究人员组成的多元化社区,RISC-V的生态系统相对年轻但发展迅速。虽然它的规模可能还无法与 ARM 相比,但其开放性促进了协作、定制和创新。而ARM已经拥有成熟且广阔的生态系统。其许可模式催生了大量基于 ARM 的产品。
由于RISC-V诞生时间太短,相关的编译器、开发工具和软件开发环境(IDE)以及其它生态要素还在发展。目前RISC-V具有全套开源免费的编译器、开发工具和软件开发环境,这是RISC-V的巨大优势,但是开源版本相比ARM的商用编译器和IDE而言,还颇有差距。RISC-V必须依靠强有力的商业玩家来长期支持和推进方能得到持续发展。
RISC-V
在硬件支持方面,多家半导体公司已经开发了RISC-V处理器和片上系统(SoC),包括SiFive、Andes Technology和Microchip。这些公司提供从低功耗微控制器到高性能应用处理器各种基于 RISC-V 的产品。此外,RISC-V 的开源特性催生了众多开源处理器设计的开发,例如 PULPino 和 RISC-V BOOM 无序超标量处理器。随着亚马逊和其他科技巨头探索 RISC-V 的功能,CPU 架构的格局正在发生显著的转变,开源硬件的地位逐渐提高。
在软件方面,RISC-V 生态系统支持各种操作系统,包括 Linux、FreeBSD 以及 FreeRTOS 和 Zephyr 等实时操作系统 (RTOS)。
ARM
高通、三星和苹果等主要半导体公司都开发了自己的基于 ARM 的处理器,以满足不同的细分市场和性能要求。这些处理器广泛用于各种设备,包括智能手机、平板电脑、物联网设备和嵌入式系统。在软件方面,ARM 生态系统支持众多操作系统,例如 Linux、Android、iOS 和 Windows,以及实时操作系统 (RTOS),例如 FreeRTOS 和 VxWorks。
06、RISC-V对中国半导体产业的发展会带来哪些影响?
从长远来看,RISC-V对中国半导体产业会产生划时代的意义,主要体现在以下方面:
减少对国外技术的依赖。RISC-V已经逐渐成为主流架构和主流生态。通过RISC-V可以减少对外国技术的依赖,在半导体行业更加自给自足。
RISC-V可以推动创新和差异化。RISC-V 的开源性质也鼓励创新,通过定制RISC-V内核能够满足特定需求,基于RISC-V开发新产品和技术也会相对容易,通常比基于专有 ISA 的芯片更高效。
RISC-V可以明显降低芯片研发成本。RISC-V的产业链日趋完善,从处理器内核到硬件设计、操作系统、开发工具、基准测试以及解决方案,全产业链具备完整性,使得行业可以均摊一切成本。
除此之外,RISC-V的使用还可以帮助国内企业为其芯片开发新的市场和应用。例如,RISC-V 芯片非常适合用于物联网设备、边缘计算和人工智能应用,这些市场正在快速增长。
根据Semico Research的预测,到2025年,全球RISC-V CPU内核的出货量累计将达到约800亿颗,复合年增长率高达114.9%,在全球CPU内核出货量当中的占比将超过14%。另有研究数据显示,基于RISC-V架构的AI芯片市场到2027年将达到2910亿美元,复合年增长率73.6%;在通信类AI SoC市场,RISC-V从2019年到2027年间将保持21.2%的复合年增长率;在数据中心市场,2021到2025年RISC-V CPU核市场的复合年增长率将高达115%。
目前,国内在采用RISC-V架构方面已经取得显著进展,这对ARM在中国芯片市场的主导地位造成了一定的冲击。随着RISC-V在全球范围内引起越来越多的关注和应用,将逐渐对ARM构成竞争威胁。期待着未来RISC-V与ARM之间的竞争能够推动整个芯片行业朝着更加开放、创新和多元化的方向发展。
审核编辑:黄飞
评论
查看更多