ARMv7的Cortex系列微处理器技术特点
发布时间:2008/5/27 0:00:00 访问次数:422
引 言
随着嵌入式技术应用领域的不断扩展,对嵌入式系统的要求越来越高,而作为嵌入式系统核心的微处理器也面临日益严竣的挑战。arm公司从成立以来,一直以知识产权(ip,intelligence property)提供者的身份出售知识产权,在32位risc cpu开发领域中不断取得突破,其设计的微处理器结构已经从v3发展到现在的v7。cortex系列处理器是基于armv7架构的,分为cortex-m、cortex-r和cortex-a三类。arm系列微处理器的核心及体系结构如表1所列。
armv7架构是在armv6架构的基础上诞生的。该架构采用了thumb-2技术,它是在arm的thumb代码压缩技术的基础上发展起来的,并且保持了对现存arm解决方案的完整的代码兼容性。thumb-2技术比纯32位代码少使用31%的内存,减小了系统开销。同时能够提供比已有的基于thumb技术的解决方案高出38%的性能。armv7架构还采用了neon技术,将dsp和媒体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3d图形、游戏物理应用以及传统嵌入式控制应用的需求。此外,armv7还支持改良的运行环境,以迎合不断增加的jit(just in time)和dac(dynamicadaptive compilation)技术的使用。
在与早期的arm处理器软件兼容性方面,armv7架构在设计时充分考虑到了。arm cortex-m系列支持thumb-2指令集(thumb指令集的扩展集),可以执行所有已存的为早期处理器编写的代码。通过一个前向的转换方式,为arm cortex-m系列处理器所写的用户代码可以与arm cortex-r系列微处理器完全兼容。armcortex-m系列系统代码(如实时操作系统)可以很容易地移植到基于arm cortex-r系列的系统上。armcortex-a和cortex-r系列处理器还支持arm 32位指令集,向后完全兼容早期的arm处理器,包括从1995年发布的arm7tdmi处理器到2002年发布的armll处理器系列。图1为v5~v7架构的处理器技术比较。由于应用领域的不同,基于v7架构的cortex处理器系列所采用的技术也不相同。
在命名方式上,基于armv7架构的arm处理器已经不再延用过去的数字命名方式,而是冠以cortex的代号。基于v7a的称为"cortex-a系列",基于v7r的称为"cortex-r系列",基于v7m的称为"cortex-m3"。
2 arm cortex-m3处理器技术特点
arm cortex-m3处理器是为存储器和处理器的尺寸对产品成本影响极大的各种应用专门开发设计的,其结构如图2所示。它整合了多种技术,减少使用内存,并在极小的risc内核上提供低功耗和高性能,可实现由以往的代码向32位微控制器的快速移植。arm cortex-m3处理器是使用最少门数的arm cpu,相对于过去的设计大大减小了芯片面积,可减小装置的体积或采用更低成本的工艺进行生产,仅33 000门的内核性能可达1.2dmips/mhz。此外,基本系统外设还具备高度集成化特点,集成了许多紧耦合系统外设,合理利用了芯片空间,使系统满足下一代产品的控制需求。
为微控制器应用而开发的cortex-m3拥有以下性能:
实现单周期flash应用最优化;
准确快速地中断处理,永不超过12周期,仅6周期tail-chaining(末尾连锁);
有低功耗时钟门控(clock cating)的3种睡眠模式;
单周期乘法和乘法累加指令;
arm thumb-2混合的16/32位同有指令集,无模式转换;
包括数据观察点和flash补丁在内的高级调试功能;
原子位操作,在一个单一指令中读取/修改/编写;
1.25 dmips/mhz(与o.9dmips/mhz的arm7和1.1 dmips/mhz
引 言
随着嵌入式技术应用领域的不断扩展,对嵌入式系统的要求越来越高,而作为嵌入式系统核心的微处理器也面临日益严竣的挑战。arm公司从成立以来,一直以知识产权(ip,intelligence property)提供者的身份出售知识产权,在32位risc cpu开发领域中不断取得突破,其设计的微处理器结构已经从v3发展到现在的v7。cortex系列处理器是基于armv7架构的,分为cortex-m、cortex-r和cortex-a三类。arm系列微处理器的核心及体系结构如表1所列。
armv7架构是在armv6架构的基础上诞生的。该架构采用了thumb-2技术,它是在arm的thumb代码压缩技术的基础上发展起来的,并且保持了对现存arm解决方案的完整的代码兼容性。thumb-2技术比纯32位代码少使用31%的内存,减小了系统开销。同时能够提供比已有的基于thumb技术的解决方案高出38%的性能。armv7架构还采用了neon技术,将dsp和媒体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3d图形、游戏物理应用以及传统嵌入式控制应用的需求。此外,armv7还支持改良的运行环境,以迎合不断增加的jit(just in time)和dac(dynamicadaptive compilation)技术的使用。
在与早期的arm处理器软件兼容性方面,armv7架构在设计时充分考虑到了。arm cortex-m系列支持thumb-2指令集(thumb指令集的扩展集),可以执行所有已存的为早期处理器编写的代码。通过一个前向的转换方式,为arm cortex-m系列处理器所写的用户代码可以与arm cortex-r系列微处理器完全兼容。armcortex-m系列系统代码(如实时操作系统)可以很容易地移植到基于arm cortex-r系列的系统上。armcortex-a和cortex-r系列处理器还支持arm 32位指令集,向后完全兼容早期的arm处理器,包括从1995年发布的arm7tdmi处理器到2002年发布的armll处理器系列。图1为v5~v7架构的处理器技术比较。由于应用领域的不同,基于v7架构的cortex处理器系列所采用的技术也不相同。
在命名方式上,基于armv7架构的arm处理器已经不再延用过去的数字命名方式,而是冠以cortex的代号。基于v7a的称为"cortex-a系列",基于v7r的称为"cortex-r系列",基于v7m的称为"cortex-m3"。
2 arm cortex-m3处理器技术特点
arm cortex-m3处理器是为存储器和处理器的尺寸对产品成本影响极大的各种应用专门开发设计的,其结构如图2所示。它整合了多种技术,减少使用内存,并在极小的risc内核上提供低功耗和高性能,可实现由以往的代码向32位微控制器的快速移植。arm cortex-m3处理器是使用最少门数的arm cpu,相对于过去的设计大大减小了芯片面积,可减小装置的体积或采用更低成本的工艺进行生产,仅33 000门的内核性能可达1.2dmips/mhz。此外,基本系统外设还具备高度集成化特点,集成了许多紧耦合系统外设,合理利用了芯片空间,使系统满足下一代产品的控制需求。
为微控制器应用而开发的cortex-m3拥有以下性能:
实现单周期flash应用最优化;
准确快速地中断处理,永不超过12周期,仅6周期tail-chaining(末尾连锁);
有低功耗时钟门控(clock cating)的3种睡眠模式;
单周期乘法和乘法累加指令;
arm thumb-2混合的16/32位同有指令集,无模式转换;
包括数据观察点和flash补丁在内的高级调试功能;
原子位操作,在一个单一指令中读取/修改/编写;
1.25 dmips/mhz(与o.9dmips/mhz的arm7和1.1 dmips/mhz