欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

STM32嵌入式系统开发实战指南:深入理解Cortex-M系列处理器技术特性

最编程 2024-08-04 20:48:37
...

ARM Cortex-M3是一种基于ARMv7体系结构的最新ARM嵌入式内核,它采用哈佛结构,使用分离的指令和数据总线(与冯?诺依曼结构的数据和指令共用一条总线相比,双总线架构使吞吐量得到有效提升)。除了使用哈佛结构,Cortex-M3 还具有其他显著的优点:具有更小的基础内核、价格更低、速度更快。与内核集成在一起的是一些系统外设,如中断控制器、总线矩阵、调试功能模块,而这些外设通常都是由芯片制造商增加的。Cortex-M3 还集成了睡眠模式和可选的完整八区域存储器保护单元。
Cortex-M3旨在向专业嵌入式市场提供低成本、低功耗的芯片,主要应用于汽车和无线通信领域。与之前其他ARM内核一样,ARM公司将内该设计授权给各个制造商来开发具体的芯片。迄今为止,已经有多家芯片制造商开始生产基于Cortex-M3内核的微控制器,如意法半导体、流明诺瑞(现已被德州仪器收购)、恩智浦等。
Cortex-M3处理器是使用最少门数的ARM CPU,相对于过去的产品大大减小了芯片面积,可减小装置的体积或采用更低成本的工艺进行生产,仅33 000门的内核性能可达l.2 DMIPS/MHz。此外,基本系统外设还具备高度集成化特点,集成了许多紧耦合系统外设,合理利用了芯片空间,使系统满足下一代产品的控制需求。总体来讲,ARM Cortex-M3处理器整合了多种技术,减少对内存的依赖,RISC内核在降低功耗的基础上提供出色的性能,可实现由以往的代码向32位微控制器的快速移植,是专为存储器和处理器的尺寸对产品成本影响极大的各种应用开发设计的。
在指令集上,Cortex-M3只支持最新的 Thumb-2指令集。这种设计的优势在于:
避免状态切换带来的额外开销;
Thumb-2指令集专门面向C语言设计,对硬件除法以及本地位域操作更为方便和高效;
允许用户在C代码层面维护和修改应用程序,易于重用;
具有调用汇编代码的功能。
综合以上这些优势,将更易于开发新产品,缩短上市时间。
Cortex-M3处理器结合了执行Thumb-2指令集的32位哈佛体系结构和系统外设,包括Nested Vectored Interrupt Controller和Arbiter总线。该技术方案在测试和实例应用中表现出较高的性能:在台机电180 nm工艺下,芯片性能达1.2 DMIPS/MHz,时钟频率高达l00 MHz。Cortex-M3处理器还实现了末尾连锁(Tail-Chaining)中断技术。该技术是一项完全基于硬件的中断处理技术,最多可减少12个时钟周期,在实际应用中可减少70%中断。并且推出了新的单线调试技术,避免使用多引脚进行JTAG调试,并全面支持RealView编译器和RealView调试产品。RealView工具向设计者提供模拟、创建虚拟模型、编译软件、调试、验证和测试基于ARMv7体系结构的系统等功能,目前,以Cortex-M4为内核的微控制器也已面市,性能较Cortex-M3有较大幅度的提升,图1.3为Cortex-M系列处理器的发展沿革及性能对比。

image

为微控制器应用而开发的Cortex-M3拥有以下性能:
实现单周期Flash应用最优化;
准确快速地中断处理,永不超过12个时钟周期,仅6个时钟周期的末尾连锁中断技术;
有低功耗时钟门控(Clock Gating)的3种睡眠模式;
单周期乘法和乘法累加指令;
ARM Thumb-2指令集混合的16/32位固有指令集,无模式转换;
包括数据观察点和Flash补丁在内的高级调试功能;
原子位操作,在一个单一指令中读取/修改/编写;
1.25 DMIPS/MHz(与0.9 DMIPS/MHz的ARM7和1.1 DMIPS/MHz的ARM9相比)。