众所周知,英国的ARM公司是 嵌入式微处理器世界当中的佼佼者。ARM一直以来都是自己研发微处理器内核架构,然后将这些架构的知识产权授权给各个芯片厂商,精简的CPU架构,高效的处理能力以及成功的商业模式让ARM公司获得了巨大的成功,使他迅速占据了32位嵌入式微处理器的大部分市场份额,甚至现在,ARM芯片在上网本市场的也大有与INTEL的ATOM处理器一较高低的实力。

目前,随着对嵌入式系统的要求越来越高,作为其核心的嵌入式微处理器的综合性能也受到日益严峻的考验,最典型的例子就是伴随3G网络的推广,对手机的本地处理能力要求很高,现在一个高端的智能手机的处理能力几乎可以和几年前的笔记本电脑相当。为了迎合市场的需求,ARM公司也在加紧研发他们最新的ARM架构,Cortex系列就是这样的产品。在Cortex之前,ARM核都是以ARM为前缀命名的,从ARM1一直到ARM11,之后就是Cortex系列了。Cortex在英语中有大脑皮层的意思,而大脑皮层正是人脑最核心的部分,估计ARM公司如此命名正有此含义吧。

一.ARMv7架构特点

下表列出了ARM微处理器核心以及体系结构的发展历史:


表一: ARM微处理器核心以及体系结构的发展历史

我们可以看到,Cortex系列属于ARMv7架构,这是ARM公司最新的指令集架构,而我们比较熟悉的三星的S3C2410芯片是ARMv4架构,ATMEL公司的AT91SAM9261芯片则是ARMv5架构。

ARMv7架构是在ARMv6架构的基础上诞生的。该架构采用了Thumb-2技术,Thumb-2技术是在ARM的Thumb代码压缩技术的基础上发展起来的,并且保持了对现存ARM解决方案的完整的代码兼容性。Thumb-2技术比纯32位代码少使用 31%的内存,减小了系统开销。同时能够提供比已有的基于Thumb技术的解决方案高出38%的性能。ARMv7架构还采用了NEON技术,将DSP和媒体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3D图形、游戏物理应用以及传统嵌入式控制应用的需求。此外,ARMv7还支持改良的运行环境,以迎合不断增加的JIT(Just In Time)和DAC(DynamicAdaptive Compilation)技术的使用。另外,ARMv7架构对于早期的ARM处理器软件也提供很好的兼容性。

ARMv7架构定义了三大分工明确的系列:“A”系列面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列针对实时系统;“M”系列对微控制器和低成本应用提供优化。下图为v5至v7架构比较:


图一:v5至v7架构比较

由于应用领域不同,基于v7架构的Cortex处理器系列所采用的技术也不相同,基于v7A的称为Cortex-A系列,基于v7R的称为Cortex-R系列,基于v7M的称为Cortex-M系列。下面一一介绍。

二.Cortex-A8

Cortex-A8第一款基于ARMv7构架的应用处理器。Cortex-A8是ARM公司有史以来性能最强劲的一款处理器,主频为600MHz到1GHz。A8可以满足各种移动设备的需求,其功耗低于300毫瓦,而性能却高达2000MIPS。

Cortex-A8也是ARM公司第一款超级标量处理器。在该处理器的设计当中,采用了新的技术以提高代码效率和性能,采用了专门针对多媒体和信号处理的NEON技术。同时,还采用了Jazelle RCT技术,可以支持JAVA程序的预编译与实时编译。

针对Cortex-A8,ARM公司专门提供了新的函数库(Artisan Advantage-CE)。新的库函数可以有效的提高异常处理的速度并降低功耗。同时,新的库函数还提供了高级内存泄漏控制机制。

