ARM处理器体系结构

ARM处理器体系结构
ARM处理器体系结构

ARM处理器体系结构收藏

嵌入式处理器种类繁多,从8位、16位、32位到64位都有。本章介绍的嵌入式应用处理器主要有ARM、MIPS、PowerPC、X86、68K/Cold fire等,下面对这些处理器进行一些简单介绍。

MIPS是Microprocessor without Inter-locked Pipeline Stages的缩写,是由MIPS技术公司开发的一种处理器内核标准。目前有32位和64位MIPS芯片,芯片也是由MIPS技术公司生产的。

PowerPC是早期Motorola公司和IBM公司联合为Apple公司的MAC机开发的CPU芯片,商标权同时属于IBM和Motorola两家公司,并一度成为他们的主导产品。IBM公司主要的PowerPC产品有PowerPC 604s(深蓝内部的CPU)、PowerPC 750、PowerPC G3(1.1GHz)。Motorola公司则主要有MC和MPC系列。尽管他们产品不一样,但都采用PowerPC的内核。这些产品在电信、金融和其他许多行业都具有广泛的应用。

x86系列处理器起源于Intel架构的8080,然后发展出286、386、486直到现在的奔腾处理器乃至双核处理器等。从嵌入式市场来看,486DX也应该是和ARM、68K、MIPS和SuperH 齐名的5大嵌入式处理器之一。目前市场上的PC104产品基本都是基于x86体系结构,在工业控制领域里面PC104产品的占有量仍然很大。

Motorola 68K是出现比较早的一款嵌入式处理器,采用的是CISC(复杂指令集系统计算机)结构,设计经典,在全球各种嵌入式应用领域中取得巨大成功。Sun微系统公司也把这款处理器应用于早期的工作站中。

本书中介绍的嵌入式系统设计都是围绕着ARM处理器展开的,涵盖了ARM系统设计的硬件和软件部分,所以在这里对ARM处理器做一下简单描述。ARM是Advanced RISC Machines的缩写,顾名思义ARM处理器自然也是一种典型的精简指令集处理器。ARM处理器的核心技术来自于英国的一家IC软核设计公司——ARM公司。

ARM公司是为数不多的以嵌入式处理器IP Core设计起家而获得巨大成功的IP Core设计公司。自20世纪90年代成立以来,在32位RISC CPU开发领域不断取得突破,其结构已经从V1发展到V6,主频最高也已经达到1GHz。ARM公司将其IP Core出售给各大半导体制造商,加上其设计的IP Core具有功耗低、成本低等显著优点,因此获得众多半导体厂家和整机厂商的大力支持。在32位嵌入式应用领域获得了巨大的成功,目前己经占有75%以上的32位嵌入式产品市场。现在设计、生产ARM芯片的国际大公司已经超过50多家,国内的很多知名企业包括中兴通信、华为通信、上海华虹、上海交大、复旦微电子、杰得微电子等公司也都已经购买了ARM公司的IP Core用于通信专用芯片的设计。所以对于一名有志于在嵌入式领域发展的电子专业学生或一名优秀的电子工程师来说,熟悉和了解ARM处理器是很有必要的。

1.3.1 ARM处理器概述

ARM处理器当前主要有6个系列产品:ARM7、ARM9、ARM9E、ARM10E、SecurCore 及最新的ARM11 系列。进一步的产品则来自于ARM公司的合作伙伴,如Intel公司的StrongARM产品和XScale微体系结构等,不过Intel公司已经于2006年将该架构出售给

Marvell Technology Group Ltd了。

ARM公司还把ARM IP Core提供给其他芯片设计公司用于设计ARM+DSP、ARM+FPGA 等SOC结构的芯片。现在用得比较多的如TI公司的OMAP,达芬奇系列大部分是含有ARM+DSP双核处理器的产品。Actel公司的带M7标识的ProASIC3E系列芯片则是FPGA+ARM7的SOC系统芯片。这些多功能IC的发展也拓宽了ARM处理器的应用范围。

