計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例

上傳人:仙*** 文檔編號:28258738 上傳時間:2021-08-24 格式:DOC 頁數(shù):141 大?。?.53MB
收藏 版權(quán)申訴 舉報 下載
計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例_第1頁
第1頁 / 共141頁
計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例_第2頁
第2頁 / 共141頁
計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例_第3頁
第3頁 / 共141頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例》由會員分享,可在線閱讀,更多相關(guān)《計算機系統(tǒng)結(jié)構(gòu)(第2版)鄭偉明湯志忠課后習(xí)題答案以及例(141頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 計算機系統(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(浮點數(shù)性能),2.13、2.15(指令編碼) 1.3 第三章(P202) 3.3(存儲層次性能),3.5(并行主存系統(tǒng)),3.15-3.15加1題(堆棧模擬),3.19中(3)(4)(6)(8)問(地址映象/替換算法--實存狀況圖) 1.4 第四章(P250) 4.5(中斷屏蔽字表/中斷過

2、程示意圖),4.8(通道流量計算/通道時間圖) 1.5 第五章(P343) 5.9(流水線性能/時空圖),5.15(2種調(diào)度算法) 1.6 第六章(P391) 6.6(向量流水時間計算),6.10(Amdahl定律/MFLOPS) 1.7 第七章(P446) 7.3、7.29(互連函數(shù)計算),7.6-7.14(互連網(wǎng)性質(zhì)),7.4、7.5、7.26(多級網(wǎng)尋徑算法),7.27(尋徑/選播算法) 1.8 第八章(P498) 8.12(SISD/SIMD算法) 1.9 第九章(P562) 9.18(SISD/多功能部件/SIMD/MIMD算法) (注:每章可選1-2個主要

3、知識點,每個知識點可只選1題。有下劃線者為推薦的主要知識點。) 2 例, 習(xí)題 2.1 第一章(P33) 例1.1,p10 假設(shè)將某系統(tǒng)的某一部件的處理速度加快到10倍,但該部件的原處理時間僅為整個運行時間的40%,則采用加快措施后能使整個系統(tǒng)的性能提高多少? 解:由題意可知:Fe=0.4, Se=10,根據(jù)Amdahl定律 例1.2,p10 采用哪種實現(xiàn)技術(shù)來求浮點數(shù)平方根FPSQR的操作對系統(tǒng)的性能影響較大。假設(shè)FPSQR操作占整個測試程序執(zhí)行時間的20%。一種實現(xiàn)方法是采用FPSQR硬件,使FPSQR操作的速度加快到10倍。另一種實現(xiàn)方法是使所有浮點數(shù)據(jù)指令的

4、速度加快,使FP指令的速度加快到2倍,還假設(shè)FP指令占整個執(zhí)行時間的50%。請比較這兩種設(shè)計方案。 解:分別計算出這兩種設(shè)計方案所能得到的加速比: 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è)計方案,分別把FPSQR操作的CPI和所有FP操作的CPI減為2。試利用CPU性能公式比較這兩種設(shè)計方案哪一個更好(只改變CPI而時鐘頻率和指令條數(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ù)以下公式計算出方案2系統(tǒng)(同求CPI原) CPI= 75%1.33+25%2=1.5 顯然,提高所有FP指令處理速度的方案要比提高FPSQR處理速度的方案要好。 方案2的加速比 =2/1.5 =1.33 例1.4 假設(shè)兩臺機器的指令系統(tǒng)中,執(zhí)行條件轉(zhuǎn)移指令需2個時鐘周期,而其它指令只需1個時鐘周期。 CPUA:采用一條比較指令來設(shè)置相應(yīng)的條件碼,由緊隨其后的一條轉(zhuǎn)移指令對此條件碼進行測試,以確定是否進行轉(zhuǎn)移。顯然實現(xiàn)一次條件轉(zhuǎn)移要執(zhí)行比較和測試兩條指令。條件轉(zhuǎn)移指令占總執(zhí)行指令條數(shù)的20%。由于每條

7、轉(zhuǎn)移指令都需要一條比較指令,所以比較指令也將占20%。 CPUB采用比較功能和判別是否實現(xiàn)轉(zhuǎn)移功能合在一條指令的方法,這樣實現(xiàn)一條件轉(zhuǎn)移就只需一條指令就可以完成。由于CPUB在轉(zhuǎn)移指令中包含了比較功能,因此它的時鐘周期就比CPUA要慢25%。 現(xiàn)在要問,采用不同轉(zhuǎn)移指令方案的CPUA和CPUB,那個工作速度會更快些? 解: 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中沒有比較指令,因此 ICB = 0.8ICA CPUB

8、時鐘周期就比CPUA要慢25% tB = 1.25tA TCPUB = ICBCPIBtB = 0.8 ICA1.251.25tA = 1.25 ICAtA TCPUATCPUB 所以CPUB比CPUA

9、運行得更快些。 例1.A1 計算Pentium II 450(IPC=2)處理機的運算速度。 解: 由于PentiumII 450處理機的IPC=2 (或CPI=0.5) Fz=450MHz, MIPSPentium II 450=FzIPC=450 MHz2=900(MIPS) 例1.A2 我國最早研制的小型計算機DJS-130,定點16位,加法每秒50萬次,但沒有硬件乘法和除法指令,用軟件實現(xiàn)乘法和除法,速度低100倍左右。求等效速度。 解:定點等效速度為: 即每秒2萬次,由于乘法和除法用軟件實現(xiàn),等效速度降低了25倍。 例1.A3 假設(shè)在程序中

10、浮點開平方操作FPSQR的比例為2%,它的CPI為100;其他浮點操作FP的比例為23%,它的CPI= 4.0;其余75%指令的CPI=1.33,計算該處理機的等效CPI。如果FPSQR操作的CPI也為4.0,重新計算等效CPI。 解: 等效CPI=1002%+423%+1.3375% =3.92 等效CPI2=425%+1.3375% =2.00 1.1 解釋下列術(shù)語 層次結(jié)構(gòu),計算機系統(tǒng)結(jié)構(gòu),計算機組成,計算機實現(xiàn),透明性,由上而下設(shè)計,由下而上設(shè)計,由中間向兩邊設(shè)計,軟件兼容,向上兼容,固件,系列機,兼容機,模擬,仿真,虛擬機,宿主機,指令流,數(shù)據(jù)流,單指令流單數(shù)

11、據(jù)流,多指令流多數(shù)據(jù)流,Amdahl定律,CPI,MIPS,MFLOPS。 1.2 每一級為了執(zhí)行一條指令需要下一級的N條指令解釋,若執(zhí)行第一級的一條指令需kns,那么執(zhí)行第2級、第3級、第4級的指令需要多少時間? 第1級 1條1級指令 k ns 第2級 1條2級指令 N條1級指令 1Nk ns = Nk ns 第3級 1條3級指令 N條2級指令 1NNk ns = N2k ns 第4級 1條4級指令 N條3級指令 1NNNk ns = N3k ns 1.4 每一級

12、指令能完成下一級的M條指令的工作量,且每一級指令需要下一級的N條指令解釋,若執(zhí)行第一級的一條指令需kns,那么執(zhí)行第2級、第3級、第4級的等效程序需要多少時間? 第1級 1條1級指令 k ns 第2級 等效程序為1/M條2級指令 需N/M條1級指令解釋 N/Mk ns 第3級 等效程序為1/M/M條3級指令 需NN/M/M條1級指令解釋 N2/M2 ns 第4級 等效程序為1/M/M/M條4級指令 需NNN/M/M/M條1級指令解釋 N3/M3 ns 1.6 試以實例說明計算機系統(tǒng)結(jié)

13、構(gòu)、計算機組成與計算機實現(xiàn)之間的相互關(guān)系與相互影響。 系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)是三個不同的概念,它們各自包含不同的內(nèi)容,但又有緊密的關(guān)系。 以存儲系統(tǒng)為例,主存儲器容量和尋址方式的確定屬計算機系統(tǒng)結(jié)構(gòu),主存的速度應(yīng)多高,在邏輯結(jié)構(gòu)上采用什么措施屬計算機組成,而主存的物理實現(xiàn),如存儲器采用什么樣器件,邏輯電路設(shè)計和微組裝技術(shù)則屬計算機實現(xiàn)。 1.7 什么是透明性概念?對計算機系統(tǒng)結(jié)構(gòu),下列哪些是透明的?哪些是不透明的? n 存貯器的模m交叉存??;透明(組成) n 浮點數(shù)據(jù)表示;不透明(系統(tǒng)結(jié)構(gòu)) n I/O系統(tǒng)是采用通道方式還是I/O處理機方式;不透明 n 數(shù)據(jù)總線寬度;

14、透明(組成) n 陣列運算部件;透明(組成) n 通道是采用結(jié)合型的還是獨立型的;透明(組成) n PDP-11系列中的單總線結(jié)構(gòu);不透明(系統(tǒng)結(jié)構(gòu)) n 訪問方式保護;不透明(系統(tǒng)結(jié)構(gòu)) n 程序性中斷;不透明(系統(tǒng)結(jié)構(gòu)) n 串行、重疊還是流水控制方式;透明(組成) n 堆棧指令;存貯最小編址單位;不透明(系統(tǒng)結(jié)構(gòu)) n Cache存貯器。透明(組成) (1)從指定角度來看,不必要了解的知識稱為透明性概念。 (2)見下表,“√”為透明性概念。 模m交叉,√, 浮點數(shù)據(jù),,P4 通道與I/O處理機,,P4 總線寬度,√, 陣列運算部件,, 結(jié)合型與獨立型通

15、道,√, 單總線,√, 訪問保護,, 中斷,, 指令控制方式,√, 堆棧指令,, 最小編址單位,, Cache存儲器,√, 1.8 從機器(匯編)語言程序員看,以下哪些是透明的? n 指令地址寄存器;指令緩沖器;時標(biāo)發(fā)生器;條件碼寄存器;乘法器;主存地址寄存器;磁盤外設(shè);先行進位鏈;移位器;通用寄存器;中斷字寄存器。 見下表,“√”為透明性概念 指令地址寄存器,, 指令緩沖器,√, 時標(biāo)發(fā)生器,√, 條件碼寄存器,, 乘法器,√, 主存地址寄存器,√, 磁盤,, 先行進位鏈,√, 移位器,√, 通用寄存器 ,, 中斷字寄存器,

16、, 1.9 見下表,“√”表示都透明,“應(yīng)”表示僅對應(yīng)用程序員透明,“”表示都不透明。 數(shù)據(jù)通路寬度,√, 虛擬存儲器,應(yīng), Cache存儲器,√, 程序狀態(tài)字,, “啟動I/O”指令,應(yīng), “執(zhí)行”指令,, 指令緩沖寄存器,√, 1.12 如果某一計算任務(wù)用向量方式求解比用標(biāo)量方式求解要快20倍,稱可用向量方式求解部分所花費時間占總的時間的百分比為可向量化百分比。請畫出加速比與可向量化比例兩者關(guān)系的曲線。 解:可向量化百分比為Fe, Se=20,根據(jù)Amdahl定律 將Se代入Amdahl定律得 1.13 在題1.12中,為

17、達到加速比2, 可向量化的百分比應(yīng)為多少? =2 則可向量化的百分比Fe=0.526 1.14 在題1.12中,為獲得采用向量方式最大加速比的半值(即10)時,所需可向量化的百分比為多少。 =10 則可向量化的百分比Fe=0.947 1.15 在題1.12中,如果某程序可向量化部分為70%,硬件設(shè)計組認為可以通過加大工程投資,使向量處理速度加倍來進一步增加性能;而編譯程序編寫組認為只需設(shè)法增加向量工作方式的百分比就同樣可使性能得到相同的提高,問:此時需使可向量化成分再增加多少百分比就可實現(xià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é)論:軟件組方法更好。因為硬件組需要將Se再提高100%(20→40),而軟件組只需將Fe再提高1.84%(0.7→0.7184)。 1.16 某計算機的高速小容量存儲器能存儲2000條指令。假設(shè)10%的指令承擔(dān)了90%的指令訪問且對這10%的指令的使用是均勻的(即其中每條指令的執(zhí)行時間相同)。如果要執(zhí)行的某程序共有50 000條指令且已知其中的10%是頻繁使用的,則當(dāng)該計算機執(zhí)行

19、該程序時,在高速小容量存儲器中能訪問到的指令會占多少百分比? 解: 對該應(yīng)用程序來說,在90%的時間里,只有50000*10%=5000條指令在運行,其他的45000條指令的平均運行次數(shù)很少,因此,可以假設(shè)對它們來說,Cache總是缺失的. 對頻繁訪問的這10%的指令,假設(shè)它們訪問均勻,這樣,Cache的行為便可以認為是均勻覆蓋了這些指令.所以, 10%的指令承擔(dān)了90%的指令訪問, 指令訪問次數(shù)(50000*10%)/90% 命中次數(shù)2000 Cache的命中率為:H=2000/[(50000*10%)/90%]=0.36 1.17 假設(shè)高速緩存Ca

20、che 工作速度為主存的5倍,且Cache被訪問命中的概率為90%,則采用Cache后,能使整個存儲系統(tǒng)獲得多高的加速比? 解: 1.18 設(shè)計指令存儲器有兩種不同方案:一是采用價格較貴的高速存儲器芯片,另一是采用價格便宜的低速存儲芯片。采用后一方案時,用同樣的經(jīng)費可使存儲器總線帶寬加倍,從而每隔2個時鐘周期就可取出2條指令(每條指令為單字長32位);而采用前一方案時,每個時鐘周期存儲器總線僅取出1條單字長指令。由于訪存空間局部性原理,當(dāng)取出2個指令字時,通常這2個指令字都要使用,但仍有25%的時鐘周期中,取出的2個指令字中僅有1個指令字是有用的。試問采用這兩種實現(xiàn)方案所構(gòu)成

21、的存儲器帶寬為多少? 解: 方案一:采用高速緩沖存儲器,使每個時鐘周期存儲器總線取出1條指令,則 存儲器帶寬=1字/時鐘周期=32位/時鐘周期 方案二:使存儲器總線帶寬加倍,從而每隔2個時鐘周期就可取出2條指令(每條指令為單字長32位),但仍有25%的時鐘周期中,取出的2個指令字中僅有1個指令字是有用的,則 1.19 用一臺40MHz處理機執(zhí)行標(biāo)準測試程序,它含的混合指令數(shù)和相應(yīng)所需的時鐘周期數(shù)如下: 指令類型 指令數(shù) 時鐘周期數(shù) 整數(shù)運算 45000 1 數(shù)據(jù)傳送 32000

22、 2 浮點 15000 2 控制傳送 8000 2 求有效CPI、MIPS速率和程序的執(zhí)行時間。 1.20 某工作站采用時鐘頻率為15MHz、處理速率為10MIPS的處理機來執(zhí)行一個已知混合程序。假定每次存儲器存取為1周期延遲、試問: (a) 此計算機的有效CPI是多少? (b) 假定將處理機的時鐘提高到30MHz,但存儲器子系統(tǒng)速率不變。這樣,每次存儲器存取需要兩個時鐘周期。如果30%指令每條只需要一次存儲存取,而另外5%每條需要兩次存儲存取,還假定已知混合程序

23、的指令數(shù)不變,并與原工作站兼容,試求改進后的處理機性能。 解:(a) f==15MHz , MIPS=10, 每次存取時間為2個時鐘周期 (b) 30%指令每條只需要一次存儲存取,改進前共需1周期,改進后共需2周期 而另外5%每條需要兩次存儲存取,改進前共需2周期,改進后共需4周期 1.21 假設(shè)在一臺40MHz處理機上運行200000條指令的目標(biāo)代碼,程序主要由四種指令組成。根據(jù)程序跟蹤實驗結(jié)果,已知指令混合比和每種指令所需的指令數(shù)如下: 指令類型 CPI 指令混合比 算術(shù)和邏輯

24、 1 60% 高速緩存命中的加載/存儲 2 18% 轉(zhuǎn)移 4 12% 高速緩存缺失的存儲器訪問 8 10% (a) 計算在單處理機上用上述跟蹤數(shù)據(jù)運行程序的平均CPI (b) 根據(jù)(a)所得CPI,計算相應(yīng)的MIPS速率。 解: (1) (2) 1.24 假定你是一個計算機設(shè)計者,對高級語言結(jié)構(gòu)的使用研究表明,過程調(diào)用是最常用的操作之一。你已設(shè)想了一個優(yōu)化設(shè)計方案,它能減少過程調(diào)用和返回所需的取/存指令次數(shù)。為了進行驗證

25、,對未加優(yōu)化和已優(yōu)化的方案進行實驗測試,假定所使用的是相同的優(yōu)化編譯器。實驗測得的結(jié)果如下: (1)未優(yōu)化的時鐘周期比優(yōu)化的快5%; (2)未優(yōu)化方案中的取/存指令數(shù)占總指令數(shù)的30%; (3)優(yōu)化方案中的取/存指令數(shù)比未優(yōu)化的少1/3,對于其他指令,兩種方案的動態(tài)執(zhí)行數(shù)沒有變化; (4)所有指令,包括取/存指令,均只需要1個時鐘周期。 要求你定量地判斷,哪一種設(shè)計方案的計算機工作速度更快。 解: 記新方案時鐘周期為Tc,已知CPI = CPIi = 1 原時間 = CPI IC 0.95Tc = 0.95ICTc 新時間 = (0.32/3+0.7) IC Tc =

26、0.9ICTc 二者比較,新時間較短。 1.A1 某臺計算機只有Load/Store 指令能對存儲器進行讀/寫操作,其它指令只對寄存器進行操作。根據(jù)程序跟蹤實驗結(jié)果,已知每種指令所占的比例及CPI數(shù)如下: 指令類型 指令所占比例 CPI 算邏指令 43% 1 Load指令 21% 2 Store指令 12% 2 轉(zhuǎn)移指令 24% 2 (

27、1) 求上述情況下的平均CPI。 (2) 假設(shè)程序有M條指令組成。算邏運算中25%的指令的兩個操作數(shù)中的一個已在寄存器中,另一個必須在算邏指令執(zhí)行前用Load指令從存儲器取到寄存器。因此有人建議增加另一種算邏指令,其特點是一個操作數(shù)取自寄存器,另一個操作數(shù)取自存儲器,即寄存器存儲器類型,假設(shè)這種指令的CPI等于2。同時,轉(zhuǎn)移指令的CPI變?yōu)?。求新指令系統(tǒng)的平均CPI。 解: (1) CPI舊=(0.431+0.212+0.122+0.242)=1.57 (2) 原算邏指令中的25%變成了寄存器存儲器型指令,所以算邏指令(寄存器寄存器型)少了(0.250.43)M 條,Load指

