第2章_ARM体系结构
第二章 ARM9体系结构ppt课件
![第二章 ARM9体系结构ppt课件](https://img.taocdn.com/s3/m/e7d2f360647d27284b7351a4.png)
ARM9E-S ARM10TDMI,ARM1020E ARM11,ARM1156T2-S,ARM1156T2F-S, ARM1176JZ-S,ARM11JZF-S
.
2.1.1 ARM公司简介
ARM公司是知识产权IP ( Intellectual Property ) 公司,本身不生产芯片,只转让设计许可,由合 作伙伴公司来生产各具特色的芯片。
目前,全世界有几十家著名的半导体公司都使用 ARM公司的授权,其中包括Intel、IBM、 MOTOROLA、SONY、NEC、LG 、 ATMEL 等, 从而保证了大量的开发工具和丰富的第三方资源, 它们共同保证了基于ARM处理器核的设计可以很 快投入市场。
灵活方便的协处理器接口
ARM体系结构具有协处理器接口,允许接16 个协处理器。既可以使基本的ARM处理器内核尽 可能小,方便地扩充ARM指令集,也可以通过未 定义指令来支持协处理器的软件仿真。
低电压功耗的设计
考虑到ARM处理器主要用于手持式嵌入式系 统中,在设计中. 就十分注意功耗的设计。
2.1.3 ARM指令系统版本
难以优化编译成高效目标 代码
能优化编译成高效目标代码
.
2.1.2 ARM体系结构的特点
多种处理器模式 ARM体系结构定义了7种处理器模式:用户、 快 中断、中断、管理、终止、未定义和系统模式, 大大提高了ARM处理器的效率。
两种处理器工作状态 ARM状态(32位指令)和Thumb状态(16位指
令) 。 虽然ARM处理器本身是32位设计,但考虑到
arm嵌入式技术原理与应用答案
![arm嵌入式技术原理与应用答案](https://img.taocdn.com/s3/m/3b5f82143968011ca3009190.png)
arm嵌入式技术原理与应用答案【篇一:嵌入式系统原理与开发课后答案】章嵌入式系统概述:1、什么是嵌入式系统?是简单列举一些生活中常见的嵌入式系统的实例。
p3嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。
以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
3、是比较嵌入式系统与通用pc的区别。
p3(1)嵌入式系统是专用的计算机系统,而pc是通用的计算机系统。
(2)技术要求不同,通用pc追求高速、海量的数据运算;嵌入式要求对象体系的智能化控制。
(3)发展方向不同,pc追求总线速度的不断提升,存储容量不断扩大;嵌入式追求特定对象系统的智能性,嵌入式,专用性。
4、嵌入式体统有哪些部分组成?简单说明各部分的功能与作用。
p6(1)硬件层是整个核心控制模块(由嵌入式微处理器、存储系统、通信模块、人机接口、其他i/o接口以及电源组成),嵌入式系统的硬件层以嵌入式微处理器为核心,在嵌入式微处理器基础上增加电源电路、时钟电路、和存储器电路(ram和rom等),这就构成了一个嵌入式核心控制模块,操作系统和应用程序都可以固化在rom 中。
(2)中间层把系统软件与底层硬件部分隔离,使得系统的底层设备驱动程序与硬件无关。
一般包括硬件抽象层(hardware abstract layer,hal)和板级支持包(board support package,bsp)。
(3)软件层由实时操作系统(real time operating system,rtos)、文件系统、图形用户接口(graphical user interfaces,gui)、网络组件组成。
(4)功能层是面向被控对象和用户的,当需要用户操作是往往需要提供一个友好的人际界面。
5、嵌入式系统是怎么分类的?p7按照嵌入式微处理器的位数分类(4位、8位、16位、32位、64位);按照是实时性分类(硬实时系统式之系统对响应时间有严格的要求;软实时系统是对响应时间有一定要求);按照嵌入式软件结构分类(循环轮询系统、前后台系统、多任务系统);按照应用领域分类。
第2章 ARM体系结构
![第2章 ARM体系结构](https://img.taocdn.com/s3/m/adc2b1004431b90d6c85c7ec.png)
• 控制位
–
程序状态寄存器PSR(Program Status Register)的最低8位I、F、T和 M[4:0]用作控制位。当异常出现时改变控制位。处理器在特权模式 下时也可由软件改变。
• 中断禁止位 I:置1,则禁止IRQ中断; F:置1,则禁止FIQ中断。 • T位 T=0 指示ARM执行; T=1 指示Thumb执行。 • 模式控制位 M4、M3、M2、Ml和M0(M[4:0])是模式位,决定处理器 的工作模式,如表2.3.1所列。
6 (最低)
6 5
数据中止
IRQ (外部中断请求) FIQ (快速中断请求)
中止(数据)
IRQ FIQ
中止模式
IRQ FIQ
0x0000,0010
0x0000,0018 0x0000,001C
2
4 3
2.4.2 异常类型的含义
(1)复位
• • 处理器的复位电平有效时,产生复位异常 当ARM处理器或协处理器遇到不能处理的指令时,产生未定义指令异常
2.4 ARM微处理器的异常处理
• 异常:在一个正常的程序流程执行过程中,由内 部或外部源产生的一个事件使正常的程序产生暂 时的停止,称之为异常。
2.4.1 ARM体系结构的异常类型
• ARM体系结构支持7种类型的异常
• 异常出现后,强制从异常类型对应的固定存储器地址开始 执行程序。这些固定的地址称为异常向量(Exception Vectors)。
M[4:0]模式控制位
M[4: 0] 10000 10001 10010 10011 10111
处理器工作 模式 用户模式 FIQ模式 IRQ模式 管理模式 中止模式
可访问的寄存器 PC,CPSR,R14~R0 PC,R7~R0,CPSR, SPSR_fiq,R14_fiq~ R8_fiq PC,R12~R0,CPSR, SPSR_irq,R14_irq, R13_irq PC,R12~R0, CPSR, SPSR_svc,R14_svc, R13_svc PC,R12~R0, CPSR, SPSR_abt,R14_abt, R13_abt
单片机课件第二章 ARM体系结构
![单片机课件第二章 ARM体系结构](https://img.taocdn.com/s3/m/4ca9dec433d4b14e85246832.png)
2.5
ARM微处理器指令系统
2.5.1 基本寻址方式
寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地 址的方式,ARM处理器有9 种基本寻址方式。
1.寄存器寻址
操作数的值在寄存器中,指令中的地址码字段给出的是寄存器编 号,指令执行时直接取出寄存器值操作。
例如指令: MOV R1,R2 SUB R0,R1,R2
11111
系统模式
PC,R14~R0,CPSR(ARM v4及以上版本)
并非所有的模式位组合都能定义一种有效的处理器模式。其他组合的 结果不可预知。
2.2 ARM微处理器的寄存器结构
2.2.4 Thumb状态的寄存器集
2.2 ARM微处理器的寄存器结构
2.2.4 Thumb状态的寄存器集
Thumb 状态的寄存器在ARM 状态的寄存器上的映射
在Thumb状态下,程序计数器PC(Program Counter)使用位[1]选 择另一个半字。ARM处理器在两种工作状态之间可以切换。
Thumb状态:当操作数PSR控制位T为1时,执行BX指令进入Thumb 状态。如果处理器在Thumb状态进入异常,则当异常处理(IRQ、 FIQ、Undef、Abort和SWI)返回时,自动转换到Thumb状态。(异 常都是在ARM 状态中执行) ARM状态:当操作数PSR控制位T为0时,执行BX指令进入ARM状态 ;处理器发生异常(IRQ、FIQ、Reset、Undef、Abort和SWI)。在 此情况下,把PC内容复制到异常模式的链接寄存器中,并且异常处 理将从异常向量地址开始。
sys(系统模式):运行具有特权的操作系统任务。
und(未定义指令中止模式):当未定义的指令执行时进入该 模式,可用于支持硬件协处理器的软件仿真。
第2章 ARM微处理器概述
![第2章 ARM微处理器概述](https://img.taocdn.com/s3/m/d8c6ac2b2f60ddccda38a0a5.png)
本章目标
ARM微处理器的应用与选型
ARM微处理器的数据类型和工作状态 ARM微处理器工作模式 ARM微处理器的寄存器
2.1 ARM微处理器概述
问题
ARM微处理器有哪些技术特点,其应用在哪些领
域?
重点
ARM微处理器的技术特点。
内容
ARM微处理器的技术特点和其应用领域。
ARM 以其高性能和低成本,在该领域的地位日益巩固。
网络系统:
随着宽带技术的推广,采用ARM 技术的ADSL 芯片正逐
步获得竞争优势。此外,ARM 在语音及视频处理上行了 优化,并获得广泛支持,也对DSP 的应用领域提出了挑 战。
消费类电子产品:
ARM 技术在目前流行的数字音频播放器、数字机顶盒和
2.2.2 ARM体系结构版本
任务:了解ARM体系结构的各个 版本及其特点
ARM指令集体系结构,从最初开发至今已有
了重大改进,而且将会不断完善和发展。为 了精确表达每个ARM实现中所使用的指令集, 到目前ARM体系结构共定义了6个版本,各 版本特点如下:
Version 1(v1)
基本数据处理指令(不包括乘法指令);
Version 3(v3)
该版本推出32位寻址能力,主要结构扩展变化为: 32 位地址总线,但除版本3G(版本3的一个变种)外其他版本是向前兼 容的,支持26 位地址总线; 当前程序状态信息从原来的R15移到一个新的寄存器CPSR(Current Program Status Register,当前程序状态寄存器)中; 增加了SPSR(Saved Program Status Register,备份程序状态寄存 器),用于在程序异常中断程序时,保存被中断程序的程序状态; 增加了两种处理器模式,使操作系统代码可以方便地使用数据访问中止 异常、指令预取中止异常和未定义指令异常; 增加了指令MSR和MRS,用于访问CPSR和SPSR; 增加了原来的从异常返回的指令。
ARM体系结构
![ARM体系结构](https://img.taocdn.com/s3/m/776f3d354b35eefdc8d333cb.png)
ARM9TDMI处理器一个显著的特点是采用 指令和数据分离访问的方式,即采用了指令 缓存(I-Cache)和数据缓存(D-Cache)。 这样可以把指令访问和数据访问单独安排1级 流水线。
2015/9/28
9
ARM9处理能力的提高是通过增加时钟频率和减少指令执行周期实 现的。 (1)时钟频率的提高 ARM9采用了五级流水线,而ARM7采用的是三级流水线,ARM9增 加的流水线设计提高了时钟频率和并行处理能力。五级流水线能够将各 条指令处理分配到5个时钟周期内,在每个时钟周期内同时有5条指令在 执行。在同样的加工工艺下,ARM9 TDMI处理器的时钟频率是ARM7 TDMI的2倍左右。 (2)指令周期的改进 指令周期的改进有助于处理器性能的提高。性能提高的幅度依赖于 代码执行时指令的重叠。 ① load指令和store指令 指令周期数改进最明显的是load指令和store指令。 ② 互锁(interlock)技术 当指令需要的数据因为以前的指令没有执行完,将产生管道互锁。管
操作系统的保护模式 指令或数据预取操作中止时的模 式,该模式下实现虚拟存储器或 存储器保护 当执行未定义的指令时进入该模 式 响应普通中断时的处理模式
未定义模式 IRQ模式
Und Irq
FIQ模式
Fiq
响应快速中断时的处理模式
2015/9/28
21
处理器工作模式
ARM微处理器的运行模式可以通过软件改变,也可以通 过外部中断或异常处理改变。 大多数的应用程序运行在用户模式下,当处理器运行在 用户模式下时,某些被保护的系统资源是不能被访问的。 除用户模式以外,其余的6种模式称为非用户模式或特 权模式; 除去用户模式和系统模式以外的5种又称为异常模式, 常用于处理中断或异常,以及访问受保护的系统资源等情 况。
ARM体系架构
![ARM体系架构](https://img.taocdn.com/s3/m/3c798315dd88d0d232d46a11.png)
该例中用6个时钟周期执行了6条指令 所有的操作都在寄存器中(单周期执行) 指令周期数 (CPI) = 1
高速缓存(CACHE)
1、为什么采用高速缓存 微处理器的时钟频率比内存速度提高快得多,高速缓存可以提 高内存的平均性能。
2、高速缓存的工作原理 高速缓存是一种小型、快速的存储器,它保存部分主存内容的
拷贝。
高 数据
速
CACHE
CPU
缓 存
主存
控
制
地址
器
数据
总线和总线桥
CPU
高速总线
低速设备
低速总线
软硬功能分配 复杂指令增加硬件的复杂度,使指令执行周期大大加长 ,直接访存次数增多,数据重复利用率低。
不利于先进指令级并行技术的采用 流水线技术
RISC基本设计思想
精简指令集:保留最基本的,去掉复杂、使用频度不高的指令 (选取运算指令、加载、存储指令和转移指令作主指令集) ,以减小CPI: CPUtime=Instr_Count * CPI * Clock_cycle
CISC的主要缺点
指令使用频度不均衡。 高频度使用的指令占据了绝大部分的执行时间,扩充的 复杂指令往往是低频度指令。
大量复杂指令的控制逻辑不规整,不适于VLSI工艺 VLSI的出现,使单芯片处理机希望采用规整的硬联逻辑 实现,而不希望用微程序,因为微程序的使用反而制约 了速度提高。(微码的存控速度比CPU慢5-10倍)。
IC—程序中指令数,CPI—每条指令执行所有周期数
ARM嵌入式系统结构与编程习题答案(全)
![ARM嵌入式系统结构与编程习题答案(全)](https://img.taocdn.com/s3/m/5b510c4649d7c1c708a1284ac850ad02de800704.png)
ARM嵌入式系统结构与编程习题答案(全)《arm嵌入式系统结构与编程》习题答案第一章绪论1.国内嵌入式系统行业对“嵌入式系统”的定义就是什么?如何认知?答:国内嵌入式行业一个普遍认同的定义是:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗严格要求的专业计算机系统。
从这个定义可以看出嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的剪裁利用。
因此有人把嵌入式系统比作是一个针对特定的应用而“量身定做”的专业计算机系统。
2.嵌入式系统从何时产生的,详述其发展历程。
答:从20世纪70年代单片机的出现到目前各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了30多年的发展历史。
嵌入式系统的发生最初就是基于单片机的。
intel公司1971年研发出来第一片具备4十一位总线结构的微处理器4004,可以说道就是嵌入式系统的原始社会阶段。
80年代初的8051就是单片机历史上难忘的一页。
20世纪80年代早期,发生了商业级的“实时操作系统内核”,在实时内核下撰写应用软件可以并使新产品的沿着更慢,更节省资金。
20世纪90年代实时内核发展为实时多任务操作系统。
步入21世纪以来,嵌入式系统获得了很大的发展。
在硬件上,mcu的性能获得了很大的提高,特别就是arm技术的发生与健全,为嵌入式操作系统提供更多了功能强大的硬件载体,将嵌入式系统推至了一个崭新的阶段。
3.当前最常用的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点。
答:主要有嵌入式linux和嵌入式实时操作内核uc/os-ii嵌入式linux操作系统就是针对嵌入式微控制器的特点而量身定做的一种linux操作系统,包含常用的嵌入式通信协议和常用驱动,积极支持多种文件系统。
主要存有以下特点:源码对外开放,不易移殖,内核大,功能强大,运转平衡,效率高等。
uc/os是源码工卡的实时嵌入式系统内核,主要有以下特点:源码公开,可移植性强,可固化,可剪裁,占先式,多任务,可确定性,提供系统服务等。
中北大学嵌入式习题答案第2章
![中北大学嵌入式习题答案第2章](https://img.taocdn.com/s3/m/789236d181eb6294dd88d0d233d4b14e85243ed3.png)
第二章 ARM体系结构一、填空1、 ARM微处理器支持7种运行模式为、、、、、、。
用户模式(usr): ARM处理器正常的程序执行状态快速中断模式(fiq):用于高速数据传输或通道处理外部中断模式(irq):用于通用的中断处理管理模式(svc):操作系统使用的保护模式数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储与存储保护。
系统模式(sys):运行具有特权的操作系统任务。
未定义指令中止模式(und:当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。
2、嵌入式微处理器的体系结构可以采用或结构,指令系统可以选和。
冯·诺依曼体系结构:程序和数据共用一个存储空间,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,采用单一的地址与数据总线,程序和数据的宽度相同。
例如:8086、ARM7、MIPS…哈佛体系结构:程序和数据是两个相互独立的存储器,每个存储器独立编址、独立访问,是一种将程序存储和数据存储分开的存储器结构。
例如:AVR、ARM9、ARM10…精简指令系统 RISC复杂指令集系统 CISC3、AMBA定义了3组总线、和。
AHB(AMBA高性能总线):用于高性能。
高数据吞吐部件,如CPU、DMA、DSP之间的连接。
ASB(AMBA系统总线):用来作处理器与外设之间的互连,将被AHB取代。
APB(AMBA外设总线):为系统的低速外部设备提供低功耗的简易互连。
系统总线和外设总线之间的桥接器提供AHB/ASB部件与APB部件之间的访问代理与缓冲。
4、ARM系列微处理器支持的边界对齐格式有:、和字对齐。
字节对齐半字对齐5、RS-232C的帧格式由四部分组成,包括:起始位、、奇偶校验位和。
数据位停止位6、ARM微处理器有种工作模式,它们分为两类、。
其中用户模式属于。
七非特权模式特权模式非特权模式7、ARM7TDMI采用级流水线结构,ARM920TDMI采用级流水线。
第2 章 ARM体系结构及编程模型(OBE)汇总
![第2 章 ARM体系结构及编程模型(OBE)汇总](https://img.taocdn.com/s3/m/26e4a694763231126edb11c3.png)
ARM9TDMI的五级流水线
2020/6/24
ARM7TDMI与ARM9TDMI流水线比较
3.ARM9TDMI的五级流水线
ARM7TDMI与ARM9TDMI流水线比较
2020/6/24
ARM7和ARM9流水线比较
• 5级流水线的ARM9内核是哈佛架构,拥有独立的 指令和数据总线;指令和数据的读取可以在同一周 期进行;
ARM1020E XScale ARM9E-S ARM966E-S
SIMD Instructions
6
Multi-processing
V6 Memory architecture (VMSA)
Unaligned data
support
ARM1136EJ-S
ARM系列产品命名规则
ARM 926EJ-S
ARM体系结构的特点
• 1) RISC型处理器结构
– (LOAD/STORD, I-cache, D-cache)
• 2)Thumb指令集 (32/16) • 3)多处理器状态模式 (7) • 4)两种处理器工作状态(2) • 5)嵌入式在线仿真调试(ICE-RT ,JTAG) • 6)灵活方便的协处理器接口 (16个) • 7)低电压功耗的设计
ARM体系结构的发展
Halfword
4
1
and signed halfword /
byte support
System
2
mode
SA-110 SA-1110
3
Early ARM architectures
Thumb instruction set
ARM7TDMI
4T
ARM9TDMI
ARM720T
嵌入式部分复习题、练习题-含答案
![嵌入式部分复习题、练习题-含答案](https://img.taocdn.com/s3/m/1151bc38c281e53a5802ff23.png)
第1章:ARM和嵌入式系统介绍嵌入式系统的概念ARM嵌入式处理器的版本Cortex系列处理器的组成和特点嵌入式操作系统第2章:ARM体系结构ARM、CM3处理器状态:Thumb状态和调试状态CM3处理器工作模式:Handler模式和Thread模式代码特权分级:特权级和非特权(用户)级CM3内部寄存器:r0-r12,r13,r14,r15,状态寄存器xPSR存储器映射机制:大端格式和小端格式数据对齐方式:字对齐、半字对齐、非字对齐、非半字对齐异常概念、CM3异常机制特点第3章:Cortex-M3控制器及外围硬件简介嵌入式最小系统组成第4章:指令系统和时钟ARM、Thumb、Thumb-2和CM3指令集的特点和关系STM32时钟系统结构原理和初始化编程启动代码第5章:GPIO实验、第6章:UART实验、第9章:中断实验第10章:RTC实验原理和编程第7章:模/数转换、第8章:定时器实验原理即可,不考程序1. 什么是嵌入式系统?嵌入式系统有哪些应用?2. 什么是嵌入式处理器?嵌入式处理器分为哪几类?3. 说明使用实时操作系统的必要性。
4. 简要说明ARM Cortex内核处理器分为哪几个系列?各有什么特点?5. ARM Cortex-M3处理器有哪些优势符合嵌入式操作系统的要求?6. 简述NVIC的初始化步骤。
7. 什么是嵌入式处理器?嵌入式处理器分为哪几类?二、填空1. STM32F103ZET6有个引脚, KB片内FLAM ROM, KB 片内SRAM。
2. Cortex-M3处理器支持两种特权分级:特权级和。
Cortex-M3处理器支持两种工作模式,:模式和模式。
3. PSR中,标志位C是,Z是 N是,V是。
4. CM3内部寄存器中,R13的作用是,R14的作用是,R15的作用是。
5. 经典ARM7处理器有和两种状态,CM3处理器只有状态。
6. Cortex-M3的流水线分3级,分别为、、。
7. STM32F10x的管理着包括Cortex-M3核异常等中断,其和ARM 处理器核的接口紧密相连,可以实现的中断处理,并有效地处理迟来中断。
ARM复习课后题答案(完整版)..
![ARM复习课后题答案(完整版)..](https://img.taocdn.com/s3/m/e400a6731eb91a37f1115c64.png)
1.国内嵌入式系统行业对嵌入式系统的定义是什么?如何理解答:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
从这个定义看以看出嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统要求进行合理的裁剪利用。
因此有人把嵌入式系统比作是一个针对特定的应用而量身定做的专用计算机系统。
2.当前最常见的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点答:嵌入式linux和嵌入式实时操作系统uc/os-IILinux:(1)linux是源码开放的,每一个技术细节都是透明的,易于裁剪定制。
(2)目前嵌入式linux已经在多种嵌入式处理器芯片移植成功,有大量且不断增加的开发工具,这些工具为嵌入式系统开发提供了良好的开发环境。
(3)Linux内核小、功能强大、运作稳定、效率高。
Ucos:(1)源代码公开(2)可移植性。
(3)可固化(4)可裁剪(5)占先式(6)多任务(7)可确定性。
(8)系统服务第2章ARM技术与ARM体系结构3.arm处理器的工作模式有哪几种,其中哪些为特权模式,哪些为异常模式,并指出处理器在什么情况下进入相应的模式。
答:ARM 处理器共有7 种工作模式:用户模式:非特权模式,也就是正常程序执行的模式,大部分任务在这种模式下执行。
在用户模式下,如果没异常发生,不允许应用程序自行改变处理器的工作模式,如果有异常发生,处理器会自动切换工作模式FIQ 模式:也称为快速中断模式,支持高速数据传输和通道处理,当一个高优先级(fast)中断产生时将会进入这种模式。
IRQ 模式:也称为普通中断模式,:当一个低优先级中断产生时将会进入这种模式。
在这模式下按中断的处理器方式又分为向量中断和非向量中断两种。
通常的中断处理都在IRQ 模式下进行。
SVC 模式:称之为管理模式,它是一种操作系统保护模式。
当复位或软中断指令执行时处理器将进入这种模式。
第2章 ARM技术概述
![第2章 ARM技术概述](https://img.taocdn.com/s3/m/f089402c2af90242a895e58c.png)
ARM体系结构的基本版本
V6版架构
V6版架构是2001年发布的,首先在2002年春季发布 的ARM11处理器中使用。此架构在V5版基础上增 加了以下功能: THUMBTM:35%代码压缩; DSP扩充:高性能定点DSP功能; JazelleTM:Java性能优化,可提高8倍; Media扩充:音/视频性能优化,可提高4倍。
ARM发展的历程
ARM技术还将不断发展。在嵌入式领域, ARM已取得了极大的成功,造就了IP核商业化、市 场化的神话。 据最新统计,全球有103家巨型IT公司在采用 ARM技术,20家最大的半导体厂商中有19家是ARM 的用户,包括德州仪器,意法半导体,Philips,Intel 等。 ARM系列芯片已经被广泛的应用于移动电话、 手持式计算机以及各种各样的嵌入式应用领域,成 为世界上销量最大的32位微处理器。
ARM状态下的寄存器组织
分组寄存器R8-R14 分组寄存器R8-R12
• • FIQ模式分组寄存器R8~R12 FIQ以外的分组寄存器R8~R12
分组寄存器R13、R14
2.1.2 ARM体系结构的技术特征
ARM的体系结构采用了若干Berkeley RISC处理器设计中的特征
Load/store体系结构 固定的32位指令 3地址指令格式
也放弃了其它若干Berkeley RISC特征
寄存器窗口 延迟转移 所有的指令单周期执行
2.2 ARM体系结构不同版本的发展概述
ARM状态下的寄存器组织
不分组寄存器R0~R7
R0~R7是不分组寄存器。这意味着在所有处 理器模式下,它们每一个都访问的是同一个 物理寄存器。它们是真正并且在每种状态下 都统一的通用寄存器。 未分组寄存器没有被系统用于特别的用途, 任何可采用通用寄存器的应用场合都可以使 用未分组寄存器,但必须注意对同一寄存器 在不同模式下使用时的数据保护
第2章 ARM技术概述
![第2章 ARM技术概述](https://img.taocdn.com/s3/m/5a2d60e1551810a6f524862b.png)
21
2.4 ARM 微处理器的应用选型
2.4.2选择一款适合学习的ARM芯片
(9)LCD控制器 有些ARM芯片内置LCD控制器,有的甚至内置64KB彩色TFT LCD控制器。 (10)PWM输出 有些ARM芯片有2~8路PWM输出,可以用于电机控制或语音输出等场合。 (11)ADC和DAC 有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸 屏和温度监测等 (12)扩展总线 大部分ARM芯片具有外部SDRAM和SRAM扩展接口 (13)时钟计数器和看门狗 一般ARM芯片都具有2~4个16位或32位时钟计数器和一个看门狗计数器。
150+ MIPS Uni-Proc
600+ MIPS Uni-Proc
ARM7TDMI
H L ARM7TDMI
100+ MIPS Uni-Proc
Microcontroller Market
Cortex-M
2.2 ARM微处理器简介
ARM处理器的产品系列非常广,包括ARM7、ARM9、 ARM9E、ARM10E、ARM11和SecurCore、Cortex等
ARM营销模式
将技术授权给 其它芯片厂商
形成各具特色 的ARM芯片
ARM 合作伙伴
ARM占据了32位RISC微处理器80%以上的市场份额
2.1 ARM体系结构的技术特征及发展
2.1.2 ARM技术特征
ARM处理器有如下特点: • 体积小、低功耗、低成本、高性能 • 支持Thumb(16位)/ARM(32位)双指令集,能 很好的兼容8位/16位器件 • 大量使用寄存器,指令执行速度更快 • 大多数数据操作都在寄存器中完成 • 寻址方式灵活简单,执行效率高 • 指令长度固定
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1.2 ARM体系结构的演变
3.增强型DSP指令(E变种) E变种的ARM体系增加了一些增强处理器
对典型的DSP算法处理能力的附加指令。 4.Java加速器Jazelle(J变种)
ARM的Jazelle技术是Java语言和先进的 32位RISC芯片完美结合的产物。 5.ARM媒体功能扩展(SIMD变种)
即地址末位为0x0、0x4、0x8、0xc。 半字对齐:半字单元地址的最低位 A0=0b0
地址末位为0x0、0x2、0x4、0x6、0x8、 0xa、0xc、0xe。
2.2 ARM处理器的数据格式
2.2.1 ARM存储数据类型 对于指令:ARM指令系统分为32位ARM指令集和16位的
Thumb指令集,在存储时分别以32位和16 位的两种不同长度存储。 对于数据:ARM支持对32位字数据,16位半字数据,8 位字节数据操作。因此数据存储器可以存 储32位,16位,8位三种不同长度数据。
第2章 ARM体系结构
本章主要介绍的内容: ARM体系结构、寄存器结构、异常处理、
中断、存储器结构、数据类型、工作模式和工 作状态。 重点内容:
寄存器结构、异常处理、中断、存储器结 构、数据类型、工作模式和工作状态。 目的和要求:
了解ARM分类方法,掌握存储结构、寄存 器结构、处理器状态与模式及两种状态集。
2.1.1 ARM体系结构的技术特征
测试
ARM
接口
CPU
SDRAM Control
高性能 总线
AHB
并行 接口
串行 接口
外部
桥
总线 APB
SRAM
LCD C总线的典型系统
2.1 ARM体系结构简介
JTAG ARM7TDMI边界 扫描节拍控制器
CPU 单元 写缓冲器 ARM7TDMI核 8KB Cache
作为32位的微处理器,ARM体系结构所支持的最大寻址空 间为4GB(232字节)。
从0字节到3字节放置第一个存储的字数据,从第4个 字节到第7个字节放置第二个存储的字数据,依次排列。
32位的字数据要使用4个地址单元,16位半数据要使 用2个地址单元。
这样,就存在一个所存储的字或半字数据的排列顺序 问题。ARM体系结构可以用两种方法存储字数据,称为大 端格式和小端格式。
2.2 ARM处理器的数据格式
在ARM内部,所有操作都面向32位的操作数,只 有数据传送指令支持较短的字节和半字的数据类型。 当从存储器读入一个字节或半字时,根据其数据类型 将其扩展到32位。
2.2 ARM处理器的数据格式
2.2.2 ARM存储器结构 ARM存储器以8位为一个单元存储数据(一个字节),
每个存储单元分配一个存储地址。 ARM将存储器看作是从0地址开始的字节的线性组合。
2.1.3 ARM体系结构的命名规则
ARM/Thumb体系版本由下面几部分组成: 1.基本字符串ARMv。 2.基本字符串后为ARM指令集版本号,目前
是1-8的数字字符。 3.ARM指令集版本号后为表示所含变种的字
符。由于在ARM体系版本4以后,M变种成 为系统的标准部件,所以字符M通常也不 单独列出来。 4.最后使用的字符x表示排除某种功能。
和未定义这7种处理器模式; (6)使用JTAG仿真调试ARM体系结构芯片; (7)具有片上总线AMBA(Advanced Microcontroller
Bus Architecture)。AMBA定义了3组总线:先进高性能 总线AHB、先进系统总线ASB和先进外围总线APB。
2.1 ARM体系结构简介
2.1.1 ARM体系结构的技术特征
RISC架构的ARM微处理器特点: (1)支持Thumb(16位)/ARM(32位)双指令集; (2)指令执行采用3级流水线/5级流水线技术; (3)带有指令cache和数据cache,大量使用寄存器; (4)支持大端格式和小端格式两种方法存储字数据; (5)支持用户、快速中断、中断、管理、中止、系统
2.2 ARM处理器的数据格式
2.2.1 ARM存储数据类型 ARM处理器支持以下6种数据类型:
(1)8位有符号和无符号字节(Byte)。 (2)16位有符号和无符号半字(Halfword)。
它们必须以两字节的边界对齐(半字对齐)。 (3)32位有符号和无符号字(word)。
它们必须以4字节的边界对齐(字对齐)。 注意:在ARM中一个字是4个字节,不是2个字节。 字对齐:字单元地址的低两位 A1A0=0b00。
UART0、1 同步输入/输出口 PWM定时器0~4、5
TCLK EXTCLK
/
通 用 输 入 输 出
SIOCK
2.1.2 ARM体系结构的演变
1.Thumb指令集(T变种) Thumb指令集是把32位的ARM指令集的一
个子集重新编码后而形成的一个特殊的16位 的指令集。 2.长乘指令(M变种)
长乘指令是一种生成64位相乘结果的乘 法指令(此指令为ARM指令),M变种增加了 两条长乘指令。
2.1 ARM体系结构简介
2.1.1 ARM体系结构的技术特征
1.ARM的体系结构采用了若干Berkeley RISC 处理器设计中的特征 Load/store体系结构 固定的32位指令 3地址指令格式
2.也放弃了其它若干Berkeley RISC特征 寄存器窗口 延迟转移 所有的指令单周期执行
2.1 ARM体系结构简介
2.1.3 ARM体系结构的命名规则
例:ARM7TDMI支持32位寻址范围,ARM7TDMI 的后缀意义为:
ARM7 T D M I - S
ARM7TDMI的可综合版本(软核), 对应用工程师来说其编程模型与 ARM7TDMI一致 支持Embeded ICE观察硬件
支持64位乘法
支持片上调试
支持高密度16位的Thumb指令集
总线仲裁器
存储器ROM/SRAM
系
DRAM/SDRAM
统
总 LCD DMA LCD CONT
线
中断控制器
AHB
时钟产生器 (PLL)
电源管理
ZDMA(2路)
系统总线桥&仲裁/BDMA(两路)
模拟量输入 AIN[7:0]
A/D转换器
外
围
设
看门狗定时器 备
总
32768Hz
线
APB
实时时钟RTC
GPIO(控制器) I2C总线控制器 I2S总线控制器