基于ARM的系统构件优化整个MCU开发周期
为满足应用需求,微控制器对功能性、各种片外片内存储器的类型和密度以及高层次系统集成的需求不断发展。本文提出了对这些需求的应对策略,即开发模块化架构来优化最终用户产品周期的各个方面,包括应用匹配、PCB设计、应用软件开发和产品升级等。
如今,对成本敏感的微控制器市场需要可使产品功能紧密地适合应用的高层次系统集成。PCB尺寸、电源消耗和材料成本的压力也需要比以往更高层次的系统集成。此外,稳压器、电压不足检测器、上电复位等电源接口与晶振/PLL、系统定时器等定时单元一样,都需要在片内得到实现。
为紧密地适合应用,存储器、外围设备与连接之间的正确组合非常重要。对存储器的需求在类型和密度上是不同的。小容量的引导ROM、RAM工作区以及用于存储软件和参考数据的片上闪存都是必需的,但不同应用对密度需求不一样。NAND或NOR闪存、SDRAM等各种存储器类型和密度都需要高效率的外部接口。在连接性方面,微控制器一般需要提供USB、以太网、CAN、SPI或USART总线连接,而为保证安全性,可能还需要AES或DES加速器。此外,许多应用还需要微控制器具有模拟功能。
与外围设备组合变化多样不同,处理器内核的可选范围很窄。只有少数几种工业标准MCU内核占市场主导地位,ARM则是32位MCU内核的代表之一。
图题:基于ARM的MCU系统级芯片AT91SAM7S的架构平台。
应用开发的简易性是一个关键要求,而且常常是最重要的。最基本的要求就是工业标准开发工具必须易于使用且价格合理。此外,MCU还应该提供所有片上外围设备的低层器件驱动程序和标准通信接口的协议堆栈。这些都将大大减少应用开发的时间和成本。如果应用需要操作系统,那么该操作系统应该已具备与MCU架构的接口,并且可以很容易集成到软件开发环境中。
基于微控制器的应用在不断发展。一些产品的生命周期,特别是消费类电子产品的生命周期只有短短数月的时间,因此新型产品必须具有更强的性能、更简单的用户接口以及更小的外形尺寸,而且其价格也更低。为支持这种最终用户产品的发展趋势,位于系统中心的微控制器必须不断发展。不过,向更高级MCU升级的过程必须简单,并要尽可能避免发生风险。在硬件层面上,这要求同一系列中不同器件的封装和引脚必须兼容;而在软件层面上,关键是要能复用已有的软件模块,并能够方便地集成新模块。
基于ARM的模块化系统构件
Atmel公司应对这些需求的策略是关注整个MCU产品生命周期,在工业标准ARM微处理器内核的基础上为存储器、外围设备和标准通信接口开发了一系列IP模块。软件设备驱动程序、通信接口的协议堆栈、操作系统以及应用开发工具都对这些IP模块提供支持。这些IP模块将被嵌入到整个产品系列使用的公共架构平台中。同一系列的器件具有相同的封装和引脚,这是为了实现最大化复用并快速开发出产品,以满足用户对降低产品成本和缩短开发周期的需求。
1. 架构平台
基于ARM的MCU系统级芯片的典型架构平台如图所示。每个存储器模块、外围设备和通信接口都是一个独立的模块。这些模块经过单独开发和测试,可以针对每个实现进行参数化处理(如闪存或SRAM存储器的密度)。外围设备模块可被软件设备驱动程序支持,这些用C/C++编写的驱动程序已被集成到应用代码中。针对每个目标应用,可以选择最佳的存储器、外围设备和通信接口配置。为尽可能满足相同应用领域中不同用户的需要,Atmel还开发了一系列具有不同存储器密度的器件,该系列中的每个器件都具有相同封装和引脚。
这个架构平台具有许多公用特性。所有器件都采用相同的工业标准ARM处理器内核,而且所有外围设备和通信接口都具有一个被映射到处理器地址空间的公共寄存器结构。通过复用已有的代码,这将大大减少软件开发的费用。
所有器件都具有一个外围设备DMA控制器,该控制器能以最小的处理器开销处理存储器到外围设备的数据传输。高级中断控制器(AIC)可增强处理器内核的基本中断功能,以便在很少几个指令周期内实现到中断处理程序的传递。并行的输入/输出(PIO)控制器可使I/O线与多个通用输入/输出进行复用,从而减少引脚数量、提高I/O编程的灵活性。所有这些器件都有一个快速闪存编程接口(FFPI)和基于ROM的引导辅助(SAM-BA)以便于进行闪存编程。
所有器件都集成了以前片内所没有的多种系统功能,包括用于定时源的晶振和PLL,以及实时定时器、可编程间隔定时器和看门狗定时器等的众多系统定时器。电源管理控制器(PMC)可通过关闭不用的外围设备将器件功耗减至最小,并提供只有实时定时器工作的睡眠模式。稳压器则用来提
- 基于构件技术的嵌入式系统复用软件设计(05-30)
- 基于ARM的除法运算优化策略(01-14)
- 基于ARM的CAN总线智能节点的设计(01-24)
- ARM基础知识教程五 (02-08)
- ARM基础知识教程六(02-08)
- ARM基础知识教程七(02-08)