ARM 处理器架构

转自:http://www.arm.com/zh/products/processors/instruction-set-architectures/index.php

ARM 架构是构建每个 ARM 处理器的基础。ARM 架构随着时间的推移不断发展,其中包含的架构功能可满足不断增长的新功能、高性能需求以及新兴市场的需要。有关最新公布版本的信息,请参阅 ARMv8 架构

ARM 架构支持跨跃多个性能点的实现,并已在许多细分市场中成为主导的架构。ARM 架构支持非常广泛的性能点,因而可以利用最新的微架构技术获得极小的 ARM 处理器实现和极有效的高级设计实现。实现规模、性能和低功耗是 ARM 架构的关键特性。

ARM 已经开发了架构扩展,从而为 Java 加速 (Jazelle®)、安全性 (TrustZone®)、SIMD 和高级 SIMD (NEON™) 技术提供支持。ARMv8-A 架构增加了密码扩展作为可选功能。

ARM 架构与精简指令集计算 (RISC) 架构类似,因为它包含以下典型 RISC 架构特征:

  • 统一寄存器文件加载/存储架构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
  • 简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。

对基本 RISC 架构的增强使 ARM 处理器可以实现较高性能、较小代码大小、较低功耗和较小硅面积的良好平衡。

 
 

ARM(通常称为 A32)是一种固定长度(32 位)的指令集。它是 ARMv4T、ARMv5TEJ 和 ARMv6 架构中使用的基础 32 位 ISA。在这些架构中,该指令集用于需要高性能的应用领域,或用于处理硬件异常,如中断和处理器启动。

对于性能关键应用和旧代码,Cortex 架构的 Cortex™-A 和 Cortex-R 配置文件也支持 ARM ISA。其多数功能都包括在与 Thumb-2 技术一起引入的 Thumb 指令集中。Thumb (T32) 从改进的代码密度中获益。

ARM 指令的长度为 32 位,需要 4 字节边界对齐。

可以对大多数 ARM 指令进行“条件化”,使其仅在以前的指令设置了特定条件代码时执行。这意味着,如果应用程序状态寄存器中的 N、Z、C 和 V 标志满足指令中指定的条件,则指令仅对程序员的模型操作、内存和协处理器发挥其正常作用。如果这些标记不满足此条件,则指令会用作 NOP,即执行过程正常进入下一指令(包括将对异常进行任意相关检查),但不发挥任何其他作用。此条件化指令允许对 if 和 while 语句的一小部分进行编码,而无需使用跳转指令。

条件代码包括:

 条件代码  含义

N

 否定条件代码,如果结果为否定的,则设置为 1

Z

 零条件代码,如果指令的结果为 0,则设置为 1

C

 进位条件代码,如果指令生成进位条件,则设置为 1

V

 溢出条件代码,如果指令生成溢出条件,则设置为 1。

ARM 处理器架构【转】的更多相关文章

  1. ARM处理器架构的Thumb指令集中关于IT指令的使用

    在ARMv6T2以及ARMv7架构扩展了Thumb指令集,其中加入了IT指令,进一步增强了代码的紧凑性. Thumb中有一个比较有意思的指令--IT,这条指令用于根据指定的条件来执行后面相继的四条指令 ...

  2. ARM 处理器的几个相关术语

    生产ARM的厂商很多,自然ARM处理器的名字就五花八门.但是,它们有些共同点,那就是:架构和核心. 架构这个概念太宽不太懂,一般不同的架构会有不同的指令集,在不同的架构下面还可以有多种核心.核心就是指 ...

  3. ARM体系架构下的同步操作

    http://blog.hamobai.com/2012/06/28/synchronization-on-ARM-one/ 处理器在访问共享资源时,必须对临界区进行同步,即保证同一时间内,只有一个对 ...

  4. ARM(ARM处理器)

    ARM是微处理器行业的一家英国公司,其设计了大量高性能.廉价.耗能低的RISC处理器.相关技术及软件,公司并不直接生产产品,而是采用出售芯片技术授权的商业模式盈利.技术具有性能高.成本低和能耗省特点. ...

  5. ARM处理器全解析:A8/A9/A15都是什么?

    前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列产品,以此来扩大ARM在高性能与低功耗领域的领先地位,进一步抢占移动终端市场份额.Cortex-A50是继Cortex-A15 ...

  6. ARM处理器简介

    参考: http://www.arm.com/zh/products/processors/instruction-set-architectures/index.php 1.ARM核演变图 2.AR ...

  7. ARM处理器:开放者的逆袭

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载. 1981年,英国BBC电视台策划了一系列关于计算机的电视节目.但导演发现一个问题:怎么给没见过电脑的观众画 ...

  8. arm处理器

    arm处理器 arm处理器相关 1.体系架构定义了指令集(ISA)和基于这一体系结构下处理器的编程模型. arm卖的是架构或者已经设计好的公版ip核 卖给苹果高通的是架构,需要苹果高通通过架构设计自己 ...

  9. ARM 处理器:RISC与CISC 是什么?【转】

    转自:https://blog.csdn.net/willsun2017/article/details/83388990 完全看懂 ARM 处理器:RISC与CISC 是什么? 历史.架构一次看透 ...

随机推荐

  1. Mysql性能优化一:SQL语句性能优化

    这里总结了52条对sql的查询优化,下面详细来看看,希望能帮助到你 1, 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2,应尽量避免在 w ...

  2. Tensorflowonspark安装

    1.实验环境 Centos7+Python3.6+Java8+Hadoop2.6+Spark2.3+Tensorflow1.10.0 2.Tensorflow安装 最简单的方式:pip install ...

  3. Python——数据类型之dict

    字典,相当于一个列表,不过列表的索引是数字,字典的索引是数字或者字符串. 1.字典的访问 字典是典型的key-value结构,一个key对应着一个value,key就是索引,value就是要保存的值 ...

  4. 数据结构14——AC自动机

    一.相关介绍 知识要求 字典树Trie KMP算法 AC自动机 多模式串的字符匹配算法(KMP是单模式串的字符匹配算法) 单模式串问题&多模式串问题 单模就是给你一个模式串,问你这个模式串是否 ...

  5. java课程设计 学生管理系统

    学生成绩管理系统 可实现功能 学生管理系统 查询学生信息:姓名.学号.性别.出生年月日.(学号自动生成且唯一) 查询学生成绩:每个人都有数学.Java与体育与选修课 查询学生课程 进行公选课选课 教师 ...

  6. js 给某个div增加class 样式(三种方式)

    第一种:      el.setAttribute('class','abc'); <!DOCTYPE HTML> <HTML> <HEAD> <meta c ...

  7. MySQL密码忘了怎么办

    之前在ubuntu 12.04里安装了xampp,设置了mysql数据库root密码,今天需要增加个数据库,发现忘记之前设置的密码是什么了.经过一番摸爬滚打,终于搞明白了,注意以下的操作都是以linu ...

  8. 为Ubuntu安装FTP服务

    打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-->回车 ...

  9. 【bzoj3043】IncDec Sequence 差分

    题目描述 给定一个长度为n的数列{a1,a2...an},每次可以选择一个区间[l,r],使这个区间内的数都加一或者都减一.问至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下 ...

  10. JQuery拖拽改变元素的尺寸

    "元素拖拽改变大小"其实和"元素拖拽"一个原理,只是所动态改变的对象不同而已,主要在于 top.left.width.height 的运用,相对实现起来也非常容 ...