第2章 ARM体系结构

合集下载

第二章 ARM9体系结构ppt课件

第二章  ARM9体系结构ppt课件
ARM7TDMI,ARM710T,ARM720T ARM740T Strong ARM,ARM8,ARM810 ARM9TDMI,ARM920T,ARM940T
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位设计,但考虑到

第2章 ARM体系结构

第2章  ARM体系结构

• 控制位

程序状态寄存器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处理器基础

C
V
3、保留位
CPSR中和其余位为保留位。
四、ARM的异常处理
1.1 进入/退出异常
1、进入异常
内核刚进入异常状态时,会依次采取以下动作: ① 将原来执行的程序的下一条指令地址保存到链接寄存器(LR)中。 ② 复制CPSR到相应的SPSR进行保存。 ③ 根据发生的异常类型改变CPSR的模式位的值。 ④ 令程序计数器(PC)的值指向异常处理向量所指的下一条指令。 ⑤ 这时也可能设置中断禁能标志,以防止不可估计的异常嵌套发生。
2、大端存储格式(Big 大端存储格式(
Endian) Endian)
字数据的高字节存储在低地址中,而字数据的低字节则存储在高地址中 的存储方式称为大端存储格式 大端存储格式。 大端存储格式
假设一个32位的数据0xA9876543,保存到起始地址为0x0000的存 储空间里,按大端存储格式对数据进行存储。
1、控制位
CPSR的低8位称为控制位。 对各控制位的定义如下: ① T标志位 标志位 该位反映处理器的操作状态。 ② 中断禁止位 I和F是中断禁止位。 ③ 操作模式位 MO,M1,M2,M3和M4(M[4:0])是模式位,这些位决定了处 理器的操作模式。
2、条件码标志位
在ARM状态下,绝大多数指令都是有条件执行指令;在THUMB状 态下,仅有分支指令是有条件执行指令。 各条件码标志位的具体含义
第二章 ARM处理器基础
一、ARM7处理器概述 二、ARM处理器的数据格式 三、处理器模式与内部寄存器 四、ARM的异常处理 五、本节附录
一、ARM7处理器概述
ARM7TDMI是一个32位的微处理器核, 基于精简指令集(RISC)的 原理设计而成的。处理器的译码结构相对简单;处理器内含集成元件 的门数相对减少,功耗降低。 ARM7微处理器系列特点: 1、32位嵌入式RISC处理器; 2、支持多种低功耗模式; 3、支持片上调试功能,通过JTAG连接; 4、实时中断处理系统; 5、3级指令流水线,具有很高的指令吞吐量。

单片机课件第二章 ARM体系结构

单片机课件第二章 ARM体系结构

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(未定义指令中止模式):当未定义的指令执行时进入该 模式,可用于支持硬件协处理器的软件仿真。

02-ARM技术概述

02-ARM技术概述

2.1 ARM体系结构的发展历史和技术特征
1. ARM发展的历程 2. ARM体系结构的技术特征
1、ARM发展的历程
最近10多年来ARM技术的突出成果表现在:
使用“Thumb”的新型压缩指令格式,使得应用系统开 发可降低系统成本和功耗; ARM9、ARM10、Strong-ARM 和 ARM11 等 系 列 处 理 器的开发,显著地提高了ARM的性能,使得ARM技术 在面向高端数字音、视频处理等多媒体产品的应用中更 加广泛; 更好的软件开发和调试环境,加快用户产品开发; 更为广泛的产业联盟使得基于ARM的嵌入式应用领域 更加广阔; 嵌入在复杂SoC中、基于ARM核的调试系统代表着当 今片上调试技术的前沿。
V4T
V4 V4T V5TE V5TE V6 V7
ARM9E-S
ARM10TDMI,ARM1020E ARM11,ARM1156T2-S,ARM1156T2F-S,ARM1176JZ-S, ARM11JZF-S Cortex A7,Cortex A8,Cortex A9
2、ARM体系结构的演变
1)Thumb指令集(T变种) Thumb指令集是把32位的ARM指令集的一个子集重 新编码后而形成的一个特殊的16位的指令集 2)长乘指令(M变种) 长乘指令是一种生成64位相乘结果的乘法指令(此 指令为ARM指令),M变种增加了两条长乘指令
2.6 ARM寄存器组成
1. 2. 3. ARM寄存器组成概述 ARM状态下的寄存器组织 Thumb状态下的寄存器组织
1、ARM寄存器组成概述
ARM处理器总共有37个寄存器,可以分为以下两类 寄存器 :31个通用寄存器 R0~R15 R13_svc、R14_svc R13_abt、R14_abt R13_und、R14_und R13_irq、R14_irq R8_fiq ~ R14_fiq 6个状态寄存器 CPSR、SPSR_svc、SPSR_abt、SPSR_und、 SPSR_irq和SPSR_fiq

