ARM公司自1990年正式成立以來,在32位RISC(Reduced Instruction Set Computer)CPU開發(fā)領域不斷取得突破,其結構已經(jīng)從V3發(fā)展到V6。由于ARM公司自成立以來,直以IP(Intelligence Property)提供者的身份向各大半導體制造商出售知識產(chǎn)權,而自己從不介入芯片的生產(chǎn)銷售,加上其設計的芯核具有功耗低、成本低等顯著優(yōu)點,因此獲得眾多的半導體廠家和整機廠商的大力支持,在32位嵌入式應用領域獲得了巨大的成功,目前已經(jīng)占有75%以上32位RISC嵌入式產(chǎn)品市場。在低功耗、低成本的嵌入式應用領域確立了市場領導地位。現(xiàn)在設計、生產(chǎn)ARM芯片的國際大公司已經(jīng)超過50多家,國中興通訊和華為通訊等公司已經(jīng)購買ARM公司芯核用于通訊專用芯片的設計。
目前非常流行的ARM芯核有ARM7TDMI,StrongARM,ARM720T,ARM9TDMI,ARM922T,ARM940T,RM946T,ARM966T,ARM10TDMI等。自V5以且,ARM公司提供Piccolo DSP的芯核給芯片設計得,用于設計ARMDSP的SOC(System On Chip)結構芯片。此外,ARM芯片還獲得了許多實時操作系統(tǒng)(Real Time Operating System)供應商的支持,比較知名的有:Windows CE、Linux、pSOS、VxWorks、Nucleus、EPOC、uCOS、BeOS等。
隨著國內嵌入式應用領域的發(fā)展,ARM芯片必然會獲得廣泛的重視和應用。但是,由于ARM芯片有多達十幾種的芯核結構,70多芯片生產(chǎn)廠家,以及千變萬化的內部功能配置組合,給開發(fā)人員在選擇方案時帶來一定的困難。所以,對ARM芯片做一對比研究是十分必要的。
1 ARM芯片選擇的一般原則
從應用的角度,對在選擇ARM芯片時所應考慮的主要困素做一詳細的說明。
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等;有的芯片內部時鐘控制器可以分別為CPU核和USB、UART、DSP、音頻等功能部件提供同頻率的時鐘,如PHILIPS公司SAA7750等芯片。
1.3 內部存儲器容量
在不需要大容量存儲器時,可以考慮選用有內置存儲器的ARM芯片。見表1。
表1 內置存儲器的ARM芯片
1.4 USB接口
許多ARM芯片內置有USB控制器,有些芯片甚至同時有USB Host和USB Slave控制器。見表2。
表2 內置USB控制器的ARM芯片
1.5 GPIO數(shù)量
在某些芯片供應商提供的說明書中,往往申明的是最大可能的GPIO數(shù)量,但是有許多引腳是和地址線、數(shù)據(jù)線、串口線等引腳復用的。這樣在系統(tǒng)設計時需要計算實際可以使用的GPIO數(shù)量。
1.6 中斷控制器
ARM內核只提供快速中斷(FIQ)和標準中斷(IRQ)兩個中斷向量。但各個半導體廠家在設計芯片時加入了自己同的中斷控制器,以便支持諸如串行口、外部中斷、時鐘斷等硬件中斷。外部中斷控制是選擇芯片必須考慮的重要因素,合理的外部中斷設計可以很大程度的減少任務調度工作量。例如PHILIPS公司的SAA7750,所有GPIO都可以設置成FIQ或IRQ,并且可以選擇升沿、下降沿、高電平、低電平四種中斷方式。這使得紅外線遙控接收、指輪盤和鍵盤等任務都可以作為背景程序運行。而Cirrus Logic公司的EP7312芯片,只有4個外部中斷源,并且 每個中斷源都只能是低電平或才高電平中斷,樣在用于接收紅外線信號的場合時,就必須用查詢方式,會浪費大量CPU時間。
1.7 IIS(Integrate Interface of Sound)接口
即集成音頻接口。如果設計者頻應用產(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芯片內置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,可以用于電池檢測、觸摸屏和溫度監(jiān)測等。PHILIPS的SAA7750更是內置了一個16位立體聲音頻ADC和DAC,并且?guī)Ф鷻C驅動。
1.13 擴展總線
大部分ARM芯片具有外部SDRAM和SRAM擴展接口,不同的ARM芯片可以擴展的芯片數(shù)量即片選線數(shù)量不同,外部數(shù)據(jù)總線有8位、16位或32位。某些特殊應用ARM芯片如德國Micronas的PUC3030A沒有外部擴展功能。
1.14 UART和IrDA
幾乎所有的ARM芯片都具有1~2個UART接口,可以用于和PC機通訊或用Angel進行調試。一般的ARM芯片通訊波特率為115,200bps,少數(shù)專為藍牙技術應用設計的ARM芯片的UART通訊波特率可以達到920Kbps,如Linkup公司L7205。
1.15 DSP協(xié)處理器,見表3。
表3 ARM+DSP結構的ARM芯片
1.16 內置FPGA
有些ARM芯片內置有FPGA,適合于通訊等領域。見表4。
表4 ARM+FPGA結構的ARM芯片
1.17 時鐘計數(shù)器和看門狗
一般ARM芯片都具有2~4個16位或32位時鐘計數(shù)器和一個看門狗計數(shù)器。
1.18 電源管理功能
ARM芯片的耗電量與工作頻率成正比,一般ARM芯片都有低功耗模式、睡眠模式和關閉模式。
1.19 DMA控制器
有些ARM芯片內部集成有DMA(Direct Memory Access),可以和硬盤等外部設備高速交換數(shù)據(jù),同時減少數(shù)據(jù)交換時對CPU資源的占用。
另外,還可以選擇的內部功能部件有:HDLC,SDLC,CD-ROM Decoder,Ethernet MAC,VGA controller,DC-DC。可以選擇的內置接口有:IIC,SPDIF,CAN,SPI,PCI,PCMCIA。
最后需說明的是封裝問題。ARM芯片現(xiàn)在主要的封裝有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封裝具有芯片面積小的特點,可以減少PCB板的面積,但是需要專用的焊接設備,無法手工焊接。另外一般BGA封裝的ARM芯片無法用雙面板完成PCB布線,需要多層PCB板布線。
2 多芯核結構ARM芯片的選擇
為了增強多任務處理能力、數(shù)學運算能力、多媒體以及網(wǎng)絡處理能力,某些供應商提供的ARM芯片內置多個芯核,目前常見的ARM+DSP,ARM+FPGA,ARM+ARM等結構。
2.1 多ARM芯核
為了增強多任務處理能力和多媒體處理能力,某些ARM芯片內置多個ARM芯核。例如Portal player公司的PP5002內部集成了兩個ARM7TDMI芯核,可以應用于便攜式MP3播放器的編碼器或解碼器。從科勝訊公司(Conexant)分離出云的專門致力于高速通訊芯片設計生產(chǎn)的MinSpeed公司就在其多款高速通訊芯片中集成了2~4個ARM7TDMI內核。
2.2 ARM芯核+DSP芯核
為了增強數(shù)學運算功能和多媒體處理功能,許多供應商在其ARM芯片內增加了DSP協(xié)處理器。通常加入的DSP苡核有ARM公司的Piccolo DSP芯核、OAK公司16位定點DSP芯核、TI的TMS320C5000系列DSP芯核、Motorola的56K DSP芯核等。見表3。
2.3 ARM芯核+FPGA
為了提高系統(tǒng)硬件的在線升級能力,某些公司在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結構,但現(xiàn)在都轉向購買ARM公司的芯核進行新產(chǎn)品設計。由于它們購買ARM版權較晚,現(xiàn)在還沒有可銷售的ARM芯片,而OKI、NEC、AKM、OAK、Sharp、Sanyo、Sony、Rohm等日本半導體公司目前都已經(jīng)已經(jīng)指生產(chǎn)了ARM芯片。韓國的現(xiàn)代半導體公司也生產(chǎn)提供ARM芯片。另外 ,國外也很多設備制造商采用ARM公司芯核設計自己的專用芯片,如美國的IBM、3COM和新加坡的創(chuàng)新科技等。我國***地區(qū)可以提供ARM芯片的公司臺積電、臺聯(lián)電、華幫電子等。其它已購買ARM芯核,正在設計自主版板權專用芯片的大陸公司會為通訊中興通訊等。
4 選擇方案舉例
表6列舉的最佳方案僅供參考,由于SOC集成電路的發(fā)展非常迅速,今天的最佳方案到明天就可以不是最佳的了。因此任何時候在選擇方案時,都應廣泛搜尋一下主要的ARM芯片供應商,以找出最適合芯片。
評論
查看更多