ARMv7-A/R/M系列 --- 简介

2023-05-16


1. 简介

在ARM11之后的处理器家族,改采Cortex命名,并针对高、中、低阶分别划分为A、R、M三大处理器。

像是高阶手机用的Coretex-A系列,或者是微控制器所使用的Coretex-M系列,

需要较高性能、或是实时处理的系统则改用Coretex-R系列。

除了Cortex-M0、Cortex-M1为ARMv6-M,冯?纽曼架构之外,其他Cortex的处理器架构更新到ARMv7,一样由高至低分成ARMv7-A、

ARMv7-R、ARMv7-M三种,其中ARMv7-M不支持最原始的ARM指令集,仅支持16bit的Thumb指令集,却加入NVIC(Nested Vectored

Interrupt Controller),提供更快的中断处理、还有负责CPU在深层睡眠时的中断处理WIC(Wake-up Interrupt Controller)。

Cortex-A(ARMv7-A)和Coretex-R(ARMv7-R)2种架构基本上是相同的,都支持更新的进阶型SIMD处理,称为NEON,ARM宣称效

能至少是上一代处理器架构ARMv6的2倍。NVIDIA的Tegra 2处理器较为特殊,虽是采用Cortex-A的CPU,但没有包含NEON,反而使用自

家的技术,内建专门的音频处理器和视讯处理器。

Cortex-A和 Coretex-R最大的差异在于内存管理单元部分:

Cortex-A使用MMU(memorymanagement unit)

Cortex-R使用MPU(memoryprotection unit)

前者的内存管理单元提供虚拟内存的支持,后者只能运作在内存保护模式。

2. Cortex-A

ARM Cortex?-A 系列的应用型处理器可向托管丰富的操作系统平台的设备和用户应用提供全方位的解决方案,包括超低成本的手机、智能手机、移动计算平台、数字电视、机顶盒、企业网络、打印机和服务器解决方案。高性能的 Cortex-A15、可伸缩的 Cortex-A9、经过市场验证的 Cortex-A8 处理器和高效的 Cortex-A5 处理器均共享同一体系结构,因此具有完整的应用兼容性,支持传统的 ARM、Thumb? 指令集和新增的高性能紧凑型 Thumb-2 指令集。

3. Cortex-R

ARM Cortex?-R实时处理器为具有严格的实时响应限制的深层嵌入式系统提供高性能计算解决方案。目标应用包括:

·        智能手机和基带调制解调器中的移动手机处理。

·        企业系统,如硬盘驱动器、联网和打印。

·        家庭消费性电子产品、机顶盒、数字电视、媒体播放器和相机。

·        用于医疗行业、工业和汽车行业的可靠系统的嵌入式微控制器。

在这些应用中,采用的是对处理响应设置硬截止时间的系统,如果要避免数据丢失或机械损伤,则必须符合所设置的这些硬截止时间。因此 Cortex-R 处理器是专为高性能、可靠性和容错能力而设计的,其行为具有高确定性,同时保持很高的能效和成本效益。

Cortex-R 实时系列处理器使用实时操作系统提供在硬实时限制下运行的高性能和深层嵌入式应用的必要功能。此功能集将 Cortex-R 与 Cortex-M 和 Cortex-A 系列处理器区别开来。显而易见,Cortex-R 提供的性能比 Cortex-M 系列提供的性能高得多,而 Cortex-A 专用于具有复杂软件操作系统(使用虚拟内存管理)的面向用户的应用。

 

4. Cortex-M

ARM Cortex?-M 处理器系列是一系列可向上兼容的高能效、易于使用的处理器,这些处理器旨在帮助开发人员满足将来的嵌入式应用的需要。这些需要包括以更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。

Cortex-M系列针对成本和功耗敏感的 MCU 和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。

比较 Cortex-M 处理器

Cortex-M 系列是必须考虑不同的成本、能耗和性能的各类可兼容、易于使用的嵌入式设备(如微控制器 (MCU))的理想解决方案。每个处理器都针对十分广泛的嵌入式应用范围提供最佳权衡取舍。

ARM Cortex-M0ARMCortex-M3ARM Cortex-M4

“8/16 位”应用

“16/32 位”应用

“32 位/DSC”应用

低成本和简单性

性能效率

有效的数字信号控制

Cortex-M 系列处理器都是二进制向上兼容的,这使得软件重用以及从一个 Cortex-M 处理器无缝发展到另一个成为可能。

 

http://t17.techbang.com/topics/16639-fully-understand-arm-processors-cisc-and-risc-are-what-history-structure-a-see-through

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ARMv7-A/R/M系列 --- 简介 的相关文章

