- 相關(guān)推薦
32位RISC CPU ARM芯片的應(yīng)用和選型
摘要:ARM公司以及ARM芯片的現(xiàn)狀和發(fā)展,從應(yīng)用的角度介紹了ARM芯片的選擇方法,并介紹了具有多芯核結(jié)構(gòu)的ARM芯片。列舉了目前的主要ARM芯片供應(yīng)商,其產(chǎn)品以及應(yīng)用領(lǐng)域。舉例說明了幾種嵌入式產(chǎn)品最佳ARM芯片選擇方案。關(guān)鍵詞:ARM MMU SOC RISC CPU
ARM公司自1990年正式成立以來,在32位RISC(Reduced Instruction Set Computer)CPU開發(fā)領(lǐng)域不斷取得突破,其結(jié)構(gòu)已經(jīng)從V3發(fā)展到V6。由于ARM公司自成立以來,直以IP(Intelligence Property)提供者的身份向各大半導(dǎo)體制造商出售知識產(chǎn)權(quán),而自己從不介入芯片的生產(chǎn)銷售,加上其設(shè)計的芯核具有功耗低、成本低等顯著優(yōu)點,因此獲得眾多的半導(dǎo)體廠家和整機廠商的大力支持,在32位嵌入式應(yīng)用領(lǐng)域獲得了巨大的成功,目前已經(jīng)占有75%以上32位RISC嵌入式產(chǎn)品市場。在低功耗、低成本的嵌入式應(yīng)用領(lǐng)域確立了市場領(lǐng)導(dǎo)地位,F(xiàn)在設(shè)計、生產(chǎn)ARM芯片的國際大公司已經(jīng)超過50多家,國中興通訊和華為通訊等公司已經(jīng)購買ARM公司芯核用于通訊專用芯片的設(shè)計。
目前非常流行的ARM芯核有ARM7TDMI,StrongARM,ARM720T,ARM9TDMI,ARM922T,ARM940T,RM946T,ARM966T,ARM10TDMI等。自V5以且,ARM公司提供Piccolo DSP的芯核給芯片設(shè)計得,用于設(shè)計ARMDSP的SOC(System On Chip)結(jié)構(gòu)芯片。此外,ARM芯片還獲得了許多實時操作系統(tǒng)(Real Time Operating System)供應(yīng)商的支持,比較知名的有:Windows CE、Linux、pSOS、VxWorks、Nucleus、EPOC、uCOS、BeOS等。
隨著國內(nèi)嵌入式應(yīng)用領(lǐng)域的發(fā)展,ARM芯片必然會獲得廣泛的重視和應(yīng)用。但是,由于ARM芯片有多達十幾種的芯核結(jié)構(gòu),70多芯片生產(chǎn)廠家,以及千變?nèi)f化的內(nèi)部功能配置組合,給開發(fā)人員在選擇方案時帶來一定的困難。所以,對ARM芯片做一對比研究是十分必要的。
1 ARM芯片選擇的一般原則
從應(yīng)用的角度,對在選擇ARM芯片時所應(yīng)考慮的主要困素做一詳細的說明。
1.1 ARM芯核
如果希望使用WinCE或Linux等操作系統(tǒng)以減少軟件開發(fā)時間,就需要選擇ARM720T以上帶有MMU(memory management unit)功能的ARM芯片,ARM720T、Stron-gARM、ARM920T、ARM922T、ARM946T都帶有MMU功能。而ARM7TDMI沒有MMU,不支持Windows CE和大部分的Linux,但目前有uCLinux等少數(shù)幾種Linux不需要MMU的支持。
1.2 系統(tǒng)時鐘控制器
系統(tǒng)時鐘決定了ARM芯片的處理速度。ARM7的處理速度為0.9MIPS/MHz,常見的ARM7芯片系統(tǒng)主時鐘為20MHz-133MHz,ARM9的處理速度為1.1MIPS/MHz,常見的ARM9的系統(tǒng)主時鐘為100MHz-233MHz,ARM10最高可以達到700MHz。不同芯片對時鐘的處理不同,有的芯片只有一個主時鐘頻率,這樣的芯片可能不能同時顧及UART和音頻時鐘準確性,如Cirrus Logic的EP7312等;有的芯片內(nèi)部時鐘控制器可以分別為CPU核和USB、UART、DSP、音頻等功能部件提供同頻率的時鐘,如PHILIPS公司SAA7750等芯片。
1.3 內(nèi)部存儲器容量
在不需要大容量存儲器時,可以考慮選用有內(nèi)置存儲器的ARM芯片。見表1。
表1 內(nèi)置存儲器的ARM芯片
AT91FR4081
SAA7750
PUC3030A
HMS30C7202
ML67Q4001
LC67F500 ATMEL
ATMEL
Philips
Micronas
Hynix
OKI
Snayo 2M Bytes
1M Bytes
384K Bytes
256K Bytes
192K Bytes
256K Bytes
640K Bytes 256K bytes 4K Bytes
128K Bytes
64K bytes
56K bytes
32K bytes
1.4 USB接口
許多ARM芯片內(nèi)置有USB控制器,有些芯片甚至同時有USB Host和USB Slave控制器。見表2。
表2 內(nèi)置USB控制器的ARM芯片
S3C2400
S5N8946
L7205
L7210
EP9312
Dragonball MX1
SAA7750
TMS320DSC2x
PUC3030A
AAEC-2000
ML67100
ML7051LA
SA-1100
LH7979531
GMS320C7201 ARM920T
ARM920T
ARM7TDMI
ARM720T
ARM720T
ARM920T
ARM920T
ARM720T
ARM7TDMI
ARM7TDMI
ARM920T
ARM7TDMI
ARM7TDMI
StrongARM
ARM7TDMI
ARM720T Samsung
Samsung
Samsung
Linkup
linkup
Cirrus Logic
Motorola
Philips
TI
Micronas
Agilent
OKI
OKI
Intel
Sharp
Hynix 1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1 2
2
0
1
1
3
0
0
0
0
0
0
0
0
0
0 1
1
0
0
0
1
1
1
0
5
0
0
0
0
0
1
1.5 GPIO數(shù)量
在某些芯片供應(yīng)商提供的說明書中,往往申明的是最大可能的GPIO數(shù)量,但是有許多引腳是和地址線、數(shù)據(jù)線、串口線等引腳復(fù)用的。這樣在系統(tǒng)設(shè)計時需要計算實際可以使用的GPIO數(shù)量。
1.6 中斷控制器
ARM內(nèi)核只提供快速中斷(FIQ)和標準中斷(IRQ)兩個中斷向量。但各個半導(dǎo)體廠家在設(shè)計芯片時加入了自己同的中斷控制器,以便支持諸如串行口、外部中斷、時鐘斷等硬件中斷。外部中斷控制是選擇芯片必須考慮的重要因素,合理的外部中斷設(shè)計可以很大程度的減少任務(wù)調(diào)度工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以設(shè)置成FIQ或IRQ,并且可以選擇升沿、下降沿、高電平、低電平四種中斷方式。這使得紅外線遙控接收、指輪盤和鍵盤等任務(wù)都可以作為背景程序運行。而Cirrus Logic公司的EP7312芯片,只有4個外部中斷源,并且 每個中斷源都只能是低電平或才高電平中斷,樣在用于接收紅外線信號的場合時,就必須用查詢方式,會浪費大量CPU時間。
1.7 IIS(Integrate Interface of Sound)接口
即集成音頻接口。如果設(shè)計者頻應(yīng)用產(chǎn)品,IIS總線接口是必需的。
1.8 nWAIT信號
外部總線速度控制信號。不是每個ARM芯片都提供這個信號引腳,利用這個信號與廉價的GAL芯片就可以實現(xiàn)與符合PCMCIA標準的WLAN卡和Bluetooth卡的接口,而不需要外加高成本的PCMCIA專用控制芯片。另外,當需要擴展外部DSP協(xié)處理器時,此信號也是必需的。
1.9 RTC(Real Time Clock)
很多ARM芯片都提供實時時鐘功能,但方式不同。如Cirrus Logic公司的EP7312的RTC只是一個32位計數(shù)器,需要通過軟件計算出年月日時分秒;而SAA7750和S3C2410等芯片的RTC直接提供年月日時分秒格式。
1.10 LCD控制器
有些ARM芯片內(nèi)置LCD控制器,有的甚至內(nèi)置64K彩色TFT LCD控制器。在設(shè)計PDA和手持式顯示記錄設(shè)備時,選用內(nèi)置LCD控制器的ARM芯片如S1C2410較為適宜。
1.11 PWM輸出
有些ARM芯片有2~8路PWM輸出,可以用于電機控制或語音輸出等場合。
1.12 ADC和DAC
有些ARM芯片內(nèi)置2~8通道8~12位通用ADC,可以用于電池檢測、觸摸屏和溫度監(jiān)測等。PHILIPS的SAA7750更是內(nèi)置了一個16位立體聲音頻ADC和DAC,并且?guī)Ф鷻C驅(qū)動。
1.13 擴展總線
大部分ARM芯片具有外部SDRAM和SRAM擴展接口,不同的ARM芯片可以擴展的芯片數(shù)量即片選線數(shù)量不同,外部數(shù)據(jù)總線有8位、16位或32位。某些特殊應(yīng)用ARM芯片如德國Micronas的PUC3030A沒有外部擴展功能。
1.14 UART和IrDA
幾乎所有的ARM芯片都具有1~2個UART接口,可以用于和PC機通訊或用Angel進行調(diào)試。一般的ARM芯片通訊波特率為115,200bps,少數(shù)專為藍牙技術(shù)應(yīng)用設(shè)計的ARM芯片的UART通訊波特率可以達到920Kbps,如Linkup公司L7205。
1.15 DSP協(xié)處理器,見表3。
表3 ARM+DSP結(jié)構(gòu)的ARM芯片
Dragonball MX1
SAA7750
VWS22100
STLC1502
GMS30C3201
AT75C220
AT75C310
AT75C320
L7205
L7210
Quatro TI
Motorola
Philips
Philips
ST
Hynix
ATMEL
ATMEL
ATMEL
Linkup
Linkup
OAK 16bits C5000
24bits 56000
24bits EPIC
16bits OAK
D950
16bits Piccolo
16bits OAK
16bits OAK
16bits OAK
16bits Piccolo
16bits Piccolo
16bits OAK 500
73
52
40
40x2
60X2
Digital Camera
CD-MP3
CD-MP3
GSM
VOIP
STB
IA
IA
IA
Wireless
Wireless
Digital Image
1.16 內(nèi)置FPGA
有些ARM芯片內(nèi)置有FPGA,適合于通訊等領(lǐng)域。見表4。
表4 ARM+FPGA結(jié)構(gòu)的ARM芯片
EPXA4
EPXA10
TA7S20系列 Altera
Altera
Altera
Triscend ARM922T
ARM922T
ARM922T
ARM7TDMI 100K
400K
1000K
多種 484
672
1020
多種
1.17 時鐘計數(shù)器和看門狗
一般ARM芯片都具有2~4個16位或32位時鐘計數(shù)器和一個看門狗計數(shù)器。
1.18 電源管理功能
ARM芯片的耗電量與工作頻率成正比,一般ARM芯片都有低功耗模式、睡眠模式和關(guān)閉模式。
1.19 DMA控制器
有些ARM芯片內(nèi)部集成有DMA(Direct Memory Access),可以和硬盤等外部設(shè)備高速交換數(shù)據(jù),同時減少數(shù)據(jù)交換時對CPU資源的占用。
另外,還可以選擇的內(nèi)部功能部件有:HDLC,SDLC,CD-ROM Decoder,Ethernet MAC,VGA controller,DC-DC?梢赃x擇的內(nèi)置接口有:IIC,SPDIF,CAN,SPI,PCI,PCMCIA。
最后需說明的是封裝問題。ARM芯片現(xiàn)在主要的封裝有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封裝具有芯片面積小的特點,可以減少PCB板的面積,但是需要專用的焊接設(shè)備,無法手工焊接。另外一般BGA封裝的ARM芯片無法用雙面板完成PCB布線,需要多層PCB板布線。
2 多芯核結(jié)構(gòu)ARM芯片的選擇
為了增強多任務(wù)處理能力、數(shù)學(xué)運算能力、多媒體以及網(wǎng)絡(luò)處理能力,某些供應(yīng)商提供的ARM芯片內(nèi)置多個芯核,目前常見的ARM+DSP,ARM+FPGA,ARM+ARM等結(jié)構(gòu)。
2.1 多ARM芯核
為了增強多任務(wù)處理能力和多媒體處理能力,某些ARM芯片內(nèi)置多個ARM芯核。例如Portal player公司的PP5002內(nèi)部集成了兩個ARM7TDMI芯核,可以應(yīng)用于便攜式MP3播放器的編碼器或解碼器。從科勝訊公司(Conexant)分離出云的專門致力于高速通訊芯片設(shè)計生產(chǎn)的MinSpeed公司就在其多款高速通訊芯片中集成了2~4個ARM7TDMI內(nèi)核。
2.2 ARM芯核+DSP芯核
為了增強數(shù)學(xué)運算功能和多媒體處理功能,許多供應(yīng)商在其ARM芯片內(nèi)增加了DSP協(xié)處理器。通常加入的DSP苡核有ARM公司的Piccolo DSP芯核、OAK公司16位定點DSP芯核、TI的TMS320C5000系列DSP芯核、Motorola的56K DSP芯核等。見表3。
2.3 ARM芯核+FPGA
為了提高系統(tǒng)硬件的在線升級能力,某些公司在ARM芯片內(nèi)部集成了FPGA。見表4。
3 主要ARM芯片供應(yīng)商
目前可以提供ARM芯片的著名歐美半導(dǎo)體公司有:英特爾、德洲儀器、三星半導(dǎo)體、摩托羅拉、飛利浦半導(dǎo)體、意法半導(dǎo)體、億恒半導(dǎo)體、科勝訊、ADI公司、安捷倫、高通公司、Atmel、Intersil、Alcatel、Altera、Cirrus Logic、Linkup、Parthus、LSI Logic、Micronas,Silicon Wave、Virata、Portalplayer inc.、NetSilicon,Parthus。見表5。日本的許多著名半導(dǎo)體公司或東芝、三菱半導(dǎo)體、愛普生、富士通半導(dǎo)體、松下半導(dǎo)體等公司較早期都大力投入開了自主的32位CPU結(jié)構(gòu),但現(xiàn)在都轉(zhuǎn)向購買ARM公司的芯核進行新產(chǎn)品設(shè)計。由于它們購買ARM版權(quán)較晚,現(xiàn)在還沒有可銷售的ARM芯片,而OKI、NEC、AKM、OAK、Sharp、Sanyo、Sony、Rohm等日本半導(dǎo)體公司目前都已經(jīng)已經(jīng)指生產(chǎn)了ARM芯片。韓國的現(xiàn)代半導(dǎo)體公司也生產(chǎn)提供ARM芯片。另外 ,國外也很多設(shè)備制造商采用ARM公司芯核設(shè)計自己的專用芯片,如美國的IBM、3COM和新加坡的創(chuàng)新科技等。我國臺灣地區(qū)可以提供ARM芯片的公司臺積電、臺聯(lián)電、華幫電子等。其它已購買ARM芯核,正在設(shè)計自主版板權(quán)專用芯片的大陸公司會為通訊中興通訊等。
表5 主要ARM芯片供應(yīng)商及其代表性產(chǎn)品和主要應(yīng)用領(lǐng)域
TI
Samsung
Motorola
Philips
Cirrus Logic
Linkup
ATMEL
OKI
Sharp
Qualcomm
ST
Infineon
Analog
Hynix
Micronas
Conexant
Agilent
Portalpayer
NEC
NetSilicon
LSI Logic
Alcatel
Altera
Panasonic
Silicon Wave
OAK
Rohm
Parthus
Intersil
SiRF
Sirius
Sanyo
Virata
Agere SA-110
TMS320DSC21
S3C44B0X
Dragonball MX1
SAA7750
EP7209
L7200
AT91R40XXX
ML67100
LH75400/1
MSP1000
STLC1502
PMB7754
AD20MSP430
GMS30C7201
PUC3030A
CN9414
AAEC-2000
PP5002
UPD65977
NET+15
CBP3.0
MTC20276
EPXA1
MN1A7T0200
SiW1750
Quatro
BU6611AKU
InfoSream
ISL3856
SiRF Star II
CDMAx
VOL101
Helium
T8300 SA-1100
TMS320DSC24
S3C2410
VWS22100
EP7212
L7205
AT75C310
ML7051LA
LH79520
MSM3000
STw2400
HMS30C7202
CX82100
NET+40
CBP4.0
MTK20141
EPXA4
DIRAC
Helium 200
T8302 SA-1110
TMS320DSC25
S3C4510
VCS94250
EP7312
L7210
AT76C901
ML67Q4000
LH79531/2/3
MSM5000
HMS39C7092
NET+50
L64324
MTK20285
EPXA10
Helium 210
IXP1200
PMAP1510
S5N8946
VW26001
EP9312
AT76C502
ML67Q2300
LH7A400
MSM6000
MTC20277
Lithium
Palm PC,Network
Digital Camera
ADSL,PDA
BT,PDA
MP3,GSM,3G,BT
GP,MP3
Wireless
GP,Wireless
GP,BT
Portable handheld
CDMA
VOIP,BT
BT
GSM
STB,GP
GP,MP3
Network,Modem
IA
MP3,PDA
Configurable
Ethernet
CDMA
ISDN,ADSL
Configurable
PDA,Phone
BT
Digital Image
ISDN
Wireless Internet
802.11b,WLAN
GPS
3G CDMA
CD-R HDC
Communications
Mobile phone
4 選擇方案舉例
表6列舉的最佳方案僅供參考,由于SOC集成電路的發(fā)展非常迅速,今天的最佳方案到明天就可以不是最佳的了。因此任何時候在選擇方案時,都應(yīng)廣泛搜尋一下主要的ARM芯片供應(yīng)商,以找出最適合芯片。
表6 最佳應(yīng)用方案推薦
【32位RISC CPU ARM芯片的應(yīng)用和選型】相關(guān)文章:
內(nèi)嵌ARM核的FPGA芯片EPXA10及其在圖像驅(qū)動和處理方面的應(yīng)用08-06
32位ARM核微處理器芯片PUC2030A及其應(yīng)用08-06
通用異步串口擴展芯片GM8123/25的原理和應(yīng)用08-06