28、令少了(0.250.43)M 條,而(0.250.43)M 條的新指令為寄存器存儲器型指令。指令總數(shù)少了(0.2543%)M條。 設(shè)執(zhí)行算邏指令(寄存器寄存器型) 、 Load指令、算邏指令(寄存器存儲器型) 、 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 計算機系統(tǒng)中有三個部件可以改進,這三個部件的部件加速比如下: 部件加速比1=30 部件加速比2=20 部件加速比3=10 (1)如果部件1和部件2的可改進比例均為30%,那么當(dāng)部件3的可改進比例為多少時, 系統(tǒng)加速比才可以達到10? (2)如果三個部件的可改進比例分別為30%、30%和20%,三個部件同時改進,那么系統(tǒng) 中不可加速部分的執(zhí)行時間在總執(zhí)行時間中占的比例是多少? (3)如果相對某個測試程序三個部件的可改進比例分別為20%,20%和70%,要達到最好

30、 改進效果,僅對一個部件改進時,要選擇哪個部件?如果允許改進兩個部件,又如何 選擇? 1.A3 在某個程序中,簡單指令占80%,復(fù)雜指令占20%,在CISC機中簡單指令執(zhí)行需4個機器周期,復(fù)雜指令執(zhí)行需8個機器周期。RISC機中簡單指令執(zhí)行只需1個機器周期,而復(fù)雜指令要通過一串指令來實現(xiàn)。假定復(fù)雜指令平均需要14條簡單指令,即需要14個周期,若該程序中需要執(zhí)行的總指令數(shù)為1 000 000,Tc為100ns,那么 (1)RISC機需執(zhí)行的指令數(shù)為多少? (2)CISC和RISC機的CPU時間分別為多少? (3)RISC機對CISC的加速比為多少? 2.2 第二章(P124) 2