ARM公司除了获得了以上半导体厂家的大力支持外,同时也获得了许多实时操作系统(Real Time Operating System)供应商的支持,比较知名的有:Windows CE、Linux、Plam OS、Symbian OS、pSOS、VxWorks、Nucleus、EPOC、uCOS等。对于开发工程师来说,这些RTOS公司针对ARM处理器所提供的BSP对于迅速开始ARM平台上的开发至关重要。

在ARM处理器内核中有多个功能模块可供生产厂商根据不同用户的不同要求来配置生产。这些模块分别用T、D、M、I、E、J、S等来表示,这些模块一般从处理器的内核版本上可以区分出来。

n T:表示支持Thumb指令,说明该内核可从16位Thumb指令集扩充到32位ARM指令集。

n D:表示支持Debug,说明该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而方便地进行断点设置、单步调试。

n M:表示Multiplier,说明处理器内部带有8位乘法器。

n I:表示Embedded ICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP 控制器可接入到边界扫描链。

除了以上一些特性外,ARM处理器内核中还有一些处理器内核带EJ-S模块。

n E:表示DSP Enhancement,即增加了前导零处理和饱和运算等一些常用的DSP运算指令,极大地改善音、视频处理程序的性能。

n J:表示Jazelle DBX(Direct Bytecode eXecution),这是ARM公司推出的Java加速解决方案。Jazelle不是一个简单的加速硬件,它是融入于处理器流水线之中的一项专门针对Java 指令执行的硬件功能,使得CPU可以直接接收一部分Java指令,并加以译码执行。通过这里的介绍,读者可以试着分析一下ARM926EJ的具体含义。

n S:表示可综合的软核softcore。

1.3.2 ARM内核种类分类

带有ARM内核的处理器大概有千种以上,这里不做介绍。下面主要对各类ARM处理器的几个重要内核版本做一个简要介绍。

1.ARM7处理器

ARM7处理器采用了ARMV4T(冯·诺依曼)体系结构,这种体系结构将程序指令存储器

和数据存储器合并在一起。主要特点就是程序和数据共用一个存储空间,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,采用单一的地址及数据总线,程序指令和数据的宽度相同。这样,处理器在执行指令时,必须先从存储器中取出指令进行译码,再取操作数执行运算。总体来说ARM7体系结构具有三级流水、空间统一的指令与数据Cache、平均功耗为0.6mW/MHz、时钟速度为66MHz、每条指令平均执行1.9个时钟周期等特性。其中的ARM710、ARM720和ARM740为内带Cache的ARM核。ARM7指令集同Thumb 指令集扩展组合在一起,可以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。ARM7体系结构是小型、快速、低能耗、集成式的RISC内核结构。该产品的典型用途是数字蜂窝电话和硬盘驱动器等,目前主流的ARM7内核是ARM7TDMI、ARM7TDMI-S、ARM7EJ-S、ARM720T。现在市场上用得最多的ARM7处理器有Samsung公司的S3C44BOX与S3C4510处理器、Atmel公司的AT91FR40162系列处理器、Cirrus公司的EP73xx系列等。通常来说前两三年大部分手机基带部分的应用处理器基本上都以ARM7为主。还有很多的通信模块,如CDMA模块、GPRS 模块和GPS模块中都含有ARM7处理器。

2.ARM9、ARM9E处理器

ARM9处理器采用ARMV4T(哈佛)体系结构。这种体系结构是一种将程序指令存储和数据存储分开的存储器结构,是一种并行体系结构。其主要特点是程序和数据存储在不同的存储空间中,即程序存储器和数据存储器。它们是两个相互独立的存储器,每个存储器独立编址、独立访问。与两个存储器相对应的是系统中的4套总线,程序的数据总线和地址总线,数据的数据总线和地址总线。这种分离的程序总线和数据总线可允许在一个机器周期内同时获取指令字和操作数,从而提高了执行速度,使数据的吞吐量提高了一倍。又由于程序和数据存储器在两个分开的物理空间中,因而取指和执行能完全重叠。ARM9采用五级流水处理及分离的Cache结构,平均功耗为0.7mW/MHz。时钟速度为120MHz~200MHz,每条指令平均执行1.5个时钟周期。与ARM7处理器系列相似,其中的ARM920、ARM940和ARM9E 处理器均为含有Cache的CPU核,性能为132MIPS(120MHz时钟,3.3V供电)或220MIPS (200MHz时钟)。ARM9处理器同时也配备Thumb指令扩展、调试和Harvard总线。在生产工艺相同的情况下,性能是ARM7TDMI处理器的两倍之多。常用于无线设备、仪器仪表、联网设备、机顶盒设备、高端打印机及数码相机应用中。ARM9E内核是在ARM9内核的基础上增加了紧密耦合存储器TCM及DSP部分。目前主流的ARM9内核是ARM920T、ARM922T、ARM940。相关的处理器芯片有Samsung公司的S3C2510、Cirrus公司的EP93xx 系列等。主流的ARM9E内核是ARM926EJ-S、ARM946E-S、ARM966E-S等。目前市场上常见的PDA,比如说PocketPC中一般都是用ARM9处理器,其中以Samsung公司的S3C2410处理器居多。