ARM体系结构

ARM体系结构
2015/9/288源自ARM920T系统结构分析
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种又称为异常模式, 常用于处理中断或异常,以及访问受保护的系统资源等情 况。

第2章 ARM微处理器概述

第2章 ARM微处理器概述


工业控制领域:
作为32位 的RISC 架构,基于ARM 核的微控制器芯片不
但占据了高端微控制器市场的大部分市场份额,同时也 逐渐向低端微控制器应用领域扩展,ARM 微控制器的低 功耗、高性价比,向传统的8 位/16 位微控制器提出了挑 战。

无线通讯领域:
目前已有超过85%的无线通讯设备采用了ARM 技术,
ARM体系结构的变种

(4)J变种(Java加速器Jazelle)
ARM的Jazelle技术将Java的优势和先进的32位RISC芯
片完美地结合在一起。Jazelle技术提供了Java加速功能, 可以得到比普通Java虚拟机高得多的性能。与普通的 Java虚拟机相比,Jazelle使Java代码运行速度提高了8 倍,而功耗降低了80%。 Jazelle技术使得程序员可以在一个独立的处理器上同时 运行Java应用程序、已经建立好的操作系统、中间件以 及其他的应用程序。与使用协处理器和双处理器相比, 使用单独的处理器可以在提供高性能的同时保证低功耗 和低成本。 J变种首先在ARM体系版本4TEJ中使用,用字母J表示。
使用电池供电的高性能的便携式设备。这些 设备一方面需要处理器提供高性能,另一方 面又需要功耗很低。SIMD功能扩展为包括音 频/视频处理在内的应用相同提供了优化功能。 它可以使音频/视频处理性能提高4倍。 Version 6首先在2002年春季发布的ARM11 处理器中使用。
2.2.3 ARM体系结构的变种及版本 命名格式
Version 4(v4)
该版本增加了下列指令:
半字加载和存储指令; 加载带符号的字节和半字数据的指令; 增加mb状态; 增加了处理器的特权模式。 该版本不再强制要求与以前的26位地址空间 兼容。

ARM体系架构

ARM体系架构
Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Fetch
该例中用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体系架构解析
T: Thumb support

标志
含义
说明
支持Thumb指令集 Thumb指令集版本1:ARMv4T
Thumb指令集版本2:ARMv5T
Thumb-2:ARMv6T
D
片上调试
使处理器能够停止,以响应调试请求
M
支持长乘法
32位乘32位得到64位,32位的乘加得到64位
T
I
E
J
S
Embedded ICE 提供片上断点和调试点

流水线:是把一个重复的过程分解为若干个子过
程,每个子过程可以与其他子过程同时进行。

于这种工作方式与工厂中的生产流水线十分相似,
因此,把它称为流水线工作方式。
处理器按照一系列步骤来执行每一条指令。典
型的步骤为:
1 从存储器读取指令 fetch
2 译码以鉴别它是哪一类指令 dec
3 从寄存器组取得所需的操作数 reg
Reg
Read
Shift
ALU
Reg
Write
Reg Select
DECODE
EXECUTE
ARM9TDMI
Instruction
Fetch
FETCH
ARM or Thumb
Inst Decode
Reg
Decode
Shift + ALU
Reg
Read
DECODE
EXECUTE
Memory
Access
2 指令译码 Instruction Decode :TD
3 执行指令 Instruction Execute :TE
4 存储 Storage :TS

