ARM相关知识
ARM7采用冯·诺依曼(Von-Neumann)结构,数据存储器和程序存储器重合在一起。 同时,此结构也被大多数计算机所采用。
ARM7为三级流水线结构(取指,译码,执行),平均功耗为0.6mW/MHz,时钟速度为66MHz,每条指令平均执行1.9个时钟周期
ARM7系列微处理器包括如下几种类型的核:ARM7TDMI、ARM7TDMI-S、 ARM720T、ARM7EJ
ARM7采用的Neumann结构,取指令和取操作数都是通过一条总线分时进行,这样,在高速运算时,不但不能同时取指令和取操作数,而且还会造成传输通道上的瓶颈现象
ARM9采用哈佛(Harvard)结构,程序存储器与数据存储器分开,提供了较大的存储器带宽。同时,大多数DSP都采用此结构
ARM9为五级流水线(取指,译码,执行,缓冲/数据,回写),平均功耗为0.7mW/MHz。时钟速度为120MHz-200MHz,每条指令平均执行1.5个时钟周期
ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型,以适用于不同的应用场合
ARM 体系结构特点
(1)多处理器状态模式:
ARM体系结构定义了7种处理器模式:用户(usr)、快中断(fiq)、中断(irq)、管理(svc)、终止(abt)、未定义(und)和系统(sys),大大提高了ARM处理器的效率
(2)两种处理器工作状态:
ARM状态(执行32位ARM指令)和Thumb状态(执行16位Thumb指令)
(3)嵌入式在线仿真调试
ARM体系结构的处理器芯片都嵌入了在线仿真ICE-RT逻辑,便于通过JTAG来仿真调试芯片,省去了价格昂贵的在线仿真器
(4)灵活方便的接口
ARM体系结构具有协处理器接口,允许接16个协处理器。既可以使基本的ARM处理器内核尽可能小,方便地扩充ARM指令集,也可以通过未定义指令来支持协处理器的软件仿真
(5)低电压功耗的设计
考虑到ARM体系结构的处理器主要用于手持式嵌入式系统中,ARM体系结构在设计中就十分注意功耗的设计
(6)RISC型处理器结构:
ARM采用RISC结构,在简化处理器结构,减少复杂功能指令的同时,提高了处理器的速度
ARM 数据类型
字节(Byte):在ARM体系结构及常见的8位/16位处理器体系结构中,字节的长度均为8位
字(Word):在ARM体系结构中,字的长度为32位,而在8位/16位处理器体系结构中,字的长度一般为16位
半字(Half-Word):在ARM体系结构中,半字的长度为16位,与8位/16位处理器体系结构中字的长度一致
ARM 存储格式
ARM体系结构将存储器看作是从零地址开始的字节的线性组合。从零字节到三字节放置第一个存储的字数据,从第四个字节到第七个字节放置第二个存储的字数据,依次排列
作为32位的微处理器,ARM体系结构所支持的最大寻址空间为4GB(232字节)
ARM 处理器的工作模式
ARM 有7个基本工作模式
1、用户模式(usr):
正常程序执行的模式,大部分任务执行在这种模式
2、快速中断模式(fiq): 高速数据传输或通道处理
当一个高优先级(fast)中断产生时将会进入这种模式
3、外部中断模式(irq): 通常的中断处理
当一个低优先级(normal)中断产生时将会进入这种模式
4、管理模式(svc):供操作系统使用的一种保护模式
当复位或软中断指令执行时将会进入这种模式
5、中止模式(abt): 虚拟存储及存储保护
当存取异常时将会进入这种模式
6、未定义模式(und): 软件仿真硬件协处理器
当执行未定义指令时会进入这种模式
7、系统模式(sys): 特权级的操作系统任务
供需要访问系统资源的操作系统任务使用
ARM 异常中断
ARM有7种异常
1、复位
2、未定义指令异常
3、软件中断异常
4、预取中止(取指令存储器中止)
5、数据中止(访问数据存储器中止)
6、IRQ异常
7、FIQ异常
ARM相关知识的更多相关文章
- X86 寻址方式、AT&T 汇编语言相关知识、AT&T 与 Intel 汇编语言的比较、gcc 嵌入式汇编
注:本分类下文章大多整理自<深入分析linux内核源代码>一书,另有参考其他一些资料如<linux内核完全剖析>.<linux c 编程一站式学习>等,只是为了更好 ...
- 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸
类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...
- 移动WEB像素相关知识
了解移动web像素的知识,主要是为了切图时心中有数.本文主要围绕一个问题:怎样根据设备厂商提供的屏幕尺寸和物理像素得到我们切图需要的逻辑像素?围绕这个问题以iphone5为例讲解涉及到的web像素相关 ...
- listener监听器的相关知识
从别人的博客上我学习了listener的相关知识现在分享给大家 1.概念: 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上 ...
- UIViewController相关知识
title: UIViewController 相关知识date: 2015-12-13 11:50categories: IOS tags: UIViewController 小小程序猿我的博客:h ...
- 【转】java NIO 相关知识
原文地址:http://www.iteye.com/magazines/132-Java-NIO Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的 ...
- NSString使用stringWithFormat拼接的相关知识
NSString使用stringWithFormat拼接的相关知识 保留2位小数点 1 2 3 4 //.2代表小数点后面保留2位(2代表保留的数量) NSString *string = [NSSt ...
- iOS网络相关知识总结
iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...
- 电路相关知识--读<<继电器是如何成为CPU的>>
电路相关知识–读<<继电器是如何成为CPU的>> */--> *///--> *///--> 电路相关知识–读<<继电器是如何成为CPU的> ...
随机推荐
- ACE6.2.0下载HTTP服务器文件
#include "ace/Log_Msg.h" // ACE_DEBUG的宏定义在这里.#include "ace/OS.h"#include "a ...
- Jetty 8.1 安装 运行 部署
链接地址:http://blog.csdn.net/lego2816/article/details/42650545 Java + MySQL 从Jfinal开始,第一步先走完整个流程,主要是发布部 ...
- Nginx中location配置[转]
关于一些对location认识的误区 1. location 的匹配顺序是“先匹配正则,再匹配普通”. 矫正: location 的匹配顺序其实是“先匹配普通,再匹配正则”.我这么说,大家一定会反驳我 ...
- [LeetCode]题解(python):066-Plus One
题目来源: https://leetcode.com/problems/plus-one/ 题意分析: 给定一个数组,将数加一,返回新的数组.比如[9,9],返回[1,0,0]. 题目思路: 这道题目 ...
- vagrant 入门1
1. Vagrant功能: Vagrant usesOracle's VirtualBox to build configurable, lightweight, and portable ...
- python中的有趣用法
本文给除了python中几个有趣的用法,可以给我们不一样的启发 1: Python中模拟使用C++ 中的 cout << import sys class ostream: def ...
- Android之drawable state各个属性具体解释
我们在定义一个drawable的时候能够通过xml定义的drawable对象.它使得一个图片能在不同的状态下显示不同的图案,比方一个Button,它有pressed.focused,或者其他状态,通过 ...
- 瑞星杀毒软件、奇虎360杀毒软件、360卫士、百度卫士联手,搞不定弹出广告 & 恶意广告图标
一位网友说他的电脑近期出了问题:开机后桌面和任务栏上的高速启动栏会出现恶意图标.删除了下次开机又会出现:使用电脑过程中每分钟都会弹出广告.他为电脑安装了瑞星杀毒软件.奇虎360杀毒软件.360卫士.百 ...
- IPv6-only 的兼容性解决方案
前几天Apple宣布 6月1日后所有应用必须支持IPv6-only网络 今天抽空看了下这方面的知识 首先解释下IPv6的是什么? 维基百科的定义如下:IPv6是Internet Protocol ve ...
- 版本管理工具:linux下svn的基本使用
参考: linux下安装SVN http://jingyan.baidu.com/article/3c343ff7039de20d37796306.html svn客户端使用linux篇 ht ...