第2章 ARM微处理器硬件结构 4

合集下载

第二章 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体系结构

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

嵌入式系统2012作业

嵌入式系统2012作业

嵌入式系统2011作业第1章嵌入式系统概述1、什么是嵌入式系统?答:嵌入式系统指的是以应用为中心和以计算机技术为基础的,并且软硬件是可裁剪的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标严格要求的专用计算机系统。

2、与通用计算机相比,嵌入式系统有哪些特点?答:1:嵌入式系统通常是面向特定应用的;2:嵌入式系统功耗低、体积小、集成度高、成本低;3:嵌入式系统具有较长的生命周期;4:嵌入式系统具有固化的代码;5:嵌入式系统开发需要专用开发工具和环境;6:嵌入式系统软件需要RTOS开发平台;7:嵌入式系统开发人员以应用专家为主;8:嵌入式系统是知识集成系统。

3、根据嵌入式系统的复杂程度,嵌入式系统可分为哪4类?答:1:单个微处理器;2:嵌入式处理器可扩展的系统;3:复杂的嵌入式系统;4:在制造或过程控制中使用的计算机系统。

4、嵌入式微处理器有哪几类?试举例说明。

答:嵌入式微处理器,例如:Am186/88、386EX、SC-400.嵌入式微控制器,例如:8051、P51XA、MCS-251.嵌入式DSP处理器,例如:TMS320系列、DSP56000系列.嵌入式片上系统,例如:TriCore、M-Core、Smarrt-XA。

5、从硬件系统来看,嵌入式系统由哪几部份组成?画出简图。

答:P11图1-46、嵌入式微处理器和嵌入式微控制器分别由哪些部件组成?两者有何区别?答:(1)组成:嵌入式微处理器:包括指令执行部件与总线接口部件。

嵌入式微控制器(单片机):将整个系统集成到一个芯片上。

(2)两者区别:嵌入式微处理器: 如果要构成一个系统,完成特定功能必须扩展Rom、RAM、总线接口等器件.并且将系统集成在一块板上。

嵌入式微控制器:一个芯片就是一个系统,芯片包括Rom、RAM、I/O接口、通用接口(比如UART)特殊接口(比如网络接口、Can接口).不用外扩接口电路,即可完成一定功能。

第2章ARM微处理器硬件结构2.1哈佛体系结构和冯·诺依曼体系结构有何不同?答:冯·诺依曼结构:处理器使用一组总线(数据总线、地址总线、控制总线)连接程序存储器、数据存储器、接口器件。

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架构
R15(PC) 状态寄存器 CPSR SPSR R15 CPSR
R13(SP)
R13
R13
R13_svc R13_svc R14_svc R14_svc
2-3-1 ARM状态下的寄存器组织
寄存器类别 寄存器在汇编中的名 称 用户 用户 R0(a1) R1(a2) R2(a3) R3(a4) R4(v1) R5(v2) R6(v3) 通用寄存器 和程序计数 器 R7(V4) R8(V4) R9(SB,v6) R0 R0 R1 R1 R2 R2 R3 R3 R4 R4 R5 R5 R6 R6 R7 R7 R8 R8 R9 R9 R10 R10 R11 R11 R8 R9 各模式下实际访问的寄存器 系统 系统 管理 管理 中止 中止 R0 R1 R2 R3 R4 R5 R6 R7 R8_fiq R8_fiq R9_fiq R9_fiq R10_fiq R10_fiq R11_fiq R11_fiq 未定义 未定义 中断 中断 快中断 快中断
1-4-1 常见ARM微处理器系列介绍
ARM9系列微处理器在高性能和低功耗特性方面提供 最佳的性能:
5级整数流水线,指令执行效率更高。 提供1.1MIPS/MHz的哈佛结构。 支持32位ARM指令集和16位Thumb指令集。 支持32位的高速AMBA总线接口。 全性能的MMU,支持Windows CE、Linux、Palm OS 等多种主流 嵌入式操作系统。 MPU支持实时操作系统。 支持数据Cache和指令Cache,具有更高的指令和数据处理能力。
2-1 ARM微处理器的工作状态
处理器状态: ARM9处理器内核使用V4T版本的ARM结构,具有 两种操作状态:
ARM状态:32位,这种状态下执行的是字方式的ARM指令 Thumb状态:16位,这种状态下执行半字方式的ARM指令。

微处理器的基本硬件结构

微处理器的基本硬件结构

微处理器是计算机系统中的核心组件,它负责执行指令、控制数据流和协调各个硬件部件的操作。