中北大学嵌入式习题答案第2章

中北大学嵌入式习题答案第2章

第二章 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)汇总

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

嵌入式部分复习题、练习题-含答案

嵌入式部分复习题、练习题-含答案

第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嵌入式系统结构与编程习题答案 清华大学出版社 最详细版

ARM嵌入式系统结构与编程习题答案清华大学出版社最详细版arm嵌入式系统结构与编程习题答案清华大学出版社最详细版一《arm嵌入式系统结构与编程》习题答案第一章为绪论1.国内嵌入式系统行业对“嵌入式系统”的定义是什么?如何理解?答:国内嵌入式行业普遍接受的定义是:以应用为中心,以计算机技术为基础,软硬件可定制,满足应用系统在功能、可靠性、成本、体积和功耗等方面的严格要求的专业计算机系统。

从这个定义可以看出,嵌入式系统与应用紧密结合,具有很强的特殊性。

它必须根据实际系统需求进行合理定制和使用。

因此,嵌入式系统是“为特定的人定制的”。

2.嵌入式系统是从何时产生的,简述其发展历程。

答:从20世纪70年代单片机的出现到目前各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了30多年的发展历史。

嵌入式系统的出现最初是基于单片机的。

英特尔于1971年开发了第一款4位总线结构的微处理器4004,可以说是嵌入式系统的雏形。

80年代初的8051是单片机历史上值得纪念的一页。

20世纪80年代初,出现了一种商业化的“实时操作系统内核”。

在实时内核下编写应用软件,可以加快新产品的开发速度,节约资金。

在20世纪90年代,实时内核发展为实时多任务操作系统。

进入21世纪以来,嵌入式系统得到了极大的发展。

在硬件方面,单片机的性能有了很大的提高,尤其是ARM技术的出现和改进,为嵌入式操作系统提供了强大的硬件载体,将嵌入式系统推向了一个新的阶段。

3.当前最常用的源码开放的嵌入式操作系统有哪些,请举出两例,并分析其特点。

答:主要有嵌入式linux和嵌入式实时操作内核uc/os-ii嵌入式Linux操作系统是一种针对嵌入式微控制器的特点而定制的Linux操作系统,包括通用的嵌入式通信协议和通用驱动程序,并支持多种文件系统。

它主要具有以下特点:开源、易移植、内核小、功能强大、运行稳定、效率高。

uc/os是源码工卡的实时嵌入式系统内核,主要有以下特点:源码公开,可移植性强,可固化,可剪裁,占先式,多任务,可确定性,提供系统服务等。

ARM微处理器硬件结构

ARM微处理器硬件结构
4
ARM版本Ⅰ 版本Ⅰ 版本
1.V1版架构
该版架构只在原型机ARM1出现过,没有用于商业产品。 其基本性能有: 基本的数据处理指令(无乘法); 基于字节、半字和字的Load/Store指令; 转移指令,包括子程序调用及链接指令; 供操作系统使用的软件中断指令SWI; 寻址空间:64MB(226)。
17
流水线技术Ⅱ 流水线技术Ⅱ
多周期ARM指令的3级流水线操作
18
流水线技术Ⅲ 流水线技术Ⅲ
2.ARM的流水线设计问题
(1)缩短程序执行时间: 提高时钟频率fclk 减少每条指令的平均时钟周期数CPI (2)解决流水线相关: 结构相关 数据相关 控制相关
19
流水线技术Ⅳ 流水线技术Ⅳ
3.ARM的5级流水线 ARM9和StrongARM架构都采用了5级流 水线.
(b)三级存储器层次结构
27
总线结构Ⅰ 总线结构Ⅰ
1.总线协议 :四周期握手协议
28
总线结构Ⅱ 总线结构Ⅱ
2.总线读写
29
总线结构Ⅲ 总线结构Ⅲ
3.总线的时序图
30
总线结构Ⅳ 总线结构Ⅳ
4.直接内存访问(DMA)
31
总线结构Ⅴ 总线结构Ⅴ
5.系统总线配置
多总线系统
32
ARM存储数据类型 存储数据类型
虚拟存储空间到物理存储空间的映射。在ARM中采用了 页式虚拟存储管理。 存储器访问权限的控制。 设置虚拟存储空间的缓冲的特性。
42
存储管理单元MMU Ⅱ(1) 存储管理单元
2.存储访问过程
使能MMU时存储访问过程

