ARM基础学习收集!!!!!------阿冬专栏

 

ARM基础


1.ARM:Advanced RISC Machine 高级精简指令集计算机
2.RISC:精简指令集,周期执行等长,固定指令长度
3.哈佛与冯诺依谩的区别:CPU在一个周期内能否同时操作数据和指令
instruction cache 和data cache分开为哈佛结构,没有分开为冯诺依谩结构
ARM7三级流水线冯诺依谩结构
ARM9五级流水线哈佛结构
4.ARM特点:低功耗、移动手持设备
5.编程模型:ARM 32位架构指的是数据总线<---->字
6.工作模式:不同的空间有7种工作模式
usr 非特权模式|
------------------|空间共用
system  系统模式  | 
FIQ 快速中断模式|
IRQ 外部中断模式|
abort 异常模式    |异常模式
undef 未定义模式  |
svc 管理模式    |
7.寄存器:R13:SP栈指针。R14:LR 链接返回。R15:PC 程序计数器
8.ARM有37个32位长的寄存器
R0-R12:五种模式公有除FIQ(usr 和system算一种)13个|
FIQ:私有寄存器R8-R12             5个 |30个通用寄存器
R13:R14:六种模式都是私有的           2*6=12个|
PC :公有 1个
状态寄存器:CPSR 公有1个
     SPSR 私有5个(usr没有)
9.CPSR 当前程序状态寄存器 current program status register可以在任何处理器模式下被访问
1)ALU (atithmetic logic unit,算术逻辑单元)状态标志的备份
2)当前处理器的模式
3)中断全能标志
4)设置处理器的状态(只有在4T架构)
10.CPSR复位后进入svc模式,ARM状态
11.ARM状态32位4字节对齐,特点最后两位无效为0.PC的bit[1:0]=0
12.当异常产生时:1)系统会拷贝CPSR到SPSR,设置CPSR状态
          2)返回由程序员恢复SPSR-->CPSR
13.ARMv4所有指令都是条件执行。ARMv5有一条BX非条件执行
14.Thumb代码比ARM代码的优势
1)代码密码是ARM的65%
2)方便窄内存操作
15.DMIPS:一秒种执行的速度.CPI:指令执行的百分率周期/指令
16.指令流水线结论:1)Execute Address=PC-8
2)IRQ的lr=PC-4.BL、undef:lr=PC
3)LDR互锁条件:LDR的目的地址在下一周期的源地址出现
LDM(多内存操作)的条件:最后一个寄存器在一个周期作为源地址使用
17.ARM9E:E支持DSP。ARM9TDMI:支持调试,IDE
18.在流水线的第二阶段译码decode读寄存器
----------------------------------------------------------------------------------
测试:
1.说出ARM可以工作的模式名字
答:7种:
usr 用户模式
system  系统模式
FIQ 快速中断模式
IRQ 外部中断模式
Abort 异常模式
undef 未定义模式
svc 管理模式
2.ARM核有多少个寄存器
答:37个32位的寄存器
3.什么寄存器用于存储PC和LR寄存器
答:PC:R15。LR:P14
4.R13通常用来存储什么
答:栈指针
5.哪种模式使用的寄存器最少
答:usr
6.在Thumb指令中,哪些处理器处于Low group
答:R0-R7
7.CPSR的哪一位反映了处理器的状态
答:T
8.所有Thumb指令采取什么对齐方式
答:16位2字节对齐
9.ARM有哪几个异常类型
答:7个
Reset   复位异常   0x00
Undefined instruction 未定义异常 0x04
Software interrupt 软中断  0x08
Prefetch Abort  预取指异常 0x0c
Data Abort  数据异常 0x10
IRQ   外部中断异常 0x18
FIQ   快速中断异常 0x1c
10.为什么FIQ的服务程序地址要位于0x1c
答:因为0x1c后面可以直接给异常处理函数,而不需跳转,从而提高执行速度
如果在0x1c前面的话则只有四个字节只能跳转执行异常函数
11.在复位后,ARM处理处于何种模式、何种状态
答:处理ARM状态,svc模式
12.哪些ARM指令可以有条件的执行
答:在ARMv4架构下所有的指令都是可以有条件执行
在ARMv5架构下有一条指令BX不能有条件执行,是非条件执行
13.Thumb代码与ARM代码比较的两在优势
答:优化代码密码、提高窄内存操作性能、是ARM指令集的一个功能子集
4)AMBA代表是什么
答:advanced mircontrol bus architecture 高级微控制总线体系结构
AHB:高速总线。APB:低速总线


ARM:软件是挑战X86的最后瓶颈


思的是,尽管Intel和IBM在RISC-CISC上的争论持续了很多年,CISC也正在不断蚕食以IBM为代表的RISC低端市场,但时至今日,Intel突然转过头发现,自己的低端市场也正在遭遇以ARM为代表的RISC产品

