细数Cortex-M系列六大型男,你来吗?

同上期Cortex-A 系列一样, Cortex-M 处理器系列也是ARM公司旗下处理器系列产品的孩子之一。Cortex?-M 处理器系列是一系列可向上兼容的高能效、易于使用的处理器,这些处理器旨在帮助开发人员满足将来的嵌入式应用的需要。这些需要包括以更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。 Cortex-M 系列针对成本和功耗敏感的 MCU 和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。本期小编邀你细数Cortex-M系列六大型男。

 

细数Cortex-M系列六大型男,你来吗?

 

一、           Cortex-M7 处理器

 

细数Cortex-M系列六大型男,你来吗?

ARM?Cortex?-M7处理器是节能性ARM Cortex-M系列的最新、性能最高的成员,它能帮助合作伙伴打造各种最复杂的MCU以及嵌入式的SoCCortex-M7的设计旨在提供一个高水平的性能,但同时保持出色的响应速度和易于使用的ARMv7-M架构。

 

特性:

1) 6级超标量流水线,在40LP工艺制程与频率400MHz的条件下,性能测试可达2,000Coremarks。

 2) 支持64位AXI互连,可选配经过优化的指令及数据Cache,以更有效率地存取大型外存和连接高性能外设。

 3) 紧密耦合内存接口,提供快速实时响应。 

4) 丰富的可配置选项,可锁定各种不同的成本与性能点。

5) 通过嵌入式追踪宏单元(EmbeddedTrace Macrocell, ETM),可选配完整的指令及数据轨迹,提高系统能见度。 

 6) 可选安全套件及内建错误侦测功能,有助达到汽车安全级别的ASIL D及SIL 3标准,这意味着Cortex-M7是企业针对汽车。

7) 电子、工业应用、运输及医疗应用等对安全敏感市场的最佳选择。

 8) ARM ConnectedCommunity上的合作伙伴提供最广泛的第三方工具、实时操作系统(RTOS)和支持所有架构的中间件。

 

二、           Cortex-M4

  细数Cortex-M系列六大型男,你来吗?

    ARMCortex?-M4处理器是由ARM专门开发的最新嵌入式处理器,在M3的基础上强化了运算能力,新加了浮点、DSP、并行计算等,用以满足需要有效且易于使用的控制和信号处理功能混合的数字信号控制市场。其高效的信号处理功能与Cortex-M处理器系列的低功耗、低成本和易于使用的优点的组合,旨在满足专门面向电动机控制、汽车、电源管理、嵌入式音频和工业自动化市场的新兴类别的灵活解决方案。

 

特性:

Cortex-M4提供了无可比拟的功能,以将32位控制与领先的数字信号处理技术集成来满足需要很高能效级别的市场。Cortex-M4处理器采用一个扩展的单时钟周期乘法累加(MAC)单元、优化的单指令多数据(SIMD)指令、饱和运算指令和一个可选的单精度浮点单元(FPU)。这些功能以表现ARMCortex-M系列处理器特征的创新技术为基础。包括:

  a) RISC处理器内核:高性能32位CPU、具有确定性的运算、低延迟3阶段管道,可达1.25DMIPS/MHz;

  b) Thumb-2?指令集:16/32位指令的最佳混合、小于8位设备3倍的代码大;

  c) 低功耗模式:集成的睡眠状态支持、多电源域、基于架构的软件控制;

  d) 嵌套矢量中断控制器(NVIC):低延迟、低抖动中断响应、不需要汇编编程、以纯C语言编写的中断服务例程。能完成出色的中断处理;

  e) 工具和RTOS支持:广泛的第三方工具支持、Cortex微控制器软件接口标准(CMSIS)、最大限度地增加软件成果重用。

  f) CoreSight调试和跟踪:JTAG或2针串行线调试(SWD)连接、支持多处理器、支持实时跟踪。此外,该处理器还提供了一个可选的内存保护单元(MPU),提供低成本的调试/追踪功能和集成的休眠状态,以增加灵活性。嵌入式开发者将得以快速设计并推出令人瞩目的终端产品,具备最多的功能以及最低的功耗和尺寸。

 

 

三、           Cortex-M3

 

细数Cortex-M系列六大型男,你来吗?

Cortex-M3是一个32位处理器内核。内部的数据路径是32位的,寄存器是32位的,存储器接口也是32位的。CM3采用了哈佛结构,拥有独立的指令总线和数据总线,可以让取指与数据访问并行不悖。这样一来数据访问不再占用指令总线,从而提升了性能。为实现这个特性,CM3内部含有好几条总线接口,每条都为自己的应用场合优化过,并且它们可以并行工作。但是另一方面,指令总线和数据总线共享同一个存储器空间(一个统一的存储器系统)。换句话说,不是因为有两条总线,可寻址空间就变成8GB了。

 

特性:

 

1 、高性能

1) 许多指令都是单周期的——包括乘法相关指令。并且从整体性能上,Cortex-M3比得过绝大多数其它的架构。

2)指令总线和数据总线被分开,取值和访内可以并行不悖

3)Thumb-2的到来告别了状态切换的旧世代,再也不需要花时间来切换于32位ARM状态和16位Thumb状态之间了。这简化了软件开发和代码维护,使产品面市更快。

4) Thumb-2指令集为编程带来了更多的灵活性。许多数据操作现在能用更短的代码搞定,这意味着Cortex-M3的代码密度更高,也就对存储器的需求更少。

5)取指都按32位处理。同一周期最多可以取出两条指令,留下了更多的带宽给数据传输。

