IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 《嵌入式Linux》ARM -> 正文阅读

[嵌入式]《嵌入式Linux》ARM

应用领域

●无线通信领域:手机、PDA
●消费类电子产品:数字媒体播放器、游戏机
●网络应用:语音及视频处理、数字机顶盒、VoIP
●成像和安全产品:数码相机、打印机、SIM智能卡
●工业控制与仪器仪表:
●其他领域

特点

●体积小、低功耗、低成本、高性能
●支持Thumb(16位)/ARM(32位)双指令集
●全球众多的合作伙伴

指令集

  • CISC(Complex Instruction Set Computer)
    复杂指令集计算机
    ●具有大量的指令和寻址方式
    ●8/2原则:80%的程序只使用20%的指令。
    ●大多数程序只使用少量的指令就能够运行。
    ●CISC CPU 包含有丰富的单元电路,因而功能强、面积大、功耗大。
  • RISC( Reduced Instruction Set Computer)
    精简指令集计算机
    ●指令规整、对称、简单。指令小于100条,基本寻址方 式有2~3种。
    ●单周期指令。
    ● 指令字长度一致,单拍完成,便于流水操作。
    ●大量的寄存器。寄存器不少于32个。数据处理器的指令只对寄存器的内容操作。只有加载/存储指令可以访问存储器。
    ●使CPU硬件结构设计变得更为简单, RISC CPU包含较少的单元电路,因而面积小、功耗低
    在这里插入图片描述

流水线(Pipeline)技术:

几个指令可以并行执行
? 提高了CPU的运行效率
? 内部信息流要求通畅流动

ARM处理器的分类

●基于指令集体系结构的分类
●v1,v2,v5,v5TEJ,v6, v7 , v8
●基于处理器内核的分类
●经典ARM处理器: ARM7,ARM9,ARM10,ARM11,StrongARM,Xscale
●ARM Cortex 处理器: M系列,R系列,A 系列

课后题:
●简述 RISC技术的特点,与CISC相比,其优点是什么?
●什么是ARM 流水线技术,有何作用?
●简述ARM核有哪些系列?及其特点?其所采用ARM的指令集版本?

●ARM微处理器的数据类型
●ARM微处理器的工作状态(3)
●ARM体系结构的存储器格式(大小端)
●ARM微处理器的处理器模式(8)
●ARM体系结构的寄存器组织
●ARM微处理器的异常状态
● ARM Cortex A9微处理器

数据类型

●字节(Byte):在ARM体系结构和8位/16位处理器体系结构中,字节的长度均为8位。
●字(Word):在ARM体系结构中,字的长度为32位,而在8位/16位处理器体系结构中,字的长度一般为16位。 (注:字必须与4字节的边界对准。)
●半字(Half-Word):在ARM体系结构中,半字的长度为16位,与8位/16位处理器体系结构中字的长度一致。(注:半字必须与2字节的边界对准。)

处理器模式

在这里插入图片描述

  • 除用户模式外,其它模式均为特权模式。
  • 快中断、中断、管理、中止、未定义称为异常模式。
  • 用户和系统这两种模式都不能由异常进入,而且它们使用完全相同的寄存器组。
    在这里插入图片描述

寄存器组织

ARM处理器有40(34+6)个物理寄存器,有18个可编程访问的寄存器。
●寄存器被安排成部分重叠的组。在不同的工作模式和处理器状态下,程序员可以访问的寄存器也不尽相同。
●分组的寄存器在处理处理器异常和特权操作时可得到快速的上下文切换。
在这里插入图片描述
在汇编语言中寄存器R0~R13为保存数据或地址值的通用寄存器。它们是完全通用的寄存器,不会被体系结构作为特殊用途,并且可用于任何使用通用寄存器的指令。

寄存器R8~R14为分组寄存器。它们所对应的物理寄存器取决于当前的处理器模式,几乎所有允许使用通用寄存器的指令都允许使用分组寄存器

