freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

[理學]第2章arm微處理器硬件結構-資料下載頁

2025-02-22 00:38本頁面
  

【正文】 特點: 硬件簡單 沖突概率高 出現大量空閑塊 很少使用。 計算機應用研究所 111 組相聯映像與變換 111 映像關系: 主存第 M塊只能映象到 cache的第 k 組,但組內映像任意 : k= M mod( G) ( G為 Cache的組數) 討論: Cache組數為 1時,全相聯映像; Cache組內塊數為 1 ,直接映像; 當主存空間和 Cache空間確定時,組內塊數多,沖突概率小,變換復雜,組內塊數少,沖突概率大,變換簡單。 計算機應用研究所 112 段相聯映象 ? 減少相聯目錄表的容量,降低成本,提高地址變換速度。 ? 組間全相聯,組內直接映象。 計算機應用研究所 113 ARM Cache的替換算法 ? 輪轉法 ? 輪轉法維護一個邏輯計數器,利用該計數器依次選擇將要被替換出去的 cache塊。 ? 隨機替換算法 ? 通過一個偽隨機數發(fā)生器產生一個偽隨機數,以新塊替換編號為該偽隨機數的 cache塊。 算法的優(yōu)點:算法簡單,易于實現。 缺點:命中率低, cache平均性能 不穩(wěn)定。 Cache的地址變換和 替換全部利用硬件實現 . 計算機應用研究所 114 ARM存儲管理單元 MMU ? 與其他中低檔單片機不同, ARM處理器中一般都包含一個存儲器管理部件,用于對存儲器的管理。 ? 為了適應不同的嵌入式應用, ARM存儲系統(tǒng)的體系結構存在很多差別。簡單的可以使用像單片機系統(tǒng)中使用的平板式地址映射機制即可;而一些復雜的系統(tǒng)中則可能包含多種技術來支持功能強大的存儲系統(tǒng)。 計算機應用研究所 115 ARM存儲管理單元 MMU ? 在 ARM系統(tǒng)中,存儲管理單元 MMU主要完成以下工作: ? 虛擬存儲空間到物理存儲空間的映射。在 ARM中采用了頁式虛擬存儲管理。它把虛擬地址空間分成一個個固定大小的塊,每一塊稱為一頁,把物理內存的地址空間也分成同樣大小的頁。MMU實現的就是從虛擬地址到物理地址的轉換。 ? 存儲器訪問權限的控制。 ? 設置虛擬存儲空間的緩沖的特性。 計算機應用研究所 116 ARM存儲管理單元 MMU ?系統(tǒng)控制協處理 CP15的功能 ?用于處理、控制 ARM的特殊性能 ?片上存儲器管理單元 (MMU) ?指令、數據緩存 ?寫緩沖器 計算機應用研究所 117 寄存器 作 用 寄存器 C1中的某些位 用于配置 MMU中的一些操作 寄存器 C2 保存內存中一級頁表的基地址 寄存器 C3 設置域( domain)的訪問控制屬性 寄存器 C4 保留 寄存器 C5 內存訪問失效狀態(tài)指示 寄存器 C6 內存訪問失效時失效的地址( (虛擬地址) ) 寄存器 C8 控制與清除 TLB內容相關操作 寄存器 C10 控制與鎖定 TLB內容相關操作 協處理 CP15 ? 為控制這些特性, CP15提供了 16 個額外寄存器 ,其中 8個與 MMU相關 117 禁止、使能 MMU、cache和寫緩沖 32bit,每 2位設置一個域的 4種不同訪問屬性。 00沒有訪問權限 這時訪問該域將產生訪問失效 01客戶( client) 根據 CP15的 C1控制寄存器中的 R和 S位以及頁表中地址變換條目中的訪問權限控制位 AP來確定是否允許各種系統(tǒng)工作模式的存儲訪問 10保留 使用該值會產生不可預知的結果 11管理者( manager) 不考慮 CP15的 C1控制寄存器中的 R和 S位以及頁表中地址變換條目中的訪問權限控制位 AP,在這種情況下不管系統(tǒng)工作在特權模式還是用戶模式都不會產生訪問失效 引起訪問失效的原因。例,地址未對齊,頁表訪問失效等。 向 C8寫入控制字,清除TLB的內容。 鎖定 TLB,進行替換。 計算機應用研究所 118 ARM存儲管理單元 MMU ? CP15的寄存器 C1的位 [0]用于控制禁止 /使能 MMU ? 當 CP15的寄存器 C1[0]=0時,禁止 MMU; ? 當 C1[0]=1時,使能 MMU。 ? 訪問 CP15寄存器的指令有如下兩條: ? MCR Register Coprocessor Register ? MRC Coprocessor Register Register 注意: 這兩條指令只能在系統(tǒng)模式下執(zhí)行;在用戶模式下執(zhí)行該指令將引起異常。 計算機應用研究所 119 ARM存儲器存儲訪問過程 ?使能 MMU時存儲訪問過程 : ? 芯片設置為 MMU使能 (設置 CP15的相應寄存器 ) ? 根據 ARM輸出的虛擬地址在 TLB中搜索,在這個過程當中,如果該虛擬地址對應的地址變換條目不在 TLB中, CPU從位于內存中的頁表中查詢 注意: 對應于該虛擬地址的 地址變換條目,并把 相應的結果添加到 TLB中。如果 TLB已 經滿了,則需要根據 一定的替換算法進行替換。 0x0800 0x0400 虛擬地址高位邏輯頁號 物理地址高位物理頁號 虛擬地址 物理地址 0x0800 00e3 0x0400 00e3 計算機應用研究所 120 ARM存儲器存儲訪問過程 ? 當得到了需要的地址變換條目后 , 將進行以下的操作: ? ① 得到該虛擬地址對應的物理地址 。 ? ② 根 據 條 目 中 C ( cachable ) 控 制 位 和 B (Bufferable) 控制位決定是否緩存該內存訪問的結果 。 ? ③ 根據存儲權限控制位和域訪問控制位確定該內存訪問是否被允許 。 如果該內存訪問不被允許 , CP15向 ARM處理器報告存儲訪問中止 。 備注 : 對于不允許緩存( uncached)的存儲訪問,使用步驟( 1)中得到的物理地址訪問內存。對于允許緩存( cached)的存儲訪問,如果在 cache命中,則忽略物理地址;如果 cache沒有命中,則使用步驟( 1)中得到的物理地址訪問內存,并把該塊數據讀取到 cache中。 計算機應用研究所 121 ARM存儲器存儲訪問過程 ? 允許緩存( cached)的 MMU存儲訪問示意圖如 下 訪 問 權 限控 制 硬 件T L B頁 表 遍 歷 硬件 系 統(tǒng)A R MC a c h e與 W r i t eB u f f e rC a c h e 內 容 獲取 硬 件 系 統(tǒng)主 存 儲 系 統(tǒng)虛 擬 地 址物 理 地 址C 、 B 位域 控 制 位訪 問 控 制 位計算機應用研究所 122 ARM存儲器存儲訪問過程 ? 禁止 MMU時存儲訪問過程 ? 先要確定芯片是否支持 cache和 write buffer ? ① 如果芯片禁止 cache和 write buffer(設置cp15寄存器實現),則存儲訪問將不考慮 C和 B控制位,以 arm處理器輸出的地址作為物理地址訪問存儲器, arm存儲器不經 cache和 write buffer與主存交換數據。 計算機應用研究所 123 ARM存儲器存儲訪問過程 ? ② 如果芯片禁止 MMU時使能 cache和 write buffer, arm存儲器經 cache和 write buffer,與主存交換數據。 ? 如果使用統(tǒng)一的 TLB,置 C=0,B=0; ? 若使用分開的 TLB,則數據訪問時,置 C=0,B=0;指令讀取時,置 C=1(指令 cache只讀,不必寫緩沖) ? ③ 所有的物理地址和虛擬地址相等,即使用平板存儲模式,存儲訪問不進行權限控制, MMU也不會產生存儲訪問中止信號。 計算機應用研究所 124 MMU中的地址變換過程 ARM系統(tǒng)中虛擬存儲空間到物理存儲空間的映射都是以內存塊為單位進行的。即虛擬存儲空間中一塊連續(xù)的存儲空間被映射到物理存儲空間中同樣大小的一塊連續(xù)存儲空間。 在頁表和 TLB中,每一個地址變換條目實際上記錄了一個虛擬存儲空間的存儲塊的基地址與物理存儲空間相應的一個存儲塊的基地址的對應關系。根據存儲塊大小,可以有多種地址變換 . 計算機應用研究所 125 MMU中的地址變換過程 ? ARM支持的存儲塊 : 段( section):由 1MB 的存儲器塊構成 大頁( large page):由 64KB 的存儲器塊構成 小頁( small page):由 4KB 的存儲器塊構成 微頁( tiny page):由 1KB 的存儲器塊構成 計算機應用研究所 126 MMU中的地址變換過程 ? 在 MMU中實現虛擬地址到物理地址的映射是通過兩級頁表來實現的: ? 一級頁表中包含有以段為單位的地址變換條目以及指向二級頁表的指針。一級頁表實現的地址映射粒度較大。以段為單位的地址變換過程只需要一級頁表。 ? 二級頁表中包含有以大頁和小頁為單位的地址變換條目。有一種類型的二級頁表還包含有以極小頁為單位的地址變換條目。以頁為單位的地址變換過程需要二級頁表。 計算機應用研究所 127 一級頁表的地址變換過程 頁表的基地址 為 0 頁表內序號 頁表的基地址 頁表內序號 00 cp15的寄存器 C2 31 20 19 0 31 14 13 2 1 0 CP15的寄存器 C2中存放的是內存中頁表的基地址。其中位[31..14]為內存中頁表的基地址,位 [13..0]為 0。 CP15的寄存器 C2的位 [31..14]和虛擬地址的位 [31..20]結合作為一個32位數的高 30位,在將該 32位數的低兩位值為 00,從而形成一個 32位的索引值。 計算機應用研究所 128 四種格式的 一級描述符 0 0 粗粒度二級頁表的基地址 0 域 用戶定義 0 1 段基地址 為 0 A P 0 域 C B 1 0 細粒度二級頁表基地址 為 0 域 用戶定義 1 1 無效 粗表 段 細表 31 20 19 12 11 10 9 8 5 4 3 2 1 0 計算機應用研究所 129 粗粒度頁表描述符 ? 當一級描述符的位 [1..0]為 0b01( 0b代表二進制)時,該一級描述符中包含了粗粒度的二級頁表的物理地址,這種一級描述符稱為粗粒度頁表描述符。它的格式和各個字段的含義如下: 粗粒度二級頁表的基地址 0 域 用戶定義 0 1 31 10 9 8 5 4 2 1 0 一級描述符的類型標識 由用戶定義 本段所在的域的標識符 當前未使用應為 0 粗粒度二級頁表的基地址,該地址是 1KB對齊的 計算機應用研究所 130 粗粒度頁表 ? 粗粒度頁表描述符獲取二級描述符的過程 頁 表 基 地 址 為 0頁 表 基 地 址 一 級 頁 表 內 偏 移 序 號 0 0一 級 頁 表 內 偏 移 序 號 二 級 頁 表 內 偏 移 序 號二 級 頁 表 基 地 址1 0用 戶 定 義域0二 級 頁 表 基 地 址 二 級 頁 表 內 偏 移 序 號1 0 9 2 1 03 13 1 1 0 9 8 5 4 2 1 03 1 1 4 1 3 2 1 03 1 2 0 1 9 03 1 1 4 1 3 0C P 1 5 中 的 寄 存 器 C 2一 級 描 述 符 地 址一 級 描 述 符二 級 描 述 符 地 址虛 擬 地 址0 01 2 1 1計算機應用研究所 131 段描述符 ? 當一級描述符的位 [1:0]為 0b10時,該一級描述符為段描述符,它的格式和各個字段的含義如下: 粗粒度二級頁表的基地址 0 域 用戶定義 0 1 31 10 9 8 5 4 2 1 0 一級描述符的類型標識 位 [3 2]C, B控制位 ,位 [4]由用戶
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1