43
存储管理单元MMU Ⅱ(2) 存储管理单元
禁止MMU时存储访问过程:

ARM体系结构

ARM体系结构
Extensions: Jazelle (5TEJ)
SIMD Instructions Multi-processing v6 Memory architecture Unaligned data support
Extensions: Thumb-2 (6T2) TrustZone® (6Z) Multicore (6K) Thumb only (6-M)
17
Embedded Processors
Chengdu University of Information Technology
18
Which architecture is your processor?
Chengdu University of Information Technology
---ARM V4
Chengdu University of Information Technology
7
•ARMV4是目前支持的最老的架构,是基于32-bit地址 空间的32-bit指令集。ARMv4除了支持ARMv3的指 令外还扩展了:
支持halfword的存取 支持byte和halfword的符号扩展读 支持Thumb指令 提供Thumb和Normal状态的转换指令 进一步的明确了会引起Undefined异常的指令 对以前的26bits体系结构的CPU不再兼容
4. 如果3中描述的功能不存在,则在该功能标识符前加x
ARM处理器命名(Classic命名)
Chengdu University of Information Technology
15
采用上述的架构,形成一系列的处理器。有时候还要区
分处理器核和处理器系列。不过,在这里其实不用区分太细,

第2章 ARM技术概述

第2章 ARM技术概述

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。





4.浮点部件 在ARM体系结构中,浮点部件作为选件可根据需要选用,FPA10 浮点加速器以协处理器方式与ARM相连,并通过协处理器指令的 解释来执行。 浮点的Load/Store指令使用频度要达到67%,故FPA10内部也采 用Load/Store结构,有8个80位浮点寄存器组,指令执行也采用流 水线结构。 5.控制器 ARM的控制器采用硬接线的可编程逻辑阵列PLA,其输入端有14 根、输出端有40根,分散控制Load/Store多路、乘法器、协处理 器以及地址、寄存器ALU和移位器。 6.寄存器 ARM内含37个寄存器,包括31个通用32位寄存器和6个状态寄存 器。



2.2.4 ARM10E微处理器 ARM10E系列微处理器包含ARM1020E、ARM1022E和 ARM1026EJ-S几种类型,由于采用了新的体系结构,与同等的 ARM9器件相比较,在同样的时钟频率下,性能提高了近50%。 同时采用了两种先进的节能方式,使其功耗极低。 ARM10E系列微处理器支持DSP指令集,适合于需要高速数字信号 处理的场合。 采用6级整数流水线,支持32位ARM指令集和16位 Thumb指令集,支持32位的高速AMBA总线接口,支持VFP10浮点 处理协处理器,MMU支持Windows CE、Linux、Palm OS等多种 主流嵌入式操作系统,支持数据Cache和指令Cache,内嵌并行读 /写操作部件,主频最高可达400MIPS。 ARM10E系列微处理器主要应用于下一代无线设备、数字消费品、 成像设备、工业控制、通信和信息系统等领域。

处理器,除了具有ARM体系结构的共同特点以外,每一个系列的 ARM微处理器都有各自的特点和应用领域。 一个典型的ARM体系结构方框图如图2.1.1所示,包含有32位ALU、 31个32位通用寄存器及6位状态寄存器、32×8位乘法器32×32位 桶形移位寄存器、指令译码及控制逻辑、指令流水线和数据/地 址寄存器等。
第2章 ARM体系结构
2.1 ARM体系结构简介