31、.3 忽略P124倒1行 ~ P125第8行文字,以簡化題意)已知2種浮點數(shù),求性能指標(biāo)。 此題關(guān)鍵是分析階碼、尾數(shù)各自的最大值、最小值。 原圖為數(shù)據(jù)在內(nèi)存中的格式,階碼的小數(shù)點在其右端,尾數(shù)的小數(shù)點在其左端,遵守規(guī)格化要求。 由于尾數(shù)均為原碼,原碼的絕對值與符號位無關(guān),所以最大正數(shù)與最小負數(shù)的絕對值相同,可用“最大絕對值”回答;最小正數(shù)與最大負數(shù)的絕對值相同,可用“最小絕對值”回答。 第1小問中,階碼全部位數(shù)為8,作無符號數(shù)看待真值為0~255,作移-127碼看待真值為-127~+128;尾數(shù)(不計符號位)有23位小數(shù),另加1位整數(shù)隱藏位,所以尾數(shù)絕對值為1.0~2

32、.0 – 2-23,有效位數(shù)p=24; 第2小問中,階碼全部位數(shù)為11,作無符號數(shù)看待真值為0~2047,作移-1023碼看待真值為-1023~+1024;尾數(shù)(不計符號位)有52位小數(shù),另加1位整數(shù)隱藏位,所以尾數(shù)絕對值為1.0~2.0 – 2-52,有效位數(shù)p=53。 最大絕對值為最大階碼與最大尾數(shù)絕對值的組合,最小絕對值為最小階碼與最小尾數(shù)絕對值的組合。代入相關(guān)公式后得最終結(jié)果如下表。 32位 64位 最大絕對值 (1-2-24)2129 (1-2-53)21025 最小絕對值 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) 符號位不變,(階碼 – 63)4 + 127;尾數(shù)左規(guī),除去最高位; (3) 符號位不變,(階碼 – 127)/ 4 + 63;尾數(shù)補最高位,按除法余數(shù)右移若干位,左補0。 2.13 已知10條指令使用頻度,求3種編碼方法的平均碼長與信息冗余量。 (1)此問中的“最優(yōu)Huffman編碼法”實際是指碼長下限,即信源的平均信息量──熵,代公式得H=2.9566。 (2)Huffman編碼性能如下表; (3)2/8擴展編碼是8/64/512法的變種,第一組2條指令,碼

