計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例
《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例(141頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第2版) 鄭偉明 湯志忠 編著 清華大學(xué)出版社 習(xí)題解答 1 目錄 1.1 第一章(P33) 1.7-1.9(透明性概念),1.12-1.18(Amdahl定律),1.19、1.21、1.24(CPI/MIPS) 1.2 第二章(P124) 2.3、2.5、2.6(浮點(diǎn)數(shù)性能),2.13、2.15(指令編碼) 1.3 第三章(P202) 3.3(存儲(chǔ)層次性能),3.5(并行主存系統(tǒng)),3.15-3.15加1題(堆棧模擬),3.19中(3)(4)(6)(8)問(wèn)(地址映象/替換算法--實(shí)存狀況圖) 1.4 第四章(P250) 4.5(中斷屏蔽字表/中斷過(guò)
2、程示意圖),4.8(通道流量計(jì)算/通道時(shí)間圖) 1.5 第五章(P343) 5.9(流水線(xiàn)性能/時(shí)空?qǐng)D),5.15(2種調(diào)度算法) 1.6 第六章(P391) 6.6(向量流水時(shí)間計(jì)算),6.10(Amdahl定律/MFLOPS) 1.7 第七章(P446) 7.3、7.29(互連函數(shù)計(jì)算),7.6-7.14(互連網(wǎng)性質(zhì)),7.4、7.5、7.26(多級(jí)網(wǎng)尋徑算法),7.27(尋徑/選播算法) 1.8 第八章(P498) 8.12(SISD/SIMD算法) 1.9 第九章(P562) 9.18(SISD/多功能部件/SIMD/MIMD算法) (注:每章可選1-2個(gè)主要
3、知識(shí)點(diǎn),每個(gè)知識(shí)點(diǎn)可只選1題。有下劃線(xiàn)者為推薦的主要知識(shí)點(diǎn)。) 2 例, 習(xí)題 2.1 第一章(P33) 例1.1,p10 假設(shè)將某系統(tǒng)的某一部件的處理速度加快到10倍,但該部件的原處理時(shí)間僅為整個(gè)運(yùn)行時(shí)間的40%,則采用加快措施后能使整個(gè)系統(tǒng)的性能提高多少? 解:由題意可知:Fe=0.4, Se=10,根據(jù)Amdahl定律 例1.2,p10 采用哪種實(shí)現(xiàn)技術(shù)來(lái)求浮點(diǎn)數(shù)平方根FPSQR的操作對(duì)系統(tǒng)的性能影響較大。假設(shè)FPSQR操作占整個(gè)測(cè)試程序執(zhí)行時(shí)間的20%。一種實(shí)現(xiàn)方法是采用FPSQR硬件,使FPSQR操作的速度加快到10倍。另一種實(shí)現(xiàn)方法是使所有浮點(diǎn)數(shù)據(jù)指令的
4、速度加快,使FP指令的速度加快到2倍,還假設(shè)FP指令占整個(gè)執(zhí)行時(shí)間的50%。請(qǐng)比較這兩種設(shè)計(jì)方案。 解:分別計(jì)算出這兩種設(shè)計(jì)方案所能得到的加速比: Fe FPSQR=0.20,Se FPSQR=10 Fe FP=0.50,Se FP=2 例1.3,p11 如果FP操作的比例為25%,F(xiàn)P操作的平均CPI=4.0,其它指令的平均CPI為1.33,F(xiàn)PSQR操作的比例為2%, FPSQR的CPI為20。假設(shè)有兩種設(shè)計(jì)方案,分別把FPSQR操作的CPI和所有FP操作的CPI減為2。試?yán)肅PU性能公式比較這兩種設(shè)計(jì)方案哪一個(gè)更好(只改變CPI而時(shí)鐘頻率和指令條數(shù)保持不變)。
5、 解: 原系統(tǒng)的 CPIFP=4.0, =25% CPI2=1.33, =1-25% CPI原 = CPIFP + CPI2 =4.025% + 1.3375% =2 方案1(使FPSQR操作的CPI為2)系統(tǒng) CPI=CPI原 - CPIFPSQR原 + CPIFPSQR新 =CPI原 - (CPIFPSQR原 - CPIFPSQR新) =2-2%(20-2) =1.64 方案2(提高所有FP指令的處理速度, 使FPSQR操作的CPI為2) CPI=CPI原 - CPIFP原 + CPIFP新 =CPI原 - (CPIFP原 - CPIFP新
6、) =2-25% (4-2) =1.5 我們也可以根據(jù)以下公式計(jì)算出方案2系統(tǒng)(同求CPI原) CPI= 75%1.33+25%2=1.5 顯然,提高所有FP指令處理速度的方案要比提高FPSQR處理速度的方案要好。 方案2的加速比 =2/1.5 =1.33 例1.4 假設(shè)兩臺(tái)機(jī)器的指令系統(tǒng)中,執(zhí)行條件轉(zhuǎn)移指令需2個(gè)時(shí)鐘周期,而其它指令只需1個(gè)時(shí)鐘周期。 CPUA:采用一條比較指令來(lái)設(shè)置相應(yīng)的條件碼,由緊隨其后的一條轉(zhuǎn)移指令對(duì)此條件碼進(jìn)行測(cè)試,以確定是否進(jìn)行轉(zhuǎn)移。顯然實(shí)現(xiàn)一次條件轉(zhuǎn)移要執(zhí)行比較和測(cè)試兩條指令。條件轉(zhuǎn)移指令占總執(zhí)行指令條數(shù)的20%。由于每條
7、轉(zhuǎn)移指令都需要一條比較指令,所以比較指令也將占20%。 CPUB采用比較功能和判別是否實(shí)現(xiàn)轉(zhuǎn)移功能合在一條指令的方法,這樣實(shí)現(xiàn)一條件轉(zhuǎn)移就只需一條指令就可以完成。由于CPUB在轉(zhuǎn)移指令中包含了比較功能,因此它的時(shí)鐘周期就比CPUA要慢25%。 現(xiàn)在要問(wèn),采用不同轉(zhuǎn)移指令方案的CPUA和CPUB,那個(gè)工作速度會(huì)更快些? 解: CPIA=0.22+0.81=1.2 TCPUA=ICA1.2tA = 1.2 ICAtA CPUB轉(zhuǎn)移指令占20%80%=25% CPIB = 0.252+0.751=1.25 由于CPUB中沒(méi)有比較指令,因此 ICB = 0.8ICA CPUB
8、時(shí)鐘周期就比CPUA要慢25%
tB = 1.25tA
TCPUB = ICBCPIBtB
= 0.8 ICA1.251.25tA
= 1.25 ICAtA
TCPUA
9、運(yùn)行得更快些。 例1.A1 計(jì)算Pentium II 450(IPC=2)處理機(jī)的運(yùn)算速度。 解: 由于PentiumII 450處理機(jī)的IPC=2 (或CPI=0.5) Fz=450MHz, MIPSPentium II 450=FzIPC=450 MHz2=900(MIPS) 例1.A2 我國(guó)最早研制的小型計(jì)算機(jī)DJS-130,定點(diǎn)16位,加法每秒50萬(wàn)次,但沒(méi)有硬件乘法和除法指令,用軟件實(shí)現(xiàn)乘法和除法,速度低100倍左右。求等效速度。 解:定點(diǎn)等效速度為: 即每秒2萬(wàn)次,由于乘法和除法用軟件實(shí)現(xiàn),等效速度降低了25倍。 例1.A3 假設(shè)在程序中
10、浮點(diǎn)開(kāi)平方操作FPSQR的比例為2%,它的CPI為100;其他浮點(diǎn)操作FP的比例為23%,它的CPI= 4.0;其余75%指令的CPI=1.33,計(jì)算該處理機(jī)的等效CPI。如果FPSQR操作的CPI也為4.0,重新計(jì)算等效CPI。 解: 等效CPI=1002%+423%+1.3375% =3.92 等效CPI2=425%+1.3375% =2.00 1.1 解釋下列術(shù)語(yǔ) 層次結(jié)構(gòu),計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),計(jì)算機(jī)組成,計(jì)算機(jī)實(shí)現(xiàn),透明性,由上而下設(shè)計(jì),由下而上設(shè)計(jì),由中間向兩邊設(shè)計(jì),軟件兼容,向上兼容,固件,系列機(jī),兼容機(jī),模擬,仿真,虛擬機(jī),宿主機(jī),指令流,數(shù)據(jù)流,單指令流單數(shù)
11、據(jù)流,多指令流多數(shù)據(jù)流,Amdahl定律,CPI,MIPS,MFLOPS。 1.2 每一級(jí)為了執(zhí)行一條指令需要下一級(jí)的N條指令解釋?zhuān)魣?zhí)行第一級(jí)的一條指令需kns,那么執(zhí)行第2級(jí)、第3級(jí)、第4級(jí)的指令需要多少時(shí)間? 第1級(jí) 1條1級(jí)指令 k ns 第2級(jí) 1條2級(jí)指令 N條1級(jí)指令 1Nk ns = Nk ns 第3級(jí) 1條3級(jí)指令 N條2級(jí)指令 1NNk ns = N2k ns 第4級(jí) 1條4級(jí)指令 N條3級(jí)指令 1NNNk ns = N3k ns 1.4 每一級(jí)
12、指令能完成下一級(jí)的M條指令的工作量,且每一級(jí)指令需要下一級(jí)的N條指令解釋?zhuān)魣?zhí)行第一級(jí)的一條指令需kns,那么執(zhí)行第2級(jí)、第3級(jí)、第4級(jí)的等效程序需要多少時(shí)間? 第1級(jí) 1條1級(jí)指令 k ns 第2級(jí) 等效程序?yàn)?/M條2級(jí)指令 需N/M條1級(jí)指令解釋 N/Mk ns 第3級(jí) 等效程序?yàn)?/M/M條3級(jí)指令 需NN/M/M條1級(jí)指令解釋 N2/M2 ns 第4級(jí) 等效程序?yàn)?/M/M/M條4級(jí)指令 需NNN/M/M/M條1級(jí)指令解釋 N3/M3 ns 1.6 試以實(shí)例說(shuō)明計(jì)算機(jī)系統(tǒng)結(jié)
13、構(gòu)、計(jì)算機(jī)組成與計(jì)算機(jī)實(shí)現(xiàn)之間的相互關(guān)系與相互影響。 系統(tǒng)結(jié)構(gòu)、組成和實(shí)現(xiàn)是三個(gè)不同的概念,它們各自包含不同的內(nèi)容,但又有緊密的關(guān)系。 以存儲(chǔ)系統(tǒng)為例,主存儲(chǔ)器容量和尋址方式的確定屬計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),主存的速度應(yīng)多高,在邏輯結(jié)構(gòu)上采用什么措施屬計(jì)算機(jī)組成,而主存的物理實(shí)現(xiàn),如存儲(chǔ)器采用什么樣器件,邏輯電路設(shè)計(jì)和微組裝技術(shù)則屬計(jì)算機(jī)實(shí)現(xiàn)。 1.7 什么是透明性概念?對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),下列哪些是透明的?哪些是不透明的? n 存貯器的模m交叉存??;透明(組成) n 浮點(diǎn)數(shù)據(jù)表示;不透明(系統(tǒng)結(jié)構(gòu)) n I/O系統(tǒng)是采用通道方式還是I/O處理機(jī)方式;不透明 n 數(shù)據(jù)總線(xiàn)寬度;
14、透明(組成) n 陣列運(yùn)算部件;透明(組成) n 通道是采用結(jié)合型的還是獨(dú)立型的;透明(組成) n PDP-11系列中的單總線(xiàn)結(jié)構(gòu);不透明(系統(tǒng)結(jié)構(gòu)) n 訪(fǎng)問(wèn)方式保護(hù);不透明(系統(tǒng)結(jié)構(gòu)) n 程序性中斷;不透明(系統(tǒng)結(jié)構(gòu)) n 串行、重疊還是流水控制方式;透明(組成) n 堆棧指令;存貯最小編址單位;不透明(系統(tǒng)結(jié)構(gòu)) n Cache存貯器。透明(組成) (1)從指定角度來(lái)看,不必要了解的知識(shí)稱(chēng)為透明性概念。 (2)見(jiàn)下表,“√”為透明性概念。 模m交叉,√, 浮點(diǎn)數(shù)據(jù),,P4 通道與I/O處理機(jī),,P4 總線(xiàn)寬度,√, 陣列運(yùn)算部件,, 結(jié)合型與獨(dú)立型通
15、道,√, 單總線(xiàn),√, 訪(fǎng)問(wèn)保護(hù),, 中斷,, 指令控制方式,√, 堆棧指令,, 最小編址單位,, Cache存儲(chǔ)器,√, 1.8 從機(jī)器(匯編)語(yǔ)言程序員看,以下哪些是透明的? n 指令地址寄存器;指令緩沖器;時(shí)標(biāo)發(fā)生器;條件碼寄存器;乘法器;主存地址寄存器;磁盤(pán)外設(shè);先行進(jìn)位鏈;移位器;通用寄存器;中斷字寄存器。 見(jiàn)下表,“√”為透明性概念 指令地址寄存器,, 指令緩沖器,√, 時(shí)標(biāo)發(fā)生器,√, 條件碼寄存器,, 乘法器,√, 主存地址寄存器,√, 磁盤(pán),, 先行進(jìn)位鏈,√, 移位器,√, 通用寄存器 ,, 中斷字寄存器,
16、, 1.9 見(jiàn)下表,“√”表示都透明,“應(yīng)”表示僅對(duì)應(yīng)用程序員透明,“”表示都不透明。 數(shù)據(jù)通路寬度,√, 虛擬存儲(chǔ)器,應(yīng), Cache存儲(chǔ)器,√, 程序狀態(tài)字,, “啟動(dòng)I/O”指令,應(yīng), “執(zhí)行”指令,, 指令緩沖寄存器,√, 1.12 如果某一計(jì)算任務(wù)用向量方式求解比用標(biāo)量方式求解要快20倍,稱(chēng)可用向量方式求解部分所花費(fèi)時(shí)間占總的時(shí)間的百分比為可向量化百分比。請(qǐng)畫(huà)出加速比與可向量化比例兩者關(guān)系的曲線(xiàn)。 解:可向量化百分比為Fe, Se=20,根據(jù)Amdahl定律 將Se代入Amdahl定律得 1.13 在題1.12中,為
17、達(dá)到加速比2, 可向量化的百分比應(yīng)為多少? =2 則可向量化的百分比Fe=0.526 1.14 在題1.12中,為獲得采用向量方式最大加速比的半值(即10)時(shí),所需可向量化的百分比為多少。 =10 則可向量化的百分比Fe=0.947 1.15 在題1.12中,如果某程序可向量化部分為70%,硬件設(shè)計(jì)組認(rèn)為可以通過(guò)加大工程投資,使向量處理速度加倍來(lái)進(jìn)一步增加性能;而編譯程序編寫(xiě)組認(rèn)為只需設(shè)法增加向量工作方式的百分比就同樣可使性能得到相同的提高,問(wèn):此時(shí)需使可向量化成分再增加多少百分比就可實(shí)現(xiàn)。你認(rèn)為上述硬、軟件兩種方法中,哪一種方法更好? (1)用硬件組方法,已知Se=
18、2 X 20 =40,F(xiàn)e=0.7 解出Sn=40/12.7≈3.1496 (2)用軟件組方法,已知Se=20,得到硬件組方法的相同性能Sn=40/12.7 解出Fe=27.3/38≈0.7184 (3)結(jié)論:軟件組方法更好。因?yàn)橛布M需要將Se再提高100%(20→40),而軟件組只需將Fe再提高1.84%(0.7→0.7184)。 1.16 某計(jì)算機(jī)的高速小容量存儲(chǔ)器能存儲(chǔ)2000條指令。假設(shè)10%的指令承擔(dān)了90%的指令訪(fǎng)問(wèn)且對(duì)這10%的指令的使用是均勻的(即其中每條指令的執(zhí)行時(shí)間相同)。如果要執(zhí)行的某程序共有50 000條指令且已知其中的10%是頻繁使用的,則當(dāng)該計(jì)算機(jī)執(zhí)行
19、該程序時(shí),在高速小容量存儲(chǔ)器中能訪(fǎng)問(wèn)到的指令會(huì)占多少百分比? 解: 對(duì)該應(yīng)用程序來(lái)說(shuō),在90%的時(shí)間里,只有50000*10%=5000條指令在運(yùn)行,其他的45000條指令的平均運(yùn)行次數(shù)很少,因此,可以假設(shè)對(duì)它們來(lái)說(shuō),Cache總是缺失的. 對(duì)頻繁訪(fǎng)問(wèn)的這10%的指令,假設(shè)它們?cè)L問(wèn)均勻,這樣,Cache的行為便可以認(rèn)為是均勻覆蓋了這些指令.所以, 10%的指令承擔(dān)了90%的指令訪(fǎng)問(wèn), 指令訪(fǎng)問(wèn)次數(shù)(50000*10%)/90% 命中次數(shù)2000 Cache的命中率為:H=2000/[(50000*10%)/90%]=0.36 1.17 假設(shè)高速緩存Ca
20、che 工作速度為主存的5倍,且Cache被訪(fǎng)問(wèn)命中的概率為90%,則采用Cache后,能使整個(gè)存儲(chǔ)系統(tǒng)獲得多高的加速比? 解: 1.18 設(shè)計(jì)指令存儲(chǔ)器有兩種不同方案:一是采用價(jià)格較貴的高速存儲(chǔ)器芯片,另一是采用價(jià)格便宜的低速存儲(chǔ)芯片。采用后一方案時(shí),用同樣的經(jīng)費(fèi)可使存儲(chǔ)器總線(xiàn)帶寬加倍,從而每隔2個(gè)時(shí)鐘周期就可取出2條指令(每條指令為單字長(zhǎng)32位);而采用前一方案時(shí),每個(gè)時(shí)鐘周期存儲(chǔ)器總線(xiàn)僅取出1條單字長(zhǎng)指令。由于訪(fǎng)存空間局部性原理,當(dāng)取出2個(gè)指令字時(shí),通常這2個(gè)指令字都要使用,但仍有25%的時(shí)鐘周期中,取出的2個(gè)指令字中僅有1個(gè)指令字是有用的。試問(wèn)采用這兩種實(shí)現(xiàn)方案所構(gòu)成
21、的存儲(chǔ)器帶寬為多少? 解: 方案一:采用高速緩沖存儲(chǔ)器,使每個(gè)時(shí)鐘周期存儲(chǔ)器總線(xiàn)取出1條指令,則 存儲(chǔ)器帶寬=1字/時(shí)鐘周期=32位/時(shí)鐘周期 方案二:使存儲(chǔ)器總線(xiàn)帶寬加倍,從而每隔2個(gè)時(shí)鐘周期就可取出2條指令(每條指令為單字長(zhǎng)32位),但仍有25%的時(shí)鐘周期中,取出的2個(gè)指令字中僅有1個(gè)指令字是有用的,則 1.19 用一臺(tái)40MHz處理機(jī)執(zhí)行標(biāo)準(zhǔn)測(cè)試程序,它含的混合指令數(shù)和相應(yīng)所需的時(shí)鐘周期數(shù)如下: 指令類(lèi)型 指令數(shù) 時(shí)鐘周期數(shù) 整數(shù)運(yùn)算 45000 1 數(shù)據(jù)傳送 32000
22、 2 浮點(diǎn) 15000 2 控制傳送 8000 2 求有效CPI、MIPS速率和程序的執(zhí)行時(shí)間。 1.20 某工作站采用時(shí)鐘頻率為15MHz、處理速率為10MIPS的處理機(jī)來(lái)執(zhí)行一個(gè)已知混合程序。假定每次存儲(chǔ)器存取為1周期延遲、試問(wèn): (a) 此計(jì)算機(jī)的有效CPI是多少? (b) 假定將處理機(jī)的時(shí)鐘提高到30MHz,但存儲(chǔ)器子系統(tǒng)速率不變。這樣,每次存儲(chǔ)器存取需要兩個(gè)時(shí)鐘周期。如果30%指令每條只需要一次存儲(chǔ)存取,而另外5%每條需要兩次存儲(chǔ)存取,還假定已知混合程序
23、的指令數(shù)不變,并與原工作站兼容,試求改進(jìn)后的處理機(jī)性能。 解:(a) f==15MHz , MIPS=10, 每次存取時(shí)間為2個(gè)時(shí)鐘周期 (b) 30%指令每條只需要一次存儲(chǔ)存取,改進(jìn)前共需1周期,改進(jìn)后共需2周期 而另外5%每條需要兩次存儲(chǔ)存取,改進(jìn)前共需2周期,改進(jìn)后共需4周期 1.21 假設(shè)在一臺(tái)40MHz處理機(jī)上運(yùn)行200000條指令的目標(biāo)代碼,程序主要由四種指令組成。根據(jù)程序跟蹤實(shí)驗(yàn)結(jié)果,已知指令混合比和每種指令所需的指令數(shù)如下: 指令類(lèi)型 CPI 指令混合比 算術(shù)和邏輯
24、 1 60% 高速緩存命中的加載/存儲(chǔ) 2 18% 轉(zhuǎn)移 4 12% 高速緩存缺失的存儲(chǔ)器訪(fǎng)問(wèn) 8 10% (a) 計(jì)算在單處理機(jī)上用上述跟蹤數(shù)據(jù)運(yùn)行程序的平均CPI (b) 根據(jù)(a)所得CPI,計(jì)算相應(yīng)的MIPS速率。 解: (1) (2) 1.24 假定你是一個(gè)計(jì)算機(jī)設(shè)計(jì)者,對(duì)高級(jí)語(yǔ)言結(jié)構(gòu)的使用研究表明,過(guò)程調(diào)用是最常用的操作之一。你已設(shè)想了一個(gè)優(yōu)化設(shè)計(jì)方案,它能減少過(guò)程調(diào)用和返回所需的取/存指令次數(shù)。為了進(jìn)行驗(yàn)證
25、,對(duì)未加優(yōu)化和已優(yōu)化的方案進(jìn)行實(shí)驗(yàn)測(cè)試,假定所使用的是相同的優(yōu)化編譯器。實(shí)驗(yàn)測(cè)得的結(jié)果如下: (1)未優(yōu)化的時(shí)鐘周期比優(yōu)化的快5%; (2)未優(yōu)化方案中的取/存指令數(shù)占總指令數(shù)的30%; (3)優(yōu)化方案中的取/存指令數(shù)比未優(yōu)化的少1/3,對(duì)于其他指令,兩種方案的動(dòng)態(tài)執(zhí)行數(shù)沒(méi)有變化; (4)所有指令,包括取/存指令,均只需要1個(gè)時(shí)鐘周期。 要求你定量地判斷,哪一種設(shè)計(jì)方案的計(jì)算機(jī)工作速度更快。 解: 記新方案時(shí)鐘周期為T(mén)c,已知CPI = CPIi = 1 原時(shí)間 = CPI IC 0.95Tc = 0.95ICTc 新時(shí)間 = (0.32/3+0.7) IC Tc =
26、0.9ICTc 二者比較,新時(shí)間較短。 1.A1 某臺(tái)計(jì)算機(jī)只有Load/Store 指令能對(duì)存儲(chǔ)器進(jìn)行讀/寫(xiě)操作,其它指令只對(duì)寄存器進(jìn)行操作。根據(jù)程序跟蹤實(shí)驗(yàn)結(jié)果,已知每種指令所占的比例及CPI數(shù)如下: 指令類(lèi)型 指令所占比例 CPI 算邏指令 43% 1 Load指令 21% 2 Store指令 12% 2 轉(zhuǎn)移指令 24% 2 (
27、1) 求上述情況下的平均CPI。 (2) 假設(shè)程序有M條指令組成。算邏運(yùn)算中25%的指令的兩個(gè)操作數(shù)中的一個(gè)已在寄存器中,另一個(gè)必須在算邏指令執(zhí)行前用Load指令從存儲(chǔ)器取到寄存器。因此有人建議增加另一種算邏指令,其特點(diǎn)是一個(gè)操作數(shù)取自寄存器,另一個(gè)操作數(shù)取自存儲(chǔ)器,即寄存器存儲(chǔ)器類(lèi)型,假設(shè)這種指令的CPI等于2。同時(shí),轉(zhuǎn)移指令的CPI變?yōu)?。求新指令系統(tǒng)的平均CPI。 解: (1) CPI舊=(0.431+0.212+0.122+0.242)=1.57 (2) 原算邏指令中的25%變成了寄存器存儲(chǔ)器型指令,所以算邏指令(寄存器寄存器型)少了(0.250.43)M 條,Load指
28、令少了(0.250.43)M 條,而(0.250.43)M 條的新指令為寄存器存儲(chǔ)器型指令。指令總數(shù)少了(0.2543%)M條。 設(shè)執(zhí)行算邏指令(寄存器寄存器型) 、 Load指令、算邏指令(寄存器存儲(chǔ)器型) 、 Store指令和轉(zhuǎn)移指令的周期總數(shù)分別為C1,C2,C3,C4,C5,所以: C1=(0.43-(0.250.43))M1=0.3225M C2=(0.21-(0.250.43))M2=0.205M C3=(0.250.43)M2=0.215M C4=0.12M2=0.24M C5=0.243M=0.72M 新指令總數(shù)N=(1-(0.250.43))M=0.892
29、 CPI新=(C1+C2+C3+C4+C5)/ N =1.7025M/0.8925M =1.908 1.A2 計(jì)算機(jī)系統(tǒng)中有三個(gè)部件可以改進(jìn),這三個(gè)部件的部件加速比如下: 部件加速比1=30 部件加速比2=20 部件加速比3=10 (1)如果部件1和部件2的可改進(jìn)比例均為30%,那么當(dāng)部件3的可改進(jìn)比例為多少時(shí), 系統(tǒng)加速比才可以達(dá)到10? (2)如果三個(gè)部件的可改進(jìn)比例分別為30%、30%和20%,三個(gè)部件同時(shí)改進(jìn),那么系統(tǒng) 中不可加速部分的執(zhí)行時(shí)間在總執(zhí)行時(shí)間中占的比例是多少? (3)如果相對(duì)某個(gè)測(cè)試程序三個(gè)部件的可改進(jìn)比例分別為20%,20%和70%,要達(dá)到最好
30、 改進(jìn)效果,僅對(duì)一個(gè)部件改進(jìn)時(shí),要選擇哪個(gè)部件?如果允許改進(jìn)兩個(gè)部件,又如何 選擇? 1.A3 在某個(gè)程序中,簡(jiǎn)單指令占80%,復(fù)雜指令占20%,在CISC機(jī)中簡(jiǎn)單指令執(zhí)行需4個(gè)機(jī)器周期,復(fù)雜指令執(zhí)行需8個(gè)機(jī)器周期。RISC機(jī)中簡(jiǎn)單指令執(zhí)行只需1個(gè)機(jī)器周期,而復(fù)雜指令要通過(guò)一串指令來(lái)實(shí)現(xiàn)。假定復(fù)雜指令平均需要14條簡(jiǎn)單指令,即需要14個(gè)周期,若該程序中需要執(zhí)行的總指令數(shù)為1 000 000,Tc為100ns,那么 (1)RISC機(jī)需執(zhí)行的指令數(shù)為多少? (2)CISC和RISC機(jī)的CPU時(shí)間分別為多少? (3)RISC機(jī)對(duì)CISC的加速比為多少? 2.2 第二章(P124) 2
31、.3 忽略P124倒1行 ~ P125第8行文字,以簡(jiǎn)化題意)已知2種浮點(diǎn)數(shù),求性能指標(biāo)。 此題關(guān)鍵是分析階碼、尾數(shù)各自的最大值、最小值。 原圖為數(shù)據(jù)在內(nèi)存中的格式,階碼的小數(shù)點(diǎn)在其右端,尾數(shù)的小數(shù)點(diǎn)在其左端,遵守規(guī)格化要求。 由于尾數(shù)均為原碼,原碼的絕對(duì)值與符號(hào)位無(wú)關(guān),所以最大正數(shù)與最小負(fù)數(shù)的絕對(duì)值相同,可用“最大絕對(duì)值”回答;最小正數(shù)與最大負(fù)數(shù)的絕對(duì)值相同,可用“最小絕對(duì)值”回答。 第1小問(wèn)中,階碼全部位數(shù)為8,作無(wú)符號(hào)數(shù)看待真值為0~255,作移-127碼看待真值為-127~+128;尾數(shù)(不計(jì)符號(hào)位)有23位小數(shù),另加1位整數(shù)隱藏位,所以尾數(shù)絕對(duì)值為1.0~2
32、.0 – 2-23,有效位數(shù)p=24; 第2小問(wèn)中,階碼全部位數(shù)為11,作無(wú)符號(hào)數(shù)看待真值為0~2047,作移-1023碼看待真值為-1023~+1024;尾數(shù)(不計(jì)符號(hào)位)有52位小數(shù),另加1位整數(shù)隱藏位,所以尾數(shù)絕對(duì)值為1.0~2.0 – 2-52,有效位數(shù)p=53。 最大絕對(duì)值為最大階碼與最大尾數(shù)絕對(duì)值的組合,最小絕對(duì)值為最小階碼與最小尾數(shù)絕對(duì)值的組合。代入相關(guān)公式后得最終結(jié)果如下表。 32位 64位 最大絕對(duì)值 (1-2-24)2129 (1-2-53)21025 最小絕對(duì)值 2-127 2-1023 表數(shù)精度δ 2-24 2-53 表數(shù)效率η
33、 100% 100% 2.5 (1) rm = 2,re = 2,p = 24(隱藏最高位),q = 7。 (2) Nmax = 1.71038,-|N|min = -1.4710-39 δ ≤ 5.9610-8 ≈ 10-7.22,η = 100% 2.6 1位 7位 6位 0 0111111 333333 (1) 0.2 = 0.333333H160 設(shè)階碼為移-63碼(即-26+1,原題未指明) 0.2 = 0.110011001100110011001101B2-2 1位 8位 23位 0 01111101 1001100
34、1100110011001101 (其中最高有效位需隱藏) 階碼為移-127碼(即-27+1) (2) 符號(hào)位不變,(階碼 – 63)4 + 127;尾數(shù)左規(guī),除去最高位; (3) 符號(hào)位不變,(階碼 – 127)/ 4 + 63;尾數(shù)補(bǔ)最高位,按除法余數(shù)右移若干位,左補(bǔ)0。 2.13 已知10條指令使用頻度,求3種編碼方法的平均碼長(zhǎng)與信息冗余量。 (1)此問(wèn)中的“最優(yōu)Huffman編碼法”實(shí)際是指碼長(zhǎng)下限,即信源的平均信息量──熵,代公式得H=2.9566。 (2)Huffman編碼性能如下表; (3)2/8擴(kuò)展編碼是8/64/512法的變種,第一組2條指令,碼
35、長(zhǎng)為2(1位擴(kuò)展標(biāo)志,1位編碼),第二組8條指令,碼長(zhǎng)為4(1位擴(kuò)展標(biāo)志,與第一組區(qū)別,加3位編碼),編碼性能如下表; (4)3/7擴(kuò)展編碼是15/15/15法的變種,第一組3條指令,碼長(zhǎng)為2(共有4種組合,其中3種組合分別代表3條指令,留1種組合作為擴(kuò)展前綴標(biāo)志),第二組7條指令,碼長(zhǎng)為5(2位固定的前綴擴(kuò)展標(biāo)志,與第一組區(qū)別,加3位編碼,只用其中7種組合),編碼性能如下表。 Huffman編碼 2/8擴(kuò)展編碼 3/7擴(kuò)展編碼 平均碼長(zhǎng)L 2.99 3.1 3.2 信息冗余量R 1.10% 4.61% 7.59% 2.14 一臺(tái)模型機(jī)共有7條指令,各指令的
36、使用頻率分別為35%,25%,20%,10%,5%,3%和2%,有8個(gè)通用數(shù)據(jù)寄存器,2個(gè)變址寄存器。 (1)要求操作碼的平均長(zhǎng)度最短,請(qǐng)?jiān)O(shè)計(jì)操作碼的編碼,并計(jì)算所設(shè)計(jì)操作碼的平均長(zhǎng)度。 (2)設(shè)計(jì)8字長(zhǎng)的寄存器-寄存器型指令3條,16位字長(zhǎng)的寄存器-存儲(chǔ)器型變址尋址方式指令4條,變址范圍不小于127。請(qǐng)?jiān)O(shè)計(jì)指令格式,并給出各字段的長(zhǎng)度和操作碼的編碼。 解: (1)要使得到的操作碼長(zhǎng)度最短,應(yīng)采用Huffman編碼,構(gòu)造Huffman樹(shù)如下: 由此可以得到7條指令的編碼分別如下: 這樣,采用Huffman編碼法得到的操作碼的平均長(zhǎng)度為: H = 2(0.35+0.25
37、+0.20) + 30.10 + 4 0.05 + 5(0.03 + 0.02) = 1.6+0.3+0.2+0.25 =2.35 (2) 設(shè)計(jì)8位字長(zhǎng)的寄存器-寄存器型變址尋址方式指令如下,因?yàn)橹挥?個(gè)通用寄存器,所以寄存器地址需3位,操作碼只有兩位,設(shè)計(jì)格式如下: 三條指令的操作碼分別為00,01,10 設(shè)計(jì)16位字長(zhǎng)的寄存器-存儲(chǔ)器型變址尋址方式指令如下: 四條指令的操作碼分別為1100,1101,1110,1111 2.15 某處理機(jī)的指令字長(zhǎng)為16位,有雙地址指令、單地址指令和零地址指令三類(lèi),并假設(shè)每個(gè)地址字段的長(zhǎng)度
38、均為6位。 (1)如果雙地址指令有15條,單地址指令和零地址指令的條數(shù)基本相同,問(wèn)單地址指令和零地址指令各有多少條?并且為這三類(lèi)指令分配操作碼。 (2)如果要求三類(lèi)指令的比例大致為1:9:9,問(wèn)雙地址指令、單地址指令和零地址指令各有多少條?并且為這三類(lèi)指令分配操作碼。 解: (1) 15條/63條/64條 (2) 14條/126條/128條 (1)根據(jù)指令地址的數(shù)量來(lái)決定各種指令在指令空間上的分布: 如果我們按照從小到大的順序分配操作碼,這樣,按照指令數(shù)值從小到大的順序,分別為雙地址指令、單地址指令和零地址指令。 其次可以根據(jù)指令的條數(shù)來(lái)大致的估計(jì)操作碼的長(zhǎng)度: 雙指令1
39、5條,需要4位操作碼來(lái)區(qū)分,剩下的12位操作碼平均分給單地址和零地址指令,每種指令可以用6位操作碼來(lái)區(qū)分,這樣,各指令的條數(shù)為: 雙地址指令15條,操作碼:0000~1110; 單地址指令2^6-1=63條,操作碼:1111 000000~1111 111110; 零地址指令64條,操作碼:1111 111111 000000~1111 111111 111111。 (2)與上面的分析相同,可以得出答案: 雙地址指令14條,操作碼:0000~1101; 單地址指令2^6 x 2-2 = 126條, 1110 000000~1110 111110, 1111 000000~11
40、11 111110; 零地址指令128條 1110 111111 000000~1110 111111 111111, 1111 111111 000000~1111 111111 111111 (2)B 雙地址指令同上,14條,操作碼:0000~1101; 單地址指令64 + 62 = 126條, 64 條單地址指令操作碼1110 000000~1110 111111, 62 條單地址指令操作碼1111 000000~1111 111101; 零地址指令128條 1111 111110 000000~1110 111110 111111, 1111 111111 0
41、00000~1111 111111 111111 2.3 第三章(P202) 例3.1 假設(shè)T2=5T1,在命中率H為0.9和0.99兩種情況下,分別計(jì)算存儲(chǔ)系統(tǒng)的訪(fǎng)問(wèn)效率。 解: 當(dāng)H=0.9時(shí),e1=1/(0.9+5(1-0.9))=0.72 當(dāng)H=0.99時(shí),e2=1/(0.99+5(1-0.99))=0.96 提高存儲(chǔ)系統(tǒng)速度的兩條途徑: 一是提高命中率H 二是兩個(gè)存儲(chǔ)器的速度不要相差太大 其中:第二條有時(shí)做不到(如虛擬存儲(chǔ)器),因此,主要依靠提高命中率 例3.2 在虛擬存儲(chǔ)系統(tǒng)中,兩級(jí)存儲(chǔ)器的速度相差特別懸殊T2=105 T1。如果要
42、使訪(fǎng)問(wèn)效率e=0.9,問(wèn)需要有多高的命中率? 解: 0.9H+90000(1-H)=1 89999.1H=89999 計(jì)算得H=0.999998888877777…≈0.999999 例3.3 在一個(gè)Cache存儲(chǔ)系統(tǒng)中,當(dāng)Cache的塊大小為一個(gè)字時(shí),命中率為H=0.8;假設(shè)數(shù)據(jù)的重復(fù)利用率為5,計(jì)算Cache的塊大小為4個(gè)字時(shí),Cache存儲(chǔ)系統(tǒng)的命中率是多少?假設(shè)T2=5T1,分別計(jì)算訪(fǎng)問(wèn)效率。 解:n=45=20,采用預(yù)取技術(shù)之后,命中率提高到: Cache的塊大小為一個(gè)字時(shí),H=0.8,訪(fǎng)問(wèn)效率為: e1=1/(0.8+5(1-0.8))
43、=0.55… Cache的塊大小為4個(gè)字時(shí),H=0.99,訪(fǎng)問(wèn)效率為: e2=1/(0.99+5(1-0.99))=0.96 例3.4 在一個(gè)虛擬存儲(chǔ)系統(tǒng)中,T2=105 T1,原來(lái)的命中率只有0.8,現(xiàn)采用預(yù)取技術(shù),訪(fǎng)問(wèn)磁盤(pán)存儲(chǔ)器的數(shù)據(jù)塊大小為4K字,如果要求訪(fǎng)問(wèn)效率不低于0.9,計(jì)算數(shù)據(jù)在主存儲(chǔ)器中的重復(fù)利用率至少為多少? 解:假設(shè)數(shù)據(jù)在主存儲(chǔ)器中的重復(fù)利用率為m,根據(jù)前面的給出關(guān)系: 解這個(gè)方程組,得到m=44,即數(shù)據(jù)在主存儲(chǔ)器中的重復(fù)利用率至少為44次。 例3.6 Star-100巨型機(jī)存儲(chǔ)系統(tǒng)采用并行和交叉相結(jié)合的方式工作,有32個(gè)存儲(chǔ)體低位交叉,每次并行
44、讀寫(xiě)512位,存儲(chǔ)周期為1.28um(磁心存儲(chǔ)器),處理機(jī)字長(zhǎng)32位,計(jì)算它的頻帶寬度Bm和峰值速度T。 解:因?yàn)椋簄=32,w=512,Tm=1280ns, Bm=n w/tm=32512b/1280ns =12.8Gb/s =1.6GB/s =400MW/s T=2.5ns, 與Tm相比,峰值速度提高512倍。 例3.8 一個(gè)程序共有5個(gè)頁(yè)面組成,分別為P1~P5。程序執(zhí)行過(guò)程中的頁(yè)地址流(即程序執(zhí)行中依次用到的頁(yè)面)如下: P1,P2,P1,P5,P5,P1,P3,P4,P3,P4 假設(shè)分配給這個(gè)程序的
45、主存儲(chǔ)器共有3個(gè)頁(yè)面。給出FIFO、LRU和OPT三種頁(yè)面替換算法對(duì)這3頁(yè)主存的使用情況,包括調(diào)入、替換和命中等。 時(shí)間t 1 2 3 4 5 6 7 8 9 10 實(shí)際 頁(yè)地址流 P1 P2 P1 P5 P4 P1 P3 P4 P2 P4 命中次數(shù) 1 1 1 1* 4 4 4* 4* 2 2 先進(jìn)先出算法 2 2 2 2* 1 1 1 1* 4 (FIFO算法) 5 5 5* 3 3 3 3* 調(diào)入 調(diào)入 命中 調(diào)入 替換 替換 替換
46、 命中 替換 替換 2次 1 1 1 1 1 1 1 1* 2 2 最久沒(méi)有使用算法 2 2 2* 4 4 4* 4 4 4 (LRU算法) 5 5* 5* 3 3 3* 3* 調(diào)入 調(diào)入 命中 調(diào)入 替換 命中 替換 命中 替換 命中 4次 1 1 1 1 1 1* 3* 3* 3 3 最優(yōu)替換算法 2 2 2 2* 2 2 2 2 2 (OPT算法) 5* 4 4 4 4 4 4
47、 調(diào)入 調(diào)入 命中 調(diào)入 替換 命中 替換 命中 命中 命中 5次 三種頁(yè)面替換算法對(duì)同一個(gè)頁(yè)地址流的調(diào)度過(guò)程 例3.9 一個(gè)循環(huán)程序,依次使用P1,P2,P3,P4四個(gè)頁(yè)面,分配給這個(gè)程序的主存頁(yè)面數(shù)為3個(gè)。FIFO、LRU和OPT三種頁(yè)面替換算法對(duì)主存頁(yè)面的調(diào)度情況如下圖所示。在FIFO和LRU算法中,總是發(fā)生下次就要使用的頁(yè)面本次被替換出去的情況,這就是“顛簸”現(xiàn)象。 時(shí)間t 1 2 3 4 5 6 7 8 實(shí)際 頁(yè)地址流 P1 P2 P3 P4 P1 P2 P3 P4 命中次數(shù) 1 1 1* 4 4
48、 4* 3 3 先進(jìn)先出算法 2 2 2* 1 1 1* 4 (FIFO算法) 3 3 3* 2 2 2* 調(diào)入 調(diào)入 調(diào)入 替換 替換 替換 替換 替換 0次 1 1 1* 4 4 4* 3 3 最久沒(méi)有使用算法 2 2 2* 1 1 1* 4 (LRU算法) 3 3 3* 2 2 2* 調(diào)入 調(diào)入 調(diào)入 替換 替換 替換 替換 替換 0次 1 1 1 1 1* 1 1 1 最優(yōu)替換算法
49、 2 2 2 2 2* 3* 3 (OPT算法) 3* 4* 4 4 4 4* 調(diào)入 調(diào)入 調(diào)入 替換 命中 命中 替換 命中 3次 頁(yè)面調(diào)度中的顛簸現(xiàn)象 3.1 由三個(gè)訪(fǎng)問(wèn)速度、存儲(chǔ)容量和每位價(jià)格都不相同的存儲(chǔ)器構(gòu)成一個(gè)存儲(chǔ)體系。其中,M1靠近CPU,回答下列問(wèn)題: M1 (T1,S1,C1) M2 (T2,S2,C2) M3 (T3,S3,C3) (1) 寫(xiě)出這個(gè)三級(jí)存儲(chǔ)體系的等效訪(fǎng)問(wèn)時(shí)間T,等效存儲(chǔ)容量S和等效每位價(jià)格C的表達(dá)式。 (2)在什么條件下,整個(gè)存儲(chǔ)體系的每位價(jià)格接近于C3?
50、 3.3 直接代公式計(jì)算存儲(chǔ)層次性能指標(biāo)。 (1)74ns,38ns,23.6ns (2)0.258,0.315,0.424 (3)T256K < T128K < T64K c256K > c128K > c64K (4)19.092,11.97,10.0064。答案是256K方案最優(yōu)。 3.5 已知,其中g(shù)=0.1 依題意有 整理得0.9n≥0.2,解出,向下取整,得15; 按另一種題意理解是向上取整,得16,也對(duì)。 3.7 方式1:16個(gè)模塊高位交叉 方式2:16個(gè)模塊并行訪(fǎng)問(wèn) 方式3:16個(gè)模塊低位交叉 方式4:2路高位交叉8路
51、低位交叉 16個(gè)存儲(chǔ)模塊每8個(gè)組成一個(gè)大的模塊: 方式5:4路高位交叉4路低位交叉 16個(gè)存儲(chǔ)模塊每4個(gè)組成一個(gè)大的模塊: 方式6:4路并行訪(fǎng)問(wèn)4路低位交叉 (1)這幾種存儲(chǔ)器都能夠并行工作,因此可以提高頻帶寬度。總的來(lái)說(shuō),并行訪(fǎng)問(wèn)存儲(chǔ)器的優(yōu)點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單、容易,缺點(diǎn)是訪(fǎng)問(wèn)沖突大; 高位交叉訪(fǎng)問(wèn)存儲(chǔ)器的優(yōu)點(diǎn)是擴(kuò)充方便,缺點(diǎn)是訪(fǎng)問(wèn)效率不高;低位交叉訪(fǎng)問(wèn)存儲(chǔ)器可以用分時(shí)的方法來(lái)提高速度,但擴(kuò)充不方便。 (2)各種存儲(chǔ)器的頻帶寬度和他們的工作頻率有關(guān),在不考慮沖突的情況下,如果有足夠多的獨(dú)立控制電路和寄存器,那么,他們的頻帶寬度是相同的。 (3)存儲(chǔ)器的邏輯示意圖略。 注
52、意,并行訪(fǎng)問(wèn)存儲(chǔ)器和低位交叉訪(fǎng)問(wèn)存儲(chǔ)器很相象,只不過(guò),并行訪(fǎng)問(wèn)存儲(chǔ)器使用存儲(chǔ)模塊號(hào)(存儲(chǔ)體號(hào))來(lái)對(duì)已經(jīng)輸出的結(jié)果進(jìn)行選擇,而低位交叉訪(fǎng)問(wèn)存儲(chǔ)器則用來(lái)生成對(duì)存儲(chǔ)模塊(存儲(chǔ)體)的片選信號(hào),他通過(guò)流水的方式來(lái)提高訪(fǎng)問(wèn)的速度。 3.14 在頁(yè)式虛擬存儲(chǔ)器中,一個(gè)程序由P1~P5共5個(gè)虛頁(yè)組成。在程序執(zhí)行過(guò)程中依次訪(fǎng)問(wèn)到的頁(yè)面如下: P2 ,P3,P2,P1 ,P5 ,P2 ,P4 ,P5 ,P3 ,P2 ,P5 ,P2 假設(shè)系統(tǒng)分配給這個(gè)程序的主存有3個(gè)頁(yè)面,分別采用FIFO、LRU和OPT三種替換算法對(duì)這三頁(yè)主存進(jìn)行調(diào)度。 (1) 畫(huà)出主存頁(yè)面調(diào)入、替換和命中的情況表。
53、(2) 統(tǒng)計(jì)三種頁(yè)面替換算法的頁(yè)命中率。 3.15 (1)在分配的主存頁(yè)面數(shù)目大于等于5的情況下,這時(shí),除了第一次調(diào)入不命中,以后的訪(fǎng)問(wèn)均命中,可以達(dá)到最高的頁(yè)面命中率:實(shí)際命中的次數(shù)為7次,所以可能達(dá)到的最高頁(yè)面命中率為: (2)由于在頁(yè)面數(shù)大于等于5的情況下,肯定可以達(dá)到最高命中率,所以我們來(lái)看頁(yè)面數(shù)小于5時(shí)能否達(dá)到該命中率: 分配的主存頁(yè)面數(shù)等于4時(shí),調(diào)度過(guò)程如下: LFU算法 4 4 4 4 4* 1 1 1 1 1* 1 1 命中7次 5 5 5* 5
54、5 5 5 5* 5 5 5 3 3 3 3* 3 3* 3 3 3* 3 2 2 2 2* 2 2 2 2 2 調(diào)入 調(diào)入 調(diào)入 調(diào)入 命中 調(diào)入 命中 命中 命中 命中 命中 命中 此時(shí)也可以達(dá)到最高命中率; 分配的主存頁(yè)面等于3時(shí),調(diào)度過(guò)程如下: LFU算法 4 4 4* 2 2
55、 2* 3 3* 3 3 3* 3 命中3次 5 5 5* 5 5 5* 2 2 2* 1 1 3 3 3* 1 1 1 1* 5 5 5 調(diào)入 調(diào)入 調(diào)入 調(diào)入 命中 調(diào)入 調(diào)入 調(diào)入 命中 調(diào)入 調(diào)入 命中 此時(shí)不能達(dá)到最高命中率。 所以至少應(yīng)該分配4個(gè)主存頁(yè)面。 (3) 我們假設(shè)程序每次只訪(fǎng)問(wèn)一個(gè)存儲(chǔ)單元,這樣,對(duì)每一個(gè)特定頁(yè)面的訪(fǎng)問(wèn)過(guò)程可以描述如下: 因?yàn)榈谝淮慰偸遣幻?/p>
56、中的,而平均起來(lái),隨后的1023次總是命中的,然后再次被調(diào)出主存,并再次重復(fù)先前的過(guò)程。 所以訪(fǎng)問(wèn)存儲(chǔ)單元的命中率為: 欲知可能的最高命中率及所需的最少主存頁(yè)數(shù),較好的辦法是通過(guò)“堆棧模擬法”,求得命中次數(shù)隨主存頁(yè)數(shù)變化的函數(shù)關(guān)系。下圖就是“堆棧模擬圖”,其中“√”表示命中。 P= 4 5 3 2 5 1 3 2 3 5 1 3 命中次數(shù) 4 5 3 2 5 1 3 2 3 5 1 3 4 5 3 2 5 1 3 2 3 5 1 4 5 3 2 5 1 1 2
57、 3 5 4 4 3 2 5 5 1 2 2 4 4 4 4 4 4 4 n=1 0 n=2 √ 1 n=3 √ √ √ 3 n=4 √ √ √ √ √ √ √ 7 n=5 √ √ √ √ √ √ √ 7 (1)Hmax=7/12
58、≈58.3% (2)n=4 (3)當(dāng)1次頁(yè)面訪(fǎng)問(wèn)代表連續(xù)1024次該頁(yè)內(nèi)存儲(chǔ)單元訪(fǎng)問(wèn)時(shí),后1023次單元訪(fǎng)問(wèn)肯定是命中的,而第1次單元訪(fǎng)問(wèn)的命中情況與這1次頁(yè)面訪(fǎng)問(wèn)的命中情況相同。根據(jù)上圖中最高命中情況,共有7次頁(yè)命中(折算為71024次單元命中),5次頁(yè)不命中(折算為51023次單元命中,也可寫(xiě)為51024-5),單元訪(fǎng)問(wèn)總次數(shù)為121024,故有: Hcell=(121024-5)/(121024)=12283/12288≈99.96% 3.15A 加1題 一個(gè)二級(jí)存儲(chǔ)層次,采用全相聯(lián)映象和最久沒(méi)有使用算法,實(shí)存共5頁(yè),為2道程序分享,頁(yè)地址流分別如下 P1 = 1 2
59、 3 4 1 3 2 1 P2 = 1 2 3 4 2 2 3 3 試作2個(gè)實(shí)存分配方案,分別使2道程序滿(mǎn)足 (1)命中率相同; (2)命中次數(shù)之和最大。 P1 = 1 2 3 4 1 3 2 1 命中次數(shù)N(1) 1 2 3 4 1 3 2 1 1 2 3 4 1 3 2 1 2 3 4 1 3 1 2 2 4 4 n1= 1 0 n1= 2
60、 0 n1= 3 √ √ 2 n1= 4 √ √ √ √ 4 解:分別為2道程序作“堆棧模擬圖”,其中“√”表示命中。 P2 = 1 2 3 4 2 2 3 3 命中次數(shù)N(2) 1 2 3 4 2 2 3 3 1 2 3 4 4 2 2 1 2 3 3 4 4 1 1 1 1 1 n2= 1 √ √ 2 n2=
61、 2 √ √ 2 n2= 3 √ √ √ √ 4 n2= 4 √ √ √ √ 4 6 5 N(1)+N(2) 4 3 2 N(1) N(2) 1 1+4 2+3 3+2 4+1 將兩圖結(jié)果綜合,得到4個(gè)分配方案的命中率情況表如下 n1 1 2 3 4 N(1) 0 0 2 4 n2 4 3 2 1 N(2) 4 4 2 2 N(1)+N(2)
62、 4 4 4 6 結(jié)論如下 (1)命中率相同的方案是n1= 3而n2= 2; (2)命中次數(shù)之和最大的方案是n1= 4而n2= 1。 3.19 (1)主存共有2個(gè)區(qū),每個(gè)區(qū)2組,每個(gè)組2塊,每塊16個(gè)字節(jié),如果按字節(jié)尋址,那么主存需要7位,如下圖所示: (2)Cache地址需要6位,如下圖所示: 中(3)(4)(6)(8)問(wèn) 虛存 實(shí)頁(yè) 0 1 2 3 虛組0 0 0 √ √ 1 實(shí)存 1 √ √ 虛組1 2 0 實(shí)組0
63、 2 √ √ 3 1 虛 3 √ √ 虛組2 4 2 實(shí)組1 頁(yè) 4 √ √ 5 3 5 √ √ 虛組3 6 6 √ √ 7 7 √ √ (a) 虛頁(yè)集合與實(shí)頁(yè)集合的對(duì)應(yīng)關(guān)系 (b) 對(duì)應(yīng)關(guān)系表(√為有關(guān)系) (3) (4)通過(guò)作“實(shí)存狀況圖”模擬各虛塊的調(diào)度情況,可獲得Cache的塊地址流序列。 P= 6 2 4 1 4 6 3 0 4 5 7 3 C0 4
64、4* 4 4 4 4* 4 4* 4* 4* C1 1 1* 1* 1* 0 0* 5 5 5 C2 6 6* 6* 6* 6* 6 6* 6* 6* 6* 7 7* C3 2 2 2 2 2* 3 3 3 3 3* 3 入 入 入 入 中 中 替 替 中 替 替 中 C= 2 3 0 1 0 2 3 1 0 1 2 3 此問(wèn)最容易出錯(cuò)的地方是忽略“組相聯(lián)”地址約束,將虛頁(yè)裝錯(cuò)實(shí)組。另外沒(méi)有及時(shí)標(biāo)注“*”號(hào)也容易導(dǎo)致淘汰對(duì)象錯(cuò)誤。 (6
65、)H=4/12≈33% (8)做法同3.15題(3)問(wèn),Hcell=(1216-8)/(1216)≈95.8% 2.4 第四章(P250) 4.5 已知中斷服務(wù)次序?yàn)?-2-4-1,。 (1)中斷屏蔽字表如下圖; D1 D2 D3 D4 D1 0 1 1 1 D2 0 0 1 0 D3 0 0 0 0 D4 0 1 1 0 (2)中斷過(guò)程示意圖如右圖。 時(shí)間 中斷請(qǐng)求 主程序 1級(jí) 2級(jí) 3級(jí) 4級(jí) D1,D2 D3,D4 4.8 (1)f=2105字節(jié)/秒,T=5u
66、s (2)Ts+Td=5us,通道時(shí)間圖如下。作圖時(shí)注意:至少要畫(huà)到最慢設(shè)備的第二次請(qǐng)求出現(xiàn),才能確定是否丟失數(shù)據(jù)(因?yàn)轫憫?yīng)優(yōu)先級(jí)低的設(shè)備較易丟失數(shù)據(jù))。 設(shè) 優(yōu) 備 先 號(hào) 級(jí) D1 1 D2 4 D3 2 D4 3 時(shí)間 (us) 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 (3)5,160,20,40; (4)D2丟失第一次請(qǐng)求的數(shù)據(jù); (5)參見(jiàn)P245。 2.5 第五章(P343) 例5.1 一個(gè)采用先行控制方式的處理機(jī),指令分析器分析一條指令用一個(gè)周期,到主存儲(chǔ)器中取一條指令裝入先行指令緩沖棧平均要用4個(gè)周期。如果這種指令的
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新人教版九年級(jí)數(shù)學(xué)下冊(cè)課件:273-位似-第2課時(shí)
- 新人教版《科學(xué)之旅》-課件
- 會(huì)計(jì)觀念的創(chuàng)新課件
- 代謝綜合征臨床評(píng)估與危險(xiǎn)因素防治
- 產(chǎn)品質(zhì)量處理辦法
- 文明單位申報(bào)材料-powerpoint__演示文稿
- 遷安市某中學(xué)七年級(jí)數(shù)學(xué)上冊(cè)第三章整式及其加減專(zhuān)題練習(xí)三整式的化簡(jiǎn)與計(jì)算課件新版北師大版
- 分時(shí)線(xiàn)洗盤(pán)的三種常見(jiàn)方式課件
- 寫(xiě)出事物的特點(diǎn)課件
- 《百善孝為先》教學(xué)ppt課件
- 五年級(jí)數(shù)學(xué)下冊(cè)期中復(fù)習(xí)卡--------課件
- 走進(jìn)美妙的色彩世界
- 五年級(jí)數(shù)學(xué)上冊(cè)課件梯形的面積人教版2
- 計(jì)算機(jī)繪圖0113章
- Ch2 顧客價(jià)值、滿(mǎn)意度、關(guān)系管理