随机推荐

  • BundleFusion复现手册——Win10+VS2013+Cuda8.0+KinectV2实时重建

    文章目录 一 摘要二 操作环境三 工程环境配置3 1 装VS2013和CUDA8 03 2 DirectX SDK 安装3 3 Kinect SDK 2 0 四 VS2013代码生成 xff08 以离线数据为例 xff09 4 1 依赖配置
  • C++基础入门

    C 43 43 基础入门 C 43 43 初识HelloWord变量 常量和关键字 数据类型整型实型 xff08 浮点型 xff09 字符串 C 43 43 初识 HelloWord 打开Visual Studio xff0c 创建新项目
  • 二(两)视图多视图点云配准

    二视图多视图点云配准综述 多视图视图点云配准多视图点云粗配准基于生成树的粗配准基于形状生成的多视图粗配准算法 多视图点云精配准 点云配准 xff08 Point Cloud Registration xff09 是将两个或多个点云数据集对齐
  • 点云传统滤波算法

    点云滤波 分割功能滤波直通滤波条件滤波提取索引滤波 下采样类滤波体素滤波均匀采样滤波 去除噪声点类滤波统计滤波半径滤波高斯滤波双边滤波随机采样一致滤波投影滤波 本文介绍了各种滤波算法的原理以及给出了相关实现方法 分割功能滤波 分割功能滤波是
  • K-d树和八叉树

    K d树 xff1a 解决KNN近邻问题查找效率 对于一个k维的超平面 xff0c 在KD树每一层的构建中都选择一个维度来进行划分 xff0c 将k维的数据空间分为两部分 xff0c 并使其尽量平衡 然后如此递归下去 也就是说假如我们要储存
  • C++突击面试

    目录 1 编译内存相关 1 1 C 43 43 程序编译过程 1 2 C 43 43 内存管理 1 3 栈和堆的区别 1 4 变量的区别 1 5 全局变量定义在头文件中有什么问题 xff1f 1 6 内存对齐 1 7 什么是内存泄露 1 8
  • 自动驾驶 规划综述

    Motion Planning What is motion planning 规划的本质是 xff1a 搜索问题 好 的规划就是一个目标函数 xff1a 求最优解 Motion Planning的三个领域 Robotic Fields 生
  • 数值最优化

    书 xff1a Numerical Optimization 文档 xff1a 安全验证 知乎 知乎 xff0c 中文互联网高质量的问答社区和创作者聚集的原创内容平台 xff0c 于 2011 年 1 月正式上线 xff0c 以 让人们更好
  • Qlist的用法

    QList是一种表示链表的模板类 QList是Qt的一种泛型容器类 它以链表方式存储一组值 xff0c 并能对这组数据进行快速索引 xff0c 还提供了快速插入和删除等操作 QList QLinkedList和QVector提供的操作极其相
  • QT QTableView 获取某行的所有信息

    1 信号槽 显示信息 connect ui gt tableView SIGNAL clicked QModelIndex this SLOT show list 2 获取当前行的行号 int row 61 ui gt tableView
  • ubuntu 开发环境配置记录

    目录 1 VIM及zsh配置记录2 Ubuntu 配置FTP服务器3 Ubuntu 配置SSH服务器4 Ubuntu 更换软件源 1 VIM及zsh配置记录 xvim tools rar 是别人已经搭建好的环境 xff0c 下文仅为对其配置
  • CMakeLists.txt 编辑语法学习

    已hello cpp为源文件 构建一个CMakeLists txt 1 2 3 cmake minimum required VERSION 2 8 project hello add executable hello hello cpp
  • CentOS yum有时出现“Could not retrieve mirrorlist ”的解决办法——resolv.conf的配置

    错误如下 xff1a root 64 localhost svn yum install gcc c 43 43 x86 64 已加载插件 xff1a fastestmirror langpacks Could span class hlj
  • JSP九大内置对象的作用和用法总结

    JSP全名为Java Server Pages xff0c 中文名叫java服务器页面 JSP中一共预先定义了9个这样的对象 xff0c 分别为 xff1a request response session application out
  • 搭建vscode+vue环境

    一 安装vue js 1 简介 Vue js xff08 读音 vju 类似于 view xff09 是一套构建用户界面的 渐进式框架 与其他重量级框架不同的是 xff0c Vue 采用自底向上增量开发的设计 Vue 的核心库只关注视图层
  • 2G、3G、4G网络制式上下行频率、速率比较

    本文介绍第二代 xff08 2G xff09 移动通信系统和第三代 xff08 3G xff09 移动通信系统常见制式基础知识 xff0c 主要有2G xff08 GSM900 EGSM DCS1800 PCS1800 xff09 3G x
  • 23种设计模式UML图

  • lvs负载均衡基础知识梳理

    https www cnblogs com kevingrace p 6137975 html
  • 微内核和宏内核

    https zhuanlan zhihu com p 53612117
  • ARMv7-A/R/M系列 --- 简介

    1 简介在ARM11之后的处理器家族 xff0c 改采Cortex命名 xff0c 并针对高 中 低阶分别划分为A R M三大处理器 像是高阶手机用的Coretex A系列 xff0c 或者是微控制器所使用的Coretex M系列 xff0