計(jì)算機(jī)原理第三章存儲(chǔ)器.ppt_第1頁(yè)
計(jì)算機(jī)原理第三章存儲(chǔ)器.ppt_第2頁(yè)
計(jì)算機(jī)原理第三章存儲(chǔ)器.ppt_第3頁(yè)
計(jì)算機(jī)原理第三章存儲(chǔ)器.ppt_第4頁(yè)
計(jì)算機(jī)原理第三章存儲(chǔ)器.ppt_第5頁(yè)
已閱讀5頁(yè),還剩88頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第三章 存儲(chǔ)器(P89),3.1 存儲(chǔ)器概述,3.2 半導(dǎo)體存儲(chǔ)原理及芯片,3.3 主存儲(chǔ)器容量的擴(kuò)展,3.4 高速緩沖存儲(chǔ)器,3.5 虛擬存儲(chǔ)器,3.6 雙端口存儲(chǔ)器與并行主存系統(tǒng),3.1 存儲(chǔ)器概述,3.1.1 存儲(chǔ)系統(tǒng)的層次結(jié)構(gòu),對(duì)存儲(chǔ)器最基本的要求:容量大、速度快、 價(jià)格低。,主存儲(chǔ)器,又叫內(nèi)存,屬于主機(jī)范疇。 存放當(dāng)前CPU需要執(zhí)行的程序和需要處理的數(shù)據(jù)。 特點(diǎn):(1)隨機(jī)訪問,(2)工作速度快,(3)具有一定的存儲(chǔ)容量。 外存儲(chǔ)器,又叫輔助存儲(chǔ)器,存放暫不使用的程序與數(shù)據(jù)。 特點(diǎn)(1)工作速度較慢,(2)容量很大,如磁盤、磁帶等。 高速緩沖器Cache,存放的是最近就要使用的程序與數(shù)據(jù),是主存中當(dāng)前活躍信息的副本。 特點(diǎn):(1)工作速度最快,(2)容量最少,只有幾百K字節(jié)。,3.1.2 物理存儲(chǔ)器與虛擬存儲(chǔ)器,一、真正在物理上存在的主存儲(chǔ)器,稱為物理存儲(chǔ)器,簡(jiǎn)稱為實(shí)存。訪問主存的真實(shí)地址稱為物理地址或?qū)嵉刂贰,F(xiàn)在大多數(shù)計(jì)算機(jī)配幾百兆主存。 二、為解決主存容量有限提出了虛擬存儲(chǔ)器,即在軟件編程上可使用的存儲(chǔ)器,稱為虛擬存儲(chǔ)器。 面向虛擬存儲(chǔ)器的編程地址稱為虛擬地址或邏輯地址。通過操作系統(tǒng)把外存的一部分也當(dāng)成主存。,例32位地址線的計(jì)算機(jī): 232220210224千兆4G 但現(xiàn)在實(shí)際配的主存假設(shè)為512兆,即 512兆22029 所以,32 位地址線尋址的是邏輯地址,29位地址線尋址的是物理地址。,3.1.3 存儲(chǔ)器的分類,一、根據(jù)存儲(chǔ)介質(zhì)來分 1. 半導(dǎo)體存儲(chǔ)器:,2. 磁表面存儲(chǔ)器:磁盤、磁帶等。(磁性材料),3. 光盤存儲(chǔ)器:利用光來存儲(chǔ)的裝置。(光的反射 性),二、按存取方式來分:,隨機(jī)存儲(chǔ)器RAM,Radom Access Memory 可按地址隨機(jī)地訪問任一單元, 訪問各存儲(chǔ)單元所需的讀/寫時(shí)間相同,與地址無關(guān)。 只讀存儲(chǔ)器ROM,ReadOnly Memory 半導(dǎo)體集成電路,ROM,PROM, EPROM,E2PROM。 順序存儲(chǔ)器(SAM) 訪問時(shí)間與信息存放位置有關(guān),如磁帶等。 直接存取存儲(chǔ)器(DAM) 如磁盤,工作方式介于隨機(jī)存儲(chǔ)器與順序存儲(chǔ)器之間。,三、按存儲(chǔ)器在系統(tǒng)中的位置來分,1. 主存 2. 外存 高速緩存,3.1.4 主存儲(chǔ)器的技術(shù)指標(biāo),存取時(shí)間,(存儲(chǔ)器訪問時(shí)間) 是指從存儲(chǔ)器收到讀(或?qū)懀┥暾?qǐng)命令,到從存儲(chǔ)器讀出(或?qū)懭耄┬畔⑺璧臅r(shí)間。 反映了存儲(chǔ)器的速度,決定了進(jìn)行一次讀/寫操作必須等待的時(shí)間。 的存取時(shí)間在納秒()級(jí)。()。,. 存儲(chǔ)容量: 在一個(gè)存儲(chǔ)器中可以容納的存儲(chǔ)單元總數(shù)稱為該存儲(chǔ)器的存儲(chǔ)容量。通常用字節(jié)或字來表示。 如,等。 表示字節(jié)(),一個(gè)字節(jié)定義為個(gè)二進(jìn)制位。 , ,存儲(chǔ)周期,指連續(xù)啟動(dòng)兩次讀操作所需間隔的最小時(shí)間。 通常 ,這個(gè)參數(shù)被標(biāo)在內(nèi)存芯片上。 例如:“”,“”等,表示存儲(chǔ)周期為或,數(shù)值越小,表示內(nèi)存芯片的存取速度越高,價(jià)格也越貴。,存儲(chǔ)器帶寬 單位時(shí)間里存儲(chǔ)器所存取的信息量,通常以位/秒或字節(jié)/秒,/s來表示。,3.2 半導(dǎo)體存儲(chǔ)原理及芯片,3.2.1 靜態(tài)(metal oxide semiconductor金屬氧化物半導(dǎo)體)存儲(chǔ)位與芯片,靜態(tài)存儲(chǔ)位,六管靜態(tài)存儲(chǔ)單元(位),、兩個(gè)反相器交叉耦合構(gòu)成一個(gè)雙穩(wěn)態(tài)觸發(fā)器,可用于存儲(chǔ)一位信息。 、分別作為負(fù)載管,相當(dāng)于兩個(gè)電阻。,、是兩個(gè)控制門管,由行選線控制它們的通斷,當(dāng)行選線加高電平時(shí),、導(dǎo)通,通過一組位線、 可對(duì)雙穩(wěn)態(tài)電路進(jìn)行讀/寫操作;當(dāng)加低電平時(shí),、斷開,位線脫離,雙穩(wěn)態(tài)電路進(jìn)入保持狀態(tài)。,、兩個(gè)管子控制位線與/相連,由列選線控制。,()寫入,行選線xi(也稱字選線)加高電平,使T5 、T6管導(dǎo)通。列選線yj加高電平使V1 、V2管導(dǎo)通,位線D與 同I/O線與 線接通。,寫0:數(shù)據(jù)線I/O=0、 =1,使位線D=0、位線 =1。 因D=0,通過T5管傳給Q點(diǎn)使Q點(diǎn)為低(寫入0),T2管截止。而通過T6管給T1管柵極加高電壓,使T1管導(dǎo)通,加快Q點(diǎn)為低電平的進(jìn)程。,寫1:數(shù)據(jù)線I/O=1、 =0,使位線D=1、 =0;推出T1截止,T2導(dǎo)通使Q=1、 =0,寫入“1”。,(2)讀出,行選線xi,列選線yj加高電平,使T5 、T6導(dǎo)通和V1 、V2導(dǎo)通。,如果原存信息Q=0,則T1導(dǎo)通,從位線D將通過T5、T1到地形成放電回路,有電流經(jīng)D流入T1,使I/O線上有電流流過,經(jīng)放大為“0”信號(hào),表明原存信息為“0”。而此時(shí)因T2截止,所以 上無電流。,如果原存信息Q=1,則T2導(dǎo)通,能推出 線上有電流流過,代表原存信息為“1”。此時(shí)T1截止,I/O線上無電流。,()保持,行選線xi與列選線yj只要有一個(gè)為低電平,使位線與雙穩(wěn)態(tài)電路隔離,雙穩(wěn)態(tài)電路T1 、T2依靠觸發(fā)器原理交叉反饋保持原有狀態(tài)不變。,2. 靜態(tài)存儲(chǔ)芯片舉例,2114是一種曾廣泛使用的小容量SRAM芯片,容量為1K4位,現(xiàn)舉例說明。,()內(nèi)部結(jié)構(gòu)圖,,共根地址線。,圖62 2114SRAM芯片內(nèi)部結(jié)構(gòu)框圖,一個(gè)位平面 行列個(gè)單元 每個(gè)單元有位,即。,圖63 第K個(gè)存儲(chǔ)單元4個(gè)存儲(chǔ)位電路圖,當(dāng)片選信號(hào) =0且讀寫信號(hào) =0時(shí),數(shù)據(jù)輸入三態(tài)門打開, 4位數(shù)據(jù)線信息寫入譯中的單元中,稱為寫操作。,當(dāng)片選信號(hào) =0且讀寫信號(hào) =1時(shí),數(shù)據(jù)輸出三態(tài)門打開,譯中 單元的4位數(shù)據(jù)送入數(shù)據(jù)線,稱為讀操作。,當(dāng)片選信號(hào) =1時(shí),輸入三態(tài)門與輸出三態(tài)門都關(guān)閉,使芯片所有 單元與數(shù)據(jù)線隔離,即本芯片不工作。片選信號(hào)在存儲(chǔ)器空間擴(kuò)展時(shí) 要用到。,()芯片引腳,片選 :低電平有效,低電平時(shí)選中本芯片。,寫使能 :低電平時(shí)寫入,高電平時(shí)讀出。,地址根:90,對(duì)應(yīng)于容量。,雙向數(shù)據(jù)線位:DO4DO1,可直接與數(shù)據(jù)總線相連。,圖64 2114芯片引腳,()靜態(tài)讀寫操作時(shí)序,讀周期:,圖65 2114的讀周期波形圖,tRC:讀周期時(shí)間,此期間地址維持時(shí)間不變,是兩次讀出的最小時(shí)間間隔。 tA:讀出時(shí)間,從地址有效到輸出穩(wěn)定所需的時(shí)間,即其他器件可以使用數(shù) 據(jù)線上的數(shù)據(jù)了。 tCO:從片選信號(hào) 有效,到讀出的數(shù)據(jù)在外部數(shù)據(jù)線上穩(wěn)定的時(shí)間。 tCX:片選有效到數(shù)據(jù)有效所需的時(shí)間。 tOTD:片選無效后輸出數(shù)據(jù)還能維持的時(shí)間。 tOHA:地址改變后數(shù)據(jù)輸出的維持時(shí)間。,寫周期:,圖66 2114的寫周期波形圖,tWC:寫周期時(shí)間,是兩次寫入操作之間的最小間隔。 tAW:在地址有效后,經(jīng)過一段時(shí)間tAW,才能向芯片發(fā)寫命令。 tW:寫數(shù)時(shí)間,片選與寫命令同時(shí)為低的時(shí)間。 tWR:寫恢復(fù)時(shí)間,為了保證數(shù)據(jù)的可靠寫入,地址有效時(shí)間至少應(yīng)滿足: tWC=tAW+tW+tWR tDTW:寫信號(hào)有效到輸出變?yōu)槿龖B(tài)時(shí)間。 tDW:數(shù)據(jù)有效時(shí)間。輸入數(shù)據(jù)至少應(yīng)維持的時(shí)間。 tDH:寫信號(hào)撤銷后數(shù)據(jù)保持時(shí)間。,3.2.2 動(dòng)態(tài)MOS存儲(chǔ)位與芯片,動(dòng)態(tài)MOS存儲(chǔ)位單管動(dòng)態(tài)存儲(chǔ)位,基本工作原理:利用電容有無存儲(chǔ)電荷來表示存“”或“”。,圖67 單管動(dòng)態(tài)存儲(chǔ)位電路,() 寫入,字選線加高電平,使門控管導(dǎo)通; 若要寫,則位線加,電容通過對(duì)位線放電,呈低電平。 若要寫,則位線為,電容充電。,() 讀出,字選線加高電平,使門控管導(dǎo)通; 若上有電荷,通過放電,位線上有電流流過,表示讀出信息為“”。 若上無電荷,位線上沒有電流流過,表示讀出信息為“”。, 注意:讀出 “” 信息后,電容上無電荷,不能再維持“”,這種現(xiàn)象稱為“破壞性讀出”,須進(jìn)行“恢復(fù)”操作。,() 保持,字選線為“”,截止,電容無放電回路,其電荷可暫存數(shù)毫秒,即維持“”數(shù)毫秒;無電荷則保持“”狀態(tài)。, 注意:保持“”信息時(shí),電容也要漏電,導(dǎo)致上無電荷,須定時(shí)“刷新”。,“恢復(fù)”與“刷新”操作由靈敏恢復(fù)/讀出放大器完成。,圖68 靈敏恢復(fù)/讀出放大器,2. DRAM結(jié)構(gòu),圖6.9 DRAM結(jié)構(gòu)原理圖,3.3 主存儲(chǔ)器容量的擴(kuò)展,位擴(kuò)展,如果每一片或中的每一個(gè)單元的位數(shù)不夠用時(shí),可采用位擴(kuò)展方法,以達(dá)到計(jì)算機(jī)所需的字長(zhǎng)。,例用片位的構(gòu)成一個(gè)位的。,例用1K4的SRAM存儲(chǔ)芯片構(gòu)造1K8的存儲(chǔ)器。,2. 字?jǐn)U展,如果每片的字?jǐn)?shù)(單元數(shù))不夠,需用若干片組成總?cè)萘枯^大的存儲(chǔ)器,稱為字?jǐn)U展。,例用1K8的SRAM存儲(chǔ)芯片構(gòu)成4K8存儲(chǔ)器。,解:?jiǎn)纹萘浚?K8位,需地址線10根,2101K,,存儲(chǔ)器容量:4K8位,需4片,地址線2124K,12根。,3. 字位擴(kuò)展,如果每一片的位數(shù)和字?jǐn)?shù)都不夠用,就需要同時(shí)采用位擴(kuò)展和字?jǐn)U展方法。,例 某半導(dǎo)體存儲(chǔ)器容量為2K8位,選用1k4位的2114靜態(tài)RAM,問需多少個(gè)2114芯片?畫出結(jié)構(gòu)圖。,解:需用四片2114 芯片才能構(gòu)成2K8 位。 地址與片選:2114: 1K4位, 210=1K, 10根地址線A9A0; 2k8位:211=2K, 11根地址線A10A0 由高位A10參與片選。,例用16M4位的存儲(chǔ)器芯片,組成64M8位的存儲(chǔ)器空間系統(tǒng)。問(1)組成64M8位的存儲(chǔ)器需要多少根地址線?(2)已有16M4位芯片有多少根地址線?(3)共用多少片16M4位芯片,能組成64M8位存儲(chǔ)器?(4)畫連線圖。,解:(1)需要26根地址線。 (2)有24根地址線 (3)共用8片。 (4)連線圖如下圖所示。,例半導(dǎo)體存儲(chǔ)器容量為7K8位,其中固化區(qū)為4k8位,可選用 EPROM芯片:2K8/片。隨機(jī)讀/寫區(qū)為3K8,可選SRAM芯片:2K4/片和1K4/片。地址總線為A15A0,雙向數(shù)據(jù)總線為D7D0, 控制讀寫。請(qǐng)?jiān)O(shè)計(jì)并畫出該存儲(chǔ)器邏輯圖,并注明地址分配與片選邏輯式及片選信號(hào)極性。,()地址分配與片選信號(hào)如下:,3.4 高速緩沖存儲(chǔ)器,高速緩沖存儲(chǔ)器 Cache介于CPU和內(nèi)存之間,主要是為了彌補(bǔ)主存速度的不足。Cache的容量一般在幾KB到幾百KB之間。,由于編程時(shí)指令地址的分布基本上連續(xù),在一個(gè)較短的時(shí)間間隔內(nèi),對(duì)存儲(chǔ)器的訪問大部分將集中在一個(gè)局部區(qū)域,這種現(xiàn)象稱為程序的局部性。,將這個(gè)局部區(qū)域的內(nèi)容從主存復(fù)制到Cache中,使CPU高速地從Cache中讀取程序和數(shù)據(jù),其速度可比主存高5 10倍,這一過程由硬件實(shí)現(xiàn)。,主存內(nèi)容放到Cache中什么地方?怎么放?這些稱為地址映像方法。,一、地址映像,將主存與 Cache的存儲(chǔ)空間劃分為若干大小相同的塊。,例:某機(jī)主存容量為1MB,Cache為4KB,按256字節(jié)大小劃分為一塊,則 主存劃分為220/28 =212=4096塊,即主存塊地址長(zhǎng)12位。 Cache 劃分為212/28=24=16塊,即Cache塊地址長(zhǎng)4位。, 各自分塊,Cache不變,主存按 Cache容量來分區(qū)。 220/212=28=256區(qū), 每一區(qū)和Cache之間是一一對(duì)應(yīng)的,即0塊0塊, 15塊15塊。,圖617 地址變換方法 圖616 Cache的直接映象,優(yōu)點(diǎn):比較容易實(shí)現(xiàn),20位地址中能直接提取 Cache 的12位地址。,缺點(diǎn):不夠靈活,有可能使Cache 的存儲(chǔ)空間得不 到充分利用。因?yàn)槊恳粔K只能對(duì)應(yīng)到Cache 的某一塊中,例如需將主存第區(qū)第塊和 第區(qū)第塊同時(shí)復(fù)制到Cache 中,就不可 能,即使其它Cache塊空閑。,應(yīng)用場(chǎng)合:用于Cache容量較大的場(chǎng)合。,例設(shè)一個(gè)Cache中有8個(gè)塊,訪問主存進(jìn)行連續(xù)讀操作的塊地址序列為1110110、1111010、1110110、1111010、1110000、1100100、1110000、1110010。求每次訪問主存后Cache塊表的變換情況,設(shè)初始Cache為空。,解:塊地址中低三位為Cache塊號(hào),高四位為主存區(qū)號(hào)。,例:設(shè)有一個(gè)Cache的容量為8K字,每個(gè)塊為32字,求 1. 該Cache可容納多少個(gè)塊? 2. 如果主存的容量是128K字,則有多少個(gè)塊? 3. 主存的地址有多少位?Cache地址有多少位? 4. 進(jìn)行直接映象時(shí),存儲(chǔ)器的地址分成哪幾段?各段分別有多少位?,解: 1. Cache的容量8K字,每塊為32字,則Cache中有 23210/25=28=256塊。 2. 主存中有27210/25=212=4096塊。 3. 主存地址按字計(jì)算有17位,Cache地址有13位。 4. 存儲(chǔ)器的地址分成三段:區(qū)號(hào)、塊號(hào)、塊內(nèi)字地址。區(qū)號(hào)的長(zhǎng)度為主存地址長(zhǎng)度與Cache地址長(zhǎng)度之差,即1713=4位,這4位作為區(qū)號(hào)放在塊表中(調(diào)入時(shí))。塊號(hào)的長(zhǎng)度為Cache的塊個(gè)數(shù),需用8位表示。塊內(nèi)字地址長(zhǎng)度為5位,因?yàn)閴K大小為32字。,2. 全相聯(lián)映像內(nèi)存中的每一塊可以映像到 Cache中的任何塊。,圖619 全相聯(lián)映象,圖620 全相聯(lián)映象的地址變換方法,優(yōu)點(diǎn):較直接映像方式靈活,塊沖突概率低, Cache的利用率較高。,缺點(diǎn): 塊表位數(shù)增加,并且必須采用價(jià)格 昂貴的相聯(lián)存儲(chǔ)器,成本增加。 需要一個(gè)復(fù)雜硬件實(shí)現(xiàn)替換策略。 速度比較慢。,應(yīng)用場(chǎng)合:全相聯(lián)方式一般用于容量比較 小的Cache中。, 各自分塊,Cache不變,主存按 Cache容量來分區(qū)。 220/212=28=256區(qū),3. 組相聯(lián)映像,將存儲(chǔ)空間分成若干組, 一組內(nèi)再分成若干塊,組與組 之間采用直接映像,組內(nèi)塊與 塊之間采用全相聯(lián)映像,它是 前兩種方式的融合。, Cache、主存再分組,組與組之間直接映像,組內(nèi)塊與塊之間是全相聯(lián)。,圖622 組相聯(lián)映象的地址變換方法,在組相聯(lián)方式中,如果每組只有一塊,將成為直接映象方式;如果總共只有一組,將成為全相聯(lián)方式。,總結(jié):小容量Cache采用全相聯(lián)映像,提高 Cache 利用率。 大容量Cache采用直接映像,提高轉(zhuǎn)換速 度,減少硬件開銷,另外Cache 塊可以大一些, 提高命中率。 中容量Cache 采用組相聯(lián)映像,介于兩者之 間。,Cache 的結(jié)構(gòu)原理圖,二、替換算法,當(dāng)Cache已裝滿,而執(zhí)行的程序不在Cache中,又要把一塊內(nèi)存調(diào)入Cache里,此時(shí)就產(chǎn)生淘汰Cache中的哪一塊問題。在直接映象方式下,直接淘汰對(duì)應(yīng)塊,無須算法決定,因?yàn)樗鼈兪且灰粚?duì)應(yīng)的。在全相聯(lián)和組相聯(lián)方式下,主存中的塊可寫入Cache中若干位置,這就需要一個(gè)算法來確定替換掉Cache中哪一塊。常用替換算法有:,(1)先進(jìn)先出算法FIFO(First In First Out),這種算法是對(duì)進(jìn)入Cache的塊按先后順序排隊(duì),需要替換時(shí),先淘汰最早進(jìn)入的塊。,(2)最近最少使用算法LRU(Least Recently Used),為Cache的各塊建立一個(gè)LRU目錄,按某種方法記錄它們的調(diào)用情況,當(dāng)需要替換時(shí),將最近一段時(shí)間內(nèi)使用最少的塊內(nèi)容予以替換。較FIFO算法復(fù)雜一些,系統(tǒng)開銷稍大。,三、Cache的讀、寫過程,讀操作 訪存時(shí),一方面將主存地址送往主存,啟動(dòng)讀主存。 另一方面將主存地址送往Cache,讀Cache,比較 Cache塊表中的信息,如果“訪問命中”,即將讀出的Cache內(nèi)容 送往CPU,終止主存讀操作。如果“訪問失敗”,繼續(xù)進(jìn)行主存 讀操作,并考慮替換策略。,寫操作 (1)寫直達(dá)法(Write through)。即寫Cache時(shí),同時(shí)也寫主存。這種方法使得寫訪問的時(shí)間為主存的訪問時(shí)間,影響CPU速度。但在塊替換時(shí),可直接扔掉,因Cache與主存塊始終保持內(nèi)容一致。 (2)寫回法(write back)。即寫Cache時(shí)不寫主存,而當(dāng)Cache數(shù)據(jù)被替換出去時(shí)才寫回主存。這種方式不在快速寫入Cache中插入慢速的寫主存操作,可以保持程序運(yùn)行的快速性。,例設(shè)主存容量為MB,有16KB直接映像的Cache,Cache的塊大小為32B,解答下列問題:,()寫出Cache地址格式; ()寫出主存地址格式; ()塊表的容量為多大? ()畫出直接方式地址映像及變換圖; ()主存地址為1DE8F0 H的單元在Cache中的什么位置?,(2) 主存容量為2MB,2MB=221, 主存的地址段為21位。 塊大小為32B, 塊內(nèi)地址為5位; 2MB/16KB=221/214=27區(qū), 區(qū)號(hào)為7位。, 主存地址格式:,Cache一共有29=512塊, 塊表有512行,(每塊占一行) 塊表中存放的是主存的區(qū)號(hào),一共7位, 塊表的容量:5127位297位。,(),() 1DE8F0H=0001 1101 1110 1000 1111 0000,塊號(hào):28+26+22+21+20=327塊, 單元號(hào):24=16號(hào)單元,例4 有一主存Cache層次的存儲(chǔ)器,其主存容量1MB, Cache容量64KB,每塊8KB,若采用直接映像方式, 求: (1) 主存的地址格式? (2) 主存地址為25301H,問它在主存的哪一塊?,解: (1) 主存容量為1MB,1MB=220, 主存的地址段為20位。 塊大小為8KB, 塊內(nèi)地址為13位; 1MB/64KB=220/216=24區(qū), 區(qū)號(hào)為4位。, 主存地址格式:,(2) 主存地址 為25301H 0010 0101 0011 0000 0001,主存區(qū)號(hào)0010 2區(qū), 主存塊號(hào)010 2塊,即: 25301H的主存地址為主存中第2區(qū)的 第2塊,也即第18塊。,(2) Cache 塊長(zhǎng)為8字, 主存地址格式:,615 一個(gè)組相聯(lián)映像的Cache有16個(gè)組,每組4塊存儲(chǔ)塊,主存包含4096個(gè)存儲(chǔ)塊。塊大小為128字,訪存地址為字地址。 (1) 求一個(gè)主存地址有多少位?一個(gè)Cache地址有多少位? (2) 計(jì)算主存地址格式中,區(qū)號(hào)、組號(hào)、塊號(hào)和塊內(nèi)地址字段的位數(shù)。,課堂作業(yè): 一臺(tái)計(jì)算機(jī)主存容量16MB,直接映像的Cache的容量為8KB。Cache塊長(zhǎng)為64字節(jié)。計(jì)算主存地址格式中,區(qū)號(hào)、區(qū)內(nèi)塊號(hào)和塊內(nèi)地址字段的位數(shù)。,3.5 虛擬存儲(chǔ)器,虛擬存儲(chǔ)器主要用來解決計(jì)算機(jī)中主存儲(chǔ)器的容量不足的問題。,例在微機(jī)中,Windows 2000操作系統(tǒng)本身有200多兆,而主存只有256M,當(dāng)內(nèi)存全部裝入OS后,就無法再裝入如 Word、Photoshop等應(yīng)用軟件,解決的辦法就是虛擬存儲(chǔ)器,它把整個(gè)硬盤全部當(dāng)成內(nèi)存使用,通過操作系統(tǒng)來管理存儲(chǔ)。,虛擬地址(邏輯地址) 實(shí)地址(物理地址),根據(jù)虛、實(shí)地址變換方式不同,可分為頁(yè)式、段式、段頁(yè)式虛擬存儲(chǔ)器三種。,一、頁(yè)式虛擬存儲(chǔ)器,將虛擬空間與主存空間都劃分為若干大小相同的頁(yè),虛存的頁(yè)稱為虛頁(yè),主存的頁(yè)稱為實(shí)頁(yè),常見頁(yè)的大小為1K、2K、4K到64K等等。,若該虛頁(yè)尚未調(diào)入主存,則產(chǎn)生缺頁(yè)中斷,以中斷方式將所需頁(yè)內(nèi)容調(diào)入主存。,如果主存空間已滿,則需在中斷處理程序中執(zhí)行替換算法,將可替換的主存內(nèi)容寫入輔存,再將所需頁(yè)調(diào)入主存。,替換算法類似于 Cache存儲(chǔ)管理,有先進(jìn)先出算法FIFO,近期最少使用算法LRU等。,例一個(gè)有32位程序地址空間、頁(yè)面容量為2KB、主存容量為8MB的存儲(chǔ)系統(tǒng), 問:()虛頁(yè)號(hào)字段有多少位?頁(yè)表將有多少行? ()頁(yè)表的每一行有多少位?頁(yè)表的容量有多少字節(jié)?,解:()2kB=211 字節(jié), 頁(yè)內(nèi)地址為11位。 虛頁(yè)號(hào)字段為 3211=21 位, 頁(yè)表的長(zhǎng)度為:221=2M行。,()8MB=223字節(jié), 主存頁(yè)號(hào)2311=12位, 再加上裝入位、訪問方式等, 每一行至少16位, 頁(yè)表的容量2M16位4MB。,二、段式虛擬存儲(chǔ)器,將用戶程序按其邏輯結(jié)構(gòu)分為若干段,各段大小可變。相應(yīng)地虛擬存儲(chǔ)器也需動(dòng)態(tài)地分段,且將段的起始地址與段的長(zhǎng)度寫入段表之中。,虛地址分為兩部分:高位是段號(hào),低位是段內(nèi)地址。,地址變換:,三、段頁(yè)式虛擬存儲(chǔ)器,程序按其邏輯結(jié)構(gòu)分段,每段再分為若干大小相同的頁(yè),主存空間也劃分為若干同樣大小的頁(yè),相應(yīng)地建立段表和頁(yè)表,分兩級(jí)查表實(shí)現(xiàn)虛實(shí)地址的轉(zhuǎn)換。,總結(jié):段、頁(yè)、段頁(yè)式比較,例(書上618)主存容量4MB,虛存容量1GB,問實(shí)地址與虛地址各為多少位?若頁(yè)面大小為4KB,主存頁(yè)表應(yīng)有多少個(gè)表行?,解:4MB222 B 主存實(shí)地址為22位。,1GB230 B 虛地址為30位。,4KB212 B 301218位 主存頁(yè)表應(yīng)有 218個(gè)表行。,例(書上)頁(yè)大小為16字,已知頁(yè)表內(nèi)容,求當(dāng)CPU程序按下列二進(jìn)制虛擬訪存時(shí)產(chǎn)生的實(shí)際地址。,(1)00101101 (2)10100000 (3)10001000,3.6 雙端口存儲(chǔ)器與并行主存系統(tǒng),一、雙端口存儲(chǔ)器,應(yīng)用場(chǎng)合:在運(yùn)算器中采用雙端口存儲(chǔ)芯片,作為通用寄存器組,能夠快速提供雙操作數(shù)。,注意:只要對(duì)同一地址同時(shí)操作,即發(fā)生沖突。 控制復(fù)雜,硬件開銷大,只作成小容量。,二、并行主存系統(tǒng),存儲(chǔ)器系統(tǒng)速度總跟不上CPU速度,造成數(shù)據(jù)提供的瓶頸問題,提出了并行主存系統(tǒng)。(在大型計(jì)算機(jī)中),單體多字并行主存系統(tǒng),單體指只有一套地址寄存器,多字指有多個(gè)容量相同的存儲(chǔ)模塊。,使傳輸速度提高了n倍,適用于向量運(yùn)算一類。,這種形式適合要讀取的數(shù)據(jù)正好連續(xù)存放在M0Mn-1的相同單元里,否則就失去意義了。,多體交叉存儲(chǔ)器,由多個(gè)相互獨(dú)立、容量相同的存儲(chǔ)模塊構(gòu)成。各存儲(chǔ)體的編址大多采用交叉編址方式。,在一個(gè)存儲(chǔ)周期內(nèi),發(fā)四次地址,分時(shí)訪問每個(gè)存儲(chǔ)體。 一段連續(xù)的程序或數(shù)據(jù),將交叉地存放在幾個(gè)存儲(chǔ)體中。,三、相聯(lián)存儲(chǔ)器,按照存儲(chǔ)項(xiàng)內(nèi)容來訪問的存儲(chǔ)器。,基本原理是把存儲(chǔ)單元所存內(nèi)容的一部分作為檢索項(xiàng),去檢索該存儲(chǔ)器,并將存儲(chǔ)器中與該檢索項(xiàng)符合的存儲(chǔ)單元進(jìn)行讀出與寫入。,相聯(lián)存儲(chǔ)器結(jié)構(gòu),一位電路結(jié)構(gòu),相聯(lián)存儲(chǔ)器陣列結(jié)構(gòu),相聯(lián)存儲(chǔ)器,3.7 磁盤存儲(chǔ)設(shè)備,一、磁記錄原理與記錄方式,目前外存儲(chǔ)器中使用比較廣泛的是磁表

溫馨提示

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

評(píng)論

0/150

提交評(píng)論