RISC-V与ARM

news/2024/11/15 1:17:54/

RISC-V与ARM

  • RISC-V 架构
  • RISC-V架构特点
  • ARM 架构
  • RISC-V 与 ARM

指令集架构 (ISA) 基本上是汇编级程序员,或编译器编写者可见的机器部分。 ISA 是软件与硬件相遇的地方。 ISA 定义了机器及其微架构本身可以理解的命令/指令,它还定义了如何存储、访问和实施指令。

我们使用计算机可以理解的语言向计算机的硬件发出指令。计算机语言由称为指令的词组成,词汇表称为指令集。指令集告诉我们每条指令的功能,以及指令在内存中的表达方式。

架构不会告诉您处理器是如何构建的。它告诉您处理器可以做什么。另一方面,微架构描述了处理器的构建和设计方式。微架构定义了缓存的数量和大小、指令周期数、流水线长度等。
了解了 ISA 是什么之后,我们现在继续概述 RISC-V 和 ARM 架构。

RISC-V 架构

RISC-V(发音为“risk-5”)是一种开放的 ISA,可供学术界和工业界免费使用。它构建并改进了原始的精简指令集 (RISC) 架构。

RISC-V架构特点

RISC-V 是一种读入-写出架构,意味着三件事:

  • 它的算术指令只对寄存器进行操作,
  • 只有加载和存储指令才能将数据写入和读出内存,
  • 数据必须首先读入到一个寄存器,然后才能对其进行操作。

RISC-V 不会针对任何特定实现、微架构模式或部署目标进行过度架构/过度优化,因此它适用于所有计算目的。它能够做到这一点是因为它的 ISA 分为两部分,基本 ISA 和可选扩展。基本 ISA 被限制为,包含足以形成编译器目标,并满足现代操作系统的最小指令集。基础 ISA 不能重新定义,它存在于任何实现中。
根据实现要求,可以基本 ISA进行扩展。这允许 RISC-V支持广泛的定制和专业化。

内存系统使用小端字节序。小端字节顺序意味着多字节数据的最低有效字节存储在最低内存地址。

RISC-V ISA 包含一个名为 RVC 的压缩指令扩展,旨在通过用较短的 16 位指令编码替换常见指令,来减少静态和动态代码大小。同时也减少了每条指令的 CPU 周期数,但代价是增加了程序的指令数。它牺牲了代码密度来简化实现电路。

对于嵌入式系统,因为它们具有有限的指令存储容量。为了减少代码大小,RISC-V 使用其 RVC 扩展。 RVC 用较短的 16 位指令编码替换了常见的 32 位指令。

ARM 架构

ARM是一种 RISC 架构。有 3 种不同类型的 ARM 架构用于不同的应用。它们是 A、R 和 M 架构。

  • A-Profile(application profile):应用配置实现了传统的多模式ARM架构,支持基于MMU的虚拟内存系统架构。 这些配置支持 ARM 和 Thumb 指令集。优化以运行复杂的操作系统,如 Windows 和 Linux。它提供了最高的性能。
  • R-Profile(real-time profile):实时配置实现了具有多种模式的传统 ARM 架构,并支持基于 MPU 的受保护内存系统架构。为安全关键环境提供高性能处理器,针对嵌入式控制系统等具有实时要求的系统,进行了优化。
  • M-Profile(microcontroller profile):微控制器配置实现了一个为快速中断处理而设计的程序编写模型,具有寄存器的硬件堆栈,并支持用高级语言编写中断处理程序。 该处理器专为集成到 FPGA 中而设计,是极低功耗应用的理想选择。针对嵌入式系统,提供低延迟、高度确定性的操作。
架构处理器位长度A系列M系列R系列
ARMv632Cortex-M0
ARMv732Cortex-A5, Cortex-A7, Cortex-A8, Cortex-A9, Cortex-A12, Cortex-A15, Cortex-A17Cortex-M3Cortex-R4, Cortex-R5, Cortex-R7, Cortex-R8
ARMv7E32Cortex-M4
ARMv832Cortex-A32Cortex-M23, Cortex-M33Cortex-R52
ARMv864Cortex-A34Cortex-R82

ARM M系列CPU 的指令集很小,通常没有浮点单元,没有内存管理,没有缓存。 它们针对低成本,而非高性能进行了优化。 它们一般与 FLASH、RAM 和外围设备组合成一个微控制器芯片。 它们主要用于控制硬件,可以对裸机(没有库)进行编程,也可以与一些可以提供类似操作系统的功能的库链接。 这些 CPU 主要目的是代替其他各种8位和16位微控制器。