35、長為2(1位擴展標(biāo)志,1位編碼),第二組8條指令,碼長為4(1位擴展標(biāo)志,與第一組區(qū)別,加3位編碼),編碼性能如下表; (4)3/7擴展編碼是15/15/15法的變種,第一組3條指令,碼長為2(共有4種組合,其中3種組合分別代表3條指令,留1種組合作為擴展前綴標(biāo)志),第二組7條指令,碼長為5(2位固定的前綴擴展標(biāo)志,與第一組區(qū)別,加3位編碼,只用其中7種組合),編碼性能如下表。 Huffman編碼 2/8擴展編碼 3/7擴展編碼 平均碼長L 2.99 3.1 3.2 信息冗余量R 1.10% 4.61% 7.59% 2.14 一臺模型機共有7條指令,各指令的

36、使用頻率分別為35%,25%,20%,10%,5%,3%和2%,有8個通用數(shù)據(jù)寄存器,2個變址寄存器。 (1)要求操作碼的平均長度最短,請設(shè)計操作碼的編碼,并計算所設(shè)計操作碼的平均長度。 (2)設(shè)計8字長的寄存器-寄存器型指令3條,16位字長的寄存器-存儲器型變址尋址方式指令4條,變址范圍不小于127。請設(shè)計指令格式,并給出各字段的長度和操作碼的編碼。 解: (1)要使得到的操作碼長度最短,應(yīng)采用Huffman編碼,構(gòu)造Huffman樹如下: 由此可以得到7條指令的編碼分別如下: 這樣,采用Huffman編碼法得到的操作碼的平均長度為: 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è)計8位字長的寄存器-寄存器型變址尋址方式指令如下,因為只有8個通用寄存器,所以寄存器地址需3位,操作碼只有兩位,設(shè)計格式如下: 三條指令的操作碼分別為00,01,10 設(shè)計16位字長的寄存器-存儲器型變址尋址方式指令如下: 四條指令的操作碼分別為1100,1101,1110,1111 2.15 某處理機的指令字長為16位,有雙地址指令、單地址指令和零地址指令三類,并假設(shè)每個地址字段的長度