ARM(Advanced RISC Machines)公司1991年成立于英国剑桥, 是专门从事基于RISC技术芯片设计开发的公司,主要出售芯片设 计技术的授权,作为知识产权供应商,本身不直接从事芯片生产, 靠转让设计许可由合作公司生产各具特色的芯片,半导体生产商 从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用 领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片 进入市场。目前,全世界有几十家大的半导体公司都使用ARM公 司的授权,使得ARM技术获得了更多的第三方工具、制造、软件 的支持,又使整个系统成本降低,使产品更容易进入市场,更具 有竞争力。目前,ARM微处理器几乎已经深入到工业控制、无线 通讯、网络应用、消费类电子产品、成像和安全产品各个领域 采用RISC架构的ARM微处理器一般具有如下特点: ● 支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容 8位/16位器件。Thumb指令集比通常的8位和16位CISC/RISC处理
图2.2.3 ARM720T内核结构


2.2.2 ARM9微处理器 ARM9系列微处理器包含ARM920T、ARM922T和ARM940T几种类 型,可以在高性能和低功耗特性方面提供最佳的性能。采用5级 整数流水线,指令执行效率更高。提供1.1MIPS/MHz的哈佛结构。 支持数据Cache和指令Cache,具有更高的指令和数据处理能力。 支持32位ARM指令集和16位Thumb指令集。支持32位的高速 AMBA总线接口。全性能的MMU,支持Windows CE、Linux、 Palm OS等多种主流嵌入式操作系统。MPU支持实时操作系统。 ARM920T处理器核在ARM9TDMI处理器内核基础上,增加了分离 式的指令Cache和数据Cache,并带有相应的存储器管理单元IMMU和D-MMU、写缓冲器及AMBA接口等,如图2.2.4所示。
2.2 ARM微处理器结构


2.2.1 ARM7微处理器 ARM7系列微处理器包括ARM7TDMI、ARM7TDMI-S、ARM720T、 ARM7EJ几种类型。其中,ARM7TMDI是目前使用最广泛的32位 嵌入式RISC处理器,主频最高可达130MIPS,采用能够提供 0.9MIPS/MHz的三级流水线结构,内嵌硬件乘法器(Multiplier), 支持16为压缩指令集Thumb,嵌入式ICE,支持片上Debug,支 持片上断点和调试点。指令系统与ARM9系列、ARM9E系列和 ARM10E系列兼容,支持Windows CE、Linux、Palm OS等操作系 统。典型产品如Samsung公司的S3C4510B。 1.ARM7TDMI处理器内核 ARM7TDMI处理器的内核如图2.2.1所示。
图2.2.1 ARM7TDMI内核结构