3.ARM10E处理器

ARM10E处理器采用ARMVST体系结构,可以分为六级流水处理,采用指令与数据分离的Cache结构,平均功耗1000mW,时钟速度为300MHz,每条指令平均执行1.2个时钟周期。ARM10TDMI与所有ARM核在二进制级代码中兼容,内带高速32×16 MAC,预留DSP 协处理器接口。其中的VFP10(向量浮点单元)为七级流水结构。其中的ARM1020T处理器则是由ARMl0TDMI、32KB指令、数据Caches及MMU部分构成的。其系统时钟高达300MHz时钟,指令Cache和数据Cache分别为32KB,数据宽度为64位,能够支持多种商用操作系统,适用于下一代高性能手持式因特网设备及数字式消费类应用。主流的ARM10内核是ARM1020E、ARM1022E、ARM1026EJ-S等。

4.SecurCore处理器

SecurCore系列处理器提供了基于高性能的32位RISC技术的安全解决方案,该系列处理器具有体积小、功耗低、代码密度大和性能高等特点。另外最为特别的就是该系列处理器提供了安全解决方案的支持。采用软内核技术,以提供最大限度的灵活性,以及防止外部对其进行扫描探测,提供面向智能卡的和低成本的存储保护单元MPU,可以灵活地集成用户自己的安全特性和其他的协处理器,目前含有SC100、SC110、SC200、SC210 4种产品。

5.StrongARM处理器

StrongARM处理器采用ARMV4T的五级流水体系结构。目前有SA110、SA1100、SA1110等3个版本。另外Intel公司的基于ARMv5TE体系结构的XScale PXA27x系列处理器,与StrongARM相比增加了I/D Cache,并且加入了部分DSP功能,更适合于移动多媒体应用。目前市场上的大部分智能手机的核心处理器就是XScale系列处理器。

6.ARM11处理器

ARM11处理器系列可以在使用130nm代工厂技术、小至 2.2mm2芯片面积和低至0.24mW/MHz的前提下达到高达500MHz的性能表现。ARM11处理器系列以众多消费产品市场为目标,推出了许多新的技术,包括针对媒体处理的SIMD,用以提高安全性能的TrustZone技术,智能能源管理(IEM),以及需要非常高的、可升级的超过2600 Dhrystone 2.1 MIPS 性能的系统多处理技术。主要的ARM11处理器有ARM1136JF-S、ARM1156T2F-S、ARM1176JZF-S、ARM11 MCORE等多种。

下面对几个ARM处理器内核做了简单的介绍。可以注意到,随着处理器内核技术的发展,处理器的速度越来越快,其主要得益于ARM流水线的技术发展。

这里对各类处理器核的ARM流水线做一下对比,如图1-1所示。

图1?1 ARM处理器内核流水线

另外按照市场应用,ARM处理器内核大体可以分成如下表的Embedded Core、Application Core、Secure Core 3个部分,如表1-1所示。

表1?1 ARM处理器分类

处理器内核分类

具体的处理器IP核

应用市场

Embedded Core

ARM7TDMI、ARM946E-S、

ARM926EJ-S

无线、网络应用、汽车电子

Application Core

ARM926EJ-S、ARM1026EJ-S、ARM11

消费类市场、多媒体数码产品

Secure Core

SC110、SC110、SC200、SC210

