由于之前一直用Cortex-M3内核,在做运动控制方面项目时,比如PID控制精度、矢量计算等等、碰到了浮点运算带来的一些列问题,为此特定查了一些资料相关资料,发现STM32F2xx系列教之1xx有不少功能提升,而M4内核相对来说在浮点运算方面有了不少改进,较之DSP来说,成本方面确有一定优势。整理如下:
ARM Cortex-M4 规范
ARM Cortex-M4 功能 | |
---|---|
ISA 支持 | |
DSP 扩展 | 单周期 16、32 位 MAC 单周期双 16 位 MAC 8、16 位 SIMD 运算 硬件除法(2-12 个周期) |
浮点单元 | 单精度浮点单元 符合 IEEE 754 |
管道 | 3 阶段 + 分支预测 |
性能效率 | 2.19 CoreMark/MHz |
内存保护 | 带有子区域和后台区域的可选 8 区域 MPU |
中断 | 不可屏蔽的中断 (NMI) + 1 到 240 个物理中断 |
中断优先级 | 8 到 256 个优先级 |
唤醒中断控制器 | 最多 240 个唤醒中断 |
睡眠模式 | 集成的 WFI 和 WFE 指令和“退出时睡眠”功能。 睡眠和深度睡眠信号。 随 ARM 电源管理工具包提供的可选保留模式 |
位操作 | 集成的指令和位段 |
调试 | 可选 JTAG 和串行线调试端口。最多 8 个断点和 4 个检测点。 |
跟踪 | 可选指令跟踪 (ETM)、数据跟踪 (DWT) 和测量跟踪 (ITM) |
ARM Cortex-M4 实现数据* | |||
---|---|---|---|
180ULL (7 轨,通常为 1.8v,25C) | 90LP (7 轨,通常为 1.2v,25C) | 40G (9 轨,通常为 0.9v,25C) | |
动态功耗 | 157 µW/MHz | 33 µW/MHz | 8 |
平面规划面积 | 0.56 mm2 | 0.17 mm2 | 0.04 mm2 |
* 基本可用配置包括 DSP 扩展、1 IRQ + NMI,不包括 ETM、MPU、FPU
M4和M3的最大优势还是在其增加了FPU强大的浮点运算功能
摘录一片文章介绍Cortex-M4刚发布时的新闻,星期二, 02/23/2010
《ARM发布业内领先的Cortex-M4处理器,用于高性能数字信号控制》
ARM公司(伦敦证交所:ARM;纳斯达克:ARMH)今天发布了创新的Cortex™-M4处理器,为数字信号控制(DSC)应用提供高效的解决方案。同时,ARM公司也继续保持了针对先进的微控制器(MCU)应用的ARM® Cortex-M系列处理器在业界的领导地位。
Cortex-M4处理器完美融合了高效的信号处理能力以及Cortex-M 系列处理器诸多无可比拟的优势,包括低功耗、低成本和易于使用,旨在满足那些新兴的、灵活多变的解决方案的需求。这些解决方案的目标应用包括电机控制、汽车电子、电源管理、嵌入式音频以及工业自动化。
Cortex-M4处理器具有一个单时钟周期乘法累加(MAC)单元、优化的单指令多数据(SIMD)指令、饱和运算指令和一个可选的单精度浮点运算单元(FPU)。这些数字信号处理功能基于一系列ARM Cortex-M系列处理器所采用的创新技术,包括:高性能32位内核,可达1.25DMIPS/MHz;Thumb®-2指令集,提供最佳的代码密度;和一个嵌套向量中断控制器,能完成出色的中断处理。此外,该处理器还提供了一个可选的内存保护单元(MPU),提供低成本的调试/追踪功能和集成的休眠状态,以增加灵活性。嵌入式开发者将得以快速设计并推出令人瞩目的终端产品,具备最多的功能以及最低的功耗和尺寸。
为基于DSP技术的市场提供追踪服务的领先市场调研公司Forward Concepts总裁Will Strauss表示:“嵌入式市场对于信号处理的要求已经从专用处理器转向了混合微控制器。这些产品能够提供出色的数字信号控制,同时又能为有效地进行其它处理操作提供灵活性。ARM的合作伙伴将从引入Cortex-M4处理器中获益,因为Cortex-M4不仅具备了最佳的数字信号控制操作所需的所有功能,还结合了深受市场认可的Cortex-M系列处理器的低功耗特点。”
针对那些定位于高性能MCU器件的合作伙伴,ARM同样提供在领先的代工厂工艺上的物理IP解决方案。为实现下一代MCU器件所提出的150MHz目标频率,ARM针对65nm GLOBALFOUNDRIES 65LPe工艺的物理IP能够仅以65000门和低于40µW/MHz的动态功耗完成Cortex-M4处理器的标准实现。如果添入FPU,也仅需增加25000门电路,从而能够以业界领先的尺寸完成该处理器的高性能实现。
Cortex-M4处理器得到Cortex微控制器软件接口标准(CMSIS)的完全支持。CMSIS是独立于供应商的Cortex-M处理器系列硬件抽象层,为外设和实时操作系统提供了一致的、简单的软件接口。
ARM目前正在对CMSIS进行扩展,将加入支持Cortex-M4扩展指令集的 C编译器;同时,ARM也在开发一个优化库,方便MCU用户开发信号处理程序。该优化库将包含数字滤波算法和其他基本功能,例如数学计算、三角计算和控制功能。数字滤波算法也将可以与滤波器设计工具和设计工具包(例如MATLAB和LabVIEW)配套使用。
Cortex-M4处理器已被五家领先的MCU半导体公司授权获得,其中包括FPU恩智浦、意法半导体和德州仪器 。
恩智浦半导体微控制器产品线总经理Geoff Lees表示:“在我们的ARM Cortex-M产品线中加入ARM Cortex-M4处理器,是对我们原有的基于Cortex-M3和Cortex-M0处理器的产品系列的一个补充,将使我们能够为MCU市场提供端到端的解决方案。Cortex-M4处理器的推出将促成新一代微控制器的诞生,它将能满足信号处理市场对高性能、低成本的需求。”
意法半导体微控制器部门32位MCU市场经理Semir Haddad表示:“Cortex-M4处理器将Cortex-M内核的应用扩展到了需要大量数学计算的应用。基于Cortex-M4处理器的产品线将完善我们的STM32微控制器产品线,从而使得我们的客户在得益于STM32的可扩展性特点的同时,还能获得增强的信号处理能力。”
德州仪器全球Stellaris® MCU营销总监Jean Anne Booth表示:“Cortex M4处理器使得PID回路和上层运动控制能够更好、更稳定地工作,提高了开发者通过高效电机控制实现节能的能力。同时,Cortex M4处理器也为使用如LabVIEW和Matlab/Simulink等元语言工具的广大非程序员打开了通往ARM MCU世界的大门。此外,Cortex M4处理器还提供原生C/C++应用的支持,使得在深度嵌入式系统中也能采用在工作站、手机和一般嵌入式处理器中所采用的相同算法,从而达到节省时间和降低风险的目的。”
ARM处理器部门营销副总裁Eric Schorn表示:“在过去一段时间内,ARM曾经在处理器中添加了DSP功能,并在应用市场中取得了巨大的成功。但这是我们第一次在针对深度嵌入式设备设计的处理器中采用数字信号控制功能。Cortex M4处理器的设计是为了满足众多嵌入式应用对信号处理的日益增长的需求,这些应用包括电机控制、汽车电子、工业自动化、电源管理和音频应用。”
再来看一篇《Cortex-M4替代Cortex-M3即将上演》2011年12月08日:众多厂商纷纷推出Cortex-M4微控制器开始抢占先机,Freescale早在去年中推出基于ARM Cortex-M4内核的全新Kinetis 系列,ST在今年9月推出号称最强性能的Cortex-M4系列产品,主频高达168MHz。而NXP更是推出了LPC4000系列的M4+M0双核架构,为DSP与MCU应用提供单一架构。但双核应用会不会成为趋势,M4本身已提供MCU和部分DSP功能,额外的M0会不会增加成本预算,还有待市场验证。
中国,2010年11月30日
- 优异性能、1.65V电源支持、音频级架构及WLCSP64小封装等,适用于移动和消费电子应用;
- 丰富的外设接口、加密功能、优异的处理性能、先进的定时器以及大容量闪存和SRAM存储器,适用于工业和医疗应用。
- 在120MHz时处理速度150 DMIPS(Dhrystone MIPS);
- CoreMark™测试结果证明STM32 F-2系列是拥有最快处理性能的Cortex-M3微控制器,当以120MHz速度从嵌入式闪存执行代码时可达到1.905 CoreMark/MHz(在120MHz达到228.60 CoreMark);
- 7层多路AHB总线矩阵,即便在多个高速外设同时工作时,架构也能连续地高效运行;
- 在总矩阵上配置两个独立的SRAM存储器,可以从不同的总线主设备同时访问存储器;
- 16条 DMA通道
- CoreMark测试结果证明,当从闪存执行代码时,动态功耗为 188uA/MHz ,相当于在120MHz时消耗 22.5mA电流;
- 宽电源电压范围,进一步降低功耗;WLCSP64封装1.65V至3.6V,其它四种封装1.8V至3.6V;
- 先进的低功耗模式和VBAT支持功能,实时时钟(RTC)开启时的功耗小于1uA,备用电池供电的4KB SRAM存储保护功能开启时的功耗小于 1uA 。
- 音频级架构,内置先进锁相环(PLL)和数据同步电路的I2S和USB接口;
- 528字节一次性编程(OTP)存储器,可存储重要数据,如以太网MAC地址或密钥;
- CMOS成像传感器并行接口;
- 设备互连接口:2个USB 全速 OTG接口(其中一个通过专用DMA支持USB高速)、具有IEEE1588 PTP硬件支持的以太网 10/100 MAC层接口、 2个CAN 2.0B active、可支持Compact Flash、SRAM、PSRAM、NOR闪存、NAND闪存的60MHz外部存储器接口以及液晶显示器;
- 电机控制:2个电机控制定时器、12个通用定时器、2个32位定时器、3个每秒200万次采样速率的12位模数转换器和1个12位数模转换器;
- 加密功能:加密/哈什加密处理器和模拟真随机数发生器以及加密模块包括AES 128、192、256、Triple DES、HASH(MD5, SHA-1)硬件加速。
- LQFP64、LQFP100、LQFP144、UFBGA176和用于电路板空间有限的WLCSP64(小于4 x 4mm)。
- STM32F205提供128 KB至1 MB的闪存、最高128KB的SRAM、USB On-The-Go(OTG)全速/高速接口以及LQFP64、LQFP100、LQFP144或WLCSP64封装选项。除主要外设外,该系列还整合多个定时器、模数转换器、数模转换器、串行接口、2个CAN2.0B端口、液晶显示器接口、可支持Compact Flash、SRAM、PSRAM、NOR闪存和NAND闪存的60MHz外部存储器接口、实时时钟(RTC)、CRC计算单元以及模拟真随机数发生器。
- STM32F207
整合了全速USB OTG接口、以太网10/100 MAC以及8-14位相机传感器并行接口。其中以太网MAC支持MII和RMII接口协议,硬件支持 IEEE1588精确时间协议;相机并行接口在27MHz下支持27 MB/s,在48MHz频率下支持48 MB/s,可以连接一个CMOS相机传感器。STM32F207采用LQFP100、LQFP144和UFBGA176封装。 - STM32F215和STM32F217内置加密安全处理器,提供AES 128/192/256、Triple DES和HASH(MD5, SHA-1)协议的硬件加速功能。拥有512 KB和1 MB两种闪存容量选择。