ARM的選型
鑑於 ARM 微處理器的衆多優點,隨着國內外嵌入式應用領域的逐步發展, ARM 微處理器必然會獲得廣泛的重視和應用。但是,由於 ARM 微處理器有多達十幾種的內核結構,幾十個芯片生產廠家,以及千變萬化的內部功能配置組合,給開發人員在選擇方案時帶來一定的困難,所以,對 ARM芯片做一些對比研究是十分必要的。
以下從應用的角度出發,對在選擇 ARM 微處理器時所應考慮的主要問題做一些簡要的探討。
1 ARM 芯片選擇的一般原則
從應用的角度,對在選擇 ARM 芯片時所應考慮的主要困素做一詳細的說明。
1.1 ARM 芯核
如果希望使用 WinCE 或 Linux 等操作系統以減少軟件開發時間,就需要選擇 ARM720T 以上帶有 MMU ( memory management unit )功能的 ARM 芯片, ARM720T 、 Stron-gARM 、 ARM920T 、 ARM922T 、 ARM946T 都帶有 MMU 功能。而 ARM7TDMI 沒有 MMU ,不支持 Windows CE 和大部分的 Linux ,但目前有 uCLinux 等少數幾種 Linux 不需要 MMU 的支持。
1.2 系統時鐘控制器
系統時鐘決定了 ARM 芯片的處理速度。 ARM7 的處理速度爲0.9 MIPS/MHz ,常見的 ARM7 芯片系統主時鐘爲20 MHz-133MHz , ARM9 的處理速度爲1.1 MIPS/MHz ,常見的 ARM9 的系統主時鐘爲100 MHz-233MHz , ARM10 最高可以達到700 MHz 。不同芯片對時鐘的處理不同,有的芯片只有一個主時鐘頻率,這樣的芯片可能不能同時顧及 UART 和音頻時鐘準確性,如 Cirrus Logic 的 EP7312 等;有的芯片內部時鐘控制器可以分別爲 CPU 核和 USB 、 UART 、 DSP 、音頻等功能部件提供同頻率的時鐘,如 PHILIPS 公司 SAA7750 等芯片。
1.3 內部存儲器容量
在不需要大容量存儲器時,可以考慮選用有內置存儲器的 ARM 芯片。見表1。
表1
芯片型號 |
供應商 |
FLASH容量 |
ROM容量 |
SRAM容量 |
AT91F40162 |
ATMEL |
2M Bytes |
256K bytes |
4K Bytes |
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 |
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 |
1.16 內置FPGA
有些ARM芯片內置有FPGA,適合於通訊等領域。見表4。
表4 ARM+FPGA結構的ARM芯片
芯片型號 |
供應商 |
ARM芯核 |
FPGA門數 |
引腳數 |
EPXA1 |
Altera |
ARM922T |
100K |
484 |
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 |
4 選擇方案舉例
表6列舉的最佳方案僅供參考,由於SOC集成電路的發展非常迅速,今天的最佳方案到明天就可以不是最佳的了。因此任何時候在選擇方案時,都應廣泛搜尋一下主要的ARM芯片供應商,以找出最適合芯片。
表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核 |
文章轉自http://blog.ednchina.com/lixuelei2010/2052615/Message.aspx