ARM平台处理器简介

发布者:数据之翼最新更新时间:2016-06-17 来源: eefocus关键字:ARM平台  处理器 手机看文章 扫描二维码
随时随地手机看文章
初次接触到ARM的时候,我直接被众多的处理器版本、系列搞晕了,查了好多资料才理清。现在在这里总结一下,希望能帮到别人。

 

1.总体情况

先从ARM的wiki上抄个表过来:

Architecture Family
ARMv1 ARM1
ARMv2 ARM2,ARM3
ARMv3 ARM6,ARM7
ARMv4 StrongARM,ARM7TDMI,ARM9TDMI
ARMv5 ARM7EJ,ARM9E,ARM10E,XScale
ARMv6 ARM11, Cortex-M
ARMv7 Cortex-A,Cortex-M,Cortex-R
ARMv8 -

左侧的一列可以视作是ARM处理器的各个“代”,而右侧则是同一代的各个“家族”(或者说“系列”)。现在基本已是ARMv7的时代,ARMv6及更早的Architecture只在一些低端的设备上能见到了。而ARMv8则是ARM平台的未来时,被设计为64位的架构,显然不是主要面向移动设备的。不过到现在为止ARMv8也只是有一些资料,离真正面世还有一段时间。

 

现在把重点放在ARMv7,更确切的,是ARMv7中的Cortex-A系列核心上来。Cortex-M系列处理面向嵌入式应用,而Cortex-R系列则面向实时应用,Cortex-A,则面向广大的手机用户。

2.Cortex-A系列的众多核心们

核心 Cortex-A5 Cortex-A7 Cortex-A8 Cortex-A9 Cortex-A15
发布年份 2009年 2011年

2006年

2007年 2011年
核心 1-4核 1-4核

单核

1-4核 最多4核每cluster,每物理核最多2个cluster
流水线

8级(in-order)

8-10级

13级(整点

in-order)

8级(out-of-order)

12级in-order加3-12级out-of-order

硬件虚拟化

L1 Cache 4-64K/4-64K 8-64K/8-64K 16-32K/16-32K 16-64K/16-64K 32K/32K
大物理地址扩展
浮点部件 VFPv4 VFPv4 VFPv3 VFPv3 VFPv4

*发布年份是ARM公布核心的时间(可能不太准确)。

*A15的流水线前12级是in-order的,后面则是out-of-order的多种流水线,级数从3到12不等。A7类似,NEON部件的流水线是10级,整点则是8级。

 

现在来分析一下各个核心的参数。首先是Cortex-A后面的编号,大体上,这个编号代表该核心的性能,或者说在ARM产品线中的位置。比如A5面向低端应用,编号最小;A15是目前ARMv7性能中性能最高的核心;A7虽然发布晚于A8,而且规格接近,但由于限制了双发带宽,其性能预期是低于A8的。总的来看,A5的定位最低端,取代ARMv7之前的产品;A15最高端,A7性能低于A8,但更加节能,成本也更低;A8/A9则可能被取代,不过目前仍然是主流;A15则是目前为止ARM处理器中规格最高的了。

 

再看一下较新的核心中几个重要的特性。A7和A15支持硬件虚拟化,以A7的定位来说硬件虚拟化的支持似乎没有太多用武之地,不过对于A15来说则表明A15可能用于传说中的ARM服务器(不过算算时间似乎也没有太多A15发挥的余地,毕竟64位的ARMv8更适合用于服务器)。大物理地址扩展(LPAE)和x86上的PAE相似,允许32位的ARM处理器最大寻址2^40bit的内存(1TB)。这又是一个表明A15可用于服务器的迹象,毕竟4G的寻址空间对现在的服务器来说完全不够用啊。

 

3.浮点和高级SIMD部件

ARMv7开始使用VFPv3版本的浮点部件,而ARMv7中更新的核心则使用了VFPv4( 见前面表格)。VFPv2则用于ARMv7之前的核心,现在还有一部分低端手机使用这种处理器;而使用VFPv1浮点部件的核心已经基本淘汰掉了。ARM的高级SIMD部件称为NEON,从ARMv7开始出现

ARM浮点部件的一个问题是对很多核心来说是可选的,一些处理器并没有浮点部件。不仅如此,尽管ARMv7的处理器基本都实现了浮点部件,但浮点部件也有多个可选实现,再加上NEON部件也是可选的,最后导致市面上的ARM处理器对浮点/SIMD的支持并不一致。下表列出了主要的VFPv3实现的版本(VPFv4的资料需要补充):

版本 寄存器 其他特性
VFPv3(-D32) 32个64位寄存器,32个32位寄存器  
VFPv3-FP16 同上 半精度扩展(FP16的含义)
VFPv4(-D32) 同上 VFPv4总是实现半精度扩展和Fused Multiply-Add 扩展
VFPv3-D16 16个64位寄存器,32个32位寄存器  
VFPv3-D16-FP16 同上 半精度扩展
VFPv4-D16 同上 同VFPv4

