ARM 之五 发展史及各时期内核(ARM1 ~ ARM11 / Cortex)介绍
很久很久以前
??1978年12月5日,物理學家赫爾曼·豪澤(Hermann Hauser)和工程師 Chris Curry,在英國劍橋創辦了CPU公司(Cambridge Processing Unit),主要業務是為當地市場供應電子設備。1979年,CPU公司改名為Acorn計算機公司。
據說,還有一名創始人叫 Andy Hopper。Andy Hopper是Acorn的研究主管,但為了顧及自己在劍橋大學的本職工作,他刻意保持低調,而將代表公開露面的機會留給了另外兩位創始人。
??1985年,Roger Wilson和Steve Furber設計了他們自己的第一代32位、6MHz的處理器,用它做出了一臺RISC指令集的計算機,簡稱ARM(Acorn RISC Machine)。這就是第一代ARM處理器 ARM1。隨后,改良版的ARM2也被研發出來。ARM2被用在BBC Archimedes 305上。
??后來 Acorn 被 Olivetti 收購,在 Andy Hopper 的提一下,1990年11月27日,Advanced RISC Machines Ltd.(簡稱 ARM)被分拆出來,正式成為一家獨立的處理器公司。由蘋果公司出資150萬英鎊,芯片廠商 VLSI 出資25萬英鎊,Acorn 本身則以150萬英鎊的知識產權和12名工程師入股。公司的辦公地點非常簡陋,就是一個谷倉。
??這個項目到后來進入“ARM6”,首版的樣品在1991年發布,然后蘋果計算機使用ARM6架構的ARM 610來當作他們Apple Newton產品的處理器。在1994年,艾康計算機使用ARM 610做為他們個人計算機產品的處理器。
產品分類
??ARM產品的分類可以按照ARMv1、ARMv2、ARMv3、ARMv4等構架來分類。從1983年開始,ARM內核共有ARM1、ARM2、ARM6、ARM7、ARM9、ARM10、ARM11和Cortex以及對應的修改版或增強版組成,越靠后的內核,初始頻率越高、架構越先進,功能也越強。架構和內核對應關系如下圖(截取自維基百科:https://en.wikipedia.org/wiki/List_of_ARM_microarchitectures )所示:
- 由 ARM 自己設計的內核:
下面一張圖是,ARM內核發布時間:
- 除了 ARM 公司自己設計的內核,還有些內核實現了ARM指令集,是由具有ARM架構許可證的公司獨立開發:
總結來說,ARM 處理器產品分為經典ARM處理器系列和最新的Cortex處理器系列。
Classic處理器
-
ARM7微處理器系列:1994年推出,使用范圍最廣的 32 位嵌入式處理器系列。 0.9MIPS/MHz的三級流水線和馮諾依曼結構。ARM7系列包括ARM7TDMI、ARM7TDMI-S、帶有高速緩存處理器宏單元的ARM720T。該系列處理器提供Thumb 16位壓縮指令集和EmbededICE軟件調試方式,適用于更大規模的SoC設計中。ARM7TDMI基于ARM體系結構V4版本,是目前低端的ARM核。
-
ARM9微處理器系列:ARM9采用哈佛體系結構,指令和數據分屬不同的總線,可以并行處理。在流水線上,ARM7是三級流水線,ARM9是五級流水線。由于結構不同,ARM7的執行效率低于ARM9。基于Arm9內核的處理器,是具有低功耗,高效率的開發平臺。廣泛用于各種嵌入式產品。它主要應用于音頻技術以及高檔工業級產品,可以跑Linux以及Wince等高級嵌入式系統,可以進行界面設計,做出人性化的人機互動界面,像一些網絡產品和手機產品。
-
ARM9E微處理器系列:ARM9E中的E就是Enhance instrcTIons,意思是增強型DSP指令,說明了ARM9E其實就是ARM9就一個擴充,變種。ARM9E系列微處理器為可綜合處理器,使用單一的處理器內核提供了微控制器、DSP、Java應用系統的解決方案,極大的減少了芯片的面積和系統的復雜程度。ARM9E系列微處理器提供了增強的DSP處理能力,很適合于那些需要同時使用DSP和微控制器的應用場合。
-
ARM10E微處理器系列:ARM10E系列微處理器為可綜合處理器,使用單一的處理器內核提供了微控制器、DSP、Java應用系統的解決方案,極大的減少了芯片的面積和系統的復雜程度。ARM9E系列微處理器提供了增強的DSP處理能力,很適合于那些需要同時使用DSP和微控制器的應用場合。ARM10E與ARM9E區別在于,ARM10E使用哈佛結構,6級流水線,主頻最高可達325MHz,1.35MIPS/HZ。
-
ARM11微處理器系列:ARM公司近年推出的新一代RISC處理器,它是ARM新指令架構——ARMv6的第一代設計實現。該系列主要有ARM1136J,ARM1156T2和ARM1176JZ三個內核型號,分別針對不同應用領域。ARM11的媒體處理能力和低功耗特點,特別適用于無線和消費類電子產品;其高數據吞吐量和高性能的結合非常適合網絡處理應用;另外,也在實時性能和浮點處理等方面ARM11可以滿足汽車電子應用的需求。
Cortex系列
??ARM公司在經典處理器ARM11以后的產品改用Cortex命名,并分成A、R和M三類,旨在為各種不同的市場提供服務。Cortex系列屬于ARMv7架構,由于應用領域不同,基于v7架構的Cortex處理器系列所采用的技術也不相同,基于v7A的稱為Cortex-A系列,基于v7R的稱為Cortex-R系列,基于v7M的稱為Cortex-M系列。
- Application Processors(應用處理器):面向移動計算,智能手機,服務器等市場的的高端處理器。這類處理器運行在很高的時鐘頻率(超過1GHz),支持像Linux,Android,MS Windows和移動操作系統等完整操作系統需要的內存管理單元(MMU)。 如果規劃開發的產品需要運行上述其中的一個操作系統,你需要選擇ARM 應用處理器.
- Real-time Processors (實時處理器):面向實時應用的高性能處理器系列,例如硬盤控制器,汽車傳動系統和無線通訊的基帶控制。多數實時處理器不支持MMU,不過通常具有MPU、Cache和其他針對工業應用設計的存儲器功能。實時處理器運行在比較高的時鐘頻率(例如200MHz 到 >1GHz ),響應延遲非常低。雖然實時處理器不能運行完整版本的Linux和Windows操作系統, 但是支持大量的實時操作系統(RTOS)。
- Microcontroller Processors(微控制器處理器):微控制器處理器通常設計成面積很小和能效比很高。通常這些處理器的流水線很短,最高時鐘頻率很低(雖然市場上有此類的處理器可以運行在200Mhz之上)。 并且,新的Cortex-M處理器家族設計的非常容易使用。因此,ARM 微控制器處理器在單片機和深度嵌入式系統市場非常成功和受歡迎。
Cortex-M 處理器家族更多的集中在低性能端,但是這些處理器相比于許多微控制器使用的傳統處理器性能仍然很強大。例如,Cortex-M4 和 Cortex-M7 處理器應用在許多高性能的微控制器產品中,最大的時鐘頻率可以達到400Mhz。
三個處理器系列的主要特征
參考
總結
以上是生活随笔為你收集整理的ARM 之五 发展史及各时期内核(ARM1 ~ ARM11 / Cortex)介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SourceInsight 4.0 之三
- 下一篇: STM32 之九 HAL 库串口(USA