第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体系结构与编程
规则: | ARMv | n | variants | x(variants) | 分成四个组成部分: ·ARMv -- 固定字符,即ARM Version ·n -- 指令集版本号。迄今为之,ARM架构版本发布了7个系列, 所以n=[1:7]。其中最新的版本是第7版 ·variants -- 变种。 ·x(variants) -- 排除x后指定的变种 常见的变种有: ·T -- Thumb指令集 ·M -- 长乘法指令 ·E -- 增强型DSP指令 ·J -- Java加速器Jazelle ·SIMD -- ARM媒体功能扩展
和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小 ,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的 主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称微控制 器。
嵌入式微控制器
嵌入式微控制器目前的品种和数量最多,比较有代表性的通用 系列包括8051、P51XA、MCS-251、MCS-96/196/296、 C166/167、MC68HC05/11/12/16、68300等。另外还有许多半通 用系列如:支持USB接口的MCU 8XC930/931、C540、C541; 支持I2C、CAN-Bus、LCD及众多专用MCU和兼容系列。目前
2021/2/5
ARM分类
基于指令集体系结构(构架ISA)的分类 ARM V1 体系是最初版本,只有26位的寻址空间,没有乘法指 令,最终没有商业化 ARM V2 体系与V1体系同为26位寻址空间,具有乘法和加法指 令,支持协处理器 ARM V3 体系的寻址范围扩展到32位,具有乘法和加法指令, 支持协处理器 ARM V4 体系增加了半字存储操作,对调试的支持以及支持嵌 入的ICE ARM V5 体系增加了DSP指令支持和对Java指令的支持 ARM V6 体系增加了媒体指令,ARMv6指令集合中加入了超过 60条SIMD单指令多数据指令 ARM V7 体系定义了三种独立的内核型--A(应用领域), R( 实时领域),M(控制领域)

单片机课件第二章 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

第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嵌入式系统结构与编程习题答案(全)

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章

第二章 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嵌入式系统结构与编程》邱铁编著. 清华大学出版社.年月第版 年月第二次印刷20093120108 《ARM嵌入式系统结构与编程》第1~4章思考与练习题答案 此答案仅供教师教学用 第1章绪论思考与练习题答案 1. 国内嵌入式系统行业对“嵌入式系统”的定义是什么 如何理解答 见教材1.1节。

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

答 见教材1.1节。

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

答 见教材1.2.1节的嵌入式Linux和嵌入式实时操作内核μC /OS-II。

4. 举例说明嵌入式设备在工控设备中的应用。

答 见教材1.3节的“工业控制领域”。

5. 未来嵌入式技术的发展趋势有哪些 答 见教材1.4节的嵌入式技术的发展趋势。

第2章 ARM技术与ARM体系结构思考与练习题答案 1 简述ARM处理器内核调试结构原理。

答 对教材1.2节的图2-1进行描述。

2 分析ARM7TDMI-S各字母所代表的含义。

答 参考教材2 1 2 ARM核版本命名规则说明。

课后答案网《ARM嵌入式系统结构与编程》邱铁编著. 清华大学出版社. 年月第版 年月第二次印刷200931201083 ARM处理器的工作模式有哪几种 其中哪些为特权模式 哪些为异常模式并指出处理器在什么情况下进入相应的模式。

答 ARM处理器共有7种工作模式用户模式 非特权模式 也就是正常程序执行的模式 大部分任务在这种模式下执行。

在用户模式下 如果没异常发生 不允许应用程序自行改变处理器的工作模式 如果有异常发生 处理器会自动切换工作模式FIQ模式 也称为快速中断模式 支持高速数据传输和通道处理 当一个高优先级(fast)中断产生时将会进入这种模式。

IRQ模式 也称为普通中断模式 :当一个低优先级中断产生时将会进入这种模式。

在这模式下按中断的处理器方式又分为向量中断和非向量中断两种。

通常的中断处理都在IRQ模式下进行。

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