38、均為6位。 (1)如果雙地址指令有15條,單地址指令和零地址指令的條數(shù)基本相同,問單地址指令和零地址指令各有多少條?并且為這三類指令分配操作碼。 (2)如果要求三類指令的比例大致為1:9:9,問雙地址指令、單地址指令和零地址指令各有多少條?并且為這三類指令分配操作碼。 解: (1) 15條/63條/64條 (2) 14條/126條/128條 (1)根據(jù)指令地址的數(shù)量來決定各種指令在指令空間上的分布: 如果我們按照從小到大的順序分配操作碼,這樣,按照指令數(shù)值從小到大的順序,分別為雙地址指令、單地址指令和零地址指令。 其次可以根據(jù)指令的條數(shù)來大致的估計操作碼的長度: 雙指令1

39、5條,需要4位操作碼來區(qū)分,剩下的12位操作碼平均分給單地址和零地址指令,每種指令可以用6位操作碼來區(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兩種情況下,分別計算存儲系統(tǒng)的訪問效率。 解: 當(dāng)H=0.9時,e1=1/(0.9+5(1-0.9))=0.72 當(dāng)H=0.99時,e2=1/(0.99+5(1-0.99))=0.96 提高存儲系統(tǒng)速度的兩條途徑: 一是提高命中率H 二是兩個存儲器的速度不要相差太大 其中:第二條有時做不到(如虛擬存儲器),因此,主要依靠提高命中率 例3.2 在虛擬存儲系統(tǒng)中,兩級存儲器的速度相差特別懸殊T2=105 T1。如果要

42、使訪問效率e=0.9,問需要有多高的命中率? 解: 0.9H+90000(1-H)=1 89999.1H=89999 計算得H=0.999998888877777…≈0.999999 例3.3 在一個Cache存儲系統(tǒng)中,當(dāng)Cache的塊大小為一個字時,命中率為H=0.8;假設(shè)數(shù)據(jù)的重復(fù)利用率為5,計算Cache的塊大小為4個字時,Cache存儲系統(tǒng)的命中率是多少?假設(shè)T2=5T1,分別計算訪問效率。 解:n=45=20,采用預(yù)取技術(shù)之后,命中率提高到: Cache的塊大小為一個字時,H=0.8,訪問效率為: e1=1/(0.8+5(1-0.8))

43、=0.55… Cache的塊大小為4個字時,H=0.99,訪問效率為: e2=1/(0.99+5(1-0.99))=0.96 例3.4 在一個虛擬存儲系統(tǒng)中,T2=105 T1,原來的命中率只有0.8,現(xiàn)采用預(yù)取技術(shù),訪問磁盤存儲器的數(shù)據(jù)塊大小為4K字,如果要求訪問效率不低于0.9,計算數(shù)據(jù)在主存儲器中的重復(fù)利用率至少為多少? 解:假設(shè)數(shù)據(jù)在主存儲器中的重復(fù)利用率為m,根據(jù)前面的給出關(guān)系: 解這個方程組,得到m=44,即數(shù)據(jù)在主存儲器中的重復(fù)利用率至少為44次。 例3.6 Star-100巨型機存儲系統(tǒng)采用并行和交叉相結(jié)合的方式工作,有32個存儲體低位交叉,每次并行

44、讀寫512位,存儲周期為1.28um(磁心存儲器),處理機字長32位,計算它的頻帶寬度Bm和峰值速度T。 解:因為: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 一個程序共有5個頁面組成,分別為P1~P5。程序執(zhí)行過程中的頁地址流(即程序執(zhí)行中依次用到的頁面)如下: P1,P2,P1,P5,P5,P1,P3,P4,P3,P4 假設(shè)分配給這個程序的

45、主存儲器共有3個頁面。給出FIFO、LRU和OPT三種頁面替換算法對這3頁主存的使用情況,包括調(diào)入、替換和命中等。 時間t 1 2 3 4 5 6 7 8 9 10 實際 頁地址流 P1 P2 P1 P5 P4 P1 P3 P4 P2 P4 命中次數(shù) 1 1 1 1* 4 4 4* 4* 2 2 先進先出算法 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 最久沒有使用算法 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次 三種頁面替換算法對同一個頁地址流的調(diào)度過程 例3.9 一個循環(huán)程序,依次使用P1,P2,P3,P4四個頁面,分配給這個程序的主存頁面數(shù)為3個。FIFO、LRU和OPT三種頁面替換算法對主存頁面的調(diào)度情況如下圖所示。在FIFO和LRU算法中,總是發(fā)生下次就要使用的頁面本次被替換出去的情況,這就是“顛簸”現(xiàn)象。 時間t 1 2 3 4 5 6 7 8 實際 頁地址流 P1 P2 P3 P4 P1 P2 P3 P4 命中次數(shù) 1 1 1* 4 4

48、 4* 3 3 先進先出算法 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 最久沒有使用算法 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次 頁面調(diào)度中的顛簸現(xiàn)象 3.1 由三個訪問速度、存儲容量和每位價格都不相同的存儲器構(gòu)成一個存儲體系。其中,M1靠近CPU,回答下列問題: M1 (T1,S1,C1) M2 (T2,S2,C2) M3 (T3,S3,C3) (1) 寫出這個三級存儲體系的等效訪問時間T,等效存儲容量S和等效每位價格C的表達式。 (2)在什么條件下,整個存儲體系的每位價格接近于C3?

50、 3.3 直接代公式計算存儲層次性能指標(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,也對。 3.7 方式1:16個模塊高位交叉 方式2:16個模塊并行訪問 方式3:16個模塊低位交叉 方式4:2路高位交叉8路

51、低位交叉 16個存儲模塊每8個組成一個大的模塊: 方式5:4路高位交叉4路低位交叉 16個存儲模塊每4個組成一個大的模塊: 方式6:4路并行訪問4路低位交叉 (1)這幾種存儲器都能夠并行工作,因此可以提高頻帶寬度??偟膩碚f,并行訪問存儲器的優(yōu)點是實現(xiàn)簡單、容易,缺點是訪問沖突大; 高位交叉訪問存儲器的優(yōu)點是擴充方便,缺點是訪問效率不高;低位交叉訪問存儲器可以用分時的方法來提高速度,但擴充不方便。 (2)各種存儲器的頻帶寬度和他們的工作頻率有關(guān),在不考慮沖突的情況下,如果有足夠多的獨立控制電路和寄存器,那么,他們的頻帶寬度是相同的。 (3)存儲器的邏輯示意圖略。 注

52、意,并行訪問存儲器和低位交叉訪問存儲器很相象,只不過,并行訪問存儲器使用存儲模塊號(存儲體號)來對已經(jīng)輸出的結(jié)果進行選擇,而低位交叉訪問存儲器則用來生成對存儲模塊(存儲體)的片選信號,他通過流水的方式來提高訪問的速度。 3.14 在頁式虛擬存儲器中,一個程序由P1~P5共5個虛頁組成。在程序執(zhí)行過程中依次訪問到的頁面如下: P2 ,P3,P2,P1 ,P5 ,P2 ,P4 ,P5 ,P3 ,P2 ,P5 ,P2 假設(shè)系統(tǒng)分配給這個程序的主存有3個頁面,分別采用FIFO、LRU和OPT三種替換算法對這三頁主存進行調(diào)度。 (1) 畫出主存頁面調(diào)入、替換和命中的情況表。

53、(2) 統(tǒng)計三種頁面替換算法的頁命中率。 3.15 (1)在分配的主存頁面數(shù)目大于等于5的情況下,這時,除了第一次調(diào)入不命中,以后的訪問均命中,可以達到最高的頁面命中率:實際命中的次數(shù)為7次,所以可能達到的最高頁面命中率為: (2)由于在頁面數(shù)大于等于5的情況下,肯定可以達到最高命中率,所以我們來看頁面數(shù)小于5時能否達到該命中率: 分配的主存頁面數(shù)等于4時,調(diào)度過程如下: 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)入 命中 命中 命中 命中 命中 命中 此時也可以達到最高命中率; 分配的主存頁面等于3時,調(diào)度過程如下: 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)入 命中 此時不能達到最高命中率。 所以至少應(yīng)該分配4個主存頁面。 (3) 我們假設(shè)程序每次只訪問一個存儲單元,這樣,對每一個特定頁面的訪問過程可以描述如下: 因為第一次總是不命