微处理器的基本硬件结构通常包括以下几个主要组成部分:控制单元(Control Unit):控制单元是微处理器的核心,负责解析和执行指令。

它包括指令寄存器、程序计数器和指令解码器等关键部件,用于从存储器中获取指令、解码指令内容,并发出相应的控制信号来执行指令。

算术逻辑单元(Arithmetic Logic Unit, ALU):ALU 是执行算术和逻辑运算的部分。

它可以执行诸如加法、减法、乘法、逻辑与、逻辑或等基本运算,并根据控制单元的指令来进行运算操作。

寄存器(Registers):寄存器是用于存储数据和指令的临时存储器。

微处理器通常包括多个寄存器,如通用寄存器、程序计数器、指令寄存器、状态寄存器等。

寄存器提供了快速的存储和访问,用于存储和处理数据。

数据总线(Data Bus):数据总线用于在微处理器内部和其他硬件部件之间传输数据。

它是一个双向的数据通道,可以传输二进制数据、地址和控制信号。

地址总线(Address Bus):地址总线用于传输内存地址,指示微处理器要读取或写入的内存位置。

地址总线的位数决定了微处理器可以寻址的内存空间大小。

控制总线(Control Bus):控制总线用于传输控制信号,如时钟信号、读写信号、中断信号等。

它控制着微处理器内部各个部件的操作和协调。

内部存储器(Internal Memory):微处理器通常内置一些内部存储器,用于存储指令、数据和临时结果。

这些内部存储器的容量相对较小,但访问速度非常快。

除了上述基本硬件结构外,现代微处理器还可能包括高速缓存、浮点运算单元、多核处理器等特殊功能部件,以提高处理性能和并行处理能力。

中北大学嵌入式习题答案第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

ARM体系结构及常用接口简介解析

ARM体系结构及常用接口简介解析


进入ARM状态:
执行BX指令,并设置操作数寄存器的状态(位[0]) 为0。 – 进入异常时,将PC放入异常模式链接寄存器中,从异 常向量地址开始执行也可进入ARM状态

ARM微处理器:处理器工作状态
• Thumb-2 :增加了混合模式能力 – 定义了一个新的32-bit指令集能在传统的 16-bit指令运行的Thumb状态下同时运行。 – 这样能在一个系统中更好地平衡ARM和 Thumb代码的能力,使系统能更好地利 用ARM级别的性能和Thumb代码的密度 的优势
ARM异常处理
异常向量表(Exception Vectors)
地 址 0x0000,0000 0x0000,0004 0x0000,0008 0x0000,000C 0x0000,0010 0x0000,0014 0x0000,0018 0x0000,001C 复位 未定义指令 软件中断 中止(预取指令) 中止(数据) 保留 IRQ FIQ 异 常 进入模式 管理模式 未定义模式 管理模式 中止模式 中止模式 保留 IRQ FIQ
13
ARM920T系统结构分析
ARM7TDMI
Instruction Fetch ThumbARM decompress ARM decode Reg Select
Reg Read
Shift
ALU
Reg
Write
FETCH
DECODE
EXECUTE
ARM9TDMI
Instruction Fetch ARM or Thumb Inst Decode Reg Reg Decode Read Shift + ALU Memory Access Reg Write
3

第2章 微控制器及微处理器结构PPT课件

第2章 微控制器及微处理器结构PPT课件

浮点数! 这就可以支持复杂的运算!
C51的存储空间说明(关键词)
• 显式变量存储区域 说明
• code • data • idata • bdata • xdata • pdata
• 存储模式 (默认变量存储区域) • small: 在data • compact: 在pdata • large: 在xdata
16位模式,但是可以使用32位 寄存器
保护模式 (.386P)
27
控制寄存器CR0~CR4 保存全局性机器状态
• PG 页式地址使能 • CD Cache禁止 • NW 不透写 • AM 对齐标识
• WP 写保护 • NE 数字运算错 • ET 协处理器类型 • TS 任务转换
• EM 仿真协处理器 • PE 保护允许
第 2 章 微控制器/微处理器 体系结构
MCS-51 MCU IA-32 处理器体系结构
2.1 MCS-51概述
• 2K~64K ROM(Flash) • 128~256内部RAM • 64K外部RAM/扩展IO地址空间 • 2~3个定时器 • 5~6个中断源(某些型号10余个) • 并行口(4口32线I/O) • 全双工串行口 • 时钟 DC~24MHz(某些到40MHz)
串操作方向)
• IOPL IO特权保护,值为0,1,2和3,现行任务的优先级 CPL高于或等于IOPL时,指令IN,OUT,INS,OUTS,STI,CLI和 LOCK等前缀指令正常执行,否则会引起13号异常
• RF恢复标志(如果RF = 1,下一条指令引起的任何异常被 忽略,每执行完一条无异常的指令,自动使RF=0;避免断 点和单步重复异常)
data
00 – 7F 直接寻址 间接寻址 内部RAM