有意思的是,尽管Intel和IBM在RISC-CISC上的争论持续了很多年,CISC也正在不断蚕食以IBM为代表的RISC低端市场,但时至今日,Intel突然转过头发现,自己的低端市场也正在遭遇以ARM为代表的RISC产品侵蚀。

在2009年,Dell就已经推出了基于威盛Nano芯片的低功耗XS11-VX8服务器,其体积相当于一块3.5英寸的硬盘,而且在一个标准2U机箱内放置12台这样的服务器,单服务器的满载功耗在30瓦以内,并在近两年内出货5000多套类似的系统。

而Facebook在美国俄勒冈州兴建新数据中心时,已经开始使用ARM架构服务器,替换传统的x86产品。

尽管Intel在多个场合表示,ARM进军服务器市场不足为惧,但是现实情况是,在CPU市场,ARM已经成为了Intel当前最大的竞争对手——先是微软倒戈,然后自己的铁杆——Dell、HP等都出了低功耗、高密度采用非Intel处理器的服务器,尽管他们在推出产品时都很低调,但ARM处理器在运行工作负载时比Intel Xeon处理器为代表的传统服务器芯片具备更快的速度及更高的能效已是不争的事实。

在ARM刚公布的2012年的产品规划中,Cortex-A15处理器将主打无序超标量体系架构管道,浮点计算能力将大大提升,主频也将达到2.5GHz。

软件联盟副总裁麦克莱温称:“我们认为服务器对于ARM来说是个好机会。我们正在计划将我们这么多年来从几种不同生态系统中积累的经验应用到服务器系统中”。

ARM强势出击X86领域

目前,ARM公司正在全力寻求软件供应商合作,使其支持ARM构架。ARM总裁表示,将其低能耗处理器配置到服务器的计划需要软件上的支持。目前,大多数服务器软件都是面向X86构架处理器设计的,ARM和X86体系架构使用不同的指令集,这些软件若想要运行在基于ARM处理器的服务器上必须重新编写。在得到软件商的支持后,ARM将在服务器市场正面对抗x86构架,无疑是向以英特尔和AMD为代表的传统服务器宣战。

麦克莱温表示,ARM已经成立专业团队突破服务器领域,ARM将广泛接触虚拟化软件制造商和服务器操作系统生产商来帮助他们编写针对ARM处理器的应用软件。

实际上,在此之前,ARM之前已经和谷歌,苹果和微软公司成功的合作开发过诸如Android,iOS和Windows Phone 7等移动设备操作系统。微软已经明确表示下代的Windows操作系统将支持ARM构架处理器,而谷歌公司正在针对ARM构架处理器研发Chrome OS操作系统。

在服务器领域,唯一的问题也许在于32位瓶颈,尽管ARM不支持64位寻址,物理内存也有限。这极大地制约了其在服务器市场发展的硬伤,但由于很多服务器上运行的云应用软件都是32位的,ARM构架在硬件系统上已经能够满足市场上大部分服务器的需求。

软件也许是ARM的最后瓶颈

“64位,纠错能力,多重并行,超线程能力,高度并行的系统基础架构”,欧德宁飞快的罗列出一长串他认为ARM的不足。“所有一切都必须围绕新的体系架构构建,从历史经验来看这是非常困难的”。

能耗低、价格便宜,适合大规模部署——就像欧德宁说的那样——“软件环境?谁来做编译呢?谁来修正代码呢?谁来完成多线程工具?Intel有数千名工程师在做这些工作。而他们还得去找这些专业人员。”

戴尔服务器平台副总裁兼总经理Forrest Norrod曾对ARM评价道:“x86架构的软件导入ARM架构会面临时间和成本问题,另外,为新架构转换代码并同时维护两套不同的软件是否能够带来足够的利益?”

此外,Intel不会坐以待毙。到2014年他们将全面进入22纳米制程时代,并为进展到14纳米制程时代做好准备——这两个阶段的研发将进一步提升处理器的能耗/性能比。

  基于ARM架构的服务器 基于X86架构的服务器
性能 一般
能耗 三十瓦以内 一百瓦以上
价格 几百美元左右 一千美元以上
性能/能耗比 一般
性能/价格比 一般
软件的支持 非常多
适合的负载 非常多

ARM、X86对比

可以看到,目前在软件方面,虽然Linux系统已经能在ARM架构上完美的运行起来,但是在所支持程序的数量上面,和X86架构相比,差距还是很大的,特别是无法很好地支持中小企业常用的Windows Server系列;而在内存方面,由于现有的ARM架构对大容量的内存支持不佳,一般很难看到能支持2G以上内存的ARM芯片,更别说服务器方面常见的4G以上内存;再有,在设计方面,著名云计算专家James Hamilton认为,虽然ARM架构在ATOM芯片不支持的ECC内存方面有不错的支持,但是在芯片层不支持一致性缓存(Cache Conherent)并缺少一个优秀的内存控制器,使得ARM芯片无法像最新的Nehalem芯片那样近乎完美的应对基于服务器的应用。

但不管怎样,ARM的强势表现将极大推动英特尔和AMD转变自身方式


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值