56、中的,而平均起來,隨后的1023次總是命中的,然后再次被調(diào)出主存,并再次重復(fù)先前的過程。 所以訪問存儲單元的命中率為: 欲知可能的最高命中率及所需的最少主存頁數(shù),較好的辦法是通過“堆棧模擬法”,求得命中次數(shù)隨主存頁數(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次頁面訪問代表連續(xù)1024次該頁內(nèi)存儲單元訪問時,后1023次單元訪問肯定是命中的,而第1次單元訪問的命中情況與這1次頁面訪問的命中情況相同。根據(jù)上圖中最高命中情況,共有7次頁命中(折算為71024次單元命中),5次頁不命中(折算為51023次單元命中,也可寫為51024-5),單元訪問總次數(shù)為121024,故有: Hcell=(121024-5)/(121024)=12283/12288≈99.96% 3.15A 加1題 一個二級存儲層次,采用全相聯(lián)映象和最久沒有使用算法,實存共5頁,為2道程序分享,頁地址流分別如下 P1 = 1 2

59、 3 4 1 3 2 1 P2 = 1 2 3 4 2 2 3 3 試作2個實存分配方案,分別使2道程序滿足 (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個分配方案的命中率情況表如下 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個區(qū),每個區(qū)2組,每個組2塊,每塊16個字節(jié),如果按字節(jié)尋址,那么主存需要7位,如下圖所示: (2)Cache地址需要6位,如下圖所示: 中(3)(4)(6)(8)問 虛存 實頁 0 1 2 3 虛組0 0 0 √ √ 1 實存 1 √ √ 虛組1 2 0 實組0

63、 2 √ √ 3 1 虛 3 √ √ 虛組2 4 2 實組1 頁 4 √ √ 5 3 5 √ √ 虛組3 6 6 √ √ 7 7 √ √ (a) 虛頁集合與實頁集合的對應(yīng)關(guān)系 (b) 對應(yīng)關(guān)系表(√為有關(guān)系) (3) (4)通過作“實存狀況圖”模擬各虛塊的調(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 此問最容易出錯的地方是忽略“組相聯(lián)”地址約束,將虛頁裝錯實組。另外沒有及時標(biāo)注“*”號也容易導(dǎo)致淘汰對象錯誤。 (6

65、)H=4/12≈33% (8)做法同3.15題(3)問,Hcell=(1216-8)/(1216)≈95.8% 2.4 第四章(P250) 4.5 已知中斷服務(wù)次序為3-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)中斷過程示意圖如右圖。 時間 中斷請求 主程序 1級 2級 3級 4級 D1,D2 D3,D4 4.8 (1)f=2105字節(jié)/秒,T=5u

66、s (2)Ts+Td=5us,通道時間圖如下。作圖時注意:至少要畫到最慢設(shè)備的第二次請求出現(xiàn),才能確定是否丟失數(shù)據(jù)(因為響應(yīng)優(yōu)先級低的設(shè)備較易丟失數(shù)據(jù))。 設(shè) 優(yōu) 備 先 號 級 D1 1 D2 4 D3 2 D4 3 時間 (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丟失第一次請求的數(shù)據(jù); (5)參見P245。 2.5 第五章(P343) 例5.1 一個采用先行控制方式的處理機,指令分析器分析一條指令用一個周期,到主存儲器中取一條指令裝入先行指令緩沖棧平均要用4個周期。如果這種指令的

展開閱讀全文
溫馨提示:
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)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!