一、ARM公司
二、Cortex内核分类及特征
三、Cortex-M3/4/7介绍
四、总结
ARM官网
ARM开发者官网
CoreMark分数
一、ARM公司
ARM架构特点
ARM(Advanced RISC Machine)架构是一种RISC(Reduced Instruction Set Computing)架构,具有以下特点:
-
精简指令集: ARM架构采用了RISC设计哲学,使其指令集相对简单,每条指令执行的操作较为有限,从而提高指令的执行效率。
-
固定指令长度: ARM指令的长度通常是定长的,这简化了指令解码的硬件设计,有利于提高流水线的效率。
-
低功耗设计: ARM处理器设计注重功耗效率,适用于移动设备和嵌入式系统。这使得ARM架构在便携设备、物联网(IoT)和低功耗需求的应用中得到广泛应用。
-
多层次流水线: ARM处理器通常具有多级流水线,使得多条指令可以在同一时钟周期内同时执行,提高了整体性能。
-
架构可移植性: ARM架构设计为可移植的,允许设计不同规模和性能的处理器,适用于广泛的应用领域。
-
多核处理: ARM架构广泛支持多核处理器,从双核到多核的设计,适应了日益增长的并行计算需求。
-
灵活的寻址模式: ARM架构提供了灵活的寻址模式,允许对多个内存位置进行操作,同时支持寻址模式的变化。
-
Thumb指令集: ARM架构引入了Thumb指令集,这是一种压缩指令集,可以减小程序的存储空间,适用于资源受限的环境。
-
广泛应用领域: ARM架构在移动设备(如智能手机、平板电脑)、嵌入式系统(如嵌入式控制器、物联网设备)、网络设备和汽车电子等领域中得到广泛应用。
总体而言,ARM架构的设计理念是面向功耗效率和灵活性的,使得它成为各种嵌入式系统和移动计算设备的理想选择。
二、Cortex内核分类及特征
体系结构(ARM架构版本)与其对应的ARM处理器内核
Cortex-A(Application)
Cortex-A系列是ARM公司推出的一系列面向应用处理器的处理器核心。这些处理器核心被设计用于高性能计算和处理复杂任务的应用,比如智能手机、平板电脑、个人计算机、服务器以及其他需要高性能计算的设备。以下是一些Cortex-A系列的特点和应用:
-
高性能计算: Cortex-A系列处理器核心旨在提供高性能计算能力,适用于复杂的应用场景。这使得它们在智能手机、平板电脑和其他计算密集型设备上表现出色。
-
多核处理: Cortex-A系列支持多核设计,这允许设备集成多个处理器核心以提高整体性能和并行处理能力。
-
虚拟化支持: 这些处理器核心通常提供硬件虚拟化支持,使得在同一硬件上运行多个操作系统或虚拟机成为可能。
-
大核小核设计: 部分Cortex-A系列处理器采用了big.LITTLE架构,即结合了高性能的大核和低功耗的小核。这种设计在平衡性能和功耗之间取得了较好的平衡,对于移动设备等场景非常有用。
-
NEON SIMD指令集: Cortex-A系列支持NEON技术,这是一种单指令多数据(SIMD)扩展指令集,用于加速多媒体和信号处理应用。
-
广泛的应用领域: Cortex-A系列处理器广泛应用于各种设备,包括智能手机、平板电脑、个人计算机、网络设备、嵌入式系统和服务器等。
-
安全性: 最新的Cortex-A系列处理器在硬件层面提供了一些安全特性,以帮助保护设备免受恶意软件和攻击。
举例来说,Cortex-A72、Cortex-A73、Cortex-A75、Cortex-A76等都是Cortex-A系列中的一些代表性处理器核心。这些处理器核心的特性和性能取决于具体的型号和架构版本。
Cortex-R(Real-time)
Cortex-R系列是ARM公司推出的一系列专为实时(real-time)应用而设计的处理器核心。这些核心的设计目标是满足对实时性能、可靠性和可预测性的需求,使它们适用于一系列实时应用,包括通信基站、汽车控制系统、嵌入式系统等。以下是Cortex-R系列的一些特点:
-
实时性能: Cortex-R系列处理器核心专注于提供高实时性能,能够在短时间内响应特定的任务。这使得它们适用于对响应时间有严格要求的应用,如通信基站和实时控制系统。
-
低延迟: 这些核心的设计注重降低指令执行的延迟,确保在实时系统中能够及时响应外部事件。
-
硬实时能力: Cortex-R系列支持硬实时(hard real-time)要求,即能够保证在预定的时间内完成任务,而不受外部因素的干扰。
-
高可靠性: 这些处理器核心的设计考虑了高可靠性的要求,以满足一些关键应用领域,如汽车电子控制系统。
-
嵌入式系统: Cortex-R系列通常用于嵌入式系统,包括汽车电子、网络处理、存储控制器等领域。
-
嵌入式特性: 与Cortex-A系列相比,Cortex-R系列更注重在嵌入式系统中的集成和可靠性,而不一定追求高度的通用性。
-
多核设计: 一些Cortex-R系列处理器支持多核设计,以提供更高的性能和冗余。
-
向量处理器支持: 一些最新的Cortex-R系列处理器还提供向量处理单元,用于加速一些计算密集型任务。
举例来说,Cortex-R4、Cortex-R5、Cortex-R7是Cortex-R系列中的一些代表性处理器核心。这些核心在实时嵌入式应用中发挥着重要的作用,提供了高性能和可靠性。
Cortex-M(Microcontroller)
Cortex-M系列是ARM公司专为微控制器(Microcontroller)设计的处理器核心系列。这些核心旨在提供低功耗、高效能的解决方案,广泛应用于嵌入式系统,包括物联网设备、传感器、工业控制、医疗设备等。以下是Cortex-M系列的一些特点:
-
低功耗设计: Cortex-M系列处理器核心被设计为低功耗架构,适用于移动电源和电池供电的嵌入式系统。
-
低成本: 这些核心的设计注重成本效益,使得它们适用于大规模的嵌入式系统部署,例如物联网中的大量设备。
-
精简指令集: 采用RISC架构,指令集相对简单,使得处理器核心能够以更低的时钟频率执行指令,从而降低功耗。
-
小尺寸: Cortex-M系列处理器核心的面积相对较小,适用于有限的存储和资源的嵌入式系统。
-
实时性能: 这些核心支持实时性能要求,使其适用于需要快速响应的嵌入式系统,例如传感器和实时控制应用。
-
多核设计: 最新的Cortex-M系列中一些处理器核心支持多核设计,以提供更高的性能和冗余。
-
内置外设和功能: Cortex-M系列通常与丰富的外设和功能集成,包括通用输入输出(GPIO)、定时器、通信接口(例如UART、SPI、I2C)、模拟数字转换器(ADC)等。
-
全球采用率高: Cortex-M系列是全球使用最广泛的嵌入式微控制器核心之一,得到了许多微控制器制造商的采用。
举例来说,Cortex-M0、Cortex-M3、Cortex-M4、Cortex-M7是Cortex-M系列中的一些代表性处理器核心。它们在各种嵌入式应用中提供了高性能和低功耗的解决方案。
三、Cortex-M3/4/7介绍
ARM Cortex-M3/4/7
CPU Processors
Cortex-M3/4/7 详细参数
DMIPS/MHz
DMIPS/MHz(Dhrystone MIPS per Megahertz)是一个性能衡量单位,通常用于评估处理器的性能。DMIPS表示每秒执行的Dhrystone百万条指令数,而MHz表示处理器的时钟频率。
Dhrystone是一种用于衡量计算机性能的基准测试程序。DMIPS/MHz的值表示在每秒内每兆赫兹时钟频率下,处理器能够执行多少Dhrystone百万条指令。这个值是一个相对的性能指标,用于比较不同体系结构或处理器之间的性能。
一般而言,DMIPS/MHz的值越高,表示在相同时钟频率下,处理器性能越好。然而,需要注意的是,DMIPS/MHz并不是唯一用于评估处理器性能的标准,因为不同的应用场景可能对处理器的性能有不同的要求。
在实际应用中,还需要考虑其他因素,如内存访问效率、缓存性能、指令集架构等。因此,DMIPS/MHz只是性能评估的一个方面,不应该作为唯一决定因素。
CoreMark®/MHz*
CoreMark®/MHz是另一种用于评估处理器性能的指标,类似于DMIPS/MHz。CoreMark是一种基准测试程序,旨在测量嵌入式处理器的性能。与DMIPS不同,CoreMark更加现代和面向嵌入式系统。
具体而言,CoreMark是一个由EEMBC(嵌入式微处理器性能基准委员会)开发的基准,用于评估处理器在处理各种常见嵌入式工作负载时的性能。CoreMark的计分方式为每秒执行多少个CoreMark。
因此,CoreMark®/MHz*指标表示在每兆赫兹时钟频率下,处理器能够实现的CoreMark数。与DMIPS/MHz类似,这是一个相对的性能指标,用于比较不同体系结构或处理器之间的性能。
在选择处理器时,除了考虑DMIPS/MHz和CoreMark®/MHz之外,还需要考虑其他因素,如功耗、内存访问效率、硬件加速支持等,以确保选择的处理器适合特定的应用场景。