Cortex-A8处理器使用了先进的分支预测技术,并且具有专用的NEON整型和浮点型流水线进行媒体和信号处理。在使用小于4 mm2的硅片及低功耗的65 nm工艺的情况下,Cortex-A8处理器的运行频率将高于600MHz(不包括NEON追踪技术和二级高速缓冲存储器)。在高性能的90 nm和65 nm工艺下,Cortex-A8处理器运行频率最高可达1 GHz,能够满足高性能消费产品设计的需要。

Cortex-A8第一次为低费用、高容量的产品带来了台式机级别的性能。当前最新的IPHONE手机和ANDROID手机里的处理器就是基于Cortex-A8内核的芯片。

Cortex-A8的系统框图如下:


图二:Cortex-A8的系统框图

更详细的框图如下:


图三:Cortex-A8的详细系统框图

三.Cortex-R4

Cortex-R4是ARM开发的超标量结构的ARM内核,主要面向实时控制领域,如汽车刹车控制等,这一领域要求处理器响应中断的实时性高,并且要尽可能的节约成本,而很多客户要求不需过多提高工作频率,就能提高运算性能,因此在Cortex-R4的设计过程中,工作频率的最佳点位是300MHz。再高的话,不仅需要高速内存,而且时钟树的设计也更为复杂。结果,判断合理的做法就是采用超标量结构,增加单位周期所执行的指令平均数。Cortex-R4单位工作频率的运算性能为 1.62MIPS(按Dhrystone换算)/MHz,比ARM9的约1.2MIPS/MHz大幅提高。Cortex-R4电路规模只是比ARM9略有增加,但是可以实现更接近于Cortex-A8的运算性能。

Cortex-R4系统框图如下所示:


图四:Cortex-R3系统框图

四.Cortex-M3

ARM Cortex-M系列则是为那些对开发费用非常敏感同时对性能要求小断增加的嵌入式应用(如微控制器、汽车车身控制系统和各种大型家电)所设计的,主要面向单片机领域,可以说是51单品机的完美替代品。
Cortex-M3系统框图如下所示:


图五:Cortex-M3系统框图

Cortex-M3的速度比ARM7快三分之一,功耗低四分之三,并且能实现更小芯片面积,利于将更多功能整合在更小的芯片尺寸中。Cortex-M3处理器结合了执行Thumb-2指令的32位哈佛微体系结构和系统外设,包括Nested Vec-tored Interrupt Controller和Arbiter总线。该技术方案在测试和实例应用中表现出较高的性能:在台机电180 nm工艺下,芯片性能达1.2 DMIPS/MHz,时钟频率高达100 MHz。

在工控领域,用户要求具有更快的中断速度,Cortex-M3采用了Tail-Chaining中断技术,完全基于硬件进行中断处理,最多可减少12个时钟周期数,在实际应用中可减少 70%中断。

五.总结

ARM Cortex处理器系列都是基于ARMv7架构的产品,从尺寸和性能方而来看,既有少于33000个门电路的Cortex-M系列,也有高性能的Cortex-A系列。其中,Cortex-A系列是针对日益增长的,运行包括Linux、Windows,CE和Symbian操作系统在内的消费娱乐和无线产品设计的;ARM Cortex-R系列针对的是需要运行实时操作系统来进行控制应用的系统,包括汽车电子、网络和影像系统;ARM Cortex-M系列则面向微控制器领域,为那些对开发费用非常敏感同时对性能要求不断增加的嵌入式应用所设计的。可见随着在各种不同领域应用需求的增加,微处理器市场也在趋于多样化。

Cortex系列ARM内核介绍相关推荐

  1. STM32系列ARM单片机介绍

    STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex-M3内核.按性能分成两个不同的系列:STM32F103"增强型"系列和STM32F101 ...

  2. 关于ARM内核经典系列ARM7/ARM9/ARM11和Cortex®-A/Cortex®-R/Cortex®-M的产品线简单介绍

    目前市场上的嵌入式单片机或者Soc大部分都是ARM的内核架构,相信大家对Cortex®-M3/Cortex®-M4,Cortex®-A53/Cortex®-A73等有所耳闻. ARM公司主要是设计处理 ...

  3. ​ ARM Cortex系列那么多处理器,该怎么区分?

    关注.星标公众号,直达精彩内容 来源:嵌入式资讯精选 最近因为要为芯片选定核,所以就在了解哪些核合适且性价比好,这是一个需要结合产品各类技术.市场分析的活,看似简单却还是需要一些储备的,今天选了一篇A ...

  4. 关于ARM Cortex系列产品

    ARM Cortex系列的三款产品全都集成了Thumb®-2 指令集,可满足各种不同的日益增长的市场需求.ARM Cortex系列的三款处理器: • ARM Cortex-A 系列:针对复杂操作系统以 ...

  5. 【单片机】单片机各系列(51,PIC,AVR,MSP430/432,ARM)介绍

    文章目录 说明 资料一 ······ 综述 资料二 ······ 综述 资料三 ······ MSP430 资料四 ······ 综述 资料五 ······ 合集 说明   因为近期想要了解各种单片机 ...

  6. 从单片机到嵌入式开发——(9) 从8051到ARM——STM32介绍和基本使用

    在之前的文章中,我们介绍了51单片机的IO口.编写语言.三种中断方式(外部.定时器.串口)和常见外设的应用(LED灯.数码管.按键.显示屏.AD.基于I2C协议通信的EEPROM),同时简要介绍了μC ...

  7. TinyML设备设计的Arm内核

    TinyML设备设计的Arm内核 Arm cores designed for TinyML devices Arm推出了两个新的IP核,旨在为终端设备.物联网设备和其低功耗.成本敏感的应用程序提供机 ...

  8. arm 架构_Arm架构之Arm内核解析

    Arm架构已经主导了当今嵌入式处理和计算市场,但在过去的几十年里,Arm 架构却走过了漫长的道路.从20世纪80年代开始,它起初是作为家用电脑处理器,然后在20世纪90年代成为手机芯片的基础.如今,在 ...

  9. 详谈ARM架构与ARM内核发展史

    戳蓝字"CSDN云计算"关注我们哦! 作者 | 架构师技术联盟 责编 | 阿秃 1.ARM架构与ARM内核 1.1 ARM架构与内核简述 目前为止,ARM总共发布8种架构:ARMv ...

最新文章

  1. 打造标杆,中科院人工智能战队发布新一代智算平台
  2. CF E2 - Daleks' Invasion (medium) (LCA求两点树上路径上的最大边权)
  3. conda重命名环境env
  4. 服务器被攻击怎么办 安全狗来防护
  5. python可变类型与不可类型
  6. 一个简单的调用动态库的实例
  7. 云上系统迁移系列(一):概览
  8. Cannot assign to read only property 'exports' of object '#Object'
  9. MATLAB画颗圣诞树
  10. iOS:开放平台引用(二)--微信分享
  11. SQL Server查询IP地址等信息
  12. 好家伙,公司服务器直接热崩掉了!
  13. 第五章(第四节)论路由器重置
  14. Spring MVC controller控制器映射无法访问问题!!!
  15. 微信小游戏|unity搭建3D篮球小游戏场景
  16. Flink线上问题: The assigned slot container_xxx was removed
  17. 需要打开密码才能解压的压缩包如何解决
  18. Science:2019年度最佳科学照片
  19. 推荐四本最新豆瓣高评分Python书籍,再送四十本!
  20. 染布厂ERP,染纱厂ERP

热门文章

  1. 肺癌图片识别的相关信息
  2. 处理 read_csv 报错 OSError:Initializing from file failed
  3. dll已加载但找不到入口点DLLRegisterServer
  4. SVC调参总结+调参实例
  5. subpress installed post-installation script returned error exit status 1
  6. OPenCV学习笔记八-图像的滤波
  7. 设计模式(二)之装饰器模式
  8. 快速创建 IEqualityComparer 实例:改进
  9. 佛经上181条做人的道理
  10. gitlab基本工作原理