【正文】
但是, 對(duì)于存儲(chǔ)器映射的I/O空間的操作,不能使用 Cache技術(shù)。 ARM支持最多 16個(gè)域,每個(gè)域的訪問控制特性都是由 CP15中的寄存器 C3中的兩位來控制的。它定義了與之相應(yīng)的 1M存儲(chǔ)空間是如何映射的。 b)二級(jí)頁(yè)表中包含有以大頁(yè)和小頁(yè)為單位的地址變換條目 。 44 存儲(chǔ)管理單元 MMU Ⅲ (1) 3. MMU中的地址變換過程 :通過兩級(jí)頁(yè)表實(shí)現(xiàn)。 如果芯片規(guī)定當(dāng)禁止 MMU時(shí)禁止 cache和 write buffer, 則存儲(chǔ)訪問將不考慮 C和 B控制位 。在 ARM中采用了頁(yè)式虛擬存儲(chǔ)管理。 ? 存儲(chǔ)器請(qǐng)求信號(hào): nMREQ、 SEQ。 ? 16位有符號(hào)和無符號(hào)半字 , 以 2字節(jié)的邊界對(duì)齊 。 ? 價(jià)格 : 具有 SM位的存儲(chǔ)器 , 每位價(jià)格表示為 c=C/ Sm。 其中 W為存儲(chǔ)體的字長(zhǎng) (單位為位或字節(jié) ), l為單個(gè)存儲(chǔ)體的字?jǐn)?shù), m為并行工作的存儲(chǔ)體個(gè)數(shù)。 21 存儲(chǔ)器部件的分類 ? 按在系統(tǒng)中的地位分類: ? “ 主存儲(chǔ)器 ”(Main Memory, 簡(jiǎn)稱內(nèi)存或主存 ) ? “輔助存儲(chǔ)器 ”(Auxiliary Memory,Secondary Memory,簡(jiǎn)稱輔存或外存 ) ? 按存儲(chǔ)介質(zhì)分類: 磁存儲(chǔ)器 (Magic Memory),半導(dǎo)體集成電路存儲(chǔ)器 (通常稱為半導(dǎo)體存儲(chǔ)器 ), 光存儲(chǔ)器 (Optical Memory), 激光光盤存儲(chǔ)器 (Laser Optical Disk) ? 按信息存取方式分類: ? 隨機(jī)存取存儲(chǔ)器 RAM ? 只讀存儲(chǔ)器 ROM 22 存儲(chǔ)器的組織和結(jié)構(gòu) ? 嵌入式存儲(chǔ)器一般采用存儲(chǔ)密度較大的存儲(chǔ)器芯片, 典型的嵌入式存儲(chǔ)器系統(tǒng)由 ROM、 RAM、EPROM等組成 。 16 流水線技術(shù) Ⅰ 1. ARM的 3級(jí)流水線 f e t c h d e c o d e e x c u t ef e t c h d e c o d e e x c u t ef e t c h d e c o d e e x c u t e123指 令 時(shí) 間17 流水線技術(shù) Ⅱ 多周期 ARM指令的 3級(jí)流水線操作 f e t c h A D D d e c o d e e x c u t e123指 令 時(shí) 間f e t c h S T R d e c o d e c a l c : a d d r d a t a x f e rf e t c h A D D d e c o d e e x c u t ef e t c h A D D d e c o d e e x c u t ef e t c h A D D d e c o d e e x c u t e4518 流水線技術(shù) Ⅲ 2. ARM的流水線設(shè)計(jì)問題 ( 1)縮短程序執(zhí)行時(shí)間 : ? 提高時(shí)鐘頻率 fclk ? 減少每條指令的平均時(shí)鐘周期數(shù) CPI ( 2)解決流水線相關(guān) : ? 結(jié)構(gòu)相關(guān) ? 數(shù)據(jù)相關(guān) ? 控制相關(guān) 19 流水線技術(shù) Ⅳ 3. ARM的 5級(jí)流水線 ARM9和 StrongARM架構(gòu)都采用了 5級(jí)流水線 . ? 增加了 ICache和 DCache, 把存儲(chǔ)器的取指與數(shù)據(jù)存取分開 ; ? 增加了數(shù)據(jù)寫回的專門通路和寄存器 ; ? 把指令的執(zhí)行過程分割為 5部分 : 取指 指令譯碼 執(zhí)行 數(shù)據(jù)緩存 寫回 20 超標(biāo)量執(zhí)行 通過重復(fù)設(shè)置多套指令執(zhí)行部件,同時(shí)處理并完成多條指令,實(shí)現(xiàn)并行操作,來達(dá)到提高處理速度的目的 。 ? 優(yōu)化編譯 。 操作數(shù)由加載 /存儲(chǔ)指令從存儲(chǔ)器取出放寄存器內(nèi)操作 。 ? 進(jìn)入 Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位 ( 位 [0])為 1時(shí) , 執(zhí)行 BX指令 。 此架構(gòu)在 V5版基礎(chǔ)上增加了以下功能: ? THUMBTM: 35%代碼壓縮; ? DSP擴(kuò)充:高性能定點(diǎn) DSP功能; ? JazelleTM: Jova性能優(yōu)化 , 可提高 8倍; ? Media擴(kuò)充:音 /視頻性能優(yōu)化 , 可提高 4倍 。 ? 把一些未使用的指令空間捕獲為未定義指令 。 6 ARM版本 Ⅲ 3. V3版架構(gòu) V3版架構(gòu)對(duì) ARM體系結(jié)構(gòu)作了較大的改動(dòng): ? 尋址空間增至 32位 ( 4GB) ; ? 當(dāng)前程序狀態(tài)信息從原來的 R15寄存器移到當(dāng)前程序狀 態(tài) 寄 存 器 CPSR 中 ( Current Program Status Register) 。 ? 轉(zhuǎn)移指令 , 包括子程序調(diào)用及鏈接指令; ? 供操作系統(tǒng)使用的軟件中斷指令 SWI; ? 尋址空間: 64MB( 226) 。 ARM32位體系結(jié)構(gòu)目前被公認(rèn)為是嵌入式應(yīng)用領(lǐng)域領(lǐng)先的 32位嵌入式 RISC微處理器結(jié)構(gòu)。 第二章 ARM微處理器硬件結(jié)構(gòu) 本章主要內(nèi)容: ? 計(jì)算機(jī)體系結(jié)構(gòu)分類 ? ARM版本及系列 ? ARM處理器結(jié)構(gòu) ? 存儲(chǔ)系統(tǒng)機(jī)制 1 計(jì)算機(jī)體系結(jié)構(gòu) Ⅰ