ARM7TDMI还提供了存储器接口、MMU接口、协处理器接口和调 试接口,以及时钟与总线等控制信号,如图2.2.2所示。 存储器接口包括了32位地址A[31:0]、双向32位数据总线 D[31:0]、单向32位数据总线DIN[31:0]与DOUT[31:0]、以及存储 器访问请求MREQ、地址顺序SEQ、存储器访问控制MAS[1:0和数 据锁存控制BL[3:0]等控制信号。 ARM7TDMI处理器内核也可以ARM7TDMI-S软核(Softcore)形式 向用户提供。同时,提供多种组合选择,例如可以省去嵌入式 ICE单元等。





器具有更好的代码密度; ● 指令执行采用3级流水线/5级流水线技术; ● 带有指令Cache和数据Cache,大量使用寄存器,指令执行速度更快。 大多数数据操作都在寄存器中完成。寻址方式灵活简单,执行效率高。 指令长度固定(在ARM状态下是32位,在Thumb状态下是16位); ● 支持大端格式和小端格式两种方法存储字数据; ● 支持Byte(字节,8位)、Halfword(半字,16位)和Word(字,32 位)三种数据类型。 ● 支持用户、快中断、中断、管理、中止、系统和未定义等7种处理器 模式,除了用户模式外,其余的均为特权模式; ● 处理器芯片上都嵌入了在线仿真ICE-RT逻辑,便于通过JTAG来仿真 调试ARM体系结构芯片,可以避免使用昂贵的在线仿真器。另外,在处 理器核中还可以嵌入跟踪宏单元ETM,用于监控内部总线,实时跟踪指 令和数据的执行; 具有片上总线AMBA(Advanced Micro-controller Bus Architecture)义了3组总线:先进高性能总线AHB(Advanced High performance Bus);先进系统总线ASB(Advanced System Bus);先进外围总线APB(Advanced Peripheral Bus)。通过 AMBA可以方便地扩充各种处理器及I/O,可以把DSP、其他处理 器和I/O(如UART、定时器和接口等)都集成在一块芯片中; ● 采用存储器映像I/O的方式,即把I/O端口地址作为特殊的存 储器地址; ● 具有协处理器接口。ARM允许接16个协处理器,如CP15用于 系统控制,CP14用于调试控制器; ● 采用了降低电源电压,可工作在3.0V以下;减少门的翻转次 数,当某个功能电路不需要时禁止门翻转;减少门的数目,即降 低芯片的集成度;降低时钟频率等一些措施降低功耗; ● 体积小、低成本、高性能。 ARM微处理器包括ARM7、ARM9、ARM9E、ARM10E、SecurCore、 以及Intel的StrongARM、XScale和其它厂商基于ARM体系结构的



2.2.5 SecurCore微处理器 SecurCore系列微处理器包含SecurCore SC100、SecurCore SC110、SecurCore SC200和SecurCore SC210几种类型,提供了 完善的32位RISC技术的安全解决方案。 SecurCore系列微处理器除了具有ARM体系结构各种主要特点外, 在系统安全方面: 带有灵活的保护单元,以确保操作系统和应用 数据的安全;采用软内核技术,防止外部对其进行扫描探测;可 集成用户自己的安全特性和其他协处理器。 SecurCore系列微处理器主要应用于如电子商务、电子政务、电子 银行业务、网络和认证系统等一些对安全性要求较高的应用产品 及应用系统。
图2.2.4 ARM920T内核结构


ARM940T处理器核采用了ARM9TDMI处理器内核,是 ARM920T处理器核的简化版本,没有存储器管理单元 MMU,不支持虚拟存储器寻址,而是用存储器保护单 元来提供存储保护和Cache控制。 ARM9系列微处理器主要应用于无线通信设备、仪器仪 表、安全系统、机顶盒、高端打印机、数字照相机和 数字摄像机等。典型产品如Samsung公司的S3C2410A。



2.2.3 ARM9E微处理器 ARM9E系列微处理器包含ARM926EJ-S、ARM946E-S和ARM966ES几种类型,使用单一的处理器内核提供了微控制器、DSP、Java 应用系统的解决方案。ARM9E系列微处理器提供了增强的DSP处 理能力,很适合于那些需要同时使用DSP和微控制器的应用场合。 ARM9E系列微处理器支持DSP指令集,适合于需要高速数字信号 处理的场合。ARM9E系列微处理器采用5级整数流水线,支持32 位ARM指令集和16位Thumb指令集,支持32位的高速AMBA总线 接口,支持VFP9浮点处理协处理器,MMU支持Windows CE、 Linux、Palm OS等多种主流嵌入式操作系统,MPU支持实时操作 系统,支持数据Cache和指令Cache,主频最高可达300MIPS。 ARM9系列微处理器主要应用于下一代无线设备、数字消费品、 成像设备、工业控制、存储设备和网络设备等领域。


2.2.6 StrongARM微处理器 Intel StrongARM处理器是采用ARM体系结构高度集成的32位RISC 微处理器,采用在软件上兼容ARMv4体系结构、同时采用具有 Intel技术优点的体系结构。典型产品如SA110 处理器、SA1100、 SA1110PDA系统芯片和SA1500多媒体处理器芯片等。例如其中的 Intel StrongARM SA-1110 微处理器是一款集成了32位 StrongARM RISC处理器核、系统支持逻辑、多通信通道、LCD控 制器、存储器和PCMCIA控制器以及通用I/O口的高集成度通信控 制器。该处理器最高可在206 MHz下运行。SA-1110有一个大的指 令Cache 和数据Cache、内存管理单元(MMU)和读/写缓存。存 储器总线可以和包括SDRAM、SMROM 和类似SRAM的许多器件相 接。软件与ARM V4结构处理器家族相兼容。 Intel StrongARM处理器是便携式通讯产品和消费类电子产品的理 想选择。
相关文档
最新文档