哪种ARM Cortex内核更适合我的应用

发布者:SecretWhisper最新更新时间:2015-03-06 来源: dzsc关键字:ARM  Cortex内核 手机看文章 扫描二维码
随时随地手机看文章
    ARM Cortex内核系列提供非常广泛的具有可扩展性的性能选项,设计人员有机会在多种选项中选择最适合自身应用的内核,而非千篇一律的采用同一方案。Cortex系列组合大体上分为三种类别:

    ● Cortex-A—面向性能密集型系统的应用处理器内核

    ● Cortex-R—面向实时应用的高性能内核

    ● Cortex-M—面向各类嵌入式应用的微控制器内核

    Cortex-A处理器为利用操作系统(例如Linux或者Android)的设备提供了一系列解决方案,这些设备被用于各类应用,从低成本手持设备到智能手机、平板电脑、机顶盒以及企业网络设备等。早期的Cortex-A系列处理器(A5、A7、A8、A9、A12、A15和A17)基于ARMv7-A架构。每种内核都共享相同的功能集,例如NEON媒体处理引擎、Trustzone安全扩展、单精度和双精度浮点支持、以及对多种指令集(ARM、Thumb-2、Thumb、Jazelle和DSP)的支持。与此同时,这些处理器也具有极高的设计灵活性,能够提供所需的最佳性能和预期的功效。

    尽管Cortex-A5内核是Cortex A系列中体积和功耗都最低的成员,但它拥有支持多核性能的潜能,并且与该系列中的高级成员(A9和A15)兼容。对于那些之前采用ARM926EJ-S或ARM1176JZ-S处理器的设计人员来说,选择A5是自然的,因为它具有更高的性能和更低的芯片成本。

    Cortex-A7在功耗和体积上与Cortex-A5相似,但其性能提升20%左右,且与Cortex-A15和Cortex-A17有完全的架构兼容性。Cortex-A7是成本敏感型智能手机和平板电脑的理想选择,而且它还可以与Cortex-A15或Cortex-A17组合使用,形成ARM称为“big.LITTLE”的处理结构。big.LITTLE结构实质上是一种功耗优化技术;高性能CPU(例如Cortex-A17)和高效率CPU(例如Cortex-A7)的组合配置能够提供更高的持久性能,同时因为更高效的内核很好的满足了应用对中低性能的需求,这种组合还显著节省整体功耗,节省75%的CPU耗能,并且延长电池的使用寿命。智能手机和平板电脑的性能需求发展远比电池容量的增长快得多,因此这种配置带给开发人员明显的优势。诸如big.LITTLE等设计方法,作为整体系统设计策略的一部分,能够显著降低这种电池技术造成的差距。

    接下来让我们看看Cortex-A系列处理器中的高级别产品——Cortex-A15和Cortex-A17内核。这两款内核都是高性能处理器,也可用于多种配置中。Cortex-A17是最高效的“中级”处理器,直接针对高端智能手机和平板电脑。Cortex-A9曾广泛应用于这个市场,但与Cortex-A9相比,Cortex-A17性能提升了60%以上(循环周期),同时也改善了整体功效。Cortex-A17能够配置多达四个内核,每个内核都包含一个完整的乱序流水线。如前面提到的,Cortex-A17 可与Cortex-A7组合成高效的big.LITTLE配置,还可以搭配高端移动图形处理器(例如来自ARM的MALI),构成非常高效的设计整体。

    Cortex-A15是该系列处理器中性能最高的成员,是Cortex-A9性能(移动配置模式)的两倍。不仅完全胜任高端智能手机或平板电脑这样的应用,而且运行速率可高达2.5GHz的多核Cortex-A15处理器也能够支撑低功耗服务器或无线基础设施等应用。Cortex-A15是ARM公司第一款对虚拟软件环境中的数据管理和仲裁提供硬件支持的处理器。这些软件环境中的应用能够同时访问系统资源,实现虚拟环境中设备的可靠运行和相互隔离。

    最新成员Cortex-A50系列将Cortex-A系列的应用范围扩大至低功耗服务器领域。这些处理器基于ARMv8架构,支持AArch64——高效能64位运行态且可以与现行32位运行态共存。升级到64位的原因之一显而易见是为了支持大于4GB的物理内存,尽管Cortex-A15和Cortex-A7已经具备此能力。在这种情况下,升级到64位其实是为服务器应用提供更好的支持,服务器中越来越多的操作系统和应用程序都采用64位,当然,Cortex-A50系列为上述情况提供了功耗优化的解决方案。对于台式机市场而言,情况也大体相同,支持64位意味着Cortex-A50系列能够更广泛地应用到这一细分市场,而且某种程度证明了未来64位操作系统最终将迁移到移动应用。

    介绍过Cortex-A,下面介绍Cortex-R系列——衍生产品中体积最小的ARM处理器,这一点也最不为人所知。Cortex-R处理器针对高性能实时应用,例如硬盘控制器(或固态驱动控制器)、企业中的网络设备和打印机、消费电子设备(例如蓝光播放器和媒体播放器)、以及汽车应用(例如安全气囊、制动系统和发动机管理)。Cortex-R系列在某些方面与高端微控制器(MCU)类似,但是,针对的是比通常使用标准MCU的系统还要大型的系统。例如,Cortex-R4就非常适合汽车应用。Cortex-R4主频可以高达600MHz(具有2.45DMIPS/MHz),配有8级流水线,具有双发送、预取和分支预测功能、以及低延迟中断系统,可以中断多周期操作而快速进入中断服务程序。Cortex-R4还可以与另外一个Cortex-R4构成双内核配置,一同组成一个带有失效检测逻辑的冗余锁步(lock-step)配置,从而非常适合安全攸关的系统。

    Cortex-R5能够很好的服务于网络和数据存储应用,它扩展了Cortex-R4的功能集,从而提高了效率和可靠性,增强了可靠实时系统中的错误管理。其中的一个系统功能是低延迟外设端口(LLPP),可实现快速外设读取和写入(而不必对整个端口进行“读取-修改-写入”操作)。Cortex-R5还可以实现处理器独立运行的“锁步(lock-step)”双核系统,每个处理器都能通过自己的“总线接口和中断”执行自己的程序。这种双核实现能够构建出非常强大和灵活的实时响应系统。

    Cortex-R7极大扩展了R系列内核的性能范围,时钟速度可超过1GHz,性能达到3.77DMIPS/MHz。Cortex-R7上的11级流水线现在增强了错误管理功能,以及改进的分支预测功能。多核配置也有多种不同选项:锁步、对称多重处理和不对称多重处理。Cortex-R7还配有一个完全集成的通用中断控制器(GIC)来支持复杂的优先级中断处理。不过,值得注意的是,虽然Cortex-R7具有高性能,但是它并不适合运行那些特性丰富的操作系统(例如Linux和Android)的应用,Cortex-A系列才更适合这类应用。

    最后,我们来讨论Cortex-M系列,特别设计针对竞争已经非常激烈的MCU市场。Cortex-M系列基于ARMv7-M架构(用于Cortex-M3和Cortex-M4)构建,而较低的Cortex-M0+基于ARMv6-M架构构建。首款Cortex-M处理器于2004年发布,当一些主流MCU供应商选择这款内核,并开始生产MCU器件后,Cortex-M处理器迅速受到市场青睐。可以肯定的说,Cortex-M之于32位MCU就如同8051之于8位MCU——受到众多供应商支持的工业标准内核,各家供应商采用该内核加之自己特别的开发,在市场中提供差异化产品。例如,Cortex-M系列能够实现在FPGA中作为软核来用,但更常见的用法是作为集成了存储器、时钟和外设的MCU。在该系列产品中,有些产品专注最佳能效、有些专注最高性能、而有些产品则专门应用于诸如智能电表这样的细分市场。

    Cortex-M3和Cortex-M4是非常相似的内核。二者都具有1.25DMIPS/MHz的性能,配有3级流水线、多重32位总线接口、时钟速率可高达200MHz,并配有非常高效的调试选项。最大的不同是,Cortex-M4的内核性能针对的是DSP。Cortex-M3和Cortex-M4具有相同的架构和指令集(Thumb-2)。然而,Cortex-M4增加了一系列特别针对处理DSP算法而优化的饱和运算和SIMD指令。以每0.5秒运行一次的512点FFT为例,如果分别在同类量产的Cortex-M3 MCU和Cortex-M4 MCU上运行,完成同样的工作,Cortex-M3所需功耗约是Cortex-M4所需功耗的三倍。此外,也有在Cortex-M4上实现单精度浮点单元(FPU)的选项。如果应用涉及到浮点计算,那在Cortex-M4上完成比在Cortex-M3上完成要快得多。也就是说,对于不使用Cortex-M4上DSP或FPU功能的应用而言,其性能和功耗与Cortex-M3相同。换句话说,如果使用DSP功能,那就选择Cortex-M4。否则,就选择Cortex-M3完成工作。

    对于成本特别敏感的应用或者正在从8位迁移到32位的应用而言,Cortex-M系列的最低端产品可能是最佳选择。虽然Cortex-M0+的性能为0.95DMIPS/MHz,比Cortex-M3和Cortex-M4的性能稍稍低一些,但仍可与同系列其他高端产品兼容。Cortex-M0+采用Thumb-2指令集的子集,而且这些指令大都是16位操作数(虽然所有数据运行都是32位的),这使得它们能够很好的适应Cortex-M0+所提供的2级流水线服务。通过减少分支映射,系统就能节约一些整体功耗,而且在大多数情况下,流水线将保留接下来的四个指令。Cortex-M0+还具有专用的总线用于单周期GPIO,这意味着你能够利用位控制的GPIO实现确定接口,就像8位MCU那样,但却以32位内核的性能来处理该数据。

    Cortex-M0+的另外一个重要的不同特点是增加了微型跟踪缓冲器(MTB)。该外设可使设计人员在调试过程中使用一些片上RAM来存储程序分支。这些分支随后能够回传到集成开发环境中,而且可以重建程序流程。这一功能提供了一种初步的指令跟踪能力,这对于不具备扩展跟踪宏单元(ETM)功能的Cortex-M3和Cortex-M4来说比较有意义。从Cortex-M0+中提取的调试信息等级显著高于8位MCU,这就意味着那些难以解决的调试问题变得更加容易解决。

    综上所述,Cortex处理器系列产品为满足你的应用性能需求而提供了多种选项。无需劳神费力,也无论针对高端平板电脑还是物联网中超低成本的无线传感器节点,你都能够发现一款适合应用所需的处理器。

关键字:ARM  Cortex内核 引用地址:哪种ARM Cortex内核更适合我的应用

上一篇:基于CH375的智能数据采集卡设计分析
下一篇:运用ARM处理器系列软件工具可加速遵循安全至上的规范

推荐阅读最新更新时间:2024-03-16 13:54

Arm 重磅发布Mali多媒体套件,打造震撼视觉新体验
新闻摘要: Mali-G52 GPU和Mali-G31 GPU可为主流和入门级手机、DTV提供高端体验,从容应对更高的图形复杂度,实现更多的机器学习功能 Mali-D51显示处理器可在主流设备上有效实现更复杂的视觉体验 Mali-V52视频处理器可在主流设备上实现高效的4K60 / 4K120内容 2018年3月6日,北京讯– 为提供满足新一代体验需求的创新解决方案,Arm今日宣布推出包含全新的视频、显示和图像处理器的Mali多媒体套件。新的IP套件可与现有基于DynamIQ的CPU和其他Arm IP无缝集成,从而全面实现Arm新一代针对主流移动设备和数字电视(DTV)的解决方案。 当今,智能手机需要处理的内
[嵌入式]
<font color='red'>Arm</font> 重磅发布Mali多媒体套件,打造震撼视觉新体验
既有X86与ARM,为何RISC-V还能受汽车青睐?
在软件圈有一个梗:十年的老代码,你敢动? 这个故事具体情形是:当新入职的同事被告知维护老产品时,看着代码包就像是在雾里看花,当他去问资历更老的同事就会发现,几经轮回已经没有人懂具体逻辑是什么样的,原作者也不知道已经跳了几家公司,于是他没有办法,只能在外边包一层,交付新功能。   这,就是历史的包袱。    RISC-V 的优势就在于,作为后起之秀,它灵活、精简、开发成本也更低。    现在的 汽车 ,作为“轮子上的计算机”,它需要囊括的已不只是被动安全,信息娱乐已经成为 汽车 制造的新需求,软件定义 汽车 已是它的新方向。    通过对比 X86 、 ARM 与 RISC-V 的应用区别,就可以很清楚的知道为什么在汽车板块
[汽车电子]
既有X86与<font color='red'>ARM</font>,为何RISC-V还能受汽车青睐?
在软件领域,Arm都做了哪些?
你也许不知道,作为全球知名的芯片IP公司,Arm 有45%的工程师是软件开发人员。其中固然有部分开发人员在做底层,比如相关驱动的开发,但更多的工程师在做高层软件工作,包括软件框架、性能分析工具、展示最佳实践等等。 日前,Arm终端事业部生态系统及工程高级总监 Geraint North介绍了Arm在软件和生态系统方面的贡献。文章将分为四个方面,包括64位部署迁移,安全行业投入,软件架构优化以及安卓动态性能框架的合作。 全面转向64位 Armv9.2全面转向了64位,一直以来,Arm都在宣传64位的好处,但安卓生态经过了一个漫长的过程才完成64位迁移。10多年前Arm就进入了64位,但直到去年谷歌最新的Pixel手机才成
[半导体设计/制造]
ARM 64位A50系列:配备A57/A53产品2014年上市
    2012年12月5日,英国ARM公司,就10月30日发布的新处理器Cortex-A50系列在东京举行了说明会。会上介绍了众多采用ARM内核处理器的智能手机和平板电脑的市场状况、A50的定位以及面向服务器的推广情况等。   Cortex-A50系列是基于ARM公司“ARMv8”架构的产品。支持64位处理,有高端产品Cortex-A57和低端产品Cortex-A53两款。A57是产品线中性能最高的处理器。据称其32位模式可实现2012年的高性能智能手机3倍的性能。电力效率也很高,装有能以原来10倍的速度进行加密处理的新指令等。   A53以高电力效率为卖点。性能与现有产品Cortex-A9相同,特点是裸片尺寸比A9缩小了40%。
[手机便携]
基于ARM的嵌入式设备中uCLinux系统开发
1 引言 信息家电和手持设备大大加速了嵌入式系统的发展,而ARM体系32位高性能、低功耗处理器和嵌入式操作系统Linux无疑成为佼佼者。因为Linux源代码开放、免费,任何将其定制于PDA、掌上机或者便携式设备感兴趣的人都可以从因特网免费下载其内核和应用程序,并开始移植或开发,所以Linux在嵌入式开发领域得到稳步发展。uCLinux 即是目前嵌入式linux 中最流行的一种,它是针对微控制领域而设计的Linux系统,其最大特征就是没有MMU(内存管理单元模块),适合嵌入式系统小型化应用。   uCLinux支持多任务,支持多种文件系统,提供了对网络的强大支持,具有完整的TCP/IP协议栈,以及标准丰富的API。由于它的很多
[嵌入式]
Arm宣布旗下多个开源项目从GitHub迁移到GitLab
根据 GitLab 最新新闻稿,Arm Open Source 已决定将公司的多个开源项目从 GitHub 迁移到 GitLab。在新闻稿中,GitLab 概述了 Arm Open Source 选择其平台的重要原因:最大化选择和成本效益,最小化供应商锁定。 Arm 所创建的软件扮演着赋能件(enablement pieces)的角色,能够在其架构上集成其他软件。目前超过 95% 的移动设备都采用 Arm 处理器,而这些开源项目覆盖从传感器到云计算的诸多领域。 Arm 公司的杰出工程师和软件社区高级主管 Andrew Wafaa 解释说:“就其本身而言,这些功能部件并不是那么神奇,但当你把它们与来自其他社区和其他项目的其
[嵌入式]
软银收购ARM中国是幕后推手?
    集微网消息,Zero Hedge 18日报导,SouthBay Research发表研究报告指出,ARM掌握未来电子业的关键技术,这并非夸饰法,因为该公司不但称霸移动设备,迅速渗透到所有电子产品(从消费性电子产品到电脑网络都已全部沦陷),并拥有半导体设计与授权业务。汽车、冰箱等产品如今开始连上网络,这些物联网设备使用的也是ARM的技术。这一切都意味着,ARM稳坐了所有未来电子产品的核心位置。 那么,以电信、网络起家的软银为何会想收购这么一家重要的半导体设计公司?还有,软银本身已负债890亿美元,何以还会想额外再背310亿美元的债务? SouthBay认为,“中国大陆”似乎才是本次并购案的幕后推手。 软银表面上虽是
[手机便携]
基于ARM44B0x的信号发射机控制器设计
1.前言 船舶上使用的信号发射机是连续工作的,所以需要一个控制器对发射机的工作状态进行监控,常见的是用单片机作控制器的内核,但由于32位微处理器具有更好的精度和可靠性且低成本低功耗,所以在工业控制领域的应用日益广泛。采用嵌入式的32位微处理ARMS3C44B0x作为控制器的内核,设计的控制器将比用单片机作内核的处理器具有更全面的功能和更好的使用性能。 发射机控制器的主要功能是对多路模拟量和开关量的数据采集和处理监控发射机的工作状态;控制器控制发射机同时控制器又受上位机的控制,它要能在任意时刻准备好接收从上位机串口、网口发来的数据,它们之间的相对关系如图: 图1 控制器系统结构图 上位机向控制器发送数据
[单片机]
基于<font color='red'>ARM</font>44B0x的信号发射机控制器设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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