首页 理论教育选择ARM芯片的原则

选择ARM芯片的原则

【摘要】:下面从应用的角度,对在选择ARM芯片时应考虑的主要因素做详细说明。2.系统时钟控制器系统时钟决定了ARM芯片的处理速度。3.内存容量在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。某些特殊应用ARM芯片没有外部扩展功能,如德国Micronas公司的PUC3030A。14.UART和IrDA绝大部分ARM芯片具有1~2个UART接口,可以用于和PC通信或用Angel进行调试。15.DSP协处理器具有DSP+ARM结构的ARM芯片对图像、视频、多媒体等数据具有很好的处理效果。

下面从应用的角度,对在选择ARM芯片时应考虑的主要因素做详细说明。

1.ARM芯核

如果希望使用WindowsCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU功能的ARM芯片,如ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。ARM7TDMI没有MMU,不支持Windows CE和大部分的Linux,但有μCLinux等少数几种Linux不需要MMU的支持。

2.系统时钟控制器

系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz~133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100MHz~233MHz,ARM10最高可以达到700 MHz。不同芯片对时钟的处理不同,有的芯片只有一个主时钟频率,这样的芯片可能无法兼顾通用异步收发传输器(Universal Asynchronous Receiver Transmitter,UART)和音频时钟准确性,如Cirrus Logic的EP7312等;有的芯片内部时钟控制器可以分别为CPU核和通用串行总线(Universal Serial Bus,USB)、UART、DSP、音频等功能部件提供同频率的时钟,如PHILIPS公司SAA7750等芯片。

3.内存容量

在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。

4.USB接口

许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。

5.GPIO口数量

在某些芯片供应商提供的说明书中,往往声明的是最大可能的通用输入输出(General Purpose Input Output,GPIO)口数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样,在系统设计时需要计算实际可以使用的GPIO口数量。

6.中断控制器

ARM内核只提供快速中断(Fast Interrupt Request,FIQ)和标准中断(Interrupt Request,IRQ)两个中断向量。但是,各个半导体厂家在设计芯片时加入了自己的中断控制器,以便支持如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以在很大程度上减少任务调度工作量。例如,PHILIPS公司的SAA7750,所有GPIO都可以设置成FIQ或IRQ,并且可以选择升沿、下降沿、高电平、低电平4种中断方式。这使红外线遥控接收、指轮盘和键盘等任务都可以作为背景程序运行。而Cirrus Logic公司的EP7312芯片,只有4个外部中断源,并且每个中断源都只能是低电平或高电平中断,这样,在用于接收红外线信号的场合,必须采用查询方式,浪费大量CPU时间。

7.IIS

IIS(Integrate Interface of Sound)即集成音频接口,也可写作I2S。如果设计者开发音频应用产品,I2S总线接口是必需的。

8.nWAIT信号

nWAIT信号为外部总线速度控制信号。不是每个ARM芯片都提供这个信号引脚,利用这个信号与廉价的GAL芯片就可以实现与符合个人计算机存储卡国际协会(Personal Computer Memory Card International Association,PCMCIA)标准的无线局域网(Wireless Local Area Networks,WLAN)卡和蓝牙(Bluetooth)卡的接口,而不需要外加高成本的PCMCIA专用控制芯片。另外,当需要扩展外部DSP协处理器时,此信号是必需的。

9.RTC

很多ARM芯片都提供实时时钟(Real Time Clock,RTC)功能,但方式不同。例如,Cirrus Logic公司EP7312的RTC只是一个32位计数器,需要通过软件计算出年月日时分秒;而SAA7750和S3C2410等芯片的RTC直接提供年月日时分秒格式。

10.LCD控制器

有些ARM芯片内置液晶显示器(Liquid Crystal Display,LCD)控制器,有的甚至内置64KB彩色TFT-LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片,如S1C2410较为适宜。(www.chuimin.cn)

11.PWM输出

有些ARM芯片有2~8路脉冲宽度调制(Pulse Width Modulation,PWM)输出,可以用于电机控制或语音输出等场合。

12.ADC和DAC

有些ARM芯片内置2~8通道8~12位通用模-数转换器(Analog-to-Digital Converter,ADC),可以用于电池检测、触摸屏和温度监测等。PHILIPS的SAA7750更是内置了一个16位立体声音频ADC和数-模转换器(Digital-to-Analog Converter,DAC),并且带耳机驱动。

13.扩展总线

绝大部分ARM芯片具有外部同步动态随机存取存储器(Synchronous Dynamic Random Access Memory,SDRAM)和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量,即片选线数量不同,外部数据总线有8位、16位或32位。某些特殊应用ARM芯片没有外部扩展功能,如德国Micronas公司的PUC3030A。

14.UART和IrDA

绝大部分ARM芯片具有1~2个UART接口,可以用于和PC通信或用Angel进行调试。一般ARM芯片通信比特率为115~200bit/s,少数专为蓝牙技术应用设计的ARM芯片的UART通信比特率可以达到920Kbit/s,如Linkup公司的L7205。

15.DSP协处理器

具有DSP+ARM结构的ARM芯片对图像、视频、多媒体等数据具有很好的处理效果。

16.内置FPGA

具有内置现场可编程门阵列(Field Programmable Gate Array,FPGA)的ARM芯片能更好地适合于通信等领域。

17.时钟计数器和“看门狗”计数器

一般ARM芯片具有2~4个16位或32位时钟计数器和一个“看门狗”计数器。

18.电源管理功能

ARM芯片的耗电量与工作频率成正比,一般ARM芯片有低功耗模式、睡眠模式和关闭模式。

19.DMA控制器

有些ARM芯片内部集成有DMA,可以和硬盘等外设高速交换数据,减少数据交换时对CPU资源的占用。

另外,ARM芯片可以选择的内部功能部件有HDLC、SDLC、CD-ROM Decoder、Ethernet MAC、VGA Controller、DC-DC,可以选择的内置接口有I2C、SPDIF、CAN、SPI、PCI、PCMCIA。