上表中所说的32位寄存器和64位寄存器并不是独立的,前16个64位寄存器每个可以视为2个32位寄存器,同时,两个64位寄存器可以视为一个128位寄存器。下图来自ARM官方文档,展示了32位寄存器和64位寄存器的关系:

ARM平台处理器简介

对于VFPv3-D16、VFPv3-D16-FP16和VFPv4-D16来说,上图中的D16~D31是不存在的。除了上表中的版本,VFPv3还有单精度版本,只实现了单精度浮点数的运算指令,gcc中称这种版本的VFPv为“vfpv3xd”,相应的,还有vfpv3xd-fp16。不过这种实现的ARM处理比较少见。

NEON部件和浮点部件关系密切,在两者同时存在时,使用的是同一套寄存器。不过,NEON的寄存器数目是固定的,和VFPv3/VFPv-FP16/VFPv4相同。这意味着,NEON不能和VFPv3-D16/VFPv3-D16-FP16这种寄存器阉割版共存。当没有浮点部件时,NEON部件只能进行整点运算。下表是NEON和VFP部件可能的组合:

NEON部件 VFP部件 说明
仅整型 未实现  
整型和单精度浮点 单精度浮点  
整型和单精度浮点 单精度和双精度浮点  
未实现 单精度浮点  
未实现 单精度和双精度浮点  

从上面这个表可以看出,即使VFP部件实现了双精度运算的功能,NEON部件也只能进行单精度运算。不止如此,gcc的手册之处,NEON的浮点运算不完全符合IEEE 754标准,在某些情况下会损失精度,因此即使使用了自动向量化的选项,浮点运算的向量化默认也是关闭的。

依据半精度和Fused Multiply-Ad扩展的实现情况,NEON部件可以分为3种版本:

高级SIMDv1:两者均未实现

高级SIMDv1带半精度扩展:实现了半精度扩展

高级SIMDv2:同时实现了半精度和Fused Multiply-Ad扩展

而NEON半精度和Fused Multiply-Ad扩展的实现情况与VFP部件是相关的。

总结一下VFP和NEON的特点:

1.VFPv3/VFPv4分为根据寄存器情况分为D16和D32两个版本,D16的双精度(64位)寄存器只有16个。

2.D16版本的VFP不能和NEON部件共存。

3.NEON部件单独存在时只能进行整点运算

4.实现了半精度扩展的VFPv3称为FP16版本,如果连Fused Multiply-Ad扩展也实现了,就是VFPv4了。

 

除了上面所说的,ARMv7处理器还有很多特性。由于我了解的不多,就不多说了

关键字:ARM平台  处理器 引用地址:ARM平台处理器简介

上一篇:ARM 处理器架构简介
下一篇:关于arm处理器remap的理解和实现

推荐阅读最新更新时间:2024-03-16 14:57

