首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Cortex-M3简介

Cortex-M3简介

关键词: Cortex-M3
Cortex-M3是一个32位的核,在传统的单片机领域中,有一些不同于通用32位CPU应用的要求。谭军举例说,在工控领域,用户要求具有更快的中断速度,Cortex-M3采用了Tail-Chaining中断技术,完全基于硬件进行中断处理,最多可减少12个时钟周期数,在实际应用中可减少70% 中断。

概述

单片机的另外一个特点是调试工具非常便宜,不象ARM仿真器动辄几千上万。针对这个特点,Cortex-M3采用了新型的单线调试(Single Wire)技术,专门拿出一个引脚来做调试,从而节约了大笔的调试工具费用。同时,Cortex-M3中还集成了大部分存储器控制器,这样工程师可以直接在MCU外连接Flash,降低了设计难度和应用障碍。

ARM Cortex-M3处理器结合了多种突破性技术,令芯片供应商提供超低费用的芯片,仅33000门的内核性能可达1.2DMIPS/MHz。该处理器还集成了许多紧耦合系统外设,令系统能满足下一代产品的控制需求。ARM公司希望Cortex-M3核的推出,能帮助单片机厂商。

Cortex的优势应该在于低功耗、低成本、高性能3者(或2者)的结合。

Cortex如果能做到 合理的低功耗(肯定要比Arm7 & Arm9要低,但不大可能比430、PICAVR低) + 合理的高性能(10~50MIPS是比较可能出现的范围) + 适当的低成本(1~5$应该不会奇怪)。

简单的低成本不大可能比典型的8位MCU低。对于已经有8位MCU的厂商来说,比如 Philips、AtmelFreescaleMicrochip还有ST和Silocon Lab,不大可能用Cortex来打自己的8位MCU。对于没有8位MCU的厂商来说,当然是另外一回事,但他们在国内进行推广的实力在短期内还不够。

对于已经有32位ARM的厂商来说,比如Philips、Atmel、ST,又不大可能用 Cortex来打自己的Arm7/9,对他们来说,比较合理的定位把Cortex与Arm7/9错开,即<40MIPS的性能+低于Arm7的价格,当然功耗也会更低些;当然这样做的结果很可能是,断了16位MCU的后路。

对于仍然在推广16位MCU的厂商来说,比如Freescal、Microchip,处境比较尴尬,因为Cortex基本上可以完全替代16位MCU。

所以,未来的1~2年,来自新厂商的Cortex比较值得期待-包括国内的供应商;对于已有32位ARM的厂商,情况比较有趣;对于16位MCU的厂商,反应比较有意思。

编程模式

Cortex-M3处理器采用ARMv7-M架构,它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架构,Cortex-M3处理器不能执行ARM指令集。

Thumb-2在Thumb指令集架构(ISA)上进行了大量的改进,它与Thumb相比,具有更高的代码密度并提供16/32位指令的更高性能。

关于工作模式

Cortex-M3处理器支持2种工作模式:线程模式和处理模式。在复位时处理器进入“线程模式”,异常返回时也会进入该模式,特权和用户(非特权)模式代码能够在“线程模式”下运行。

出现异常模式时处理器进入“处理模式”,在处理模式下,所有代码都是特权访问的。

关于工作状态

Coretx-M3处理器有2种工作状态。

Thumb状态:这是16位和32位“半字对齐”的Thumb和Thumb-2指令的执行状态。

调试状态:处理器停止并进行调试,进入该状态。

开发工具

Keil ULINK仿真器

对客户来说用什么技术、芯片不是主要的。主要的是能否满足要求。高性价比、开发门槛底、易于使用才是硬道理。Cortex M3从理论上来说是高性价比。但目前已有的芯片的功能太少。Cortex M系列在处理能力基本与ARM7同,主要是成本低,功耗小。如果周立功自己来做加上丰富的外设,如UART/USB/MAC以及无线通讯等功能,加上 FLASH、RAM这样的SOC可以替换现在的许多应用,但这样的话不知道什么时候可以看到成品。内核是好,外设也是很重要的。


返回列表