智能卡、身份识别

前面描述了ARM处理器的各种体系结构,接下来简单回顾一下ARM处理器的工作模式及处理器内部的CPU寄存器及异常中断处理等机制。

本文来自CSDN博客,转载请标明出处:https://www.360docs.net/doc/5b937592.html,/shenbin1430/archive/2009/08/04/4406727.aspx

ARM体系结构与接口技术(一)

ARM920TDMA处理器是哈佛结构,包括取指、译码、执行、存储、写入的五级流水线。包括cp14和cp15两个协处理器。16k数据缓存和16k指令缓存。虚拟地址64路相关缓存。每线8字。 ARM的基本数据类型: ARM采用的是32位架构,基本上数据类型有以下三种: Byte :字节,8位 Halfword:半字,16bit(半字必须与2字节边界对齐 Word:字,32bit(必须与4字节边界对齐 所有的数据类型指令的操作数都是字类型。 ARM指令编译后是4字节(与字边界对齐,Thumb指令编译后是2字节(与半字对齐 存储器大/小端 Arm支持大端模式和小端模式。在大端模式下,一个字的高地址放的是数据的地位,在小端模式下,数据的低地址放的是数据的低位。 ARM920T,有7中工作模式: 用户模式(User,正常程序执行模式。 快速中断模式(FIQ,当一个高优先级中断产生时将会进入该模式,一般用于高速数据传输和通道处理。 外部中断模式(IRQ,当一个低优先级中断产生时将会进入该模式,一般用于通常的中断处理

特权模式(Supervise,当复位或软中断指令执行时进入该模式,是一种供操作系统使用的保护模式。 数据访问中止模式(abort,当存取异常时将会进入该模式,用于虚拟存储或存储保护未定义指令中止模式(undef,当执行未定义指令时进入该模式,有时用于通过软件仿真协处理器硬件的工作方式 系统模式(system使用和user模式相同的寄存器集模式,用于运行特权级操作系统任务 除了用户模式,其他六中均为特权模式。在特权模式下,程序可以访问所有的系统资源,也可以任意的进行处理器模式切换。 流水线的概念与原理 处理器按照一系列的步骤来执行每一条指令,典型的步骤如下: 1、从存储器读取指令(fetch 2、译码以鉴别它是属于哪一条指令(decode 3、从指令中提取指令的操作数(这些操作数往往存在于寄存器中(reg 4、将操作数进行组合以得到结果或存储器地址(ALU 5、如果需要,则访问存储器以存储数据(mem 6、将结果写回到寄存器堆(res 流水线的分类: 1、3级流水线ARM组织 取指令—>译码—>执行

ARM微处理器硬件架构!

ARM 微处理器硬件架构 ARM 微处理器硬件架构 冯诺依曼结构则是程序空间和数据空间不独立的结构哈佛结构是指程序和数据空间独立的体系结构, 减轻 目的是为了程序运行时的访存瓶颈。 典型PC 机--冯诺依曼架构 冯· 诺依曼体系的特点 1)数据与指令都存储在存储器中 2)被大多数计算机所采用 3)ARM7 ——冯诺依曼体系哈佛体系架构 哈佛体系结构的特点 1)程序存储器与数据存储器分开

2)提供了较大的数存储器带宽 3)适合于数字信号处理 4)大多数DSP 都是哈佛结构 5)ARM9 是哈佛结构 CISC :复杂指令集( Complex Instruction Set Computer ) 具有大量的指令和寻址方式 8/2 原则:80% 的程序只使用20%的指令大多数程序只使用少量的指令就能够运行 RISC :精简指令集( Reduced Instruction Set Computer) 在通道中只包含最有用的指令确保数据通道快速执行每一条指令使CPU 硬件结构设计变得更为简单流水线技术:几个指令可以并行执行提高了CPU 的运行效率内部信息流要求通畅流动为增加处理器指令流的速度,ARM7 系列使用3 级流水线. 允许多个操作同时处理,而非顺序执行。 注,PC 指向正被取指的指令,而非正在执行的指令ARM 处理器内核流水线超标量执行 超标量CPU 采用多条流水线结构。 超标量体系结构描述一种微处理器设计,它能够在一个时钟周期执行多个指令。在超标量体系结构设计中,处理器或指令编译器能够判断指令能独立于其它顺序指令而执行,还是

依赖于另一指令,必须跟其按顺序执行。处理器然后使用多个执行单元同时执行两个或更多独立指令。超标量体系结构设计有时称“ 第二代RISC” 。高速缓存( CACHE ) 1、为什么采用高速缓存微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能。 2、高速缓存的工作原理高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝。 总线和总线桥存储器系统 RAM :随机存取存储器 SRAM :静态随机存储器 DRAM :动态随机存储器 1)SRAM 比DRAM 快 2)SRAM 比DRAM 耗电多 3)DRAM 存储密度比SRAM 高得多 4)DRAM 需要周期性刷新 ROM :只读存储器 FLASH :闪存

ARM体系结构版本

ARM体系结构的版本 前面一段时间我搞过一次《MCU编译与运行》的专题,详细介绍从代码编译到代码运行以及中断机制的流程,这里想在编译部分补充一些知识点。 对于嵌入式开发人员,搭建开发环境是比较困难的一步,市面上针对ARM开发的IDE 非常多,有的编译器诸如ADS或者MDK等老编译器并不支持ARM11或者Contex系列的内核,RVDS号称支持所有ARM,但RVDS4.0仅仅支持RealViewICE,这个调试器将近2万元,个人一般无力购买,因此推荐ARM爱好者使用RVDS2.2,虽然界面和ADS一样粗糙,对Win7的支持也不好,但支持JLink等常用编译器。 之所以有的编译器不支持ARM11是因为此编译器内置的指令集达不到ARM11所需指令集的版本。ARM7与ARM9的指令集相同,是V4版本,因此编译好的ARM7代码是可以在ARM9上运行的(注意,此处仅仅说的是ARM7和ARM9内核的指令集通用,也即代码可以执行,不是指任何代码都可有效运行,毕竟不同芯片中的片内外设以及外设有所不同),ARM11使用V6版本指令集,但ARM指令集向下兼容,因此一般代码也是可以执行,但V6中增加的指令就没法执行了,会出现指令错误异常,程序会死机。下面就来看一下ARM指令集版本的升迁:ARM指令集体系结构,从最初开发至今已有了重大改进,而且将会不断完善和发展。为了精确表达每个ARM实现中所使用的指令集,到目前ARM体系结构共定义了6个版本,以版本号v1~v6表示,各版本特点如下。 1. 版本1(v1) 该版本包括: 1.基本数据处理指令(不包括乘法) 2.字节、字以及半字加载/存储指令 3.分支(branch)指令,包括用于子程序调用的分支与链接(branch-and-link) 指令 4.软件中断指令,用于进行操作系统调用 5.26位地址总线 2. 版本2(v2) 与版本1相比,版本2增加了下列指令: 1.乘法和乘加指令(multiply & multiply-accumulate) 2.支持协处理器 3.原子性(atomic)加载/存储指令SWP和SWPB(稍后的版本称v2a) 4.FIQ中的两个以上的分组寄存器。 3. 版本3(v3) 版本3较以前的版本发生了大的变化,具体改进如下: 1.推出32位寻址能力。 2.分开的CPSR(current program status register,当前程序状态寄存器)和SPSR (saved program status register,备份的程序状态寄存器),当异常发生时,SPSR 用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复CPSR 3.增加了两种异常模式,使操作系统代码可方便地使用数据访问中止异常、指令 预取中止异常和未定义指令异常 4.增加了MRS指令和MSR指令,用于完成对CPSR和SPSR寄存器的读/写; 修改了原来的从异常中返回的指令 4. 版本4(v4) 版本4在版本3的基础上增加了如下内容:

《ARM体系结构》期末考试试卷含答案

东华理工大学长江学院2011—2012 学年第2学期补考试卷B 课程:嵌入式微处理器体系结构与编程考试形式:闭卷 年级及专业:计算机科学与技术10304101-3班 1.系统调用 2.哈弗结构 3.MMU 4.FIQ 5.SPSR 二、单项选择题(20×2分=40分) 1.ARM系统复位后,第一条执行的指令在( ). A 00000000H B 00000004H C 00000008H D 由编程者确定2.针对没有MMU的ARM芯片,其操作系统可以使用( ). A Windows CE ,Linux B VxWork C uClinux, Uc/OS-II D 以上都可以 3.ATPCS定义了寄存器组中的( )作为参数传递和结果返回寄存器。 A R0,R1,R2,R3 B R4,R5,R6,R7 C R8,R9,R10,R11 D A B C 都可以 4.用汇编指令对R15赋值,可以实现()。 A 程序的跳转 B 实现B指令功能 C 子程序的返回 D A B C都可以 5.ARM汇编语言中,一常量8_5642也代表()。 A 整数5642 B 整数5642H C 整数Ox5642 D 整数2978 6.要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。() (A) 处理器的编译器能够产生可重入代码(B)在程序中可以找开或者关闭中断 (C) 处理器支持中断,并且能产生定时中断(D)有大量的存储空间 7.下面哪种操作系统最方便移植到嵌入式设备中。() (A) DOS (B)unix (C) Windows xp (D)linux 8.下列描述不属于RISC计算机的特点的是()。 A.流水线每周期前进一步。B.更多通用寄存器。 C.指令长度不固定,执行需要多个周期。 D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。 9.存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存 储,则2000H存储单元的内容为()。 A、0x21 B、0x68 C、0x65 D、0x02 10.IRQ中断的入口地址是()。FIQ的入口地址为0x0000001C A、0x00000000 B、0x00000008 C、0x00000018 D、0x00000014 11. Make预置了一些内部宏,其中$@表示:() A.没有扩展名的当前目标文件 B.当前目标文件 C.当前目标文件最近更新的文件名 D.当前目标文件最近更新的文件名 12.ARM处理器的工作模式有()种。 A. 5 B.6 C. 7 D.8 13.下列CPSR寄存器标志位的作用说法错误的是()。 A. N:负数 B. Z: 零 C. C: 进位 D. V: 借位

华清ARM体系结构试题

嵌入式ARM体系结构试题(时间:60 分钟) 一、单项选择题(每题 2 分,共40 分) 1. 在三级存储结构中,CPU不能直接访问的存储器是(C) A. 高速缓存(cache) B. 主存(内存) C. 辅助存储器(硬盘) 2. 在三级流水线机制下,一条指令的执行的顺序是(A) A. 取指- 译码- 执行 B. 取指- 执行- 译码 C. 取指- 译码- 回写 3.ARM指令集中每条指令都是(C)位宽度 A.8 B.16 C.32 D.64 4.ARM指令在存储器中存储时必须是(C)字节对齐 A.1 B.2 C.4 D.32 5.ARM处理器复位后,处理器处于(B)模式 https://www.360docs.net/doc/5b937592.html,er B.SVC C.System D.IRQ 6.ATPCS协议中规定,栈使用(D)栈 A. 空增 B. 空减 C. 满增 D. 满减 7. 假如想对r4-r7 寄存器进行压栈处理,下列指令正确的是(D) A.stm sp,{r4-r7} B.stmfa r11,{r4-r7} C.stmfd sp,{r4-r7} D.stmfd sp!,{r4-r7} 8.CPSR寄存器中,控制ARM处理器处于ARM状态还是THUMB状态的是(C)位 A.I B.F C.T D.Z 9. 当处理器在执行ARM指令集时,处理器每执行完一条指令后PC的值自增(C) A.1 B.2 C.4 D.32 10.ARM处理器属于(A)处理器 A. 精简指令集 B. 复杂指令集 11. 小端对其是指多字节的数据在存储器中存储时是(A) A. 低地址存储低有效位 B. 低地址存储高有效位 12. 在8 中模式中哪种模式属于非特权模式(A) https://www.360docs.net/doc/5b937592.html,er B.SVC C.IRQ D.System 13. 在IRQ模式下,当前程序的运行状态是由哪个寄存器来决定(B) A.IRQ 模式下的SPSR B.CPSR C.FIQ 模式下的SPSR

ARM处理器结构

ARM处理器结构 体系结构 1 CISC(Complex Instruction Set Computer,复杂指令集计算机) 在CISC指令集的各种指令中,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。 2 RISC(Reduced Instruction Set Computer,精简指令集计算机) RISC结构优先选取使用频最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻地方式种类减少;以控制逻辑为主,不用或少用微码控制等RISC体系结构应具有如下特点: 1 采用固定长度的指令格式,指令归整、简单、基本寻址方式有2,3种。 2 使用单周期指令,便于流水线操作执行。 3 大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。 除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗: 4 所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。 5 可用加载/存储指令批量传输数据,以提高数据的传输效率。 6 可在一条数据处理指令中同时完成逻辑处理和移位处理。 7 在循环处理中使用地址的自动增减来提高运行效率。 寄存器结构 ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括: 1 31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。

2 6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。 指令结构 ARM微处理器的在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM 指令集的功能子集,但与等价的 ARM代码相比较,可节省30%,40%以上的存储空间,同时具备32位代码的所有优点。 x86是cisc构架, arm是risc构架用途一个是pc,一个是电子产品 X86架构方案与ARM架构方案区别,山水网讯MID方案 X86架构:通俗的将就是能够装Windows 2000、XP\Tablet \windows 7 操作系统的方案架构(CPU) 目前全球仅有3家公司有实力做出这样的架构,他们分别是:Intel 中国台湾威盛(VIA) 和AMD 而目前在低功耗领域AMD甚少介入,也就是在X86架构平板电脑市场仅仅是In X86架构:通俗的将就是能够装Windows 2000、XP\Tablet \windows 7 操作系统的方案架构(CPU) 目前全球仅有3家公司有实力做出这样的架构,他们分别是:Intel 中国台湾威盛(VIA) 和AMD 而目前在低功耗领域AMD甚少介入,也就是在X86架构平板电脑市场仅仅是Intel和威盛的角逐 而X86架构体系分高性能和低功耗版本,山水网讯科技主要研发基于X86架构低功耗系统的方案及产品:MID、UMPC、NetBook 低功耗X86架构体系优点:

ARM体系结构.

ARM是Advanced RISC Machines ( 高级精简指令系统处理器) 的缩写,是ARM公司提供的一种微处理器知识产权( IP) 核 ARM既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字 ARM微处理器的特点 1、体积小、低功耗、低成本、高性能 2、支持Thumb (16位) / ARM (32位) 双指令集,能很好的兼容8位/16位器件 3、大量使用寄存器,指令执行速度更快 4、大多数数据操作都在寄存器中完成 5、寻址方式灵活简单、执行效率高 6、指令长度固定 ARM7系列: 属低端ARM处理器核,最适合用于对价位和功能消耗要求较高的消费类应用 主要应用领域为:工业控制、网络和调制解调器设备、移动电话等多种多媒体和嵌入式应用 DSP: Digital Signal Processor 命名解释: ARM7DMI:T表示支持16位压缩指令集(Thumb),D表示支持片上调试(Debug),M表示内嵌硬件乘法器(Multiplier),I 表示嵌入式ICE(仿真器),支持片上断点和调试点( in - circuit emulater ) ARM7系列处理器特点: 1、具有嵌入式ICE逻辑,调试开发方便 2、功耗极低,适合便携式产品开发

3、3级流水线结构 4、支持Thumb 5、支持多种操作系统 6、指令与ARM9、ARM10系列兼容,便于升级 3级流水线(Pipeline) 的执行过程 取指:从存储器装载指令 译码:对刚装载的指令进行识别 执行:处理指令并把结果写回相应的寄存器 ARM9系列处理器特点: 在高性能和低功耗特性方面提供最佳的性能 主要应用于无线设备、仪器仪表、安全系统、机顶盒、高端打印机、数码相机和数字摄像机 ARM9有5级流水线:FETCH、DECODE、EXECUTE、MEMORY、WRITE ARM 与THUMB 1、THUMB指令是ARM指令的自给 2、可以相互调用,只要遵循一定的调用规则 3、THUMB指令与ARM指令时间效率和空间效率关系:存储空间是ARM代码的60% ~ 70%,指令数比ARM代码多约30% ~ 40%,存储器为32位时ARM代码比THUMB代码

相关文档
最新文档