当前位置:首页 » 服务存储 » 1arm存储空间
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

1arm存储空间

发布时间: 2022-08-03 22:43:59

‘壹’ ARM体系中的存储空间

1。字节单元是最小单元,8个位(bit),就是一个字节的大小。半字的尺寸是2个字节。字的尺寸是4个字节。2。注意0b00是二进制表示法,说明最低2位恒为0,所以字的地址从倒数第三位开始累加,所以是按4累加,即0x00000000, 0x00000004,0x00000008,故而可以被4整除。半字也是同样的道理,0b0表示是最低1位恒为0。3。同上,比如从0x00000000开始的字数据,实际上是0x00000000,0x00000001,0x00000002,0x00000003四个字节数据的内容组合而成的。具体组合顺序根据大小端决定4。举个简单例子,某个存储芯片有8根地址线,那么它们能表达的最大地址为1111 1111,也就是地址范围为0~0x00ff。如果这时候你操作cpu往存储器的0x0100地址进行写入,则会因为第九根地址线不存在而写到0x0000位置,这就是上溢出,反之就是下溢出

‘贰’ 求问一个字节到底占多少存储空间(arm指令里)

字这个概念,非常有意思

字呢,没有正统被规定过到底是什么意思
但是根据微软的习惯,慢慢这种叫法也被延续了下来,在微软的数据命名中
一个字节的叫字节,两个字节的叫WORD,4个字节的叫DWORD,8个字节的叫QWORD
另外还有一个概念 ,叫 “字长”
字长,一般来讲是CPU能单次处理的数据长度,基本上就等于是通用寄存器的长度
至于历史上为什么把两个字节叫成WORD,很可能跟历史原因有关,8086 这块CPU是16位CPU,当初DOS盛行,在那个年代 字=WORD=2字节
这种叫法很可能因为微软头文件里的数据类型命名(WORD,DWORD,QWORD)而保留至今
可能因为这个关系,现如今一个字,还是被通常认为是2字节
但是严格来讲,字=字长=CPU通用寄存器长度
所以,字,这个概念,本来就是有歧义的,你明白其中原理就行,不用在乎到底是什么意思,你贴的图里,它就是1个机器字长的意思

‘叁’ ARM的概念

概述

ARM(Advanced RISC Machines)处理器是Acorn计算机有限公司面向低预算市场设计的第一款RISC微处理器。更早称作Acorn RISC Machine。
ARM处理器本身是32位设计,但也配备16位指令集。一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。
ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。ARM还提供两个前沿特性来辅助带深嵌入处理器的高集成SoC器件的调试,它们是嵌入式ICE-RT逻辑和嵌入式跟踪宏核(ETMS)系列。
编辑本段
特点

ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。
1、体积小、低功耗、低成本、高性能;
2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;
3、大量使用寄存器,指令执行速度更快;
4、大多数数据操作都在寄存器中完成;
5、寻址方式灵活简单,执行效率高;
6、指令长度固定。
编辑本段
结构

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

处理器模式 说明
用户模式(usr) ARM处理器正常的程序执行状态
系统模式(sys) 运行具有特权的操作系统任务
快中断模式(fiq) 支持高速数据传输或通道处理
管理模式(svc) 操作系统保护模式
数据访问终止模式(abt) 用于虚拟存储器及存储器保护
中断模式(irq) 用于通用的中断处理
未定义指令终止模式(und) 支持硬件协处理器的软件仿真
除用户模式外,其余6种模式称为非用户模式或特权模式;用户模式和系统模式之外的5种模式称为异常模式。ARM处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。
编辑本段
体系结构扩充

当前ARM体系结构的扩充包括:
·Thumb 16位指令集,为了改善代码密度;
·DSP DSP应用的算术运算指令集;
·Jazeller 允许直接执行Java字节码。
ARM处理器系列提供的解决方案有:
·无线、消费类电子和图像应用的开放平台;
·存储、自动化、工业和网络应用的嵌入式实时系统;
·智能卡和SIM卡的安全应用。
编辑本段
历史