EmbedICE硬 件仿真功能模 块
CPU
扫 扫 描 描 链 1 链 1 1
协处理器 信号接口
读写总 线
数据总线
扫描链
EmbeddedICE-RT TAP 控制器
CPU协处 理接口信 号
DBGTCKEN DBGTMS DBGnTRST DBGTDI DBGTDO
片上调试系 统
ARM功能框图
时钟 中断 总线控制 仲裁
地址增加器
寄存器组 31*32位寄存器 (6个状态寄存器)
乘法器 桶形移位器 写数据寄存器 32位ALU
WDATA[31:0]
RDATA[31:0]
2.4 ARM处理器状态
• 处理器状态
ARM7TDMI处理器内核包含2套指令系统,分 别为ARM指令集和Thumb指令集,并且各自对应1 种处理器的状态: ARM状态:32位,处理器执行字方式的ARM指 令,处理器默认为此状态;
三级流水线结构的指令执行顺序
周期1 周期2 周期3 周期4 周期5 周期6
PC PC-8 PC-4
…… 指令1 指令2 指令3 指令4 …… 程序存储器
4 3 2 1
取指 译码 执行
处理器执行一条 指令的三个阶段
取指 译码 执行 取指 译码 执行 取指 译码 执行
PC+4
在第4个周期,指令1执行完成,指令2和 在第3个周期,PC指向指令3,此时指令 在第2个周期,PC指向指令2,此时指令 在第1个周期,PC指向指令1,此时指令1 指令3流水线推进一级,同时开始指令4的 1进入三级流水线的执行阶段,指令2进入译 1进入三级流水线的译码阶段,同时取出指 进入三级流水线的取指阶段。 取指处理。 码阶段,取出指令3。 令2。
• ARM体系结构
为了使ARM能够更好地满足嵌入式应用的需 要,ARM体系结构还有以下特点: 每条数据处理指令可同时包含算术逻辑单元(ALU) 的运算和移位处理,实现ALU和移位器的最大利用; 使用地址自增和自减的寻址方式优化程序循环; 装载/保存指令对数据的批量传输,实现最大数据 吞吐量; 大多数指令的条件执行,实现最快速的代码执行。
存储器的存储方式:
如果一个数据是从偶地址开始的连续存储,那 么它就是半字对齐,否则就是非半字对齐; 如果一个数据是以能被4整除的地址开始的连 续存储,那么它就是字对齐,否则就是非字对齐。
方式 半字对齐 …… 0x4002 0x4004 …… Bit0=0 其他位为任意值 字对齐 …… 0x4004 0x4008 …… Bit1=0,Bit0=0 其他位为任意值
2.1.3 常用ARM处理器系列
ARM公司开发了很多系列的ARM处理器核, 当前应用比较多的ARM处理器核系列有:ARM7 系列、ARM9系列、ARM10系列、ARM11系列、 intel的Xscale系列和MPCore系列。 目前最新的系列是Cortex,而ARM6核以及更 早的系列已经很罕见了。 下面主要对ARM7系列核做简单介绍。
正常操作过程中,在执行一条指令的同时对下 一条(第二条)指令进行译码,并将第三条指令从存 储器中取出。 在ARM状态下,流水线上各指令的地址为: 在Thumb状态下,流水线上各指令的地址为:
PC PC PC-4 PC-2 PC-8 PC-4
取指
译码
执行 处理指令并将结果写回寄存器 识别将要被执行的指令 从寄存器装载一条指令
CODE16
ARM指令集
LDR BX CODE32 Lable MOV
R0, =Lable R0
地址最低位为 0,表示切换 到ARM状态 执行完BX指令,处 理器切换到ARM状 态,开始执行ARM 指令
Thumb 指令集
R1, #10
指令集关系
程序代码
2.5 ARM处理器模式
• 简介
ARM体系结构支持7种处理器模式,分别为: 用户模式、快中断模式、中断模式、管理模式、 中止模式、未定义模式和系统模式。这样的好处 是可以更好的支持操作系统并提高工作效率。 ARM7TDMI完全支持这七种模式。
• 处理器模式
除用户模式外,其它模式均为特权模式。 ARM内部寄存器和一些片内外设在硬件设计上只 允许(或者可选为只允许)特权模式下访问。此 外,特权模式可以自由的切换处理器模式,而用 户模式不能直接切换到别的模式。
处理器模式 用户(usr) 系统(sys) 快中断(fiq) 特 权 模 式 异 常 模 式 中断(irq) 管理(svc) 中止(abt) 未定义(und) 说明 正常程序运行的工作模式 用于支持操作系统的特权任务等 快速中断请求处理 中断请求处理 供操作系统使用的一种保护模式 用于虚拟内存和/或存储器保护 支持软件仿真的硬件协处理器 备注 不能直接从用户模式切换到其它模式 与用户模式类似,但具有可以直接切换到其它模式等特权 只有在FIQ异常响应时,才进入此模式 只有在IRQ异常响应时,才进入此模式 只有在系统复位和软件中断响应时,才进入此模式 在ARM7内核中没有多大用处 只有在未定义指令异常响应时,才进入此模式
2.2 ARM7TDMI
2.2.1 简介 ARM7TDMI是基于ARM体系结构V4版本的低 端ARM核。 其弥补了ARM6很难在低于5V电压下 稳定工作的不足,还增加了后缀所对应的功能:
注意:“ARM核”并非芯片,ARM核与其它部件如RAM、ROM、片 内外设组合在一起才能构成现实的芯片。
ARM7TDMI-S
• 处理器模式
以下这五种模式称为异常模式。它们除了可以 通过程序切换进入外,也可以由特定的异常进入。 当特定的异常出现时,处理器进入相应的模式。每 种异常模式都有一些独立的寄存器,以避免异常退 出时用户模式的状态不可靠。
处理器模式 用户(usr) 系统(sys) 快中断(fiq) 特 权 模 式 异 常 模 式 中断(irq) 管理(svc) 中止(abt) 未定义(und) 说明 正常程序运行的工作模式 用于支持操作系统的特权任务等 快速中断请求处理 中断请求处理 供操作系统使用的一种保护模式 用于虚拟内存和/或存储器保护 支持软件仿真的硬件协处理器 备注 不能直接从用户模式切换到其它模式 与用户模式类似,但具有可以直接切换到其它模式等特权 只有在FIQ异常响应时,才进入此模式 只有在IRQ异常响应时,才进入此模式 只有在系统复位和软件中断响应时,才进入此模式 在ARM7内核中没有多大用处 只有在未定义指令异常响应时,才进入此模式
2.3 ARM的模块、内核和功能框图
DBGRNG(0) DBGRNG(1) DBGEXT(0) DBGEXT(1) LOCK WRITE SIZE[1:0] PROT[1:0] TRANS[1:0] ADDR[31:0] WDATA[31:0] RDATA[31:0] 数 据 总 线 EmbeddedICE-RT 宏单元 扫 描 链 2
ARM7TDMI 的可综合(synthesizable) 版本(软核),对应用工程师来说其编 程模型与ARM7TDMI 一致; 支持EmbededICE观察硬件; 支持64位乘法; 支持片上调试; 支持高密度16位的Thumb指令集;
2.2.2 存储器的字与半字
由于ARM处理器使用冯.诺依曼结构,指令和 数据共用一条32位总线,因此只有装载、存储和 交换指令可以对存储器中的数据进行访问。 ARM处理器直接支持8位的字节、16位的半 字或者32位字的数据类型,其中以能被4整除的地 址开始连续的4个字节构成一个字,字的数据类型 为4个连续的字节。从偶数地址开始连续的2个字 节构成半字,半字的数据类型为2个连续的字节。 ARM指令的长度刚好是1个字,Thumb指令 的长度刚好是半个字。
将技术授权给其它芯片厂商 ... 形成各具特色的ARM芯片
在目前的嵌入式系统开发中,你选用的是基于以下哪种架构的 芯片? SH3/SH4
X86 21% 1%
Power/Power PC 9% MIPS 6% ARM 63%
2.1.2 RISC结构特性
RISC是精简指令集计算机的缩写,其目标 是设计出在高时钟频率下单周期执行,简单而有 效的指令集。ARM内核采用RISC体系结构,因 此具有RISC的结构特点: 具有大量的通用存储器; 独特的装载/保存(load-store)结构; 简单的寻址模式; 统一和固定长度的指令格式。
CLK CLKEN nIRQ nFIQ nRESET CFGBIGEND DMORE LOCK
DBGINSTRVAILD
DBGTCKEN DBGTMS DBGTDI DBGnTRST DBGTDO DBGnTDOEN ADDR[31:0]
同步的扫描调 试访问接口
WDATA[31:0]
RDATA[31:0] ABORT WRITE SIZE[1:0] PROT[1:0] TRANS[1:0] CPnTRANS CPnOPC
DBGRQ DBGBREAK DBGACK DBGnEXEC
ARM7TDMI-S 处理器
存储器接口
调试
DBGEXT[1] DBGEXT[0] DBGEN DBGRNG[1] DBGRNG[0] DBGCOMMRX DBGCOMMTX
存储器管理接口
CPnMREQ CPSEQ CPTBIT CPnI CPA CPB
• 处理器模式 何时进入异常模式,具体规定如下:
处理器复位之后进入管理模式,操作系统内核通 常处于管理模式; 当处理器访问存储器失败时,进入数据访问中止 模式; 当处理器遇到没有定义或不支持的指令时,进入 未定义模式;
第2章 ARM体系结构
2.1 ARM简介
2.2 ARM7TDMI
2.3 ARM的模块、内核和功能框图 2.4 ARM处理器状态 2.5 2.6 2.7 2.8 2.9 ARM处理器模式 ARM内部寄存器 当前程序状态寄存器 ARM体系的异常、中断及其向量表 ARM体系的存储系统
相关文档
最新文档