天天看點

嵌入式定制開發選ARM7還是ARM9

ARM公司設計了許多處理器,它們可以根據使用的不同核心劃分到各個系列中。系列劃分是基于ARM7、ARM9、ARM10、ARM11和Cortex核心。字尾數字7、9、10和11表示不同的核心設計。數字的升序說明性能和複雜度的提高。

嵌入式定制

ARM7系列處理器是英國ARM公司設計的主流嵌入式處理器ARM7核心是0.9MIPS/MHz的三級流水線和馮·諾伊曼結構;ARM9核心是5級流水線,提供1.1MIPS/MHz的哈佛結構。ARM7沒有MMU。

ARM7系列包括ARM7TDMI、ARM7TDMI-S、帶有高速緩存處理器宏單元的ARM720T。該系列處理器提供Thumb16位壓縮指令集和EmbededICE軟體調試方式,适用于更大規模的SoC設計中。ARM7TDMI基于ARM體系結構V4版本,是目前低端的ARM核。

ARM7TDMI處理器是ARM通用32位微處理器家族的成員之一。它具有優異的性能,但功耗卻很低,使用門的數量也很少。它屬于精簡指令集計算機(RISC),比複雜指令集計算機(CISC)要簡單得多。這樣的簡化實作了:高的指令吞吐量;出色的實時中斷響應;小的、高成本效益的處理器宏單元。三級流水線:ARM7TDMI處理器使用流水線來增加處理器指令流的速度。這樣可使幾個操作同時進行,并使處理和存儲器系統連續操作,能提供0.9MIPS/MHz的指令執行速度。ARM7TDMI的流水線分3級,分别為:取指、譯碼、執行。正常操作過程中,在執行一條指令的同時對下一條指令進行譯碼,并将第三條指令從存儲器中取出。内同時有5個指令在執行。在同樣的加工工藝下,ARM9TDMI處理器的時鐘頻率是ARM7TDMI的1.8~2.2倍。

ARM9系列處理器是英國ARM公司設計的主流嵌入式處理器,主要包括ARM9TDMI和ARM9E-S等系列。

arm嵌入式定制.jpg

ARM9采用哈佛體系結構,指令和資料分屬不同的總線,可以并行處理。在流水線上,ARM7是三級流水線,ARM9是五級流水線。由于結構不同,ARM7的執行效率低于ARM9。平時所說的ARM7、ARM9實際上指的是ARM7TDMI、ARM9TDMI軟核,這種處理器軟核并不帶有MMU和cache,不能夠運作諸如linux這樣的嵌入式作業系統。而ARM公司對這種架構進行了擴充,是以有了ARM710T、ARM720T、ARM920T、ARM922T等帶有MMU和cache的處理器核心。

ARM7與ARM9的差別

1.時鐘頻率的提高

雖然ARM7和ARM9核心架構相同,但ARM7處理器采用3級流水線的馮·諾伊曼結構;,而ARM9采用5級流水線的哈佛結構。增加的流水線設計提高了時鐘頻率和并行處理能力。5級流水線能夠将每一個指令處理配置設定到5個時鐘周期内,在每一個時鐘周期内同時有5個指令在執行。在常用的晶片生産工藝下,ARM7一般運作在100MHz左右,而ARM9則至少在200MHz以上。

2指令周期的改進

指令周期的改進對于處理器性能的提高有很大的幫助。性能提高的幅度依賴于代碼執行時指令的重疊,這實際上是程式本身的問題。對于采用最進階的語言,一般來說,性能的提高在30%左右。

3.MMU(記憶體管理單元)

ARM7一般沒有MMU(記憶體管理單元),(ARM720T有MMU)。ARM9一般是有MMU的,ARM9940T隻有MPU,不是一個完整的MMU。

這一條很重要,MMU單元是大型作業系統必需的硬體支援,如linux;WINCE等。這就是說,ARM7一般隻能運作小型的實時系統如UCOS-II,eCOS等,而ARM9無此限制,一般的作業系統都可以移植。其實即使ARM720T能支援LINUX;WINCE等系統,也鮮有人用,因為以ARM7的運作速度跑這種大型作業系統,實在有點吃力。再者兩者的應用領域明顯不同,也無此必要。

4.ARM7比ARM9提供了更好的性能-功耗比。它包含了THUMB指令集快速乘法指令和ICE調試技術的核心。

5.在從ARM7到ARM9的平台轉變過程中,有一件事情是非常值得慶幸的,即ARM9E能夠完全地向後相容ARM7上的軟體;并且開發人員面對的程式設計模型和架構基礎也保持一緻。

如果是一般性控制系統或僅僅用來替換8獲16位機,ARM7顯然是首選;但如果用在網絡通信或大型的音視訊處理等,則ARM9較合适。

上一篇: 容器探針
下一篇: 初始化容器

繼續閱讀