現(xiàn)代微機的存儲系統(tǒng)_第1頁
現(xiàn)代微機的存儲系統(tǒng)_第2頁
現(xiàn)代微機的存儲系統(tǒng)_第3頁
現(xiàn)代微機的存儲系統(tǒng)_第4頁
現(xiàn)代微機的存儲系統(tǒng)_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、1 第第4章章 現(xiàn)代微機的存儲系統(tǒng)現(xiàn)代微機的存儲系統(tǒng) 2 ROM在在出其中存放出其中存放 的數(shù)據(jù),而不能改變其內(nèi)容。因此的數(shù)據(jù),而不能改變其內(nèi)容。因此ROM經(jīng)常經(jīng)常 被用來存放哪些固定不變,無需修改的數(shù)據(jù)與被用來存放哪些固定不變,無需修改的數(shù)據(jù)與 程序程序 。 ROM的最大特點是掉電以后,數(shù)據(jù)不會丟的最大特點是掉電以后,數(shù)據(jù)不會丟 失,通電后可以繼續(xù)使用。失,通電后可以繼續(xù)使用。 4.1 現(xiàn)代微機存儲器系統(tǒng)概述現(xiàn)代微機存儲器系統(tǒng)概述 3 將已定型的程序和數(shù)據(jù)固化在其中,之后就不將已定型的程序和數(shù)據(jù)固化在其中,之后就不 再更改。再更改。 稱為可編程稱為可編程ROM。允許用戶向其中寫入一次。允許用

2、戶向其中寫入一次 數(shù)據(jù)或程序,之后其中的數(shù)據(jù)就不可再更改。數(shù)據(jù)或程序,之后其中的數(shù)據(jù)就不可再更改。 稱為可擦除的稱為可擦除的PROM。其中的數(shù)據(jù)可以通過。其中的數(shù)據(jù)可以通過 紫外線照射而被擦除,之后可以再次寫入新的數(shù)據(jù)。紫外線照射而被擦除,之后可以再次寫入新的數(shù)據(jù)。 稱為電可擦除可編程稱為電可擦除可編程ROM(又寫為(又寫為 E2PROM)。其擦除和改寫無需紫外線,只需特定的)。其擦除和改寫無需紫外線,只需特定的 電信號即可。這種存儲器的存取速度較慢。電信號即可。這種存儲器的存取速度較慢。 稱為閃爍存儲器(閃存)。也是電可稱為閃爍存儲器(閃存)。也是電可 擦除和更改型的擦除和更改型的ROM存儲

3、器,采用塊擦除陣列結(jié)構(gòu)存儲器,采用塊擦除陣列結(jié)構(gòu) ,具有存儲容量大、讀取速度快、信息非易失、功耗,具有存儲容量大、讀取速度快、信息非易失、功耗 低、可在線讀寫,抗干擾能力強、掉電信息不丟失等低、可在線讀寫,抗干擾能力強、掉電信息不丟失等 特點,目前被廣泛應(yīng)用。特點,目前被廣泛應(yīng)用。 4 在正常工作時就能隨時對其數(shù)據(jù)進行讀寫操在正常工作時就能隨時對其數(shù)據(jù)進行讀寫操 作的存儲器,其對數(shù)據(jù)的修改是在正常工作狀態(tài)作的存儲器,其對數(shù)據(jù)的修改是在正常工作狀態(tài) ,而無需特別的寫入環(huán)境。,而無需特別的寫入環(huán)境。 RAM的讀寫速度一般都比的讀寫速度一般都比ROM快,而且存取快,而且存取 任一單元所需的時間相同。

