詳解ARM的優勢及與單片機的區別

        目前大量的中、低端嵌入式應用,主要使用8/16位單片機。在國內,由於歷史的原因,主要是以MCS51核爲主的許多不同型號單片機,主要廠商有Atmel、Philips、Winbond、宏晶等。還有一些近幾年發展較快的新型單片機,如PIC、AVR、MSP430系列等。這些單片機各有特點,但從目前的發展角度來看,單片機針對特定應用領域的個性化發展愈發明顯。

1、軟件方面 

       這應該是最大的區別了。引入了操作系統。爲什麼引入操作系統?有什麼好處?

1)方便。主要體現在後期的開發,即在操作系統上直接開發應用程序。不像單片機一樣一切都要重新寫。前期的操作系統移植工作,還是要專業人士來做。

2)安全。這是LINUX的一個特點。LINUX的內核與用戶空間的內存管理分開,不會因爲用戶的單個程序錯誤而引起系統死掉。這在單片機的軟件開發中沒見到過。

3)高效。引入進程的管理調度系統,使系統運行更加高效。在傳統的單片機開發中大多是基於中斷的前後臺技術,對多任務的管理有侷限性。

2、硬件方面 

       現在的8位單片機技術硬件發展的也非常得快,也出現了許多功能非常強大的單片機。但是與32ARM相比還是有些差距吧。

       ARM芯片大多把SDRAM,LCD等控制器集成到片子當中。在8位機,大多要進行外擴。

       總的來說,單片機是個微控制器,ARM顯然已經是個微處理器了。

       引入嵌入式操作系統之後,可以實現許多單片機系統不能完成的功能。比如:嵌入式web服務器,java虛擬機等。也就是說,有很多免費的資源可以利用,上述兩種服務就是例子。如果在單片機上開發這些功能可以想象其中的難度。

ARM處理器的優勢詳解 

  對於如今大量出現的32位嵌入式應用,以筆者之見,ARM處理器的優勢主要有以下幾個方面。

   高性能、低功耗、低價格 

  把ARM處理器的性能拿來和一些著名的通用處理器(如Pentium)相比是不合適的,因爲他們各自針對的應用需求是不同的。Pentium處理器採用多條指令流水線的超標量結構,追求通用應用目標下的超強性能,功耗大,可以用散熱器加風扇散熱。ARM針對嵌入式應用,在滿足性能要求的前提下,力求最低的功率消耗。ARM結構的優點是能兼顧到性能、功耗、代碼密度、價格等幾個方面,而且做得比較均衡。在性能/功耗比(MIPS/W)方面,ARM處理器具有業界領先的性能。基於ARM核的芯片價格也很低,目前ARM CortexM的芯片價格可低至10元人民幣左右。

  豐富的可選擇芯片 

  ARM只是一個核,ARM公司自己不生產芯片,採用授權方式給半導體生產商。目前,全球幾乎所有的半導體廠家都向ARM公司購買了各種ARM核,配上多種不同的控制器(如LCD控制器、SDRAM控制器、DMA控制器等)和外設、接口,生產各種基於ARM核的芯片。目前,基於ARM核的各種處理器型號有好幾百種,在國內市場上,常見的有ST、TI、NXP、Atmel、Samsung、OKI、Sharp、Hynix、Crystal等廠家的芯片。用戶可以根據各自的應用需求,從性能、功能等方面考察,在許多具體型號中選擇最合適的芯片來設計自己的應用系統。由於ARM核採用向上兼容的指令系統,用戶開發的軟件可以非常方便地移植到更高的ARM平臺。

   廣泛的第三方支持

  以如今的技術,設計一個處理器並非難事,但要使這個處理器得到大家認可,並取得市場成功卻是非常困難的,其中涉及許多技術與非技術的因素和環節,還包括時機、運氣。因爲現在許多產品的開發,不是一個簡單的處理器加幾百條指令、語句就可以解決的。要用到32位處理器,一般都要有編譯器、高效的開發工具(仿真器及調試環境)、操作系統、協議棧等,這些東西都不是一個芯片生產商可以解決的,而需要許多第三方的支持。這就像一粒種子,需要土壤、空氣、水等環境才能發芽、成長。這也是我們的一些“中國芯”該反思之處。

  ARM通過近20年的培育、發展,得到了廣泛的第三方合作伙伴支持。目前,除通用編譯器GCC,ARM有自己的高效編譯、調試環境(MDK、Keil),全球約有50家以上的實時操作系統(RTOS)軟件廠商和30家以上的EDA工具製造商,還有很多高效率的實時跟蹤調試工具的廠商,對ARM提供了很好的支持。用戶採用ARM處理器開發產品,既可以獲得廣泛的支持,也便於和同行交流,加快開發進度,縮短產品的上市時間。

        完整的產品線和發展規劃

  ARM核根據不同應用需求對處理器的性能要求,有一個從ARM7、ARM9到ARM10、ARM11,以及新定義的CortexM/R/A系列完整的產品線。前幾年應用較多的主要是基於V4架構的ARM7TDMI、ARM720T、ARM920T核的一些處理器芯片,如NXP的LPC2000系列、ST的STR7/9系列、Atmel 的AT91系列和Samsung的S3C系列。近兩年,ARM Cortex系列以更好的性能、更低的價格得到快速推廣,典型的就是基於CortexM3的STM32系列。

  ARM CortexM/R/A系列分別針對不同的應用領域。M系列主要面向傳統微控制器(MCU/單片機)應用,這類應用面很廣,要求處理器有豐富的外設,並且各方面比較均衡;R系列強調實時性,主要用於實時控制,如汽車引擎;A系列面向高性能、低功耗應用系統,如智能手機。選用ARM處理器進行開發,技術積累性較強,生命週期長,設計重用度高,不易被淘汰。用戶在選擇ARM處理器時,可以針對應用需求,從大量的ARM芯片中選用滿足性能、功能要求的產品,以獲得較好的性價比。

ARM處理器在便攜、手持式設備以及工業控制等應用領域,在今後相當長的時間內是一個很好的選擇。當然,沒有一種型號的處理器是可以覆蓋所有應用的,也不是搬上一個嵌入式OS,就可以很好地解決軟件問題的。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章