1978年12月5日,物理学家赫尔曼·豪泽(Hermann Hauser)和工程师Chris Curry,在英国剑桥创办了CPU公司(Cambridge Processing Unit),主要业务是为当地市场供应电子设备。1979年,CPU公司改名为Acorn计算机公司。
起初,Acorn公司打算使用摩托罗拉公司的16位芯片,但是发现这种芯片太慢也太贵。"一台售价500英镑的机器,不可能使用价格100英镑的CPU!"他们转而向Intel公司索要80286芯片的设计资料,但是遭到拒绝,于是被迫自行研发。
1985年,Roger Wilson和Steve Furber设计了他们自己的第一代32位、6M Hz的处理器, Roger Wilson和Steve Furber[1]用它做出了一台RISC指令集的计算机,简称ARM(Acorn RISC Machine)。这就是ARM这个名字的由来。
RISC的全称是"精简指令集计算机"(reced instruction set computer),它支持的指令比较简单,所以功耗小、价格便宜,特别合适移动设备。早期使用ARM芯片的典型设备,就是苹果公司的牛顿PDA。
20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。
1990年11月27日,Acorn公司正式改组为ARM计算机公司。苹果公司出资150万英镑,芯片厂商VLSI出资25万英镑,Acorn本身则以150万英镑的知识产权和12名工程师入股。公司的办公地点非常简陋,就是一个谷仓。 20世纪90年代,ARM 32位嵌入式RISC(Reced lnstruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权。
编辑本段
市场前景

微软公司(2011年)宣布,下一版Windows将正式支持ARM处理器。这是计算机工业 arm处理器[2]发展历史上的一件大事,标识着x86处理器的主导地位发生动摇。目前在移动设备市场,ARM处理器的市场份额超过90%;在服务器市场,今年(2011年)就会有2.5GHz的服务器上市;在桌面电脑市场,现在又有了微软的支持。ARM成为主流,恐怕指日可待。难怪有人惊呼,Intel公司将被击败!
与这场轰轰烈烈的变革相比,它的主角ARM公司却没有受到太多的关注,显得不太起眼。这家远离硅谷、位于剑桥大学的英国公司,到底是怎么走到今天的,居然能将芯片巨人Intel拉下马?
展望未来,即使Intel成功地实施了Atom战略,将x86芯片的功耗和价格大大降低,它与ARM竞争也将非常吃力。因为ARM的商业模式是开放的,任何厂商都可以购买授权,所以未来并不是Intel vs. ARM,而是Intel vs. 世界上所有其他半导体公司。那样的话,Intel的胜算能有多少呢?

‘肆’ arm中的一个地址有几个字节

一般:
32位的arm架构,1占4个字节.
16位的arm架构,1占2个字节.
可能还与i的定义有关,最终由编译器确定。

‘伍’ ARM架构是神马

以下是arm架构的概述:

1 CISC(ComplexInstructionSetComputer,复杂指令集计算机)
在CISC指令集的各种指令中,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。
2 RISC(RecedInstructionSetComputer,精简指令集计算机)
RISC结构优先选取使用频最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻址方式种类减少;以控制逻辑为主,不用或少用微码控制等
RISC体系结构应具有如下特点:
1采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3种。
2使用单周期指令,便于流水线操作执行。
3大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/存储指令可以访问存储器,以提高指令的执行效率。
除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:
4所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。
5可用加载/存储指令批量传输数据,以提高数据的传输效率。
6可在一条数据处理指令中同时完成逻辑处理和移位处理。
7在循环处理中使用地址的自动增减来提高运行效率。
寄存器结构
ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括:
131个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。
26个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。
指令结构
ARM微处理器的在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30%~40%以上的存储空间,同时具备32位代码的所有优点。
体系结构扩充
当前ARM体系结构的扩充包括:
·Thumb 16位指令集,为了改善代码密度;
·DSP DSP应用的算术运算指令集;
·Jazeller 允许直接执行Java字节码。
ARM处理器系列提供的解决方案有:
·无线、消费类电子和图像应用的开放平台;
·存储、自动化、工业和网络应用的嵌入式实时系统;
·智能卡和SIM卡的安全应用。

而 X86是由Intel推出的一种复杂指令集,用于控制芯片的运行的程序,现在X86已经广泛运用到了家用PC领域。

‘陆’ ARM 一共有多少种内核,最新的是什么

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寄存器及异常中断处理等机制。

‘柒’ arm自带有rom和ram吗有多大(arm7/arm9/arm11)

nxp的arm7,lpc21xx系列有自带的ram和rom,例:lpc2131 8k ram和 16k rom
三星的44bx 系列和nxp的lpc22xx系列需要外扩的ram和rom
cortex-m3内核的mcu一般为工控设计,所以基本上都带有自己的ram和rom,而且不能扩展
arm9和arm11都需要外扩的ram和rom
arm9自带4k ram用于系统启动引导

‘捌’ arm 为什么是 32位微处理器 所以ARM体系结构所支持的最大寻址空间为4GB

所谓32位微处理器,指的是CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为32位,32位指令集就是运行32位数据的指令,也就是说处理器一次可以运行32bit数据。

由于32位数据能够包含的地址有2^32=4294967296=4194304K=4096M=4G,所以说最大寻址空间为4GB,但由于指令代码中不可能只包含内存的地址信息,所以一般来说32bit的处理器能够寻得的地址只有不足4GB。

每个数只能定位一个字节,这样才能确保每个字节都节约下来。如果进程数为500,每个进程占用2字节,那么占用的总内存空间则为2*500=1000字节,但如果以4字节作为单位,则占用空间为4(只能以4字节为单位)*500=2000字节,这样就会造成大量数据的冗余,不利于内存的有效使用。