寄存器R8~R12有两个分组的物理寄存器。一个用于除FIQ模式之外的所有寄存器模式,另一个用于FIQ模式。这样在发生FIQ中断后,可以加速FIQ的处理速度。

寄存器R13、R14分别有7个分组的物理寄存器。一个用于用户和系统模式,其余6个分别用于6种异常模式。

寄存器R13常作为堆栈指针(SP)。在ARM指令集当中,没有以特殊方式使用R13的指令或其它功能,只是习惯上都这样使用。但是在Thumb指令集中存在使用R13的指令。

R14为链接寄存器(LR),在结构上有两个特殊功能:
●在每种模式下,模式自身的R14版本用于保存子程序返回地址;
●当发生异常时,将R14对应的异常模式版本设置为异常返回地址(有些异常有一个小的固定偏移量)

寄存器R15为程序计数器(PC),它指向正在取指的地址。可以认为它是一个通用寄存器,但是对于它的使用有许多与指令相关的限制或特殊情况。如果R15使用的方式超出了这些限制,那么结果将是不可预测的。

寄存器CPSR为程序状态寄存器,在异常模式中,另外一个寄存器“程序状态保存寄存器(SPSR)”可以被访问。每种异常都有自己的SPSR,在因为异常事件而进入异常时它保存CPSR的当前值,异常退出时可通过它恢复CPSR。

ARM Cortex A9微处理器

● A RM ? Cor texTM-A9处理器该款处理器采用了广受支持的ARM v7架构。
●Cortex-A9处理器的设计是基于最先进的推测型八级流水线,该流水线具有具有高效、动态长度、多发射超标量及无序完成特征。
●Cortex-A9微架构提供两种选项:可扩展的Cortex-A9 MPCoreTM多核处理器或较为传统的Cort ex-A9单核处理器。支持16、32或64KB四路组相联一级缓存的配置

1) 说出ARM可以工作的模式名字。
     ARM体系结构支持8种处理器模式,分别为:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式、系统模式和监管模式(Cortex A系列增加模式)。

     用户模式(user)、
     快速中断模式(FIQ)、
     外部中断模式(IRQ)、
     特权模式(SVC)、
     数据访问中止模式(abort)、
     未定义指令中止模式(undef)、
     系统模式(system) 
2) ARM核有多少个寄存器?
40(34+6)个物理寄存器,18个可编程访问的寄存器。
ARM有3732位长的寄存器
3) 什么寄存器用于存储PC和LR寄存器? 
       R15(PC)R14(LR) 
4) R13通常用来存储什么?
堆栈指针(SP)
5) 哪种模式使用的寄存器最少?
用户和系统模式(没访问spsr)
6) 在Thumb 指令集中,哪些寄存器处于Low group?
R0-R7
7) CPSR的哪一位反映了处理器的状态?
第6位(从1开始),T状态位。  
1表示运行在Thumb状态,0表示运行在ARM状态。
8) 所有的Thumb指令采取什么对齐方式?
半字对齐(2个字节)
9) ARM有哪几个异常类型。
1. 复位异常 
    2. 未定义指令异常 
    3. 软件中断  
    4. 指令预取中止  
    5. 数据中止异常  
    6IRQ(外部中断请求)  
    7FIQ(快速中断请求)
10) 为什么FIQ的服务程序地址要位于0X1C?
尽可能快,省去跳转指令(FIQ的向量地址是异常中断向量表的最高地址,而异常
中断向量表后跟的是程序代码,FIQ的中断服务程序紧接中断向量表存放,中断过程
可以节省一条跳转指令)
  一,FIQ向量位于异常向量表的末尾,不需要跳转指令,异常处理程序可以从异常向量处连续执行;
 二,中断处理需要保护其使用的非私有寄存器,而FIQ有5个额外的私有寄存器;
11) 在复位后,ARM处理器处于何种模式、何种状态?
管理模式(SVC)、ARM状态
  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-07 00:04:22  更:2021-07-07 00:04:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 11:52:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码