4、任一單元所需的時間相同。 RAM在掉電的時候會將其存儲的數(shù)據(jù)丟失。在掉電的時候會將其存儲的數(shù)據(jù)丟失。 5 稱為靜態(tài)稱為靜態(tài)RAM(static RAM)。只要電源不)。只要電源不 掉電,內(nèi)部存放的數(shù)據(jù)就不會丟失。掉電,內(nèi)部存放的數(shù)據(jù)就不會丟失。SRAM的最大的最大 特點就是速度快。特點就是速度快。 稱為動態(tài)稱為動態(tài)RAM(dynamic RAM)。它用)。它用 MOS管的柵極對其襯底間的分部電容來保存信息。管的柵極對其襯底間的分部電容來保存信息。 需要定期刷新。需要定期刷新。DRAM的最大特點就是集成度高的最大特點就是集成度高。 稱為非易失稱為非易失RAM(Non Volatile RAM)。

5、)。 它是它是SRAM和和EEPROM的共同體,正常工作時是的共同體,正常工作時是 SRAM存儲數(shù)據(jù),一旦掉電,就會自動的將數(shù)據(jù)轉(zhuǎn)存儲數(shù)據(jù),一旦掉電,就會自動的將數(shù)據(jù)轉(zhuǎn) 存到存到EEPROM中,重新上電后,數(shù)據(jù)又會自動的從中,重新上電后,數(shù)據(jù)又會自動的從 EEPROM恢復(fù)到恢復(fù)到SRAM中。中。 6 (Synchronous DRAM, 同步動態(tài)隨機存儲器同步動態(tài)隨機存儲器 )。將)。將RAM與與CPU以相同的時鐘頻率進行控制,徹以相同的時鐘頻率進行控制,徹 底取消等待時間。底取消等待時間。 (Double Data Rate SDRAM,雙倍速,雙倍速 率率 SDRAM)。)。 DDR SD

6、RAM能夠在時鐘的上升期和能夠在時鐘的上升期和 下降期各傳輸一次數(shù)據(jù),因此一個時鐘周期內(nèi)可傳輸下降期各傳輸一次數(shù)據(jù),因此一個時鐘周期內(nèi)可傳輸 兩次數(shù)據(jù)。兩次數(shù)據(jù)。 。DDR2擁有兩倍于擁有兩倍于DDR的預(yù)讀取能力的預(yù)讀取能力 (4bit數(shù)據(jù)讀預(yù)取)。即數(shù)據(jù)讀預(yù)?。<碊DR2每個時鐘能夠以每個時鐘能夠以4倍外倍外 部總線的速度讀部總線的速度讀/寫數(shù)據(jù),并且能夠以內(nèi)部控制總線寫數(shù)據(jù),并且能夠以內(nèi)部控制總線4 倍的速度運行。倍的速度運行。 7 7 3芯片平臺架構(gòu)中,主存儲器接口在北橋芯片中芯片平臺架構(gòu)中,主存儲器接口在北橋芯片中 2芯片平臺結(jié)構(gòu)里,主存儲器接口集成芯片平臺結(jié)構(gòu)里,主存儲器接口集成在

7、在處理器中。處理器中。 2代酷睿處理器中集成的存儲控制器代酷睿處理器中集成的存儲控制器: 2代酷睿處理器集成的主存儲器接口代酷睿處理器集成的主存儲器接口: 現(xiàn)代微機存儲器系統(tǒng)概述現(xiàn)代微機存儲器系統(tǒng)概述 8 4.1.2 內(nèi)存的主要性能指標(biāo)內(nèi)存的主要性能指標(biāo) (1) 內(nèi)存所能容納的二進制的總位數(shù),一內(nèi)存所能容納的二進制的總位數(shù),一 個有個有K位地址線,位地址線,L位數(shù)據(jù)線的存儲芯片所擁有的容量位數(shù)據(jù)線的存儲芯片所擁有的容量 為為2KL位。位。 (2) 指從內(nèi)存單元將數(shù)據(jù)讀到存儲數(shù)據(jù)寄指從內(nèi)存單元將數(shù)據(jù)讀到存儲數(shù)據(jù)寄 存器或從存儲數(shù)據(jù)寄存器將數(shù)據(jù)寫到內(nèi)存單元所需的存器或從存儲數(shù)據(jù)寄存器將數(shù)據(jù)寫到內(nèi)存

