首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
8/16位MCU应用升级成32位将会怎样?
来源:本站整理  作者:佚名  2011-03-14 21:50:47



  中断处理

  微控制器的性能不仅要看执行速度,中断处理也一个重要方面。中断性能一般通过延迟时间和抖动(jitter)体现。延迟是指从中断事件产生到进入中断服务程序的时间,抖动用以描述延迟的变化。

   Cortex - M0通过将中断控制器和内核紧密耦合,最大程度缩短了延迟时间。最高优先级中断延迟时间固定为16个时钟周期。中断控制器最多可支持32个不同的中断源,包含一个非屏蔽中断输入。LPC1100对各种中断事件提供了专用中断向量,任何中断都会自动分配一个专用中断服务程序(ISR, Interupt ServICe Routine),无须软件处理。

  为了缩短嵌套中断的延迟时间,LPC1100采用了一种集成机制,如果高优先级中断在低优先级中断进入服务程序前到达,可避免重新堆栈。此外,LPC1100还支持尾链功能(tail chaining),通过叠合异常出栈顺序以及随后出现的异常进栈顺序可直接进入ISR,缩短延迟时间。

  系统成本

  影响系统总成本有几个方面的因素,对于小型系统,内核和内存所占比重最大。

  内核尺寸:Cortex-M0内核专门针对低成本应用开发,主要面向以往的8/16位小型微控制器架构市场。Cortex-M0内核的尺寸仅为 Cortex-M3的1/4,参见图6。对于外设较少、Flash空间有限的小型系统,较小的内核可以减少芯片的整体尺寸。Cortex-M0逻辑门数量达到了最经典的8位内核水平,却带来了更出色的处理能力,并为更强大的Cortex-M系列处理器提供向上兼容性。

Cortex-M0内核尺寸

图6 Cortex-M0内核尺寸

  闪存占用量小:储存应用程序代码所需的闪存尺寸是影响系统总成本的另一个重要因素。考虑到32位指令比8位指令性能更强,并且能一次代替多条8位指令,因此可以假设应用代码尺寸基本相同(不包括常数表)。不过,通过输入LPC1100的8位代码的实际测试结果看,应用代码尺寸要小很多,甚至可以达到50%以下。

  ARM Cortex-M0执行 Thumb 指令集,包括少量使用Thumb-2技术的32位指令,参见图7。Thumb指令集是ARM Cortex-M3和ARM Cortex-M4支持的指令集的子集,并与之二进制编码向上兼容。

  将 ARM7TDMI 的16位Thumb指令和部分Thumb-2功能强大的32位指令结合在一起使用,可以提高代码密度。编译器会选择是使用16位还是32 位指令,最终代码中两者可以完全共存。运行期间系统能够实现16位和32位代码无缝切换,无需像在使用ARM7TDMI时那样,需要专用指令。下表是一张 Cortex-M0完整的指令集。

Cortex M0指令集

图7:Cortex M0指令集

  总体来看,LPC1100在低成本 MCU 市场具有很强的竞争力,其出色的灵活性和强大的性能将成为8位和16位架构占统治地位的各应用领域最有力的竞争对手。LPC1100支持超小封装(16引脚CSP,2.5 x 2.5mm)以及易于操作的HVQFN和LQFP封装。该系列所有产品均支持UART、I2C和SPI等常见外设,并可在LPC1000系列其他产品上复用这些外设的驱动。此外,LPC1100还支持USB和CAN等高端外设,其驱动代码内嵌在ROM掩膜中, 因此Flash闪存可完全用于用户自己的应用程序。目前系统中的Flash尺寸介于8KB(2KB RAM)和32KB(8KB RAM)之间。LPC1100的市场售价(1万片起订)为65美分。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:115,429.70000 毫秒