摘要:ARM處理器是世界上最流行的嵌入式處理器,廣泛應用于個人通信等嵌入式領域。ARM7處理器雖然功能強大,但是目前已經開始退出主流應用領域,代替它的是性能更加強大的ARM9系列處理器。介紹了ARM9處理器與ARM7處理器的不同之處,并且給出了 ARM9的應用實例。
ARM9系列處理器是英國ARM公司設計的主流嵌入式處理器,主要包括ARM9TDMI和ARM9E-S等系列。本文主要介紹它們與ARM7TDMI的結構以及性能比較。
以手機應用為例,2G手機只需提供語音及簡單的文字短信功能,而目前的2.5G和未來的3G手機除了提供這兩項功能外,還必須提供各種其他的應用功能。主要包括:(1)無線網絡設備:手機上網、電子郵件及其他定位服務等功能;(2)PDA功能:含有用戶操作系統(tǒng)(Windows CE、Symbian OS、Linux等)及其他功能;(3)高性能功能:音頻播放器、視頻電話、手機游戲等。在2.5G和3G的應用中ARM9已經全面替代了ARM7。因為 ARM9的新特性能夠滿足各種新需求的同時減少產品研發(fā)時間并降低研發(fā)費用。
新一代的ARM9處理器,通過全新的設計,采用了更多的晶體管,能夠達到兩倍以上于ARM7處理器的處理能力。這種處理能力的提高是通過增加時鐘頻率和減少指令執(zhí)行周期實現(xiàn)的。
1 時鐘頻率的提高
ARM7 處理器采用3級流水線,而ARM9采用5級流水線,如圖1、2、3所示。增加的流水線設計提高了時鐘頻率和并行處理能力。5級流水線能夠將每一個指令處理分配到5個時鐘周期內,在每一個時鐘周期內同時有5個指令在執(zhí)行。在同樣的加工工藝下,ARM9TDMI處理器的時鐘頻率是ARM7TDMI的 1.8~2.2倍。
圖1、圖2和圖3
2 指令周期的改進
指令周期的改進對于處理器性能的提高有很大的幫助。性能提高的幅度依賴于代碼執(zhí)行時指令的重疊,這實際上是程序本身的問題。對于采用最高級的語言,一般來說,性能的提高在30%左右。
2.1 loads 指令矛n stores指令
指令周期數的改進最明顯的是loads指令和stores指令。從ARM7到ARM9這兩條指令的執(zhí)行時間減少了30%。指令周期的減少是由于ARM7和ARM9兩種處理器內的兩個基本的微處理結構不同所造成的。
(1)ARM9有獨立的指令和數據存儲器接口,允許處理器同時進行取指和讀寫數據。這叫作改進型哈佛結構。而ARM7只有數據存儲器接口,它同時用來取指令和數據訪問。
(2)5級流水線引入了獨立的存儲器和寫回流水線,分別用來訪問存儲器和將結果寫回寄存器。
以上兩點實現(xiàn)了一個周期完成loads指令和stores指令。
2.2 互鎖(interlocks)技術
當指令需要的數據因為以前的指令沒有執(zhí)行完而沒有準備好就會產生管道互鎖。當管道互鎖發(fā)生時,硬件會停止這個指令的執(zhí)行,直到數據準備好為止。雖然這種技術會增加代碼執(zhí)行時間,但是為初期的設計者提供了巨大的方便。編譯器以及匯編程序員可以通過重新設計代碼的順序或者其他方法來減少管道互鎖的數量。
2.3 分枝指令
ARM9和ARM7的分枝指令周期是相同的。而且ARM9TDMI和ARM9E-S并沒有對分枝指令進行預測處理。
3 ARM9結構及特點
以ARM9E-S為例介紹ARM9處理器的主要結構及其特點。ARM9E-S的結構如圖4所示。其主要特點如下:
(1)32bit定點RISC處理器,改進型ARM/Thumb代碼交織,增強性乘法器設計。支持實時(real-time)調試;
(2)片內指令和數據SRAM,而且指令和數據的存儲器容量可調;
(3)片內指令和數據高速緩沖器(cache)容量從4K字節(jié)到1M字節(jié);
(4)設置保護單元(protcction unit),非常適合嵌入式應用中對存儲器進行分段和保護;
(5)采用AMBA AHB總線接口,為外設提供統(tǒng)一的地址和數據總線;
(6)支持外部協(xié)處理器,指令和數據總線有簡單的握手信令支持;
(7)支持標準基本邏輯單元掃描測試方法學,而且支持BIST(built-in-self-test);
(8)支持嵌入式跟蹤宏單元,支持實時跟蹤指令和數據。
圖5
4 ARM9的典型應用
TI 公司的OMAP730是最新的無線通信基帶信號處理器。該處理器是TI的GPRS Class 12通信模塊與專用于應用處理的ARM926通用處理器(GPP)的集成。由于GPP的速度可達200MHz,因此OMAP730具有兩倍于上一代 OMAP710處理器的應用處理性能。如同所有的OMAP處理器一樣,OMAP730可支持領先的移動操作系統(tǒng),其中包括Microsoft的智能電話與 Pocket PC PhoneEdition、Svmbian OS與Series 60、Palm OS以及Linux。
TI OMAP730結構如圖5所示。其中ARM926TEJ處理器的主要特性包括:(1)最高頻率200MHz;(2)16KB指令高速緩存,8KB數據高速緩存;(3)硬件JAVA加速;(4)擴展多媒體指令集結構。
ARM微處理器是一種高性能、低功耗的32位微處器,它被廣泛應用于嵌入式系統(tǒng)中。ARM9代表了ARM公司主流的處理器,已經在手持電話、機頂盒、數碼像機、GPS、個人數字助理以及因特網設備等方面有了廣泛的應用。