8、單元所需的 時間,前者為讀取時間,后者為寫入時間。時間,前者為讀取時間,后者為寫入時間。 (3) 內(nèi)存可靠性用平均無故障時間(內(nèi)存可靠性用平均無故障時間(MTBF )來衡量。也可以看作是兩次故障之間的時間間隔。)來衡量。也可以看作是兩次故障之間的時間間隔。 MTBF越長,可靠性越高。越長,可靠性越高。 (4) 性能主要是指上面三項,對不同的性能主要是指上面三項,對不同的 用途,側(cè)重點會有所不同。用途,側(cè)重點會有所不同。 9 4.1.3 現(xiàn)代微機的存儲結(jié)構(gòu)現(xiàn)代微機的存儲結(jié)構(gòu) CPU內(nèi)內(nèi) 的寄存器的寄存器 L1 數(shù)據(jù)數(shù)據(jù) Cache L1 代碼代碼 Cache L2 Cache L3 Cache

9、內(nèi)部存儲器(內(nèi)存)內(nèi)部存儲器(內(nèi)存) 外部存儲器(外存)外部存儲器(外存) 外存外存Cache 10 4.2 現(xiàn)代微機的系統(tǒng)地址映射現(xiàn)代微機的系統(tǒng)地址映射 960KB 640KB 768KB 896KB 0F0000H 0EFFFFH 0E0000H 0DFFFFH 0C0000H 0A0000H 0BFFFFH 09FFFFH 0FFFFFH 1MB 00000H DOS區(qū)區(qū) 傳統(tǒng)視頻區(qū)傳統(tǒng)視頻區(qū) (SMM存儲器)存儲器) 128KB 擴充區(qū)擴充區(qū) 128KB(16 KB 8) 擴展系統(tǒng)擴展系統(tǒng)BIOS(低端)(低端) 64KB(16KB 4) 系統(tǒng)系統(tǒng)BIOS(上端)(上端) 64KB 1