第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)。

更新 策略
简单
复杂
28
练习
Cache常用的写回策略有写直达法和写回法。当采用写回法 时,一个Cache数据块在( )时写回主存。 A.任何一次写操作数时 B.第一次写操作数时 C.数据块被换出时 D.以上都有可能
B个字
23
命中与未命中

Cache命中:CPU每次读取主存时,Cache控制器都要检查
CPU送出的地址,判断CPU要读取的数据是否在Cache中, 如果在就称为命中。→可直接访问Cache

Cache未命中:读取的数据不在Cache中,则对主存储器 进行操作,并将有关内容置入Cache(作为常用的数据/
第2章 ARM微处理器硬件结构
计 算 机 体 系 结 构
2
1
ARM处理器结构和技术特征
3
ARM7硬件结构图
ARM 存 储 系 统 机 制
4
1
1 存储器的存储体系

(1)存储器形式
单体单字存储器 单体多字存储器


多体单字交叉存取存储器 多体多字交叉存取存储器
一般把这些能并行 读出多个CPU字的 单体多字和多体单 字及多体多字的交 叉存取系统,统称 为并行主存系统。
CPU
总线控制
IOP
M …… 0
M …… 1
M …… 2
M …… 3
地址寄存器0 地址寄存器1 地址寄存器2 地址寄存器3
主控(主存控制部件)
多体(m=4)交叉存储器
返回
5
多体多字存储器

把多体单字的并行存取与单体多字结合,构成多体 多字交叉存储器,进一步提高频宽。 存储器由多个存储体构成,但数据总线是每个存储 体字长的整数倍。
word a=0x f6 73 4b cd
低地址
cd
f6
73 4b 地址A+3 地址A+2 地址A+1 地址A 字节地址
4b
73
f6
cd
高地址
14
练习

存储一个32位数0x2168465到2000H~2003H四个字节单元 中,若以大端模式存储,则2000H存储单元的内容为__。 A、0x21 B、0x68 C、0x65 D、0x02
最低有效字节的地址就 是该word的地址
最低有效字节位于 最低地址
低地址
f6
73
4b
cd
cd
4b 73
地址A
地址A+1 地址A+2 地址A+3 高地址
13
word a=0x f6 73 4b cd
f6
(4) ARM数据存储格式
大端的数据存放格式
(Big Endian)
最低有效字节 位于最高地址
最高有效字节的地址 就是该word的地址
10
当从存储器调入一个字节和半字 时,根据指令对数据的操作类型, 将其无符号0或有符号“符号位” 扩展为32位,进而作为32位数据 在内部进行处理。
边界对齐
各种类型的数据按照一定的规则在空间上排列,而不是顺 序的一个接一个的排放——对齐 对齐的作用和原因:


平台原因(移植原因):各个硬件平台对存储空间的处理上有很 大的不同,某些硬件平台只能从某些特定地址开始存取,否则会 出现硬件异常,这种架构下编程必须保证字节对齐。 性能原因:如果不按照适合其平台要求对数据存放进行对齐,为 了访问未对齐的内存,处理器要作两次内存访问,而对齐的内存 访问只需一次。会在存取效率上带来损失。



每访问一次存储器,可同时读/写多个字。
多个存储体按流水线的方式启动,提高了存储器的 整体速度。
返回
6
练习
多体交叉存储器主要是为了解决扩充容量问题。 ( )
错,由于CPU的速度比主存快,如果能同时从主存取出n条指令 ,必然会提高机器的运行速度,多模块交叉存储器就是基于这 种思想提出来的。 采用多体交叉存储器可以实现主存储器多模块流水式并行存 取,所以大大提高了存储器的数据传输率。 多体交叉存储器主要解决的问题是(B )。 A. 扩充主存储器的容量 B. 提高主存储器数据传输率 C. 减少主存储器芯片数量 D. 简化路线结构
21
2 ARM的高速缓冲存储器Cache

高速缓存Cache

高速缓冲存储器中存放的是当前使用得最多的程序 代码和数据,即主存中部分内容的副本。


在嵌入式系统中Cache全部都集成在嵌入式微处理器 内。
可分为数据Cache、指令Cache或混合Cache。
不同的处理器其Cache的大小不一样。
低地址
位 于 地 址 A+2 的 半 字 包 含的字节位于地址 A+2 和 A+3; 位于地址 A 的半字包含的 字节位于地址A和A+1;

……
A A+1 A+2 A+3
高地址
字节 字节 字节 字节
…… 存储器
半字
字 半字
12
(4) ARM数据存储格式
小端的数据格式(Little Endian)
S周期
顺序周期
0
1
I周期
不执行存储器访问;可广播下一次 注意:总线周期使用nMREQ 1 nMREQ 0 访问的地址以便开始译码,与 S周期 内部周期 和SEQ信号编码, 、 SEQ 为 CPU引脚。 配合实现总线上的突发传送。 通过数据总线向或从协处理器传送 数据;传送期间,不需存储周期,存 储系统不允许驱动数据总线。
周期

对很慢– 几十个时钟周期

造成CPU大量时间都在空转以等待数据
Cache由访问速度较快的SRAM组成,一次 把最近或经常需要访问的数据放在Cache
ready

访问大概只需几个-十几个时钟周期

SDRAM 主存 价格便宜, 容量可以做的很大
而不是主存中
20
2 ARM的高速缓冲存储器Cache
地址转换
命中 块号m 块内地址n
工 作 原 理 图
替换块
装入块
Cache
25
(2) Cache的读写操作
读操作:
开始 CPU发出访问地址 是 命中? 否 Cache满? 访问Cache 取出信息送CPU 访问主存 取出信息送CPU 是
否 将新的主存块 调入Cache中
执行替换算法 腾出空位
结束
26

南桥 (标准总线桥路 )
ISA设备
19
2 ARM的高速缓冲存储器Cache


处理器内核的Cache
Cache的作用 CPU算得很快—一条指令只用1-几个时钟 而从基于SDRAM的主内存取、存操作数相
CPU核
较快的数据 存取通道 Cache 价格贵 , 所以容量 只能做的较小 较慢的数据 存取通道
指令)。
24
(1) Cache的工作原理:

在cache存储系统中,把主存储器和cache都划分成相同大小的块。 主存地址可以由块号M和块内地址N两部分组成。同样,cache的地 址也由块号m和块内地址n组成。
块号M 块内地址N 虚拟地址(来自CPU) 未命中 主存->cache 地址变换 已满 cache替换 策略 未满 主存储器

存储一个32位数876165到2000H~2003H四个字节单元中, 若以小端模式存储,则2000H存储单元的内容为( )。 A、0x00 B、0x87 C、0x65 D、0x61
15
(5) ARM4种存储周期
总线周期 类型 说明 nMREQ SEQ 特 点
N周期
非顺序周期
0
0
最简单的总线周期,存储控制器必 须启动存储器访问来满足这个请求 ;该方式存储系统常需要较长的访 问时间。 多用于实现总线上的突发传送,第 一个周期必须是一个内部周期。
写通Cache
27
(2) Cache的读写操作
写操作:
写入方法/写策略:
写通法 主存和Cache一致
“写” 时间 读操 作时
写回法 主存和Cache不一致 短(访问Cache时间)

若读Cache失效,且Cache 若读Cache失效,且Cache 满,不需对主存的写操作 满,需要对主存写操作
18
(6) 系统总线配置


处理器 Cache 前端总线 (FSB) 100 MHz 显卡 北桥 (主桥 ) 存储控制器 存储器
PCI总线标准
外围组件互连;
支持多种外设, 为PC广泛采用;
32位传输(可扩 展64位); 突发模式传输; 地址/数据总线复 用,减小总线规 模。

PCI 总线 33MHz PCI 声卡 USB1 USB2 IDE1 IDE2 ISA 总线8MHz

ARM支持的数据类型 ARM处理器支持以下六种数据类型:

8位有符号和无符号字节。 16位有符号和无符号半字,以2字节的边界对齐。 Thumb状态下,最低位不为0b0——非半字对齐。 32位有符号和无符号字,以4字节的边界对齐。 ARM状态下,最低位不为0b00——非字对齐。
在内部,所有ARM操作 都是面向32位的操作数 ;只有数据传送指令支 持较短的字节和半字的 数据类型。
7
(2) 存储器层次结构
通用寄存器
高速缓冲存储器
主存储器 辅助存储器 脱机大容 量存储器
8
ARM存储器存储层次

ARM存储器采用层次存储结构,其目的在于以低速存储器的 价格得到高速存储器的性能。 ARM架构的处理器的存储器寻址空间为4GB,一般系统所需 RAM/ROM经总线外接。 存储层次: 顶层 • 微处理器达到最佳性 寄存器 片上RAM
相关文档
最新文档