如何选择和应用ARM技术
最编程
2024-02-29 18:32:57
...
32位RISC CPU ARM芯片的应用和选型
ARM公司以及ARM芯片的现状和发展,从应用的角度介绍了ARM芯片的选择方法,并介绍了具有多芯核结构的ARM芯片。列举了目前的主要ARM芯片供应商,其产品以及应用领域。举例说明了几种嵌入式产品的最佳ARM芯片选择方案。
ARM公司自1990年正式成立以来, 在32位RISC (Reduced Instruction Set Computer CPU开发领域不断取得突破,其结构已经从V3发展到V6。由于ARM公司自成立以来,一直以IP(Intelligence Property)提供者的身份向各大半导*造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯核具有功耗低、成本低等显著优点,因此获得众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,目前已经占有75%以上的32位RISC嵌入式产品市场。在低功耗、低成本的嵌入式应用领域确立了市场领导地位。现在设计、生产ARM芯片的国际大公司已经超过50多家,国内中兴通讯和华为通讯等公司也已经购买ARM公司的芯核用于通讯专用芯片的设计。
目前非常流行的ARM芯核有ARM7TDMI,StrongARM ARM720T,ARM9TDMI,ARM922T,ARM940T,RM946T,
ARM966T,ARM10TDM1等。自V5以后,ARM公司提供Piccolo DSP的芯核给芯片设计者,用于设计ARM+DSP 的SOC (System On Chip) 结构的芯片。此外,ARM芯片还获得了许多实时操作系统(Real Time Operating System)供应商的支持,比较知名的有:温都死 CE、Linux、pSOS、VxWorks Mucleus、EPOC、uCOS、BeOS等。
随着国内嵌入式应用领域的发展,ARM芯片必然会获得广泛的重视和应用。但是,由于ARM芯片有多达十几种的芯核结构,70多家芯片生产厂家,以及千变万化的内部功能配置组合,给开发人员在选择方案时带来一定的困难。所以,对ARM芯片做一对比研究是十分必要的。
1 ARM芯片选择的一般原则
从应用的角度,对在选择ARM芯片时所应考虑的主要因素做一详细的说明。
1.1 ARM芯核
如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(memory management unit)功能的ARM芯片,ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。而ARM7TDMI没有MMU,不支持温都死 CE和大部分的Linux, 但目前有uCLinux等少数几种Linux不需要MMU的支持。
1.2 系统时钟控制器
系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz-133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100MHz-233MHz, ARM10最高可以达到700MHz。不同芯片对时钟的处理不同,有的芯片只有一个主时钟频率,这样的芯片可能不能同时顾及UART和音频时钟的准确性,如Cirrus Logic的EP7312等;有的芯片内部时钟控制器可以分别为CPU核和USB、UART、DSP、音频等功能部件提供不同频率的时钟,如PHILIPS公司的SAA7550等芯片。
1.3 内部存储器容量
在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。见表1。
表1 内置存储器的ARM芯片
芯片型号 供应商 FLASH容量 ROM容量 SRAM容量
AT91F40162 ATMEL 2M Bytes 256K bytes 4K Bytes
AT91FR4081 ATMEL 1M Bytes 128K Bytes
SAA7750 Philips 384K Bytes 64K bytes
PUC3030A Micronas 256K Bytes 56K bytes
HMS30C7202 Hynix 192K Bytes
ML67Q4001 OKI 256K Bytes
LC67F500 Snayo 640K Bytes 32K
1.4 USB接口
许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。见表2。
表2 内置USB控制器的ARM芯片
芯片型号 ARM内核 供应商 USB Slave USB Host IIS接口
S3C2410 ARM920T Samsung 1 2 1
S3C2400 ARM920T Samsung 1 2 1
S5N8946 ARM7TDMI samsung 1 0 0
L7205 ARM720T Linkup 1 1 0
L7210 ARM720T Linkup 1 1 0
EP9312 ARM920T Cirrus Logic 0 3 1
Dragonball MX1 ARM920T Motorola 1 0 1
SAA7750 ARM720T Philips 1 0 1
TMS320DSC2x ARM7TDMI TI 1 0 0
PUC3030A ARM7TDMI Micronas 1 0 5
AAEC-2000 ARM920T Agilent 1 0 0
ML67100 ARM7TDMI OKI 1 0 0
ML7051LA ARM7TDMI OKI 1 0 0
SA-1100 StrongARM Intel 1 0 0
LH79531 ARM7TDMI Sharp 1 0 0
GMS320C7201 ARM720T Hynix 1 0 1
1.5 GPIO数量
在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样在系统设计时需要计算实际可以使用的GPIO数量。
1.6 中断控制器
ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己不同的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度的减少任务调度的工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以设置成FIQ或IRQ,并且可以选择上升沿、下降沿、高电平、低电平四种中断方式。这使得红外线遥控接收、指轮盘和键盘等任务都可以作为背景程序运行。而Cirrus Logic公司的EP7312芯片,只有4个外部中断源,并且每个中断源都只能是低电平或者高电平中断,这样在用于接收红外线信号的场合时,就必须用查询方式,会浪费大量的CPU时间。
1.7 IIS(Integrate Interface of Sound)接口
即集成音频接口。如果设计音频应用产品,IIS 总线接口是必需的。
1.8 nWAIT信号
外部总线速度控制信号。不是每个ARM芯片都提供这个信号引脚,利用这个信号与廉价的GAL芯片就可以实现与符合PCMCIA标准的WLAN卡和Bluetooth卡的接口,而不需要外加高成本的PCMCIA专用控制芯片。另外,当需要扩展外部DSP 协处理器时,此信号也是必需的。
1.9 RTC (Real Time Clock)
很多ARM芯片都提供实时时钟功能,但方式不同。如Cirrus Logic公司的EP7312的RTC只是一个32位计数器,需要通过软件计算出年月日时分秒;而SAA7750和S3C2410等芯片的RTC直接提供年月日时分秒格式。
1.10 LCD控制器
有些ARM芯片内置LCD控制器,有的甚至内置64K彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片如S1C2410较为适宜。
1.11 PWM输出
有些ARM芯片有2~8路PWM输出,可以用于电机控制或语音输出等场合。
1.12 ADC和DAC
有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸屏和温度监测等。PHILIPS的SAA7750更是内置了一个16位立体声音频ADC和DAC,并且带耳机驱动。
1.13 扩展总线
大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。某些特殊应用的ARM芯片如德国Micronas的PUC3030A没有外部扩展功能。
1.14 UART和IrDA
几乎所有的ARM芯片都具有1~2个UART接口,可以用于和PC机通讯或用Angel 进行调试。一般的ARM芯片通讯波特率为115,200bps,少数专为蓝牙技术应用设计的ARM芯片的UART通讯波特率可以达到920Kbps,如Linkup 公司的L7205。
1.15 DSP协处理器,见表3。
表3 ARM+DSP结构的ARM芯片
芯片型号 供应商 DSP core DSP MIPS 应用
TMS320DSC2X TI 16bits C5000 500 Digital Camera
Dragonball MX1 Motorola 24bits 56000 CD-MP3
SAA7750 Philips 24bits EPIC 73 CD-MP3
VWS22100 Philips 16bits OAK 52 GSM
STLC1502 ST D950 VOIP
GMS30C3201 Hynix 16bits Piccolo STB
AT75C220 ATMEL 16bits OAK 40 IA
AT75C310 ATMEL 16bits OAK 40x2 IA
AT75C320 ATMEL 16bits OAK 60X2 IA
L7205 Linkup 16bits Piccolo Wireless
L7210 Linkup 16bits Piccolo wireless
Quatro OAK 16bits OAK Digital Image
1.16 内置FPGA
有些ARM芯片内置有FPGA,适合于通讯等领域。见表4。
表4 ARM+FPGA结构的ARM芯片
芯片型号 供应商 ARM芯核 FPGA门数 引脚数
EPXA1 Altera ARM922T 100K 484
EPXA4 Altera ARM922T 400K 672
EPXA10 Altera ARM922T 1000K 1020
TA7S20系列 Triscend ARM7TDMI 多种 多种
1.17 时钟计数器和看门狗
一般ARM芯片都具有2~4个16位或32位时钟计数器和一个看门狗计数器。
1.18 电源管理功能
ARM芯片的耗电量与工作频率成正比,一般ARM芯片都有低功耗模式、睡眠模式和关闭模式。
1.19 DMA控制器
有些ARM芯片内部集成有DMA(Direct Memory Access)可以和硬盘等外部设备高速交换数据,同时减少数据交换时对CPU资源的占用。
另外,还可以选择的内部功能部件有:HDLC, SDLC,CD-ROM Decoder,Ethernet MAC,VGA controller, DC-DC。可以选择的内置接口有:IIC,SPDIF,CAN,SPI,PCI,PCMCIA。
最后需说明的是封装问题。ARM芯片现在主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封装具有芯片面积小的特点,可以减少PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。
2 多芯核结构ARM芯片的选择
为了增强多任务处理能力、数学运算能力、多媒体以及网络处理能力,某些供应商提供的ARM芯片内置多个芯核,目前常见的有ARM+DSP,ARM+FPGA,ARM+ARM等结构。
2.1多ARM芯核
为了增强多任务处理能力和多媒体处理能力,某些ARM芯片内置多个ARM芯核。例如Portal player 公司的PP5002 内部集成了两个ARM7TDMI 芯核,可以应用于便携式MP3播放器的编码器或解码器。从科胜讯公司(Conexant)分离出去的专门致力于高速通讯芯片设计生产的MinSpeed公司就在其多款高速通讯芯片中集成了2~4个ARM7TDMI内核。
2.2 ARM芯核+DSP芯核
为了增强数学运算功能和多媒体处理功能,许多供应商在其ARM芯片内增加了DSP协处理器。通常加入的DSP芯核有ARM公司的Piccolo DSP芯核、OAK公司16位定点DSP芯核、TI的TMS320C5000系列DSP芯核、Motorola的56K DSP芯核等。见表3。
2.3 ARM芯核+FPGA
为了提高系统硬件的在线升级能力,某些公司在ARM芯片内部集成了FPGA。见表4。
3 主要ARM芯片供应商
目前可以提供ARM芯片的著名欧美半导体公司有:英特尔、德洲仪器、三星半导体、摩托罗拉、飞利浦半导体、意法半导体、亿恒半导体、科胜讯、ADI公司、安捷伦、高通公司、Atmel、Intersil、Alcatel、Altera、Cirrus Logic、Linkup、Parthus、LSI logic、Micronas, Silicon Wave、Virata、Portalplayer inc.、NetSilicon,Parthus。见表5。日本的许多著名半导体公司如东芝、三菱半导体、爱普生、富士通半导体、松下半导体等公司较早期都大力投入开发了自主的32位CPU结构,但现在都转向购买ARM公司的芯核进行新产品设计。由于它们购买ARM版权较晚,现在还没有可以销售的ARM芯片,而OKI、NEC、AKM、OAK、Sharp、Sanyo、Sony、Rohm等日本半导体公司目前都已经批量生产了ARM芯片。韩国的现代半导体公司也生产提供ARM芯片。另外,国外也有很多设备制造商采用ARM公司的芯核设计自己的专用芯片,如美国的IBM、3COM和新加坡的创新科技等。我国*地区可以提供ARM芯片的公司有台积电、台联电、华帮电子等。其它已购买ARM芯核,正在设计自主版权专用芯片的大陆公司有华为通讯和中兴通讯等。
表5主要ARM芯片供应商及其代表性产品和主要应用领域供应商 芯片1 芯片2 芯片3 芯片4 主要应用
Intel SA-110 SA-1100 SA-1110 IXP1200 Palm PC, Network
TI TMS320DSC21 TMS320DSC24 TMS320DSC25 OMAP1510 Digital Camera
Samsung S3C44B0X S3C2410 S3C4510 S5N8946 ADSL,PDA
Motorola Dragonball MX1 BT,PDA
Philips SAA7750 VWS22100 VCS94250 VWS26001 MP3,GSM ,3G,BT
Cirrus Logic EP7209 EP7212 EP7312 EP9312 GP,MP3
Linkup L7200 L7205 L7210 Wireless
ATMEL AT91R40XXX AT75C310 AT76C901 AT76C502 GP, Wireless
OKI ML67100 ML7051LA ML67Q4000 ML67Q2300 GP,BT
Sharp LH75400/1 LH79520LH79520 LH79531/2/3 LH7A400 Portable handheld
Qualcomm MSP1000 MSM3000 MSM5000 MSM6000 CDMA
ST STLC1502 STw2400 VOIP,BT
Infineon PMB7754 BT
Analog AD20MSP430 GSM
Hynix GMS30C7201 HMS30C7202 HMS39C7092 STB,GP
Micronas PUC3030A GP, MP3
Conexant CN9414 CX82100 Network, Modem
Agilent AAEC-2000 IA
Portalplayer PP5002 MP3, PDA
NEC UPD65977 Configurable
NetSilicon NET+15 NET+40 NET+50 PDA, Phone
LSI Logic CBP3.0 CBP4.0 L64324 BT
Alcatel MTC20276 MTK20141 MTK20285 MTC20277 Digital Image
Altera EPXA1 EPXA4 EPXA10 Configurable
Panasonic MN1A7T0200 PDA,Phone
Silicon Wave SiW1750 BT
OAK Quatro Digital Image
Rohm BU6611AKU ISDN
Parthus InfoSream Wireless Internet
Intersil ISL3856 802.11b, WLAN
SiRF SiRF Star II GPS
Sirius CDMAx DIRAC 3G CDMA
Sanyo VOL101 CD-R, HDC
Virata Helium Helium 200 Helium 210 Lithium Communications
Agere T8300 T8302 Mobile phone
表6 最佳应用方案推荐
应用 第一选择方案 第二方案 注释
高档PDA S3C2410 Dragon ball MX1
便携式CDMP3播放器 SAA7750 USB和CD-ROM解码器
FLASH MP3播放器 SAA7750 PUC3030A 内置USB和FLASH
WLAN和BT应用产品 L7205,L7210 Dragon ball MX1 高速串口和PCMCIA接口
Voice Over IP STLC1502
数字式照相机 TMS320DSC24 TMS320DSC21 内置高速图像处理DSP
便携式语音email机 AT75C320 AT75C310 内置双DSP,可以分别处理MODEM和语音
GSM手机 VWS22100 AD20MSP430 专为GSM手机开发
ADSL Modem S5N8946 MTK-20141
电视机顶盒 GMS30C3201 VGA控制器
3G移动电话机 MSM6000 OMAP1510
10G光纤通信 MinSpeed公司系列ARM芯片多ARM核+多DSP核
4 选择方案举例
表6列举的最佳方案仅供参考,由于SOC集成电路的发展非常迅速,今天的最佳方案到明天就可能不是最佳的了。因此任何时候在选择方案时,都应广泛搜寻一下主要的ARM芯片供应商,以找出最适合的芯片.
ARM公司以及ARM芯片的现状和发展,从应用的角度介绍了ARM芯片的选择方法,并介绍了具有多芯核结构的ARM芯片。列举了目前的主要ARM芯片供应商,其产品以及应用领域。举例说明了几种嵌入式产品的最佳ARM芯片选择方案。
ARM公司自1990年正式成立以来, 在32位RISC (Reduced Instruction Set Computer CPU开发领域不断取得突破,其结构已经从V3发展到V6。由于ARM公司自成立以来,一直以IP(Intelligence Property)提供者的身份向各大半导*造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯核具有功耗低、成本低等显著优点,因此获得众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,目前已经占有75%以上的32位RISC嵌入式产品市场。在低功耗、低成本的嵌入式应用领域确立了市场领导地位。现在设计、生产ARM芯片的国际大公司已经超过50多家,国内中兴通讯和华为通讯等公司也已经购买ARM公司的芯核用于通讯专用芯片的设计。
目前非常流行的ARM芯核有ARM7TDMI,StrongARM ARM720T,ARM9TDMI,ARM922T,ARM940T,RM946T,
ARM966T,ARM10TDM1等。自V5以后,ARM公司提供Piccolo DSP的芯核给芯片设计者,用于设计ARM+DSP 的SOC (System On Chip) 结构的芯片。此外,ARM芯片还获得了许多实时操作系统(Real Time Operating System)供应商的支持,比较知名的有:温都死 CE、Linux、pSOS、VxWorks Mucleus、EPOC、uCOS、BeOS等。
随着国内嵌入式应用领域的发展,ARM芯片必然会获得广泛的重视和应用。但是,由于ARM芯片有多达十几种的芯核结构,70多家芯片生产厂家,以及千变万化的内部功能配置组合,给开发人员在选择方案时带来一定的困难。所以,对ARM芯片做一对比研究是十分必要的。
1 ARM芯片选择的一般原则
从应用的角度,对在选择ARM芯片时所应考虑的主要因素做一详细的说明。
1.1 ARM芯核
如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(memory management unit)功能的ARM芯片,ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。而ARM7TDMI没有MMU,不支持温都死 CE和大部分的Linux, 但目前有uCLinux等少数几种Linux不需要MMU的支持。
1.2 系统时钟控制器
系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz-133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100MHz-233MHz, ARM10最高可以达到700MHz。不同芯片对时钟的处理不同,有的芯片只有一个主时钟频率,这样的芯片可能不能同时顾及UART和音频时钟的准确性,如Cirrus Logic的EP7312等;有的芯片内部时钟控制器可以分别为CPU核和USB、UART、DSP、音频等功能部件提供不同频率的时钟,如PHILIPS公司的SAA7550等芯片。
1.3 内部存储器容量
在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。见表1。
表1 内置存储器的ARM芯片
芯片型号 供应商 FLASH容量 ROM容量 SRAM容量
AT91F40162 ATMEL 2M Bytes 256K bytes 4K Bytes
AT91FR4081 ATMEL 1M Bytes 128K Bytes
SAA7750 Philips 384K Bytes 64K bytes
PUC3030A Micronas 256K Bytes 56K bytes
HMS30C7202 Hynix 192K Bytes
ML67Q4001 OKI 256K Bytes
LC67F500 Snayo 640K Bytes 32K
1.4 USB接口
许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。见表2。
表2 内置USB控制器的ARM芯片
芯片型号 ARM内核 供应商 USB Slave USB Host IIS接口
S3C2410 ARM920T Samsung 1 2 1
S3C2400 ARM920T Samsung 1 2 1
S5N8946 ARM7TDMI samsung 1 0 0
L7205 ARM720T Linkup 1 1 0
L7210 ARM720T Linkup 1 1 0
EP9312 ARM920T Cirrus Logic 0 3 1
Dragonball MX1 ARM920T Motorola 1 0 1
SAA7750 ARM720T Philips 1 0 1
TMS320DSC2x ARM7TDMI TI 1 0 0
PUC3030A ARM7TDMI Micronas 1 0 5
AAEC-2000 ARM920T Agilent 1 0 0
ML67100 ARM7TDMI OKI 1 0 0
ML7051LA ARM7TDMI OKI 1 0 0
SA-1100 StrongARM Intel 1 0 0
LH79531 ARM7TDMI Sharp 1 0 0
GMS320C7201 ARM720T Hynix 1 0 1
1.5 GPIO数量
在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样在系统设计时需要计算实际可以使用的GPIO数量。
1.6 中断控制器
ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己不同的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度的减少任务调度的工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以设置成FIQ或IRQ,并且可以选择上升沿、下降沿、高电平、低电平四种中断方式。这使得红外线遥控接收、指轮盘和键盘等任务都可以作为背景程序运行。而Cirrus Logic公司的EP7312芯片,只有4个外部中断源,并且每个中断源都只能是低电平或者高电平中断,这样在用于接收红外线信号的场合时,就必须用查询方式,会浪费大量的CPU时间。
1.7 IIS(Integrate Interface of Sound)接口
即集成音频接口。如果设计音频应用产品,IIS 总线接口是必需的。
1.8 nWAIT信号
外部总线速度控制信号。不是每个ARM芯片都提供这个信号引脚,利用这个信号与廉价的GAL芯片就可以实现与符合PCMCIA标准的WLAN卡和Bluetooth卡的接口,而不需要外加高成本的PCMCIA专用控制芯片。另外,当需要扩展外部DSP 协处理器时,此信号也是必需的。
1.9 RTC (Real Time Clock)
很多ARM芯片都提供实时时钟功能,但方式不同。如Cirrus Logic公司的EP7312的RTC只是一个32位计数器,需要通过软件计算出年月日时分秒;而SAA7750和S3C2410等芯片的RTC直接提供年月日时分秒格式。
1.10 LCD控制器
有些ARM芯片内置LCD控制器,有的甚至内置64K彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片如S1C2410较为适宜。
1.11 PWM输出
有些ARM芯片有2~8路PWM输出,可以用于电机控制或语音输出等场合。
1.12 ADC和DAC
有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸屏和温度监测等。PHILIPS的SAA7750更是内置了一个16位立体声音频ADC和DAC,并且带耳机驱动。
1.13 扩展总线
大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。某些特殊应用的ARM芯片如德国Micronas的PUC3030A没有外部扩展功能。
1.14 UART和IrDA
几乎所有的ARM芯片都具有1~2个UART接口,可以用于和PC机通讯或用Angel 进行调试。一般的ARM芯片通讯波特率为115,200bps,少数专为蓝牙技术应用设计的ARM芯片的UART通讯波特率可以达到920Kbps,如Linkup 公司的L7205。
1.15 DSP协处理器,见表3。
表3 ARM+DSP结构的ARM芯片
芯片型号 供应商 DSP core DSP MIPS 应用
TMS320DSC2X TI 16bits C5000 500 Digital Camera
Dragonball MX1 Motorola 24bits 56000 CD-MP3
SAA7750 Philips 24bits EPIC 73 CD-MP3
VWS22100 Philips 16bits OAK 52 GSM
STLC1502 ST D950 VOIP
GMS30C3201 Hynix 16bits Piccolo STB
AT75C220 ATMEL 16bits OAK 40 IA
AT75C310 ATMEL 16bits OAK 40x2 IA
AT75C320 ATMEL 16bits OAK 60X2 IA
L7205 Linkup 16bits Piccolo Wireless
L7210 Linkup 16bits Piccolo wireless
Quatro OAK 16bits OAK Digital Image
1.16 内置FPGA
有些ARM芯片内置有FPGA,适合于通讯等领域。见表4。
表4 ARM+FPGA结构的ARM芯片
芯片型号 供应商 ARM芯核 FPGA门数 引脚数
EPXA1 Altera ARM922T 100K 484
EPXA4 Altera ARM922T 400K 672
EPXA10 Altera ARM922T 1000K 1020
TA7S20系列 Triscend ARM7TDMI 多种 多种
1.17 时钟计数器和看门狗
一般ARM芯片都具有2~4个16位或32位时钟计数器和一个看门狗计数器。
1.18 电源管理功能
ARM芯片的耗电量与工作频率成正比,一般ARM芯片都有低功耗模式、睡眠模式和关闭模式。
1.19 DMA控制器
有些ARM芯片内部集成有DMA(Direct Memory Access)可以和硬盘等外部设备高速交换数据,同时减少数据交换时对CPU资源的占用。
另外,还可以选择的内部功能部件有:HDLC, SDLC,CD-ROM Decoder,Ethernet MAC,VGA controller, DC-DC。可以选择的内置接口有:IIC,SPDIF,CAN,SPI,PCI,PCMCIA。
最后需说明的是封装问题。ARM芯片现在主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封装具有芯片面积小的特点,可以减少PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。
2 多芯核结构ARM芯片的选择
为了增强多任务处理能力、数学运算能力、多媒体以及网络处理能力,某些供应商提供的ARM芯片内置多个芯核,目前常见的有ARM+DSP,ARM+FPGA,ARM+ARM等结构。
2.1多ARM芯核
为了增强多任务处理能力和多媒体处理能力,某些ARM芯片内置多个ARM芯核。例如Portal player 公司的PP5002 内部集成了两个ARM7TDMI 芯核,可以应用于便携式MP3播放器的编码器或解码器。从科胜讯公司(Conexant)分离出去的专门致力于高速通讯芯片设计生产的MinSpeed公司就在其多款高速通讯芯片中集成了2~4个ARM7TDMI内核。
2.2 ARM芯核+DSP芯核
为了增强数学运算功能和多媒体处理功能,许多供应商在其ARM芯片内增加了DSP协处理器。通常加入的DSP芯核有ARM公司的Piccolo DSP芯核、OAK公司16位定点DSP芯核、TI的TMS320C5000系列DSP芯核、Motorola的56K DSP芯核等。见表3。
2.3 ARM芯核+FPGA
为了提高系统硬件的在线升级能力,某些公司在ARM芯片内部集成了FPGA。见表4。
3 主要ARM芯片供应商
目前可以提供ARM芯片的著名欧美半导体公司有:英特尔、德洲仪器、三星半导体、摩托罗拉、飞利浦半导体、意法半导体、亿恒半导体、科胜讯、ADI公司、安捷伦、高通公司、Atmel、Intersil、Alcatel、Altera、Cirrus Logic、Linkup、Parthus、LSI logic、Micronas, Silicon Wave、Virata、Portalplayer inc.、NetSilicon,Parthus。见表5。日本的许多著名半导体公司如东芝、三菱半导体、爱普生、富士通半导体、松下半导体等公司较早期都大力投入开发了自主的32位CPU结构,但现在都转向购买ARM公司的芯核进行新产品设计。由于它们购买ARM版权较晚,现在还没有可以销售的ARM芯片,而OKI、NEC、AKM、OAK、Sharp、Sanyo、Sony、Rohm等日本半导体公司目前都已经批量生产了ARM芯片。韩国的现代半导体公司也生产提供ARM芯片。另外,国外也有很多设备制造商采用ARM公司的芯核设计自己的专用芯片,如美国的IBM、3COM和新加坡的创新科技等。我国*地区可以提供ARM芯片的公司有台积电、台联电、华帮电子等。其它已购买ARM芯核,正在设计自主版权专用芯片的大陆公司有华为通讯和中兴通讯等。
表5主要ARM芯片供应商及其代表性产品和主要应用领域供应商 芯片1 芯片2 芯片3 芯片4 主要应用
Intel SA-110 SA-1100 SA-1110 IXP1200 Palm PC, Network
TI TMS320DSC21 TMS320DSC24 TMS320DSC25 OMAP1510 Digital Camera
Samsung S3C44B0X S3C2410 S3C4510 S5N8946 ADSL,PDA
Motorola Dragonball MX1 BT,PDA
Philips SAA7750 VWS22100 VCS94250 VWS26001 MP3,GSM ,3G,BT
Cirrus Logic EP7209 EP7212 EP7312 EP9312 GP,MP3
Linkup L7200 L7205 L7210 Wireless
ATMEL AT91R40XXX AT75C310 AT76C901 AT76C502 GP, Wireless
OKI ML67100 ML7051LA ML67Q4000 ML67Q2300 GP,BT
Sharp LH75400/1 LH79520LH79520 LH79531/2/3 LH7A400 Portable handheld
Qualcomm MSP1000 MSM3000 MSM5000 MSM6000 CDMA
ST STLC1502 STw2400 VOIP,BT
Infineon PMB7754 BT
Analog AD20MSP430 GSM
Hynix GMS30C7201 HMS30C7202 HMS39C7092 STB,GP
Micronas PUC3030A GP, MP3
Conexant CN9414 CX82100 Network, Modem
Agilent AAEC-2000 IA
Portalplayer PP5002 MP3, PDA
NEC UPD65977 Configurable
NetSilicon NET+15 NET+40 NET+50 PDA, Phone
LSI Logic CBP3.0 CBP4.0 L64324 BT
Alcatel MTC20276 MTK20141 MTK20285 MTC20277 Digital Image
Altera EPXA1 EPXA4 EPXA10 Configurable
Panasonic MN1A7T0200 PDA,Phone
Silicon Wave SiW1750 BT
OAK Quatro Digital Image
Rohm BU6611AKU ISDN
Parthus InfoSream Wireless Internet
Intersil ISL3856 802.11b, WLAN
SiRF SiRF Star II GPS
Sirius CDMAx DIRAC 3G CDMA
Sanyo VOL101 CD-R, HDC
Virata Helium Helium 200 Helium 210 Lithium Communications
Agere T8300 T8302 Mobile phone
表6 最佳应用方案推荐
应用 第一选择方案 第二方案 注释
高档PDA S3C2410 Dragon ball MX1
便携式CDMP3播放器 SAA7750 USB和CD-ROM解码器
FLASH MP3播放器 SAA7750 PUC3030A 内置USB和FLASH
WLAN和BT应用产品 L7205,L7210 Dragon ball MX1 高速串口和PCMCIA接口
Voice Over IP STLC1502
数字式照相机 TMS320DSC24 TMS320DSC21 内置高速图像处理DSP
便携式语音email机 AT75C320 AT75C310 内置双DSP,可以分别处理MODEM和语音
GSM手机 VWS22100 AD20MSP430 专为GSM手机开发
ADSL Modem S5N8946 MTK-20141
电视机顶盒 GMS30C3201 VGA控制器
3G移动电话机 MSM6000 OMAP1510
10G光纤通信 MinSpeed公司系列ARM芯片多ARM核+多DSP核
4 选择方案举例
表6列举的最佳方案仅供参考,由于SOC集成电路的发展非常迅速,今天的最佳方案到明天就可能不是最佳的了。因此任何时候在选择方案时,都应广泛搜寻一下主要的ARM芯片供应商,以找出最适合的芯片.
推荐阅读
-
BSN 开放联盟链之旅 - 文昌链的技术、架构和应用介绍
-
身体焦虑?大码女装用实力SayNo--"书",了解更多新书拥有者数量内容 作者:小胖鸭小肥鸭 来源:趣谈神奇数字 近日,杨天真现身奇葩说,一边分享职场生存法则,一边大闹自己的大码女装品牌Plusmall。 杨天真是谁?她是壹心娱乐CEO,范冰冰、张艺兴、张雨绮等明星的前经纪人,被称为 "娱乐圈教母"。但她在2020年6月突然宣布卸下所有经纪业务,成立Plusmall,转战直播行业专心带货,第一代网红雪梨就在她的签约名单中。 在 "A4腰"、"BM风"、"筷子腿 "等流行的当下,"以瘦为美 "依然是主流审美。一向眼光犀利的杨天真,为何会选择一条看似与众不同的道路呢?其实,除了杨天真,越来越多的时尚品牌都开设了大码专线,比如耐克、H&M。 关于大码女装,你了解多少?市场潜力如何?为什么会有越来越多的参与者入局?主要形式是什么? A 超重人群居高不下,大码市场潜力数百亿美元 著名医学杂志《柳叶刀》显示,全球有 1/3 的人口超重(指 BMI 指数为 25 的人口),其中我国 4% 的超重人口(约 2.5 亿)已超过美国居世界首位。 图:超重人口比例 来源:《柳叶刀》杂志柳叶刀 国务院新闻办公室发布的《中国居民营养与慢性病状况报告(2020)》显示,我国城乡各年龄段居民超重率和肥胖率持续上升,18岁及以上居民超重率和肥胖率分别为34.3%和16.4%。
-
切割高强度钢和超高强度钢时,如何选择刀具材料?
-
计算机应用技术和计算机网络技术有什么区别?-计算机网络技术和计算机应用技术的前景是否良好?
-
35 岁实现财务*,腾讯程序员手握2300万提前退休?-1000万房产、1000万腾讯股票、加上300万的现金,一共2300万的财产。有网友算了一笔账,假设1000万的房产用于自住,剩下1300万资产按照平均税后20-50万不等进行计算,大约花上26-60年左右的时间才能赚到这笔钱。也就是说,普通人可能奋斗一辈子,才能赚到这笔钱。在很多人还在为中年危机而惶惶不可终日的时候,有的人的35岁,就已经安全着陆,试问哪个打工人不羡慕?但问题是有这样财富积累必然有像样的实力做靠山。没有人可以不劳而获。 看到这里,肯定有人说,那么对于普通人来说,卷可能真就成了唯一的出路。但是卷也有轻松的卷,“偷懒”的卷法,对于程序员而言,刨除掉一时无法改掉的开会传统占用的大部分时间,如何把有限的时间和精力放在真正重要的架构设计、需求设计上,而不是重复的造*,编码、改bug、手动测试。因此在科技改变生活的今天,学会使用AI工具成为程序员们的必备技能。 以全栈式全自动的软件开发工具飞算SoFlu软件机器人为例,作为全球首款面向微服务架构设计和最佳实践的软件机器人,SoFlu软件机器人改变了原来手工编码的作业模式,通过可视化拖拽方式以及参数配置就能实现等同于编写复杂代码的业务逻辑,在设计业务逻辑时就完成了微服务应用开发,做到“业务即图,图即代码”,实现“软件开发,十倍提效”。 而作为飞算SoFlu软件机器人的一个重要组成部分,FuncGPT(慧函数)支持所有类型函数创建。通过自然语言描述Java函数需求,实时生成高质量、高可读性的Java函数代码。生成代码可直接复制到IDEA,或一键导入Java全自动开发工具函数库。 FuncGPT(慧函数)具有五大核心能力: ● 自然语言:通过自然语言即可生成函数,降低软件开发门槛。 ● 秒级函数开发:全自动秒级开发函数,秒级完成,效率千倍提升。 ● 一站式函数开发应用:函数生成即可直接应用,效率、安全有保障。 ● 质量可靠:生成的函数代码符合业界规范、具备良好的可读性,符合最优解。 ● 灵活生成:可以根据开发人员的具体需求生成并支持调整和修改。 以“将文件流转换为File对象”这个需求为例,以下是FuncGPT(慧函数)秒级生成的代码: / 类名:FileConverter // 函数名:convertStreamToFile // 函数功能:将文件流转换为File对象 // POM依赖包:无 import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; public class FileConverter { /** * 将文件流转换为File对象 * @param inputStream 文件流 * @param filePath 文件路径 * @param fileName 文件名 * @return 转换后的File对象 * @throws IOException 如果发生I/O异常 */ public static File convertStreamToFile(InputStream inputStream, String filePath, String fileName) throws IOException { File file = new File(filePath + File.separator + fileName); // 创建File对象 try (FileOutputStream outputStream = new FileOutputStream(file)) { // 创建文件输出流 byte buffer = new byte[1024]; int bytesRead; while ((bytesRead = inputStream.read(buffer)) != -1) { // 从文件流读取数据并写入文件 outputStream.write(buffer, 0, bytesRead); } } return file; // 返回转换后的File对象 } } // 函数示例 // 将文件流转换为File对象示例 // 入参:inputStream,文件流 // 入参:filePath,文件路径 // 入参:fileName,文件名 // 出参:file,转换后的File对象 // 调用示例: // InputStream inputStream = new FileInputStream("example.txt"); // String filePath = "C:\\Users\\User\\Documents"; // String fileName = "example.txt"; // File file = FileConverter.convertStreamToFile(inputStream, filePath, fileName); // System.out.println(file.getAbsolutePath); // 输出结果:例如,将文件流转换为File对象后,文件的绝对路径为:C:\Users\User\Documents\example.txt // 则输出结果为:C:\Users\User\Documents\example.txt 通过分析,不难发现以上代码:
-
PaaS 关键技术要点和难点,如何选择和实施?
-
K8s 技术全景:架构、应用和优化
-
说明 css3:核心技术和案例分析2.8 结构伪类选择器
-
人工智能伦理与人工智能:如何确保技术的公平性和透明度
-
你真的需要 MacBook 吗?如何在 Windows 和 Mac OS 之间做出选择?