10、1 4.2.2 主存儲地址范圍(主存儲地址范圍(1MB-TOLUD) 兼容兼容DOS存儲(傳統(tǒng)地址范圍)存儲(傳統(tǒng)地址范圍) 0MB 10000H 主存儲區(qū)主存儲區(qū) 1MB 0H 15MB 0F0000H TOLUD 100000H ISA Hole(可選)(可選) 主存儲區(qū)主存儲區(qū) TSEG(1MB/2MB/8MB可選)可選) IGD(164MB可選)可選) PCI存儲范圍存儲范圍 APIC Flash Memory 最大最大4GB 0FFFFFFFFH 12 4.2.3 PCI存儲地址范圍(存儲地址范圍(TOLUD-4GB) 13 14 15 將線性地址按照固定大小劃分為頁,將頁映射到虛擬

11、存將線性地址按照固定大小劃分為頁,將頁映射到虛擬存 儲中儲中,虛擬存儲中的頁再按照需要映射到物理內(nèi)存中虛擬存儲中的頁再按照需要映射到物理內(nèi)存中 分頁機制并不是必須的分頁機制并不是必須的 分頁機制分頁機制對應(yīng)用程序來說是透明的對應(yīng)用程序來說是透明的 所有的應(yīng)用程序看到的都是線性地址所有的應(yīng)用程序看到的都是線性地址 16 1717 4.3 IA-32結(jié)構(gòu)保護模式下的存儲管理結(jié)構(gòu)保護模式下的存儲管理 4.3.1保護模式與特權(quán)級概述保護模式與特權(quán)級概述 1.保護模式概述保護模式概述 1818 2.特權(quán)級概述特權(quán)級概述 1919 4.3.2 保護模式下的段式存儲管理保護模式下的段式存儲管理 1. IA-

12、32/Intel 64段式存儲管理的幾種模式段式存儲管理的幾種模式 2020 2121 22 4.3 IA-32結(jié)構(gòu)保護模式下的存儲管理結(jié)構(gòu)保護模式下的存儲管理 4.3.1 保護模式下的段式存儲管理保護模式下的段式存儲管理 1. 段式管理的地址變換段式管理的地址變換 段寄存器的段寄存器的152位位偏移量偏移量 45(77) 32(64) 31(63) 0 段描述符段描述符 段表段表 32(64)位線性地址位線性地址 物理物理 地址地址 邏輯邏輯 地址地址 段基址段基址 23 2. 段描述符段描述符 D7 D0 段界限段界限 70 段界限段界限 158 基址基址 70 基址基址 158 基址基址

13、 2316 基址基址 3124 TYPES AVL DPLP GD/B L段界限段界限 1916 0 1 2 3 4 5 6 7 24 D7 D0 AVLG D/BL段界限段界限 1916 用戶的操作系統(tǒng)可用位用戶的操作系統(tǒng)可用位 D/B位位 代碼段代碼段(D位位) D=1 使用使用32位操作系統(tǒng)位操作系統(tǒng) 和和32位尋址方式位尋址方式 D=0 使用使用16位操作系統(tǒng)位操作系統(tǒng) 和和16位尋址方式位尋址方式 數(shù)據(jù)段數(shù)據(jù)段(B位位) B=1 使用使用ESP寄存器,上寄存器,上 限為限為FFFFFFFFH B=0 使用使用SP寄存器,上寄存器,上 限為限為FFFFH G=0 段長以段長以1字節(jié)為單

14、位字節(jié)為單位 G=1 段長以段長以4K字節(jié)為單位字節(jié)為單位 D/B位位 粒度位粒度位 1在在64位模式,位模式,0在兼容或在兼容或IA-32模式模式 25 A W R ED C E=0 E=1 S=1DPL P D7 D0 存在位存在位 特權(quán)位特權(quán)位 S=1是非系統(tǒng)段是非系統(tǒng)段 S=0是系統(tǒng)描述符是系統(tǒng)描述符 代碼段標(biāo)志代碼段標(biāo)志 數(shù)據(jù)段標(biāo)志數(shù)據(jù)段標(biāo)志 兼容位兼容位 可讀位可讀位 訪問位訪問位 擴展方向位擴展方向位 可寫位可寫位 非系統(tǒng)段中的第非系統(tǒng)段中的第5字節(jié)字節(jié) 可執(zhí)行位可執(zhí)行位 26 系統(tǒng)描述符中的系統(tǒng)描述符中的TYPE 27 28 n set_trap_gate(0, n set_t

15、rap_gate(1, n set_intr_gate(2, n set_system_intr_gate(3, n set_system_gate(4, n set_system_gate(5, n set_trap_gate(6, n set_trap_gate(7, n set_task_gate(8,31); n set_trap_gate(9, n set_trap_gate(10, n set_trap_gate(11, n set_trap_gate(12, n set_trap_gate(13, n set_intr_gate(14, n set_trap_gate(16, n

16、 set_trap_gate(17, n set_trap_gate(18, n set_trap_gate(19, n set_system_gate(128, 29 30 RPLTi 選擇符(段寄存器)選擇符(段寄存器) 15 2 1 0 索引索引 Ti=1 Ti=0 0 1 0 1 LDT LDT LDT GDT 基址基址 界限界限 選擇符選擇符 基址基址 界限界限 LDTR GDTR 2 2 31 32 #include stdafx.h #include #include DWORDLONG gdtr,savegdt; WORD descriptor4= 0 xFFFF, 0X0F0

17、0, 0XF200, 0X0040; int result10; int main(int argc, char* argv) _asm pushebp sgdtgdtr 33 movebp,dword ptr gdtr+2 addebp,70h leaedi,savegdt movesi,ebp movsd movsd movedi,ebp leaesi,descriptor; movsd movsd pushes movax,0073h 34 moves,ax leaedi,result moveax,1 movebx,1 _asm movcx,10 a1:moves:eax,eax ad

18、deax,4 loopa1 _asm movcx,10 a2:moveax,es:ebx movedi,eax 35 addebx,4 addedi,4 loopa2 _asm popes popebp printf(result=);); for(int i=0;i10;i+) printf(%d,resulti);); return 0; 36 4.3.2 保護模式下的虛擬頁式存儲管理保護模式下的虛擬頁式存儲管理 主存主存 頁框頁框 頁面頁面 程序程序1 程序程序2 程序程序3 3737 2. IA-32/Intel 64頁式存儲管理模式頁式存儲管理模式 當(dāng)當(dāng)CR0.PG=1且且CR0.P

19、E=1(保護模式使能)的時候,(保護模式使能)的時候, 頁式管理被使能,此時可用三種分頁的模式中的一種頁式管理被使能,此時可用三種分頁的模式中的一種 。當(dāng)。當(dāng)CR0.PG=1并且并且CR4.PAE=0時進入該時進入該 模式。模式。 。當(dāng)。當(dāng)CR0.PG=1, CR4.PAE=1并且并且 IA32_EFER.LME=0時進入該模式。時進入該模式。 。當(dāng)。當(dāng)CR0.PG=1, CR4.PAE=1并且并且 IA32_EFER.LME=1時進入該模式時進入該模式 3838 頁目錄頁目錄 32位線位線 性地址性地址 頁目錄項號頁目錄項號頁面號頁面號 偏移偏移 CR3 32位物理地址位物理地址 31 22

20、 21 12 11 0 頁表頁表 低低12位位 高高20位位 31 12 11 9 8 7 6 5 4 3 2 1 0 PWTPCD 頁表基地址頁表基地址3112 P RW US G AVL AD0 頁目頁目 錄項錄項 PWTPCD 頁框基地址頁框基地址3112 PRWUS G PAT AVL AD 頁表頁表 項項 31 12 11 9 8 7 6 5 4 3 2 1 0 3939 32位線性位線性 地址地址 頁目錄項號頁目錄項號偏移偏移 CR 3 32位物理位物理 地址地址 31 22 21 0 頁目錄頁目錄 低低22位位 高高10位位 31 22 (M-19) 13 12 11 9 8 7

21、 6 5 4 3 2 1 0 PWTPCD頁框基地址頁框基地址3122PRWUSAD1 頁目頁目 錄項錄項 PAT AVL G 4040 32位線性地址位線性地址 頁目錄項號頁目錄項號偏移偏移 CR3 物理地址物理地址 31 30 29 21 20 0 頁目錄頁目錄 PDPT項號項號 頁目錄指針表頁目錄指針表 464位位 51264位位 頁目頁目 錄項錄項 PWTPCD 2MB對齊的頁框基地址對齊的頁框基地址 PRWUS AVL AD 63 M (M-1) 21 20 13 12 11 9 8 7 6 5 4 3 2 1 0 1G 低低21位位 高高31位位 PAT 4141 31 5 4 3

22、 2 1 0 PWTPCD 32字節(jié)對齊的字節(jié)對齊的PDPT基地址基地址 CR3寄存器寄存器 63 M (M-1) 12 11 9 8 5 4 3 2 1 0 PWT PCDPAVL PDPT項項4KB對齊的頁目錄基地址對齊的頁目錄基地址 (高(高24位)位) 63 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 PWTPCD 4KB對齊的頁表基地址對齊的頁表基地址 PRWUSAVLA0 頁目錄項頁目錄項 PWTPCD 4KB對齊的頁框基地址對齊的頁框基地址 PRWUSAVLAD 頁表項頁表項 63 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 0G

23、32位線性地址位線性地址頁目錄項號頁目錄項號頁面號頁面號偏移偏移 CR3 物理地址物理地址 31 30 29 21 20 12 11 0 頁目錄頁目錄頁表頁表 PDPT項號項號 頁目錄指針表頁目錄指針表 464位位51264位位51264位位 低低12位位 高高40位位 4242 PWTPCDPML4基地址基地址 P RW USA 63 62 52 51 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 AVL PML4表表 EXB AVL PDPT表表 PWTPCD頁目錄基地址頁目錄基地址 PRWUSA 63 62 52 51 M (M-1) 12 11 9 8 7 6 5

24、 4 3 2 1 0 AVLEXB AVL 頁目錄項頁目錄項PDE(4KByte頁表)頁表) PWTPCD頁表基地址頁表基地址 PRWUSA 63 62 52 51 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVL0 0 0 頁表(頁表(4KByte頁表)頁表) PWTPCD頁框基地址頁框基地址 PRWUSA 63 62 52 51 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVLG PAT D 0 4343 4444 PWTPCDPML4基地址基地址 P RW USA 63 62 52 51 M (M-1) 12

25、 11 9 8 7 6 5 4 3 2 1 0 AVL PML4表表 EXB AVL PDPT表表 PWTPCD頁目錄基地址頁目錄基地址 PRWUSA 63 62 52 51 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVL 頁目錄項頁目錄項PDE(2MB頁表)頁表) PWTPCD頁框基地址頁框基地址 PRWUSA 63 62 52 51 M (M-1) 21 20 13 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVLG 1 DAVLPAT 0 4545 4646 PWTPCDPML4基地址基地址 P RW USA 63 62

26、52 51 M (M-1) 12 11 9 8 7 6 5 4 3 2 1 0 AVL PML4表表 EXB AVL PDPT表表 PWTPCD頁框基地址頁框基地址 PRWUSA 63 62 52 51 M (M-1) 30 29 13 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVLG 1 DAVLPAT 4747 48 31 5 4 3 2 1 0 PWTPCD 32字節(jié)對齊的字節(jié)對齊的PDPT基地址基地址 CR3寄存器寄存器 63 36 35 12 11 9 8 5 4 3 2 1 0 PWT PCDPAVL PDPT項項4KB對齊的頁目錄基地址對齊的頁目錄基地址

27、 (高(高24位)位) 63 36 35 12 11 9 8 7 6 5 4 3 2 1 0 PWTPCD 4KB對齊的頁表基地址對齊的頁表基地址 PRWUSAVLA0 頁目錄項頁目錄項 PWTPCD 4KB對齊的頁框基地址對齊的頁框基地址 PRWUSAVLAD 頁表項頁表項 63 36 35 12 11 9 8 7 6 5 4 3 2 1 0 0G 32位線性地址位線性地址頁目錄項號頁目錄項號頁面號頁面號偏移偏移 CR3 36位物理地址位物理地址 31 30 29 21 20 12 11 0 頁目錄頁目錄頁表頁表 PDPT項號項號 頁目錄指針表頁目錄指針表 464位位51264位位51264

28、位位 低低12位位 高高24位位 49 32位線性地址位線性地址 頁目錄項號頁目錄項號偏移偏移 CR3 36位物理地址位物理地址 31 30 29 21 20 0 頁目錄頁目錄 PDPT項號項號 頁目錄指針表頁目錄指針表 464位位 51264位位 頁目頁目 錄項錄項 PWTPCD 2MB對齊的頁框基地址對齊的頁框基地址 PRWUS AVL AD 63 36 35 21 20 13 12 11 9 8 7 6 5 4 3 2 1 0 1G 低低21位位 高高15位位 PAT 50 PWTPCDPML4基地址基地址 P RW USA 63 62 51 39 12 11 9 8 7 6 5 4 3

29、 2 1 0 AVL PML4表表 EXB AVL PDPT表表 PWTPCD頁目錄基地址頁目錄基地址 PRWUSA 63 62 51 39 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVL 頁目錄項(頁目錄項(4KByte頁表)頁表) PWTPCD頁目錄基地址頁目錄基地址 PRWUSA 63 62 51 39 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB AVL0 0 0 頁表(頁表(4KByte頁表)頁表) PWTPCD頁目錄基地址頁目錄基地址 PRWUSA 63 62 51 39 12 11 9 8 7 6 5 4 3 2 1 0 AVLEXB

30、 AVLG PAT D 51 52 4.4 高速緩沖存儲器高速緩沖存儲器Cache 4.1.1 Cache的工作原理與地址映射的工作原理與地址映射 1. Cache的工作原理的工作原理 53 2. Cache的地址映像的地址映像 主存中的每一頁都映像到高速緩存中的一個固定頁,而高速主存中的每一頁都映像到高速緩存中的一個固定頁,而高速 緩存中的每一頁卻對應(yīng)著主存中的若干頁。緩存中的每一頁卻對應(yīng)著主存中的若干頁。 這是最簡單的一種映像技術(shù),易于實現(xiàn),地址變換速度快,這是最簡單的一種映像技術(shù),易于實現(xiàn),地址變換速度快, 但是不夠靈活,但是不夠靈活,Cache的頁沖突概率高,空間利用率低。的頁沖突概率

31、高,空間利用率低。 54 主存中各區(qū)內(nèi)相同字塊號的數(shù)據(jù)塊都可以分別調(diào)入緩存中字塊號相同的地址 中,但同時只能有一個區(qū)的塊存入緩存。由于主、緩存字塊號相同,因此, 目錄表登記時,只記錄調(diào)入字塊的區(qū)號即可。 55 圖所示為主存、Cache地址格式、目錄表格式及地址變換規(guī)則。主存、 Cache字塊號及塊內(nèi)地址兩個字段完全相同。目錄表存放在相聯(lián)存儲器中,其中 包括二部分:數(shù)據(jù)塊在主存的區(qū)號和有效位。目錄表的容量與Cache的字塊數(shù)相 同。 56 57 n 全相聯(lián)映像技術(shù)允許主存中每一個頁面映像全相聯(lián)映像技術(shù)允許主存中每一個頁面映像 到到Cache的任何一個頁面位置上,也允許采的任何一個頁面位置上,也允

32、許采 用某種替換算法從已占滿的用某種替換算法從已占滿的Cache中替換出中替換出 任何一個舊頁面。這種方式?jīng)_突概率低,可任何一個舊頁面。這種方式?jīng)_突概率低,可 達(dá)到很高的達(dá)到很高的Cache命中率,但實現(xiàn)起來比較命中率,但實現(xiàn)起來比較 困難。困難。 58 59 地址映象規(guī)則:主存的任意一字塊可映象到Cache中的任意一字塊。 (1)主存與Cache分成相同大小的字塊。 (2)主存的某一字塊可以裝入Cache的任意一字塊空間中。 圖3-15示出了目錄表(字塊標(biāo)記)的格式及地址變換規(guī)則。目錄表存放在相 關(guān)(聯(lián))存儲器中,其中包括三部分:主存的字塊號、Cache字塊號、有效位 (也稱裝入位)。由于是

33、全相聯(lián)方式,因此目錄表的容量應(yīng)當(dāng)與Cache的字塊數(shù) 相同。 60 61 n主存和主存和Cache按同樣大小劃分成塊。按同樣大小劃分成塊。 n主存和主存和Cache按同樣大小劃分成組。按同樣大小劃分成組。 n主存容量是緩存容量的整數(shù)倍,將主存空間按緩沖區(qū)主存容量是緩存容量的整數(shù)倍,將主存空間按緩沖區(qū) 的大小分成區(qū),主存中每一區(qū)的組數(shù)與緩存的組數(shù)相的大小分成區(qū),主存中每一區(qū)的組數(shù)與緩存的組數(shù)相 同。同。 n當(dāng)主存的數(shù)據(jù)調(diào)入緩存時,主存與緩存的組號應(yīng)相等,當(dāng)主存的數(shù)據(jù)調(diào)入緩存時,主存與緩存的組號應(yīng)相等, 也就是各區(qū)中的某一塊只能存入緩存的同組號的空間也就是各區(qū)中的某一塊只能存入緩存的同組號的空間

34、內(nèi),但組內(nèi)各塊地址之間則可以任意存放,內(nèi),但組內(nèi)各塊地址之間則可以任意存放, 即從主即從主 存的組到存的組到Cache的組之間采用直接映象方式;在兩個的組之間采用直接映象方式;在兩個 對應(yīng)的組內(nèi)部采用全相聯(lián)映象方式。對應(yīng)的組內(nèi)部采用全相聯(lián)映象方式。 62 63 64 例:設(shè)有例:設(shè)有8個塊,分成個塊,分成2個組,在上述地址序列下:個組,在上述地址序列下: 65 66 3. Cache的讀寫操作的讀寫操作 訪問頁面在訪問頁面在Cache中中直接讀直接讀Cache,不讀主存,不讀主存 訪問頁面不在訪問頁面不在Cache中中 貫穿讀出式:頁面從主存讀到貫穿讀出式:頁面從主存讀到Cache,再到,再到

35、CPU 旁路讀出式:頁面直接從主存讀到旁路讀出式:頁面直接從主存讀到CPU,而不,而不 經(jīng)過經(jīng)過Cache 寫回法:寫寫回法:寫Cache頁時不寫主存,到下次頁面修改時頁時不寫主存,到下次頁面修改時 再寫主存。再寫主存。 寫貫穿法:頁面在寫到寫貫穿法:頁面在寫到Cache時同時寫到主存,以保時同時寫到主存,以保 持主存與持主存與Cache的相關(guān)頁的內(nèi)容一致的相關(guān)頁的內(nèi)容一致 n 67 4.4.2 IA-32的的Cache結(jié)構(gòu)結(jié)構(gòu) 物理存儲器物理存儲器 系統(tǒng)總線系統(tǒng)總線 (外部外部) 總線接口單元總線接口單元 L2 Cache L3 Cache* 數(shù)據(jù)數(shù)據(jù)Cache (L1) 指令譯碼器指令譯碼

36、器 跟蹤跟蹤Cache*/L1指令指令Cache Instruction TLBs Data TLBs 存儲緩沖存儲緩沖 * Intel Xeon 處理器才有處理器才有 * 跟蹤跟蹤Cache只有只有Pentium 4才有才有 68 Core Solo,Core Duo,Core 2,Pentium 4中中 L1和和L2Cache行和行和Intel Xeon 處理器的處理器的L1 、L2 和和L3 Cache行都是行都是64字節(jié)。字節(jié)。 Cache不支持部分不支持部分Cache行的填充。行的填充。 TLBs存儲最近用過的頁目錄和頁表項。他們存儲最近用過的頁目錄和頁表項。他們 通過降低訪問主存中

37、頁表的次數(shù)來加快頁表的通過降低訪問主存中頁表的次數(shù)來加快頁表的 訪問。訪問。 處理器的處理器的Cache對軟件來說基本上是透明的。對軟件來說基本上是透明的。 對對Cache行為的了解有助于優(yōu)化軟件的性能。行為的了解有助于優(yōu)化軟件的性能。 6969 Intel Core i7處理器的高速緩存結(jié)構(gòu)處理器的高速緩存結(jié)構(gòu) 數(shù)據(jù)數(shù)據(jù)Cache單單 元(元(L1) L2 Cache STLB (2級級TLB) ITLB指令指令Cache QPI IMC L3 Cache 芯片組芯片組 指令譯碼器和前端指令譯碼器和前端 亂序引擎亂序引擎 數(shù)據(jù)數(shù)據(jù) TLB 70 4.4.3 IA-32的的Caching類型類型 主存單主存單 元的讀寫不使用元的讀寫不使用Cache。所有讀和寫都只針對主存,。所有讀和寫都只針對主存, 并且以程序的次序執(zhí)行而不會重排序。并且以程序的次序執(zhí)行而不會重排序。 和和UC存儲器具存儲器具 有一些相同的特征,不過這種存儲器類型可以通過對有一些相同的特征,不過這種存儲器類型可以通過對 WC類型存儲器的類型存儲器的MTRRs編程來撤消。編程來撤消。 和和UC-存儲器存儲器 一樣,主存單元的讀寫不使用一樣,主存單

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論