6) Cortex-M3的设计允许单片机高频运行(现代半导体制造技术能保证100MHz以上的速度)。即使在相同的速度下运行,CM3的每指令周期数(CPI)也更低,于是同样的MHz下可以做更多的工作;另一方面,也使同一个应用在CM3上需要更低的主频。

 

2先进的中断处理功能

内建的嵌套向量中断控制器支持多达240条外部中断输入。向量化的中断功能剧烈地缩短了中断延迟,因为不再需要软件去判断中断源。中断的嵌套也是在硬件水平上实现的,不需要软件代码来实现。NVIC支持对每一路中断设置不同的优先级,使得中断管理极富弹性。最粗线条的实现也至少要支持8级优先级,而且还能动态地被修改。

 

3 、低功耗

 Cortex-M3需要的逻辑门数少,所以先天就适合低功耗要求的应用(功率低于0.19mW/MHz)在内核水平上支持节能模式(SLEEPING和SLEEPDEEP位)。通过使用“等待中断指令(WFI)”和“等待事件指令(WFE)”,内核可以进入睡眠模式,并且以不同的方式唤醒。另外,模块的时钟是尽可能地分开供应的,所以在睡眠时可以把CM3的大多数“官能团”给停掉。

四、           Cortex-M1

 

  细数Cortex-M系列六大型男,你来吗?

ARM Cortex?-M1 处理器是第一个专为 FPGA 中的实现设计的 ARM 处理器。Cortex-M1 处理器面向所有主要 FPGA 设备并包括对领先的 FPGA 综合工具的支持,允许设计者为每个项目选择最佳实现。Cortex-M1 处理器使 OEM 能够通过在跨 FPGA、ASIC 和 ASSP 的多个项目之间合理地利用软件和工具投资来节省大量成本,此外还能够通过使用行业标准处理器实现更大的供应商独立性。

 

特性:

   1)全部使用标准处理器架构;

   2)供应商独立性 – Cortex-M1 处理器支持所有主要 FPGA 供应商;

   3)软件和工具可以在 FPGA 和 ASIC/ASSP 之间重用;

   4)从 FPGA 到 ASIC 的简单迁移路径;

   5)受最大的体系 – ARM Connected Community 的支持;

   6)易于将 Cortex-M1 处理器设计迁移到更新和最有效的 FPGA;

   7)受可提供不同性能点解决方案的强大 ARM 处理器路线图的支持;

   8)ARM 架构已在数十亿 ARMPowered? 设备中经过验证。

 

 

五、           Cortex-M0

  细数Cortex-M系列六大型男,你来吗?

 

Cortex-M0Cortex-M家族中的M0系列。最大特点是低功耗的设计。Cortex-M032位、3级流水线RISC处理器,其核心仍为冯.诺依曼结构,是指令和数据共享同一总线的架构。作为新一代的处理器,Cortex-M0的设计进行了许多的改革与创新,如系统存储器地址映像(system address map)、改善效率并增强确定性的嵌套向量中断系统(NVIC)与不可屏蔽中断(NMI)、全新的硬件除错单元等等,都带给了使用者全新的体验和更便利、更有效率的操作。

CortexM0其核心架构为ARMv6M,其运算能力可以达到0.9 DMIPS/MHz,而与其他的16位与8位处理器相比,由于CortexM0的运算性能大幅提高,所以在同样任务的执行上CortexM0只需较低的运行速度,而大幅降低了整体的动态功耗。 

 

特性:

1)能耗效率

CortexM0的运行效率很高(0.9DMIPS/MHz),能在较少的周期里完成一项任务。这意味着CortexM0可以在大部分的时间里处于休眠状态,消耗很少的能量,具有良好的能耗效率。同样较小的逻辑门数也降低了待机电流。而高效的中断控制器(NVIC)需要很小的中断开销。

 

2)代码密度

Cortex-M0基于Thumb-2的指令集,比用8位或者16位架构实现的代码还要少,因此用户可以选择具有较小Flash空间的芯片。可以降低系统功耗。

 

3)易于使用

Cortex-M0适用于C语言编程,并且被许多编译器支持。可以用C语言直接编程中断例程,而无需使用汇编语言。同时Cortex-M0还被多种开发工具支持。包括很多开源的嵌入式操作系统同样支持Cortex-M0。

 

六、           Cortex-M0+

细数Cortex-M系列六大型男,你来吗?

    Cortex-M0+基于32位ARMv6内核架构,支持Thumb/Thumb-2子集ISA,单核心,采用低成本的90nm LP工艺制造,核心面积区区0.04平方毫米,每MHz单位频率消耗的电流、功耗分别仅有9μA、11μW,是当今任何8/16位微处理器的大约三分之一,而性能上又比它们高出许多(1.77CoreMark/MHz、0.93DMIPS/MHz),这也是古老的8/16位系统升级的好机会。

  从命名上就可以看出,Cortex-M0+来源于Cortex-M0,后者已经得到了领先半导体厂商的50多份授权,同时加入了多项全新设计的特性,包括加速GPIO和外围设备访问的单循环IO、改进调试和追踪能力、减少每指令循环(IPC)数量和改进Flash访问的两级流水线、更是纳入的节能降耗技术等等。

      Cortex-M0+继续支持简单易用的C语言友好编程模式,兼容现有的Cortex-M0处理器工具和RTOS,也享受Cortex-M整个家族生态系统和软件兼容性的完整支持,可以轻松升级到更高性能的Cortex-M3/4处理器。

 

来源:上海亿道电子技术有限公司

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年9月18日
下一篇 2016年9月18日

相关推荐

发表回复

登录后才能评论