計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理_第1頁
計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理_第2頁
計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理_第3頁
計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理_第4頁
計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

計算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合組成原理-存儲器層次結(jié)構(gòu)(五)(總分:137.47,做題時間:90分鐘)一、{{B}}單項選擇題{{/B}}(總題數(shù):33,分?jǐn)?shù):66.00)下述說法中正確的是 。I.半導(dǎo)體RAM信息可讀可寫,且斷電后仍能保持記憶II.動態(tài)RAM是易失性RAM,而靜態(tài)RAM中的存儲信息是不易失的半導(dǎo)體RAM是易失性RAM,但只要電源不斷電,所存信息是不丟失的半導(dǎo)體RAM是非易失性的RAMA.I、IIB.只有IIIC.I、VD.全錯(分?jǐn)?shù):2.00)A.B.C.丿解析:[解析]半導(dǎo)體RAM,無論靜態(tài)RAM還是動態(tài)RAM都是易失性的,即斷電后存儲信息都將丟失。RAM是可讀可寫,而ROM只讀。對于III來講,DRAM即使不斷電,如果在規(guī)定的時間內(nèi)沒有及時刷新,則存儲信息也會丟失。易失性存儲器,即斷電后存儲信息消失的存儲器;斷電后存儲信息仍然保存的存儲器被稱為非易失性存儲器。顯然半導(dǎo)體RAM是易失性存儲器。半導(dǎo)體靜態(tài)存儲器(SRAM)的存儲原理是 。A.依靠雙穩(wěn)態(tài)電路B. 依靠定時刷新C. 依靠讀后再生D. 信息不再變化(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]半導(dǎo)體靜態(tài)存儲器(SRAM)是由雙穩(wěn)態(tài)電路構(gòu)成,并依靠其穩(wěn)態(tài)特性來保存信息;動態(tài)存儲器(DRAM)是利用電容器存儲電荷的特性存儲數(shù)據(jù),依靠定時刷新和讀后再生對信息進(jìn)行保存,而ROM中的信息一經(jīng)寫入就不再變化。下面敘述錯誤的是 。A.隨機(jī)存儲器可隨時存取信息,斷電后信息丟失B.在訪問隨機(jī)存儲器時,訪問時間與單元的物理位置無關(guān)C.主存儲器中存儲的信息均是不可改變的D.隨機(jī)存儲器和只讀存儲器可以統(tǒng)一編址(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]主存由RAM和ROM組成,其中ROM中的信息是不可改變的,RAM中的信息是可以改變的。在對破壞性讀出的存儲器進(jìn)行讀/寫操作時,為維持原存信息不變,必須輔以的操作是 。A.刷新B.再生C.寫保護(hù)D.主存校驗(分?jǐn)?shù):2.00)A.丿C.D.解析:[解析]對于破壞性讀出的存儲器,每當(dāng)一次讀出操作之后,必須緊接一個重寫(再生)操作,以便恢復(fù)被破壞的信息,保持原存信息不變。如果某個存儲單元所存儲的信息被讀出時,原存信息被破壞,則稱為破壞性讀出;如果讀出時,原存信息不被破壞,則稱為非破壞性讀出。破壞性讀出的存儲器,每次讀出之后必須緊接一個重寫(再生)操作。再生和刷新是兩個完全不同的概念,切不可混淆。再生是隨機(jī)的,某個存儲單元只有在破壞性讀出之后才需要再生,一股是按存儲單元進(jìn)行的。而刷新是定時的,即使許多記憶單元長期未被訪問,也需要刷新。刷新以存儲體矩陣中的一行為單位進(jìn)行。在CPU執(zhí)行一段程序的過程中,Cache的存取次數(shù)為4600次,由主存完成的存取次數(shù)為400次。若CacheTOC\o"1-5"\h\z的存取時間為5ns,主存的存取時間為25ns,則CPU的平均訪問時間為 ns。A.5.4B.6.6C.8.8D.9.2(分?jǐn)?shù):2.00)A.丿C.D.解析:[解析]命中率H=4600/(4600+400)=0.92。則平均訪問時間:T=HXT+(1-H)XT=0.92X5ns+0.08X25ns=6.6ns。A A1 A2命中率[*],N為Cache的存取次數(shù),N為主存的存取次數(shù)。假設(shè)Cache訪問和主存訪問是同時啟動的,則12平均存?。ㄗx/寫)時間為T=HXT+(1-H)XTTOC\o"1-5"\h\zA A1 A2式中,T為Cache讀/寫時間;T為主存讀/寫時間。A1 A2主存與Cache間采用全相聯(lián)映射方式,Cache容量4MB,分為4塊,每塊1MB,主存容量256MB。若主存讀/寫時間為30ns,Cache的讀/寫時間為3ns,平均讀/寫時間為3.27ns,則Cache的命中率為 。A.90%B.95%C.97%D.99%(分?jǐn)?shù):2.00)A.B.C.丿解析:[解析]此題屬于逆向解題,沒有出過類似的題目,考生需引起重視。根據(jù)公式T=HXT+(1-H)XT,可求得Cache的命中率為99%。TOC\o"1-5"\h\zA A1 A2題干中真正有意義的數(shù)據(jù)是主存讀/寫時間、Cache的讀/寫時間和平均讀/寫時間,據(jù)此就可以求出Cache的命中率,其他數(shù)值屬于干擾數(shù)據(jù)。某SRAM芯片,其容量為512X8位,除電源和接地端外,該芯片引出線的最小數(shù)目應(yīng)該是 。A.23B.25C.50D.19(分?jǐn)?shù):2.00)A.B.C.丿解析:[解析]容量為512X8位,首先數(shù)據(jù)線是8位,因為29=512,所以地址線為9位,再加上一根讀控制線和一根寫控制線(可能有些書上的答案還會有電源線、地線等,做題時只算讀、寫線即可),一共是8+9+2=19,故選D。某機(jī)器的主存儲器共32KB,由16片16KX1位(內(nèi)部采用128X128存儲陣列)的DRAM芯片字和位同時擴(kuò)展構(gòu)成。若采用集中式刷新方式,且刷新周期為2ms,那么所有存儲單元刷新一遍需要 個存儲周期。TOC\o"1-5"\h\zA.128B.256C.1024D.16384(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]因為芯片內(nèi)部采用128X128存儲陣列,刷新一行需要一個存儲周期,所以選A。刷新是所有芯片的某行同時被刷新,在考慮刷新問題時,應(yīng)當(dāng)從單個芯片的存儲容量著手,而不是從整個存儲器的容量著手。此題在計算中,只需要考慮芯片內(nèi)部的存儲陣列的大小,對于采用何種刷新方式,刷新周期為多少,都不會影響最終的結(jié)果。若單譯碼方式的地址輸入線為6,則譯碼輸出線有 根,那么雙譯碼方式有輸出線 根。? A.64,16? B.64,32? C.32,16? D.16,64(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]單譯碼方式的譯碼輸出線為64根,雙譯碼方式的譯碼輸出線為16根。地址譯碼電路有單譯碼和雙譯碼兩種方式,單譯碼方式只有一個譯碼器,雙譯碼方式有兩個譯碼器(X地址譯碼器和Y地址譯碼器),X和Y兩個方向譯碼器的輸出線在存儲體內(nèi)部的一個記憶單元上交叉,以選擇相應(yīng)的記憶單元。單譯碼方式的地址輸入線為6位,則譯碼輸出線有64根,C、D選項可以排除。由于雙譯碼方式將地址輸入線一分為二,X和Y方向各3位,每個譯碼輸出線為8根,因此總的輸出信號線為16根。TOC\o"1-5"\h\z某機(jī)器字長32位,存儲容量64MB,若按字編址,它的尋址范圍是 。A.8MB.16MBC.16MD.8MB(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]首先需要分清MB和M的區(qū)別:M是一個數(shù)量級,如1M就是代表一個數(shù)字,沒有實際的物理意義;MB是一個單位,1MB表示的就是1M個字節(jié)。尋址范圍,必然應(yīng)該是數(shù)量級。本題中,由于是按字編址,并且字長是32位,因此4個字節(jié)(4B)編一個地址,一共有64MB/4B=16M個地址,尋址范圍為16M。11?采用八體并行低位交叉存儲器,設(shè)每個體的存儲容量為32KX16位,存取周期為400ns,下述說法中正確的是 。A.在400ns內(nèi),存儲器可向CPU提供27位二進(jìn)制信息B.在100ns內(nèi),每個體可向CPU提供27位二進(jìn)制信息C.在400ns內(nèi),存儲器可向CPU提供28位二進(jìn)制信息D.在100ns內(nèi),每個體可向CPU提供28位二進(jìn)制信息分?jǐn)?shù):2.00)丿B.C.解析:[解析]計算過程:八體并行低位交叉存儲器,存取周期和總線周期需要滿足存取周期=8X總線周期,因此得到總線周期為50ns。對于單個個體而言,每個存取周期內(nèi)仍然只能取出16位,但是由于CPU交叉訪問8個存儲體,因此可以在一個存取周期內(nèi)使8個存儲體各傳輸16位,共16X8=128位,也就是27位二進(jìn)制信息。雙端口存儲器能高速進(jìn)行讀/寫,是因為采用了 。A.新型器件B.流水技術(shù)C.兩套相互獨(dú)立的讀/寫電路D.高速芯片(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]雙端口存儲器指同一個存儲器具有兩組相互獨(dú)立的讀/寫控制線路,由于進(jìn)行并行的獨(dú)立操作,因此它是一種高速工作的存儲器。當(dāng)兩個端口的地址不相同時,在兩個端口上進(jìn)行讀/寫操作,一定不會發(fā)生沖突。當(dāng)任意一端口被選中驅(qū)動時,就可對整個存儲器進(jìn)行存取,每一個端口都有自己的片選控制和輸出驅(qū)動控制。當(dāng)兩個端口同時存取存儲器同一存儲單元時,便發(fā)生讀/寫沖突。為解決此問題,特設(shè)置了BUSY標(biāo)志,由片上的判斷邏輯決定對哪個端口優(yōu)先進(jìn)行讀/寫操作,而暫時關(guān)閉另一個被延遲的端口。關(guān)于Cache的3種基本映射方式,下面敘述中錯誤的是 。A.Cache的地址映射有全相聯(lián)、直接和多路組相聯(lián)3種基本映射方式B.全相聯(lián)映射方式,即主存單元與Cache單元隨意對應(yīng),線路過于復(fù)雜,成本太高C.多路組相聯(lián)映射是全相聯(lián)映射和直接映射的一種折中方案,有利于提高命中率D.直接映射是全相聯(lián)映射和組相聯(lián)映射的一種折中方案,有利于提高命中率(分?jǐn)?shù):2.00)A.B.C.丿解析:[解析]Cache存儲器通常使用3種地址映射方式,它們是全相聯(lián)映射、直接映射和多路組相聯(lián)映射方式。1)全相聯(lián)映射方式。主存單元與Cache單元隨意對應(yīng),有最大的使用靈活性,但地址標(biāo)志字段位數(shù)多,比較地址時可能要與所有單元比較,線路過于復(fù)雜,成本太高,只用于Cache容量很小的情況。2)直接映射方式。一個主存單元只與一個Cache單元硬性對應(yīng),有點死板,影響Cache容量的有效使用效率,即影響命中率,但地址比較線路最簡單,比較常用。3)多路組相聯(lián)映射方式。一個主存單元可以與多個Cache單元有限度地隨意對應(yīng),是全相聯(lián)映射和直接映射的一種折中方案,有利于提高命中率,地址比較線路也不太復(fù)雜,是比較好的一種選擇。一般來講,直接映射常用在 。A.小容量高速CacheB.大容量高速CacheC.小容量低速CacheD.大容量低速Cache