凌华科技PICMG 1.0无风扇、低功耗工业计算机
2008 年 4 月 16 日 ,因应工厂自动化设备、智能交通应用系统对计算机低功耗、无风扇设计的需求,凌华科技提供最新产品 PICMG® 1.0 规格工业用单板计算机 NuPRO-720 ,由于采用 AMD Geode ™ LX 800 处理器,兼顾性能与成本考虑,经济效益高,且具备低功耗、无风扇、散热性能强等优点,系统高负载的耗电量低于 20 瓦特。 凌华 NuPRO-720 长卡的主要规格包括支持 Serial ATA ( SATA )接口、整合 VGA 功能、 4 个 USB 端口、板载 CompactFlash® 插槽。因为使用无风扇的散热片
[单片机]
英特尔:PC处理器出货量跌了2%,但我们价格涨了13%
英特尔昨天发布了2018年Q4季度财报,当季营收187亿美元,净利润52亿美元,全年营收达到了创纪录的708亿美元,净利润也有211亿美元,不过这份财报并没有让英特尔股价大涨,反而跌了5.5%,因为Q4季度的业绩没有达到华尔街分析师预期,英特尔也遭遇了半导体市场放缓的影响。在英特尔的业务部门中,CCG客户端计算部门占比是最高的,当季PC处理器出货下滑了2%,但是英特尔的营收完全没受到影响,因为ASP均价涨了13%,涨幅比上个季度还要高,简单来说就是英特尔处理器越来越贵。 英特尔的业务分为CCG客户端计算、DCG数据中心计算、IOTG物联网、NSG非易失性存储、PSG可编程解决方案等多个部门,在过去年的一年中所有业务部门业务都是
[家用电子]
英特尔:PC<font color='red'>处理器</font>出货量跌了2%,但我们价格涨了13%
瞄准产学合作 新思以ARC处理器瞄准物联网应用
台湾身为全球科技产业的重镇之一,过去在人才的培育上一直不遗余力,再加上台湾亦可以说是科技产品输出的重要国家,诸多外商除了选择深耕台湾的OME与系统整合业者外,也会与台湾的学术与研究单位合作。以处理器核心IP业者ARM而言,就在去年与经济部、科技部两大部会合作,成立全球第一座的Cortex-M处理器核心为主的研发中心。 而在今年,另一家已经转型成为EDA与IP同时提供的半导体大厂,新思科技,也开始采取行动,成立 IoT物联网应用设计实验室 ,打算藉提供自有IP与台湾研究与政府机构建立更为深厚的合作关系,以强化台湾在全球物联网市场的研发速度与实力。此次合作,极受新思科技的重视,新思科技董事长暨共同执行长Dr. Aart de G
[物联网]
从一个微处理器强人的传奇经历谈本土处理器创新
中国北京2010年5月18日讯–他毕业于斯坦福大学,在70年代末加入了在微处理器领域刚刚崭露头脚的intel,并参与了intel最尖端微处理器的研发,随后,在攻读斯坦福大学电气工程博士学位期间参与了RISC架构的开发,帮助创建了MIPS公司并担任MIPS微处理器开发副总裁,之后他加入了EDA巨头Synopsys公司,负责产品定义和以及IP复用战略,在产业里打拼了近20年后,1997年,他终于有了自己的公司,他尝试用一种新的产品来改变负责SoC的设计,如今,他的这个新产品已经应用到DoCoMo的4G手机、三星的3D蓝光播放机、任天堂的游戏机、ATI的显卡、HP的激光打印机等各种电子产品上。 这个富有传奇色彩的微处理器领
[半导体设计/制造]
stm32处理器调试模式下运行正常,上电自启动后运行不正常的故障排查分析
最近负责一个项目,用到stm32f4的一款高性能芯片。研发过程中遇到一个很诡异的现象,前前后后折腾了两三天,最后才搞定。由于是新手,经验不足,排故过程很纠结~~ 现象如下: 1.采用JLINK下载程序后,断电让其上电重新启动,发现有时可以正常运行,有时候无法正常运行,大约每两、三次就有一次无法正常上电启动。 2.通过JLINK调试程序,每次均正常运行。太诡异了! 发现问题后开始定位原因。首先考虑是BOOT启动出问题了,stm32f4启动方式分三种:User FLash、SystemFlash和EmbeddedSRAM,通过BOOT0和BOOT1管脚配置。程序正常运行时从User FLash启动,如果BOOT0和BOOT1配
[单片机]
AMD首次展示新型四核巴塞罗纳芯片
北京时间12月1日消息,据国外媒体报道,AMD周四首次对外展示了开发代码为“巴塞罗纳(Barcelona)”的新型四核处理器原型概况。 四核“巴塞罗纳”为服务器级别芯片。AMD市场营销经理帕特·帕特拉(Pat Patla)表示,相应测试表明,与现有双核Opteron(皓龙)芯片相比,巴塞罗纳的处理性能将提高40%到70%。此前英特尔已抢先推出了该公司自称的“四核”产品,但它们实际上是由两块双核芯片粘合而成。AMD表示,将推出真正意义上的四核产品,即在一个硅片上集成四个内核。 帕特称,如果服务器用户今后计划升级,他们只需在现有服务器中插入新型四核处理器即可。据悉巴塞罗纳上市时间为明年夏季。帕特称,巴塞罗纳原型显示,AMD的65纳米
[焦点新闻]
Teledyne e2v尖端多核处理器以应对航空航天领域新挑战
法国格勒诺布尔 - Media OutReach - 2021年4月12日 - 为满足航空电子和航天领域客户的需求,Teledyne e2v独家提供经过锡铅处理并完全通过认证的QorIQ®T4240处理器。 多核T4240单元能够处理计算量极大的应用场景。这些设备由多达12个双线程PowerArchitecture®内核(24个虚拟内核)组成,频率达到1.8GHz,更高的性能水平,同时只占用最小的主板空间。它们具有丰富的I/O选项,包括10Gbit以太网、1Gbit以太网、PCIe、USB、SATA、RapidIO等。由于在每个T4240中嵌入了数据路径加速逻辑,可以显著提高数据包分类和处理效率。此外,还能支持-55°C
[半导体设计/制造]
Teledyne e2v尖端多核<font color='red'>处理器</font>以应对航空航天领域新挑战
一文了解STM32启动过程
1 概述 说明 每一款芯片的启动文件都值得去研究,因为它可是你的程序跑的最初一段路,不可以不知道。通过了解启动文件,我们可以体会到处理器的架构、指令集、中断向量安排等内容,是非常值得玩味的。 STM32作为一款高端 Cortex-M3系列单片机,有必要了解它的启动文件。打好基础,为以后优化程序,写出高质量的代码最准备。 本文以一个实际测试代码--START_TEST为例进行阐述。 整体过程 STM32整个启动过程是指从上电开始,一直到运行到 main函数之间的这段过程,步骤为(以使用微库为例): ①上电后硬件设置SP、PC ②设置系统时钟 ③软件设置SP ④加载.data、.
[单片机]
一文了解STM32启动过程
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved