[处理器、单片机]ARM
1、ARM简介:
ARM是Advanced RISC Machines的缩写。1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州San Jose VLSI技术公司制造。20世纪80年代后期,arm产品用于台式机。1990年Acorn改换成Advanced RISC Machines Limited公司(后简称为arm limited)。20世纪90年代,arm32位嵌入式RISC处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。
2、ARM处理器架构:[引自官网]
ARM 架构是构建每个 ARM 处理器的基础。随着时间的推移,ARM 架构也在不断地进化发展,加入新的架构特性以满足不断增长的新功能、高性能需求以及新兴市场的需要。有关最新公布版本的信息,请参阅 ARMv8 架构。
ARM 架构支持跨跃多个性能点的实现,并已在许多细分市场中成为主导的架构。ARM 架构支持非常广泛的性能点,因而可以利用最新的微架构技术获得极小的 ARM 处理器实现和极有效的高级设计实现。实现规模、性能和低功耗是 ARM 架构的关键特性。
ARM 已经开发了架构扩展,从而为 Java 加速 (Jazelle®)、安全性 (TrustZone®)、SIMD 和高级 SIMD (NEON™) 技术提供支持。ARMv8-A 架构增加了密码扩展作为可选功能。
ARM 架构与精简指令集计算 (RISC) 架构类似,因为它包含以下典型 RISC 架构特征:
- 统一寄存器文件加载/存储架构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
- 简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。
对基本 RISC 架构的增强使 ARM 处理器可以实现较高性能、较小代码大小、较低功耗和较小硅面积的良好平衡。
【注】从以上论断可以看出,CPU的架构也就是它的指令架构。ARM的架构是基本RISC架构的增强型架构。

图1:arm架构或指令集版本的进化
从上图可以看出arm64是从armv8才出现的。具体的arm架构版本和相应的内核(core)设计如下表所示:
| Architecture | Bit width |
Cores designed by ARM Holdings | Cores designed by third parties | Cortex profile | References |
|---|---|---|---|---|---|
| ARMv1 | 32/26 | ARM1 | |||
| ARMv2 | 32/26 | ARM2, ARM3 | Amber, STORM Open Soft Core[27] | ||
| ARMv3 | 32/26 | ARM6, ARM7 | |||
| ARMv4 | 32/26 | ARM8 | StrongARM, FA526 | ||
| ARMv4T | 32 | ARM7TDMI, ARM9TDMI | |||
| ARMv5 | 32 | ARM7EJ, ARM9E, ARM10E | XScale, FA626TE, Feroceon, PJ1/Mohawk | ||
| ARMv6 | 32 | ARM11 | |||
| ARMv6-M | 32 | ARM Cortex-M0, ARM Cortex-M0+, ARM Cortex-M1 | Microcontroller | ||
| ARMv7-M | 32 | ARM Cortex-M3 | Microcontroller | ||
| ARMv7E-M | 32 | ARM Cortex-M4, ARM Cortex-M7 | Microcontroller | ||
| ARMv7-R | 32 | ARM Cortex-R4, ARM Cortex-R5, ARM Cortex-R7 | Real-time | ||
| ARMv7-A | 32 | ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A15, ARM Cortex-A17 | Krait, Scorpion, PJ4/Sheeva, Apple A6/A6X | Application | |
| ARMv8-A | 64/32 | ARM Cortex-A53, ARM Cortex-A57,[28] ARM Cortex-A72[29] | X-Gene, Nvidia Project Denver, AMD K12, Apple A7/A8/A8X, Cavium Thunder X [30][31][32] |
Application | [33][34] |
| ARMv8.1-A | 64/32 | No announcements yet | Application | ||
| ARMv8-R | 32 | No announcements yet | Real-time | [35][36] |
表1:arm 内核(core)表
[处理器、单片机]ARM的更多相关文章
- DSP处理器和ARM处理器的区别以及各自应用在那些领域
由于工作经常接触到各种多核的处理器,如TI的达芬奇系列芯片拥有1个DSP核3个ARM核.那么DSP处理器和ARM处理器各自有什么区别,各自适合那些领域? DSP:digital signal proc ...
- arm处理器的历史及现状
1 arm处理器的发展历史 arm1 arm2 arm3 arm6 arm7 arm9 arm11 arm cortex 2 arm处理器现状 arm cortex A a即application,即 ...
- ARM、Intel、MIPS处理器啥区别?看完全懂了
安卓支持三类处理器(CPU):ARM.Intel和MIPS.ARM无疑被使用得最为广泛.Intel因为普及于台式机和服务器而被人们所熟知,然而对移动行业影响力相对较小.MIPS在32位和64位嵌入式领 ...
- ARM、Intel、MIPS处理器啥区别?看完全懂了【转】
转自:http://news.mydrivers.com/1/472/472317.htm 安卓支持三类处理器(CPU):ARM.Intel和MIPS.ARM无疑被使用得最为广泛.Intel因为普及于 ...
- ARM处理器模式
ARM处理器模式 ARM处理器共有7种运行模式: l 用户模式(User,usr):正常程序执行的模式 l 快速中断模式(FIQ,fiq):用于高速数据传输和通道处理 l 外部中断模式(IRQ, ...
- ARM处理器:开放者的逆袭
作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载. 1981年,英国BBC电视台策划了一系列关于计算机的电视节目.但导演发现一个问题:怎么给没见过电脑的观众画 ...
- arm SecurCore 处理器【转】
转自:http://www.arm.com/zh/products/processors/securcore/index.php SecurCore 处理器 (View Larger SecurCor ...
- 《ARM Cortex-M3权威指南》笔记(1)
http://blog.csdn.net/roverx/article/details/6624859 第1章 介绍 一.ARM Cortex‐M3处理器初探 CM3处理器内核是单片机的中央处理单元( ...
- ARM体系结构和汇编指令
第一节 可编程器件的编程原理 1. 可编程器件的特点 1 . CPU在固定频率的时钟控制下节奏运行 2 . CPU可以通过总线读取外部存储设备中的二进制指令集,然后解码执行 3 . 这些可以被CPU解 ...
随机推荐
- request is not finfished yet!
在项目测试的时候发现一个问题.当数据量特别多的时候,我一次性查询几万条数据的时候,就会出现很卡很慢的状态. 我把sql优化了,但是出现同样的问题.我要从后台得到数据显示在页面上来.就需要知道是查询慢, ...
- Struts2的Action中如何操作作用域对象
得到作用域对象有三种方法,这里用代码来解释: package com.cy.action; import javax.servlet.ServletContext; import javax.serv ...
- Edit Distance编辑距离(NM tag)- sam/bam格式解读进阶
sam格式很精炼,几乎包含了比对的所有信息,我们平常用到的信息很少,但特殊情况下,我们会用到一些较为生僻的信息,关于这些信息sam官方文档的介绍比较精简,直接看估计很难看懂. 今天要介绍的是如何通过b ...
- toolbar
toolbar= (Toolbar) findViewById(R.id.toolbar_mainactivity); // 设置主标题及其颜色 toolbar.setTitle("Andr ...
- ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能
ubuntu的64位下的android环境,说实话,还真得费点精力了,解决一个问题,又出来一个新问题. 小编昨天刚好不容易将android的环境搭建好了,这不,刚建了个项目,直接就报错,下面是罗列出的 ...
- java的HashMap与ConcurrentHashMap
好像今天没有什么源码读,那么就来看看java的这两种HashMap有啥不一样的地方吧,在这之前先普及一下HashMap的一些基本知识: (1)放入HashMap的元素是key-value对. (2)底 ...
- Eclipse管理Java工程(j2se/j2ee/maven)
Eclipse管理J2SE/J2EE(Maven)项目 eclipse是一个集成开发工具,有编译,运行,打包部署等功能.eclipse可以新建多种项目,不同的项目有不同的IDE层次结构,方便用户管理资 ...
- OC 继承子类对象调用方法机制 子类对象访问父类中的实例变量
在继承中,子类对象如何调用到正确方法的机制 每一个Objective - C对象都有一个隐藏的指针指向类的代码,当向一个对象发送消息的时候,当前的对象会首先在当前类里去查找相应的方法,如果找到的话,直 ...
- asp.net 奇淫技巧
VS2013自动注释插件 分享一个Visual Studio的背景插件,让堆码更富情趣 工欲善其事必先利其器系列之:更换Visual Studio代码风格. 为Visual Studio更换皮肤和背景 ...
- 选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中
选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中 T-SQL核心语句形式: SELECT --指定要选择的列或行及其限定 [INTO ] --INTO子句 ...