ARM A系列CPU 具有更大的指令集,并且它们通常包括浮点单元、内存管理单元和缓存。 它们针对高性能,而不是低成本进行了优化,对每单位功率的高性能进行了优化。 它们通常作为微处理器出售(通常与以太网、视频、mpeg 解码器等高端外围设备结合使用),需要另外提供片外 RAM 和闪存。 它们通常运行一些操作系统,通常是 Linux,操作系统提供核心地址空间和用户地址空间。这些CPU通常用于手机和平板电脑。

ARM架构的特点
它是一种具有 32 位寻址范围的加载存储架构。

与 RISC-V 不同,它不是开源 ISA,而是专有 ISA。

它对内存系统使用双端字节序。这意味着 arm 处理器/机器能够在硬件级别以两种字节序格式计算/传递数据。

它使用 Thumb 指令集来减少程序代码大小。

它是 32 位和 16 位长度指令集的混合体,对于具有内存大小和成本限制的系统(如嵌入式应用)具有最佳代码密度。它提供了 32 位指令集的高性能,几乎提供了 16 位指令集的代码密度。

RISC-V 与 ARM

现在我们对 ISA、RISC-V 和 ARM 有了深入的了解,我们将根据各种因素并排比较两者。

属性RISC-V 架构ARM 架构
专利开源专有
RISC 架构
默认字节序Little-endianBi-endian
支持 32 位和 64 位地址空间
代码压缩技术✓ (RVC)✓ (Thumb)
加载存储架构
分支延迟槽
  • RISC-V 是开源的,而 ARM 不是。这意味着 RISC-V 是免许可和免版税的。
  • RISC-V 允许用户免费使用新指令扩展 ISA,并创新 RISC-V 处理器的微架构,但 ARM 要求用户支付版税。这让RISC-V很快受到了很多厂商的欢迎。
  • ARM被认为比RISC-V更复杂。另一个原因是,与笔记本电脑、台式机和服务器相比,ARM 对手机的优化过度。
  • RISC-V 并未针对某一特定实现进行过度优化。它适用于所有计算系统,从微控制器到超级计算机。

http://www.ppmy.cn/news/139780.html

相关文章

STM32 WAVWM8978简介

​ WAV即WAVE文件,是最常用的数字化声音文件格式之一,其扩展名为“.wav”。符合RIFF(Resource Interchange File Format)文件规范,用于保存Windows平台的音频信息资源,被Windows平台及其应用程序所广泛支持。 WAV格式还支持MS ADP…

ARM在汽车电子电器架构的应用

整理自ARM中国FAE高级经理及技术专家丁先生在集微网的演讲,侵删。 该演讲涵盖了汽车电子电器架构的多个方面,整体包含的知识面非常广。整个演讲非常精彩,也是非常佩服丁先生在汽车电子电器架构及ARM在其中的应用的精彩阐述。 本人也是从事汽…

WAVWM8978

一、WAV WAV即WAVE文件,是最常用的数字化声音文件格式之一,扩展名为‘.wav’,用于保存Windows平台的音频信息资源。WAV格式还支持MS ADPCM、CCITT A LAW 等多种压缩运算法,支持多种音频数字,取样频率和声道。标准格式化的WAV文件和…

PL51RC003

PL51RC003 是高度集成的非接触式(13.56MHz)读写器SOC。此发送模块利用调制和解调的原理,并将它们完全集成到各种非接触式通信方法和协议中(13.56MHz)。发送模块支持读写器模式,支持 ISO14443A/MIFARE。 PL5…

ARM学习系列 ---- ARM公司简介

1 ARM的发展历程 1978年,CPU (Cambridge Processor Unit)公司在英国剑桥诞生,意为“剑桥处理器单元”。次年,该公司又改名为Acorn。在后续几年,陆续推出BBCMicro微型计算机和ARM1芯片。直到1990年,由苹果公司、芯片厂商…

ST推出 28nm MCU ,NXP更狠,推出16nm MCU

关注星标公众号,不错过精彩内容 作者 | strongerHuang 微信公众号 | strongerHuang 近几年,随着新能源汽车的不断兴起,汽车级 MCU 也是在不断更新升级,各大通用 MCU 厂商也是纷纷布局汽车级MCU。 ST 汽车级 MCU 最近,S…

android8.1源码从下载至本地到导入as可调试到编译源码并刷机到导入clion可调试一条龙

目录 前言 一:下载源码 二:导入代码到as 接下来配置as,使之可调试 三:编译源码 编译 aosp_x86_64-eng 版本 为了进一步检验我们编译产出的镜像是否可用 编译 nexus 6p ( aosp_angler-userdebug )版本 直接刷机 另外也可…

STM32——WAVWM8978简介

1、什么是WAV? WAV即WAVE文件,是最常用的数字化声音文件格式之一,其扩展名为“.wav”。符合RIFF(Resource Interchange File Format)文件规范,用于保存Windows平台的音频信息资源,被Windows平台…