(分?jǐn)?shù):2.00)A.丿C.D.解析:[解析]直接映射的地址轉(zhuǎn)換速度快(標(biāo)記位相比其他映射方式要少),但塊的沖突概率較高。在大容量高速Cache系統(tǒng)中使用直接映射方式,既可以發(fā)揮Cache的高速度,又可以減少塊的沖突概率。主存按字節(jié)編址,地址從0A4000H到OCBFFFH,共有 字節(jié);若用存儲容量為32KX8位的存儲芯片構(gòu)成該主存,至少需要 片。A.80K,2B.96K,2C.160K,5D.192K,5(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]CBFFFH+l-A4000H=28000H(可以換成二進(jìn)制或者十進(jìn)制計算),總共有160KB(28000H轉(zhuǎn)換成二進(jìn)制為00101000000000000000,轉(zhuǎn)換成十進(jìn)制為163840,163840/1024=160,即160KB),則所需存儲芯片數(shù)=(160KX8)/(32KX8)=5用末地址+1減去首地址,即可求出存儲容量,然后用存儲容量除以存儲芯片容量,即可得出所需芯片數(shù)。一個存儲器的容量假定為MXN,若要使用lXk的芯片(1<M,k<N),需要在字和位方向上同時擴(kuò)展,此時共需要.個存儲芯片。A.MXNB.(M/1)X(N/k)此時共需要.個存儲芯片。A.MXNB.(M/1)X(N/k)(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]用存儲容量除以存儲芯片容量,需要向上取整,因為M除以1和N除以k不一定是整數(shù)。存儲器采用部分譯碼法片選時, 。A.不需要地址譯碼器B.不能充分利用存儲器空間C.會產(chǎn)生地址重疊D.CPU的地址線全參與譯碼分?jǐn)?shù):2.00)A.B.丿解析:[解析]部分譯碼即只用高位地址的一部分參與譯碼,而另一部分高位地址與譯碼電路無關(guān),因此出現(xiàn)一個存儲單元對應(yīng)多個地址的現(xiàn)象,這種現(xiàn)象被稱為地址重疊(如{{U}}00{{/U}}111和{{U}}01{{/U}}111,前兩位不參與譯碼,導(dǎo)致一個存儲單元對應(yīng)多個地址)。地址線A15?A0(低),若選取用16KX1位存儲芯片構(gòu)成64KB存儲器,則應(yīng)由地址碼 譯碼產(chǎn)生片選信號。A.A15、A14B.AO、A1C.A14、A13D.A1、A2(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]用16KX1位芯片構(gòu)成64KB的存儲器,需要的芯片數(shù)量為(64KX8)/(16KX1)=32每8片一組分成4組,每組按位擴(kuò)展方式組成一個16KX8位的模塊,4個模塊按字?jǐn)U展方式構(gòu)成64KB的存儲器。存儲器的容量為64K=2i6,需要16位地址,選用A?A為地址線;每個模塊的容量為16K=2i4(需要TOC\o"1-5"\h\z15 014位地址),選用A?A為每個模塊提供地址;A、A通過2-4譯碼器對4個模塊進(jìn)行片選。13 0 15 14如果一個存儲單元被訪問,那么可能這個存儲單元會很快地再次被訪問,這稱為 。A.時間局部性B.空間局部性C.程序局部性?D.數(shù)據(jù)局部性(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]如果程序中存在循環(huán),則從時間上看,一個單元剛被訪問又會被再次訪問,那么稱為時間局部性。程序的局部性有兩個方面的含義,即時間局部性和空間局部性。時間局部性指如果一個存儲單元被訪問,則可能該單元會很快再次被訪問,這是因為程序存在循環(huán)??臻g局部性指如果一個存儲單元被訪問,則該單元鄰近的單元也可能很快被訪問,這是因為程序中大部分指令是順序存儲、順序執(zhí)行的,數(shù)據(jù)一般也是以向量、數(shù)組、樹、表等形式簇聚地存儲在一起的。為了解決CPU與主存速度不匹配的問題,通常采用的方法是 。A.采用速度更快的主存B.在CPU和主存之間插入少量的高速緩沖存儲器C.在CPU周期中插入等待周期D.擴(kuò)大主存的容量分?jǐn)?shù):2.00)A.丿C.D.解析:[解析]由于主存的速度低于CPU的速度,因此解決CPU與主存速度不匹配的問題最常用的方法是在CPU和主存之間建立高速緩沖存儲器(Cache)。Cache位于主存和CPU之間,用來存放正在執(zhí)行的程序段和數(shù)據(jù),以便CPU能高速地使用它們。Cache的存取速度可以與CPU的速度相匹配,但存儲容量較小,價格較高。在Cache和主存之間,增加輔助硬件,讓它們構(gòu)成一個整體(Cache存儲系統(tǒng)),Cache存儲系統(tǒng)全部用硬件來調(diào)度,因此它對系統(tǒng)程序員和應(yīng)用程序員都是透明的。下面關(guān)于計算機(jī)Cache的論述中,正確的是 。A.Cache是一種介于主存和輔存之間的存儲器,用于主存和輔存之間的緩沖存儲B.如果訪問Cache不命中,則用從內(nèi)存中取到的字節(jié)代替Cache中最近訪問過的字節(jié)C.Cache的命中率必須很高,一般要達(dá)到90%以上D.Cache中的信息必須與主存中的信息時刻保持一致(分?jǐn)?shù):2.00)A.B.D.解析:[解析]由于Cache不是介于主、輔存之間的存儲器,因此A選項錯;由于訪問Cache不命中需要替換時的傳送單位是數(shù)據(jù)塊而不是字節(jié),因此B選項錯;在采用寫回法時,由于Cache中的信息并非與主存中的信息時刻保持一致(知識點詳細(xì)講過),因此D選項錯。若數(shù)據(jù)在存儲器中采用以低字節(jié)地址為字地址的存放方式(小端存儲),則十六進(jìn)制數(shù)12345678H按自己地址由小到大依次存為 。A.12345678B.87654321C.78563412D.34127856(分?jǐn)?shù):2.00)A.B.丿D.解析:容量為64塊的Cache采用組相聯(lián)映射方式,字塊大小為128個字,每4塊為一組。如果主存為4K塊,且按字編址,那么主存地址和主存標(biāo)記的位數(shù)分別為 。16,17,18,19,(分?jǐn)?shù):2.00)A.B.C.丿解析:[解析]因為主存容量4KX128=512K字,所以主存地址19位。又因為字塊大小為128個字,所以塊內(nèi)地址7位,Cache被分成64/4=16組,故組號4位,主存標(biāo)記19-4-7=8位。主存地址由主存標(biāo)記、組號和塊內(nèi)地址3部分組成。先算出主存的容量,得出主存地址的位數(shù),然后根據(jù)組相聯(lián)方式和塊的大小,確定組號字段的位數(shù)和塊內(nèi)地址字段的位數(shù),即可得出主存標(biāo)記的位數(shù)。TOC\o"1-5"\h\zCache用組相聯(lián)映射,一塊大小為128B,Cache共64塊,4塊分一組,主存有4096塊,主存地址共需 位。A.19B.18C.17D.16(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]主存有4096塊,每塊大小128B,則主存容量共有4096X128B=512KB,共需地址線19位。此題在計算時,只需要算出主存的容量即可得出結(jié)果,實際上與采用什么映射方式?jīng)]有關(guān)系,不需要考慮組相聯(lián)的問題。另外,還需要知道Cache的塊大小和主存的塊大小是一樣大的,不然此題也無法作答。有效容量為128KB的Cache,每塊16B,8路組相聯(lián)。字節(jié)地址為1234567H的單元調(diào)入該Cache,其tag應(yīng)為 。A.1234HB.2468HC.048DHD.12345H(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]因為塊的大小為16B,所以塊內(nèi)地址字段為4位;又因為Cache容量為128KB,8路組相聯(lián),所以可以分為1024組[128KB/(8X16B)=1024],對應(yīng)的組號字段10位;剩下為標(biāo)記字段。1234567H=0001001000110100010101100111,標(biāo)記字段為其中高14位,00010010001101=048DH。組相聯(lián)映射對應(yīng)的主存地址應(yīng)包括3部分:標(biāo)記(Tag)、組號(Index)和塊內(nèi)地址(Offset)。首先將主存地址由十六進(jìn)制變成二進(jìn)制,其中塊內(nèi)地址字段為最后4位,組號字段為中間10位,剩下的就是標(biāo)記字段,將標(biāo)記字段二進(jìn)制轉(zhuǎn)換為十六進(jìn)制,即可得出結(jié)果。在全相聯(lián)映射、直接映射和組相聯(lián)映射中,塊沖突概率最小的是 。A.全相聯(lián)映射B.直接映射C.組相聯(lián)映射D.不一定(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]全相聯(lián)映射就是讓主存中任何一個塊均可以裝入到Cache中任何一個塊的位置上,塊沖突概率最小。在全相聯(lián)映射、直接映射和組相聯(lián)映射3種映射方式中,全相聯(lián)映射的塊沖突概率最小,直接映射的塊沖突概率最大,組相聯(lián)映射的塊沖突概率居中。27?關(guān)于LRU算法,以下論述正確的是 。A.LRU算法替換掉那些在Cache中駐留時間最長且未被引用的塊B.LRU算法替換掉那些在Cache中駐留時間最短且未被引用的塊C.LRU算法替換掉那些在Cache中駐留時間最長且仍在引用的塊D.LRU算法替換掉那些在Cache中駐留時間最短且仍在引用的塊(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]LRU算法指近期最少使用算法,把在Cache中駐留時間最長而沒有使用的塊作為被替換的塊。LRU算法需要隨時記錄Cache中各塊被使用的情況,以便確定哪個塊是近期最少使用的塊。通常需要對每一塊設(shè)置一個稱為“年齡計數(shù)器”的硬件或軟件計數(shù)器,用以記錄其被使用的情況。下列關(guān)于虛擬存儲器的說法,錯誤的是 。A.虛擬存儲器利用了局部性原理B.頁式虛擬存儲器的頁面如果很小,主存中存放的頁面數(shù)較多,導(dǎo)致缺頁頻率較低,換頁次數(shù)減少,可以提升操作速度C.頁式虛擬存儲器的頁面如果很大,主存中存放的頁面數(shù)較少,導(dǎo)致頁面調(diào)度頻率較高,換頁次數(shù)增加,降低操作速度D.段式虛擬存儲器中,段具有邏輯獨(dú)立性,易于實現(xiàn)程序的編譯、管理和保護(hù),也便于多道程序共享(分?jǐn)?shù):2.00)A.丿C.D.解析:[解析]在虛擬存儲器中,頁面如果很小,虛擬存儲器中包含的頁面?zhèn)€數(shù)就會過多,使得頁表的體積過大,頁表本身占據(jù)的存儲空間過大,操作速度將變慢。A選項,CPU訪問存儲器時,無論是存取指令還是存取數(shù)據(jù),所訪問的存儲單元都趨于聚集在一個較小的連續(xù)區(qū)域中,即局部性原理。虛擬存儲器正是依據(jù)了這一原理來設(shè)計的;C選項,當(dāng)頁面很大時,虛擬存儲器中的頁面?zhèn)€數(shù)會變少。另外,主存的容量比虛擬存儲器的容量更少,主存中的頁面?zhèn)€數(shù)就會更少,缺頁率自然就很大,就會不斷地調(diào)入/調(diào)出頁面,降低操作速度;D選項,段式虛擬存儲器是按照程序的邏輯性來設(shè)計的,具有易于實現(xiàn)程序的編譯、管理和保護(hù),也便于多道程序共享的優(yōu)點。訪問相聯(lián)存儲器時, 。A.根據(jù)內(nèi)容,不需要地址B.不根據(jù)內(nèi)容,只需要地址C.既要內(nèi)容,又要地址D.不要內(nèi)容也不要地址(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]此題屬于概念題。訪問相聯(lián)存儲器只需要給出內(nèi)容,不需要給出地址,因此,相聯(lián)存儲器又被稱為按內(nèi)容訪問存儲器,故選A。下列關(guān)于虛擬存儲器的論述中,正確的是 。A.對應(yīng)用程序員透明,對系統(tǒng)程序員不透明B.對應(yīng)用程序員不透明,對系統(tǒng)程序員透明C.對應(yīng)用程序員、系統(tǒng)程序員都不透明D.對應(yīng)用程序員、系統(tǒng)程序員都透明(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]由于虛擬存儲器需要通過操作系統(tǒng)來調(diào)度,因此對系統(tǒng)程序員是不透明的,但對應(yīng)用程序員是透明的。計算機(jī)中所謂透明性概念是指本來存在的事物或?qū)傩裕瑥哪撤N角度看似乎不存在。這與日常生活中的“透明”的含義正好相反,日常生活中的“透明”是要公開,讓大家看得到,而計算機(jī)中的“透明”,則是指看不到的意思,也就是指那些不屬于自己管的部分。A選項是虛擬存儲系統(tǒng)的特點,D選項是Cache存儲系統(tǒng)的特點,因為Cache是使用硬件來實現(xiàn)的。對36位虛擬地址的頁式虛擬存儲系統(tǒng),每頁8KB,每個頁表項為32位,頁表的總?cè)萘繛?。A.1MBB.4MBC.8MBD.32MB分?jǐn)?shù):2.00)A.B.解析:[解析]根據(jù)虛擬地址的位數(shù),可以得出虛存的容量23664GB,又根據(jù)頁面大小為8KB,得出64GB/8KB=8M個頁表項,每個頁表項32位(4B),因此,頁表的總?cè)萘繛?2MB。主存空間和虛存空間都劃分成若干個大小相等的頁。主存(即實存的頁)稱為實頁,虛存的頁稱為虛頁。頁表大小=頁表項數(shù)X每個頁表的字節(jié)數(shù)。下列關(guān)于頁式虛擬存儲器的論述,正確的是 。A.根據(jù)程序的模塊性,確定頁面大小B.可以將程序放置在頁面內(nèi)的任意位置C.可以從邏輯上極大地擴(kuò)充內(nèi)存容量,并且使內(nèi)存分配方便、利用率高D.將正在運(yùn)行的程序全部裝入內(nèi)存(分?jǐn)?shù):2.00)A.B.丿D.解析:[解析]頁式虛擬存儲器中頁面的大小與程序的大小無關(guān),A選項錯;程序僅能從頁面的起始位置開始放置,B選項錯;正在運(yùn)行的程序未必能全部裝入內(nèi)存,D選項錯。某計算機(jī)主存地址空間大小為256MB,按字節(jié)編址。虛擬地址空間大小為4GB,采用頁式存儲管理,頁面大小為4KB,TLB(快表)采用全相聯(lián)映射,有4個頁表項,內(nèi)容見下表。{{B}}表全相聯(lián)映射對應(yīng)的頁表項{{/B}}有效位標(biāo)記頁框號???0FF180H0002H???13FFF1H0035H???002FF3H0351H???103FFFH0153H???則對虛擬地址03FFF180H進(jìn)行虛實地址變換的結(jié)果是 。A.0153180HB.0035180HC.TLB缺失D.缺頁(分?jǐn)?shù):2.00)丿B.C.D.解析:[解析]由于頁面大小為4KB,因此頁內(nèi)地址為12位。于是可以得到虛擬地址03FFF180H的頁內(nèi)地址為180H,故頁號為03FFFH。由表可知,頁標(biāo)記為03FFFH所對應(yīng)的頁框號為0153H,于是將頁框號與頁內(nèi)地址進(jìn)行拼接,即可以得到虛實地址變換的結(jié)果是0153180H。二、{{B}}綜合應(yīng)用題{{/B}}(總題數(shù):7,分?jǐn)?shù):71.50)設(shè)某機(jī)主存容量為16MB,Cache的容量為8KB,且按字節(jié)編址。每字塊8個字,每字32位。設(shè)計一個4路組相聯(lián)映射的Cache組織。(分?jǐn)?shù):12.50)(1) .畫出主存地址字段中各段的位數(shù)。(分?jǐn)?shù):2.50)正確答案:(主存地址字段如圖所示。[*]圖主存地址字段)解析:(2) .設(shè)Cache初態(tài)為空,CPU依次從主存0,1,2,…,99號單元中讀出100個字(主存一次讀出一個字),并重復(fù)此次序10次,問命中率是多少?(分?jǐn)?shù):2.50)正確答案:(由于Cache初態(tài)為空,因此CPU讀0號單元時不命中,必須訪存,同時將該字所在的主存塊調(diào)入Cache(調(diào)入內(nèi)存一定是一整塊調(diào)入,而一塊包括8個單元),接著CPU讀1?7號單元均命中。同理,CPU讀8,16,…,96號單元均不命中??梢?,CPU在連續(xù)讀100個字中共有13次未命中,而后9次循環(huán)讀100個字全部命中,命中率為[*])解析:(3).若Cache速度是主存速度的5倍,試問有Cache和無Cache相比,速度提高多少倍?(分?jǐn)?shù):2.50)正確答案:(設(shè)主存存取周期為5t,Cache的存取周期為t,沒有Cache的訪問時間是5tX1000,有Cache存取周期為tX(1000-13)+5tX13,則有Cache和無Cache相比,速度提高的倍數(shù)為[*])解析:(4).系統(tǒng)的效率是多少?(分?jǐn)?shù):2.50)正確答案:(系統(tǒng)的效率為[*])解析:(5).某計算機(jī)的主存地址位數(shù)為32位,按字節(jié)編址。假定數(shù)據(jù)Cache中最多存放128個主存塊,采用4路組相聯(lián)方式,塊大小為64B,每塊設(shè)置了1位有效位。采用一次性寫回策略,為此每塊設(shè)置了1位“臟位”。要求:1)分別指出主存地址中標(biāo)記(Tag)、組號(Index)和塊內(nèi)地址(0ffset)3部分的位置和位數(shù)。2)計算該數(shù)據(jù)Cache的總位數(shù)。(分?jǐn)?shù):2.50)正確答案:(主存地址由標(biāo)記(Tag)、組號(Index)和塊內(nèi)地址(0ffset)3部分組成,標(biāo)記字段在前,組號字段居中,塊內(nèi)地址字段在后。1)因為塊大小為64B,所以塊內(nèi)地址字段為6位;因為Cache中有128個主存塊,采用4路組相聯(lián),Cache分為32組(128/4=32),所以組號字段為5位;標(biāo)記字段為剩余位,32-5-6=21位。2)數(shù)據(jù)Cache的總位數(shù)應(yīng)包括標(biāo)記項的總位數(shù)和數(shù)據(jù)塊的位數(shù)。每個Cache塊對應(yīng)一個標(biāo)記項,標(biāo)記項中應(yīng)包括標(biāo)記字段、有效位和“臟位”(僅適用于寫回法)。因此,標(biāo)記項的總位數(shù)=128X(21+1+1)=128X23=2944位。又由于數(shù)據(jù)塊位數(shù)=128X64X8=65536位,因此數(shù)據(jù)Cache的總位數(shù)=2944+65536=68480位。寫回法指CPU在執(zhí)行寫操作時,被寫數(shù)據(jù)只寫入Cache,不寫入主存。僅當(dāng)需要替換時,才把已經(jīng)修改過的Cache塊寫回到主存。如果“臟位”為“1”,則必須先把這一塊寫回到主存中去之后才能調(diào)入新的塊;如果“臟位”為“0”,則這一塊不必寫回主存,只要用新調(diào)入的塊覆蓋掉這一塊即可。)解析:某彩色圖形顯示器,屏幕分辨率為640像素X480像素,共有4色、16色、256色和65536色4種顯示模式。(分?jǐn)?shù):7.50)(1).試給出每個像素的顏色數(shù)m和每個像素所占用存儲器的比特數(shù)n之間的關(guān)系。(分?jǐn)?shù):2.50)正確答案:(在圖形方式中,每個屏幕上的像素都由存儲器中的存儲單元的若干比特指定其顏色。每個像素所占用的內(nèi)存位數(shù)決定于能夠用多少種顏色表示一個像素。表示每個像素的顏色數(shù)m和每個像素占用的存儲器的比特數(shù)n之間的關(guān)系由下面的公式給出:n=logm)2解析:(2).顯示緩沖存儲器的容量是多少?(分?jǐn)?shù):2.50)正確答案:(由于顯示緩沖存儲器的容量應(yīng)按照最高灰度(65536色)設(shè)計,故容量為640X480X(log65536)bit/8=614400B=615KB)2解析:(3).敘述帶有Cache存儲器的計算機(jī),其CPU讀內(nèi)存一次的工作過程。(分?jǐn)?shù):2.50)正確答案:(l)CPU將內(nèi)存地址加載到地址總線,并發(fā)出讀信號。2)Cache從地址總線截取內(nèi)存地址,解析出該地址所在的內(nèi)存塊號。3)查閱主存Cache地址映射變換機(jī)構(gòu),若該主存塊已調(diào)入Cache,則為命中,進(jìn)入4),否則,轉(zhuǎn)入6)o4)將對應(yīng)的Cache塊號與主存地址中的塊內(nèi)地址拼接,形成Cache地址,訪問Cache存儲體,同時阻斷主存的讀。5)由Cache讀出的數(shù)據(jù)經(jīng)數(shù)據(jù)總線送往CPU。6)在不命中的情況下,維持主存的讀,由主存讀出的數(shù)據(jù)經(jīng)數(shù)據(jù)總線送往CPUo7)同時查閱Cache是否有剩余的空間允許新的塊調(diào)入,如有,則轉(zhuǎn)入9)o8)啟動Cache替換機(jī)構(gòu),留出一個Cache塊位置。9)“打通”直接調(diào)度通路,將該主存塊調(diào)入Cache,并修改標(biāo)記。)解析:設(shè)主存容量為1MB,Cache容量為16KB,每字塊有16個字,每字32位,且按字節(jié)編址。(分?jǐn)?shù):5.00)(1).若Cache采用直接映射,試求主存地址字段中各段的位數(shù)。(分?jǐn)?shù):2.50)正確答案:(若Cache采用直接映射。由于每個字塊含有16個字(64B),且按字節(jié)編址,因此字塊內(nèi)的位數(shù)(塊內(nèi)地址位數(shù))為6位。另外,由于Cache中含有256個塊(16KB/16X4B),因此字塊地址位數(shù)為8位。主存容量1MB,說明總位數(shù)為20位,因此主存字塊標(biāo)記位數(shù)為20-6-8=6位。主存的地址格式如下:[*])解析:(2).若Cache采用4路組相聯(lián)映射,試求主存地址字段中各段的位數(shù)。(分?jǐn)?shù):2.50)正確答案:(若Cache采用4路組相聯(lián)映射。同理,塊內(nèi)地址位數(shù)為6位。由于采用4路組相聯(lián)映射,即每組4塊,因此一共有64組,即組號需要6位。很容易得到主存字塊標(biāo)記位數(shù)為20-6-6=8位。主存的地址格式如下:[*])解析:某Cache采用全相聯(lián)映射,且此Cache有16塊,每塊8個字,主存容量為216個字(按字尋址),Cache開始為空。Cache存取時間為40ns;主存與Cache間傳送8個字需要1Mso(分?jǐn)?shù):18.97)(1).計算Cache地址中標(biāo)記位數(shù)和塊內(nèi)地址位數(shù)。(分?jǐn)?shù):2.71)正確答案:(Cache地址中塊內(nèi)地址位數(shù)為3位(23=8)。由于采用的是全相聯(lián)映射,因此除去塊內(nèi)地址剩下的就是標(biāo)記位數(shù)。主存的標(biāo)記位數(shù)為16-3=13,故Cache的標(biāo)記位數(shù)為13位。)解析:(2).程序首先訪問主存單元20,21,22,???,45,然后重復(fù)訪問主存單元28,29,30,???,45四次(假設(shè)沒有命中Cache,將主存對應(yīng)塊一次全部讀入Cache中,且第一塊從0開始計數(shù)),試計算Cache的命中率。(分?jǐn)?shù):2.71)正確答案:(首先,每塊包含8個字(也就是8個主存單元),先訪問20號單元,如果Cache不命中(因為Cache開始時為空),那么Cache就調(diào)入包含此單元的塊,此塊包含20、21、22、23單元,當(dāng)接下來訪問21?23單元時都命中。其次,訪問24號單元時又不命中,以此類推。當(dāng)訪問20、24、32、40號單元時,不命中。也就是說,一共訪問次數(shù)為26+18X4=98次,其中有4次不命中,Cache的命中率為[*])解析:.計算上述程序總的存取時間。(分?jǐn)?shù):2.71)正確答案:(已知Cache命中率、訪問Cache的時間、主存與Cache交換塊的時間,總的存取時間就很容易計算了,如下:40nsX98+4Xlps=7920ns有些考生認(rèn)為答案應(yīng)該是40nsX94+4Xlps=7760ns,因為有4次沒有命中Cache,故沒有存取操作,僅僅是對比了標(biāo)記位而已,所以只需乘以94。解釋一下,如果Cache沒有命中,則CPU將會去主存取數(shù)據(jù),并且將數(shù)據(jù)從主存送往Cache,所以最終CPU還是得對Cache進(jìn)行98次的存取。)解析:.現(xiàn)有一64KX2位的存儲器芯片,欲設(shè)計具有同樣存儲容量的存儲器,應(yīng)如何安排地址線和數(shù)據(jù)線引腳的數(shù)目,使兩者之和最小,并說明有幾種解法。(分?jǐn)?shù):2.71)正確答案:(不妨設(shè)地址線和數(shù)據(jù)線的數(shù)目分別為x和y。只需要滿足2xXy=64KX2,有如下方案:當(dāng)y=1時,x=17;當(dāng)y=2時,x=16;當(dāng)y=4時,x=15;當(dāng)y=8時,x=14。(可不用討論y等于3、5、6這些情況,不然x就沒法計算了)后面的就不用計算了,肯定比前面的引腳數(shù)目多。從以上分析可以看出,當(dāng)數(shù)據(jù)線為1或2時,地址線和數(shù)據(jù)線引腳的數(shù)目之和為18,達(dá)到最小,并且有兩種解答。)解析:.用16KX16位的SRAM芯片構(gòu)成64KX32位的存儲器。要求畫出該存儲器的組成邏輯框圖。(分?jǐn)?shù):2.71)正確答案:(所需芯片總數(shù)(64KX32)/(16KX16)=8片,因此存儲器可分為4個模塊(圖中用橢圓標(biāo)示出來了),每個模塊16KX32位,各模塊通過A15、A14進(jìn)行2:4譯碼,如下圖所示。[*]圖64KX32位存儲器的組成邏輯框圖)解析:.一個Cache-主存系統(tǒng),采用50MHz的時鐘,存儲器以每一個時鐘周期傳輸一個字的速率連續(xù)傳輸8個字,以支持塊長為8個字的Cache,且每個字長為32位。假設(shè)讀操作所花費(fèi)的時間:1個周期接收地址,3個周期延遲,8個周期傳輸8個字;寫操作所花費(fèi)的時間:1個周期接收地址,2個周期延遲,8個周期傳輸8個字,3個周期恢復(fù)和寫入糾錯碼。求下述幾種情況下的存儲器的帶寬。1)全部訪問為讀操作。2)全部訪問為寫操作。3)65%的訪問為讀操作,35%的訪問為寫操作。(分?jǐn)?shù):2.71)正確答案:(由于存儲系統(tǒng)采用50MHz的時鐘,因此每一個時鐘周期為1/(50MHz)=20ns。當(dāng)全部訪問為讀操作時,一次讀操作所花費(fèi)的時間為T=(l+3+8)X20ns=240nsr故存儲器的帶寬為B=8/T=8/(240X10-9)^33.3X106字/s~133.2MB/srr當(dāng)全部訪問為寫操作時,一次寫操作所花費(fèi)的時間為T=(1+2+8+3)X20ns=280nsw故存儲器的帶寬為:B=8/T=8/(280X10-9)^28.6X106字/s~114.4MB/sww讀/寫操作合在一起的加權(quán)時間為T=240nsX0.65+280nsX0.35=254ns故存儲器的帶寬為B=8/T=8/(254X10-9)~31.5X106字/s~126MB/s)解析:⑺.某機(jī)器中,配有一個ROM芯片,地址空間為0000H?3FFFH?,F(xiàn)在再用若干個16KX8位的RAM芯片構(gòu)成一個32KX8位的RAM區(qū)域,使其地址空間為8000H?FFFFH。假設(shè)此RAM芯片有CS和WE信號控制端。CPU地址總線為A?A,數(shù)據(jù)總線為D?D,控制信號為RD(讀)、WR(寫)、MREQ(存儲器請求信號),當(dāng)且15 0 7 0僅當(dāng)MREQ和RD(或WR)同時有效時,CPU才能對存儲器進(jìn)行讀(或?qū)?,試畫出此CPU與上述ROM芯片、RAM芯片的連接圖。(分?jǐn)?shù):2.71)正確答案:(答案如下圖所示。選用兩片16KX8位的RAM芯片即可構(gòu)成一個32KX8位的RAM區(qū)域。下面說明應(yīng)該注意的一些細(xì)節(jié)問題。[*]圖CPU與ROM芯片、RAM芯片的連接圖ROM芯片不要連接在[*]信號線上,RAM芯片一定要連。關(guān)于RAM的片選信號:由于地址范圍應(yīng)該是8000H?BFFFH({{U}}10{{/U}}00000000000000?{{U}}10{{/U}}11111111111111)C000H?FFFFH({{U}}11{{/U}}00000000000000?{{U}}11{{/U}}11111111111111),因此兩片RAM的%A14分別是10和11(加粗和加下畫線的部分),也就是對應(yīng)了丫2和Y3。)解析:某計算機(jī)的主存地址空間大小為256MB,按字節(jié)編址。指令Cache和數(shù)據(jù)Cache分離,均有8個Cache行,每個Cache行大小為64B,數(shù)據(jù)Cache采用直接映射方式?,F(xiàn)有兩個功能相同的程序A和B,其偽代碼如下所示:程序A:inta[256][2S6];???intsum_array1(){inti,j,sum=0;for(i=0;iV256;i++)for(j=0;jV256;j++)sum+=a[i][j];returnsum;}程序B:inta[256][256];???intsum_array2(){inti,j,sum=0;for(j=0;jV256;j++)for(i=0;iV256;i++)sum+=a[i][j];returnsum;}假定int類型數(shù)據(jù)用32位補(bǔ)碼表示,程序編譯時,i、j、sum均分配在寄存器中,數(shù)組a按行優(yōu)先方式存放,其首地址為320(十進(jìn)制)。請回答下列問題,要求說明理由或給出計算過程。(分?jǐn)?shù):7.50)(1).若不考慮用于Cache一致性維護(hù)和替換算法的控制位,則數(shù)據(jù)Cache的總?cè)萘繛槎嗌??(分?jǐn)?shù):2.50)正確答案:(Cache結(jié)構(gòu)如下。V… TAG Data此處的行即為塊(Block)。直接映射下,每塊的Cache結(jié)構(gòu)一般分為4個部分,其中,V:1位,表示所在的塊是否有效。…:表示用于Cache一致性維護(hù)和替換算法的控制位。TAG:地址轉(zhuǎn)換標(biāo)記。如果不計算“…”部分,則Cache的大小由V、TAG和Data(數(shù)據(jù))3部分組成。在直起射中,可以將地址分為如下3個部分:TAG 塊索引 塊內(nèi)本題中,總的尋址位數(shù)為28位(228=256M);塊內(nèi)位為6位(26=64),5?0位;塊索引為3位(23=8),8?6位。因此,TAG=28-6-3=19位,即27?9位。每行(塊)的大小=V+TAG+數(shù)據(jù)=1+19+64X8位。數(shù)據(jù)Cache有8行,總?cè)萘繛椋?+19+64X8)X8/8=532B。)解析:(2).數(shù)組元素a[0][31]和各自所在的主存塊對應(yīng)的Cache行號分別是多少(Cache行號從0開始)?(分?jǐn)?shù):2.50)正確答案:(由于數(shù)組在存儲器中按行優(yōu)先方式存放,因此每個數(shù)組元素占4B。數(shù)組首地址為320,因此可知:a[0][31]在存儲器中的地址為320+31X4=444=000110111100Ba[l][l]在存儲器中的地址為:320+(256+1)X4=1348=010101000100B按直接映射方式,地址分為3部分,塊索引在地址的8?6位,因此兩地址所對應(yīng)的塊索引分別為6(110B)、5(101B)。)解析:(3).程序A和B的數(shù)據(jù)訪問命中率各是多少?哪個程序的執(zhí)行時間更短?(分?jǐn)?shù):2.50)正確答案:(數(shù)組a中每個數(shù)據(jù)只用了一次,如果程序沒有命中,則從主存中讀入一塊,大小64B,相當(dāng)于16個整數(shù)。對于程序A,如果是按行連續(xù)存放的,那么從主存讀入一塊到Cache(一次失配)后,隨后的15次便都Cache命中,讀一次管16次,因此命中率為[(216-212)/216]X100%=93.75%程序B隨列訪問數(shù)組a,由于Cache的容量太小,讀入的數(shù)據(jù)塊留不到下次用便又被替換,因此每次都失敗,命中率為0%。另一種算法是,由于數(shù)組a一行的數(shù)據(jù)量為1KB〉64B,因此訪問第0行時,每個元素都不命中,由于數(shù)組有256列,數(shù)據(jù)Cache僅有8行,故訪問數(shù)組后續(xù)列元素仍然不命中,于是程序B的數(shù)據(jù)訪問命中率為0%。由于從Cache讀數(shù)據(jù)比從內(nèi)存讀數(shù)據(jù)快很多,因此程序A的執(zhí)行時間更短。分析:1) V、TAG、Data是每個Cache塊(行)的必要組成。為了提高效率或者實行替換算法,每個塊還需要一些控制位,這些位根據(jù)不同的設(shè)計要求而定。2) 本題中計算兩個數(shù)組元素的地址是關(guān)鍵。3) 命中率的計算是本問題的關(guān)鍵。注意數(shù)組訪問與數(shù)組在內(nèi)存中的存儲方式,以及命中率的定義。)解析:某計算機(jī)存儲器按字節(jié)編址,虛擬(邏輯)地址空間大小為16MB,主存(物理)地址空間大小為1MB,頁面大小為4KB;Cache采用直接映射方式,共8行;主存與Cache之間交換的塊大小為32B。系統(tǒng)運(yùn)行到某一時刻時,頁表的部分內(nèi)容和Cache的部分內(nèi)容如圖1和圖2所示,圖中頁框號及標(biāo)記字段的內(nèi)容為十六進(jìn)制形式。請回答下列問題:圖2Cache的部分內(nèi)容(分?jǐn)?shù):10.00)(1).虛擬地址共有幾位,哪幾位表示虛頁號?物理地址共有幾位?哪幾位表示頁框號(物理頁號)?(分?jǐn)?shù):2

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論