系列處理器是英國ARM公司設計的主流嵌入式處理器
ARM7核心是0.9MIPS/MHz的三級流水線和馮·諾伊曼結構;
ARM9核心是5級流水線,提供1.1MIPS/MHz的哈佛結構。
ARM7沒有MMU,ARM720T是MMU的 ,ARM9主要包括ARM9TDMI和ARM9E-S等系列ARM9是有MMU的,ARM940T只有Memory protection unit.不是一個完整的MMU。
ARM9的時鐘頻率比ARM7更高,採用哈佛結構區分了資料匯流排和指令匯流排, ARM7處理器採用3級流水線,而ARM9採用5級流水線, 5級流水線能夠將每一個指令處理分配到5個時鐘週期內,在每一個時鐘週期內同時有5個指令在執行。在同樣的加工工藝下,ARM9TDMI處理器的時鐘頻率是ARM7TDMI的1.8~2.2倍。指令週期的改進,
指令週期的改進:
2.1 loads 指令矛n stores指令
指令週期數的改進最明顯的是loads指令和stores指令。從ARM7到ARM9這兩條指令的執行時間減少了30%。指令週期的減少是由於ARM7和ARM9兩種處理器內的兩個基本的微處理結構不同所造成的。
(1)ARM9有獨立的指令和資料儲存器介面,允許處理器同時進行取指和讀寫資料。這叫作改進型哈佛結構。而ARM7只有資料儲存器介面,它同時用來取指令和資料訪問。
(2)5級流水線引入了獨立的儲存器和寫回流水線,分別用來訪問儲存器和將結果寫回暫存器。
以上兩點實現了一個週期完成loads指令和stores指令。
2.2 互鎖(interlocks)技術
當指令需要的資料因為以前的指令沒有執行完而沒有準備好就會產生管道互鎖。當管道互鎖發生時,硬體會停止這個指令的執行,直到資料準備好為止。雖然這種技術會增加程式碼執行時間,但是為初期的設計者提供了巨大的方便。編譯器以及彙編程式設計師可以透過重新設計程式碼的順序或者其他方法來減少管道互鎖的數量。
2.3 分枝指令
ARM9和ARM7的分枝指令週期是相同的。而且ARM9TDMI和ARM9E-S並沒有對分枝指令進行預測處理。
ARM9結構及特點
以ARM9E-S為例介紹ARM9處理器的主要結構及其特點。
(1)32bit定點RISC處理器,改進型ARM/Thumb程式碼交織,增強性乘法器設計。支援實時(real-time)除錯;
(2)片內指令和資料SRAM,而且指令和資料的儲存器容量可調;
(3)片內指令和資料高速緩衝器(cache)容量從4K位元組到1M位元組;
(4)設定保護單元(protcction unit),非常適合嵌入式應用中對儲存器進行分段和保護;
(5)採用AMBA AHB匯流排介面,為外設提供統一的地址和資料匯流排;
(6)支援外部協處理器,指令和資料匯流排有簡單的握手信令支援;
(7)支援標準基本邏輯單元掃描測試方法學,而且支援BIST(built-in-self-test);
(8)支援嵌入式跟蹤宏單元,支援實時跟蹤指令和資料
系列處理器是英國ARM公司設計的主流嵌入式處理器
ARM7核心是0.9MIPS/MHz的三級流水線和馮·諾伊曼結構;
ARM9核心是5級流水線,提供1.1MIPS/MHz的哈佛結構。
ARM7沒有MMU,ARM720T是MMU的 ,ARM9主要包括ARM9TDMI和ARM9E-S等系列ARM9是有MMU的,ARM940T只有Memory protection unit.不是一個完整的MMU。
ARM9的時鐘頻率比ARM7更高,採用哈佛結構區分了資料匯流排和指令匯流排, ARM7處理器採用3級流水線,而ARM9採用5級流水線, 5級流水線能夠將每一個指令處理分配到5個時鐘週期內,在每一個時鐘週期內同時有5個指令在執行。在同樣的加工工藝下,ARM9TDMI處理器的時鐘頻率是ARM7TDMI的1.8~2.2倍。指令週期的改進,
指令週期的改進:
2.1 loads 指令矛n stores指令
指令週期數的改進最明顯的是loads指令和stores指令。從ARM7到ARM9這兩條指令的執行時間減少了30%。指令週期的減少是由於ARM7和ARM9兩種處理器內的兩個基本的微處理結構不同所造成的。
(1)ARM9有獨立的指令和資料儲存器介面,允許處理器同時進行取指和讀寫資料。這叫作改進型哈佛結構。而ARM7只有資料儲存器介面,它同時用來取指令和資料訪問。
(2)5級流水線引入了獨立的儲存器和寫回流水線,分別用來訪問儲存器和將結果寫回暫存器。
以上兩點實現了一個週期完成loads指令和stores指令。
2.2 互鎖(interlocks)技術
當指令需要的資料因為以前的指令沒有執行完而沒有準備好就會產生管道互鎖。當管道互鎖發生時,硬體會停止這個指令的執行,直到資料準備好為止。雖然這種技術會增加程式碼執行時間,但是為初期的設計者提供了巨大的方便。編譯器以及彙編程式設計師可以透過重新設計程式碼的順序或者其他方法來減少管道互鎖的數量。
2.3 分枝指令
ARM9和ARM7的分枝指令週期是相同的。而且ARM9TDMI和ARM9E-S並沒有對分枝指令進行預測處理。
ARM9結構及特點
以ARM9E-S為例介紹ARM9處理器的主要結構及其特點。
(1)32bit定點RISC處理器,改進型ARM/Thumb程式碼交織,增強性乘法器設計。支援實時(real-time)除錯;
(2)片內指令和資料SRAM,而且指令和資料的儲存器容量可調;
(3)片內指令和資料高速緩衝器(cache)容量從4K位元組到1M位元組;
(4)設定保護單元(protcction unit),非常適合嵌入式應用中對儲存器進行分段和保護;
(5)採用AMBA AHB匯流排介面,為外設提供統一的地址和資料匯流排;
(6)支援外部協處理器,指令和資料匯流排有簡單的握手信令支援;
(7)支援標準基本邏輯單元掃描測試方法學,而且支援BIST(built-in-self-test);
(8)支援嵌入式跟蹤宏單元,支援實時跟蹤指令和資料