面對一個新項目,我們該如何選擇ARM處理器?
ARM 處理器是一款成本不高且耗能低的微處理器,同時支持 ARM 和 Thumb兩種指令集,前者為 32bit,后者是 16bit;擁有多種寄存器,能夠高效、準確的處理其中大部分數(shù)據(jù)信息;ARM 微處理器的多種尋址方式讓系統(tǒng)程序在運行時變得更加靈活高效。自 ARM 微處理器被提出和推廣以來,出現(xiàn)了多種不同版本、不同內(nèi)核以及應(yīng)用在不同場景下的系列,分別有這幾種:ARM7、ARM9、ARM9E、ARM10E、ARM11、SecurCore、Cortex 系列[34]等,版本不同,其內(nèi)核和架構(gòu)也存在差異。
對于一個產(chǎn)品的功能、性能一旦定制下來,其所在的應(yīng)用領(lǐng)域也隨之確定。應(yīng)用領(lǐng)域的確定將縮小選型的范圍,例如:工業(yè)控制領(lǐng)域產(chǎn)品的工作條件通常比較苛刻,因此對芯片的工作溫度通常是寬溫的,這樣就得選擇工業(yè)級的芯片,民用級的就被排除在外。目前,比較常見的應(yīng)用領(lǐng)域分類有航天航空、通信、計算機、工業(yè)控制、醫(yī)療系統(tǒng)、消費電子、汽車電子等。
ARM處理器自帶資源,經(jīng)常會看到或聽到這樣的問題:主頻是多少?有無內(nèi)置的以太網(wǎng)MAC?有多少個I/O口?自帶哪些接口?支持在線仿真嗎?是否支持OS,能支持哪些OS?是否有外部存儲接口?……以上都涉及芯片資源的問題,微處理器自帶什么樣的資源是選型的一個重要考慮因素。系統(tǒng)的工作頻率在很大程度上決定了ARM微處理器的處理能力。ARM7系列微處理器的典型處理速度為0.9MIPS/MHz,常見的ARM7芯片系統(tǒng)主時鐘為 20MHz-133MHz,ARM9系列微處理器的典型處理速度為1.1MIPS/MHz,常見的ARM9的系統(tǒng)主時鐘頻率為100MHz- 233MHz,ARM10最高可以達到700MHz。不同芯片對時鐘的處理不同,有的芯片只需要一個主時鐘頻率,有的芯片內(nèi)部時鐘控制器可以分別為ARM核和USB、UART、DSP、音頻等功能部件提供不同頻率的時鐘。
除ARM微處理器核以外,幾乎所有的ARM芯片均根據(jù)各自不同的應(yīng)用領(lǐng)域,擴展了相關(guān)功能模塊,并集成在芯片之中,我們稱之為片內(nèi)外圍電路,如USB接口、IIS 接口、LCD控制器、鍵盤接口、RTC、ADC和DAC、DSP協(xié)處理器等,設(shè)計者應(yīng)分析系統(tǒng)的需求,盡可能采用片內(nèi)外圍電路完成所需的功能,這樣既可簡化系統(tǒng)的設(shè)計,同時提高系統(tǒng)的可靠性。芯片自帶資源越接近產(chǎn)品的需求,產(chǎn)品開發(fā)相對就越簡單。MCU可擴展資源,硬件平臺要支持OS、RAM和ROM,對資源的要求就比較高。芯片一般都有內(nèi)置RAM和ROM,但其容量一般都很小,內(nèi)置512 KB就算很大了,但是運行OS一般都是兆級以上。這就要求芯片可擴展存儲器。
對于低功耗設(shè)備,就要選擇功耗低的ARM處理器,對于高性能產(chǎn)品,我們就需要選擇主頻高的ARM處理器。對于某些場合,受空間的限制,必須考慮體積大小問題,對于處理芯片來說與封裝密切相關(guān)。常見的貼片封裝包括QFP、LQFP、BGA等形式。其中BGA封裝具有芯片面積小的特點,可以減少PCB板的面積。
選擇ARM處理器時還要考慮仿真器,仿真器是硬件和底層軟件調(diào)試時要用到的工具,開發(fā)初期如果沒有它基本上會寸步難行。選擇配套適合的仿真器,將會給開發(fā)帶來許多便利。對于已經(jīng)有仿真器的人們,在選型過程中要考慮它是否支持所選的芯片。還要考慮技術(shù)支持力度如何,現(xiàn)在的趨勢是買服務(wù),也就是買技術(shù)支持。一個好的公司的技術(shù)支持能力相對比較有保證,所以選芯片時最好選擇知名的半導(dǎo)體公司。另外,芯片的成熟度取決于用戶的使用規(guī)模及使用情況。選擇市面上使用較廣的芯片,將會有比較多的共享資源,給開發(fā)帶來許多便利。