《計算機(jī)系統(tǒng)結(jié)構(gòu)》電子教案(課1)_第1頁
《計算機(jī)系統(tǒng)結(jié)構(gòu)》電子教案(課1)_第2頁
《計算機(jī)系統(tǒng)結(jié)構(gòu)》電子教案(課1)_第3頁
《計算機(jī)系統(tǒng)結(jié)構(gòu)》電子教案(課1)_第4頁
《計算機(jī)系統(tǒng)結(jié)構(gòu)》電子教案(課1)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機(jī)系統(tǒng)結(jié)構(gòu)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)2課程概況教材《計算機(jī)系統(tǒng)結(jié)構(gòu)教程》張晨曦等,清華大學(xué)出版社,2009參考書計算機(jī)系統(tǒng)結(jié)構(gòu)學(xué)習(xí)指導(dǎo)與題解張晨曦等,清華大學(xué)出版社,2009輔助資料(到公共郵箱下載)補(bǔ)充習(xí)題與實驗,MIPS64指令集,實驗?zāi)M軟件等總學(xué)時:40第1章:2第2章:2第3章:6第5章:2第6章:2第7章:8第8章:4第9章:4第10章:4習(xí)題:2復(fù)習(xí):2五一:22011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)3各次作業(yè)應(yīng)交的內(nèi)容作業(yè)說明1.作業(yè)成績占綜合成績的20%;2.每周交一次作業(yè),周五課堂內(nèi)收取,下周一發(fā)還;3.作業(yè)缺題不批閱,待考前補(bǔ)交。補(bǔ)交記60分,考前仍缺交記0分;4.寫作業(yè)不要抄題;計算題要寫出答數(shù),不能只列算式。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)4網(wǎng)絡(luò)資源2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)5第1章基礎(chǔ)知識本章內(nèi)容劃分為兩部分。定性知識:介紹幾個最重要的概念,其余自行閱讀。定量知識:重點介紹3組計算機(jī)性能公式。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)61.1.1計算機(jī)系統(tǒng)層次模型———跨越語義鴻溝的解決之道1.1基本概念復(fù)雜的人類自然語言逐級翻譯簡單的邏輯電路語言L6:專用應(yīng)用語言虛擬機(jī)L5:通用高級語言虛擬機(jī)L4:匯編語言虛擬機(jī)L3:操作系統(tǒng)語言虛擬機(jī)L2:機(jī)器語言(傳統(tǒng)機(jī)器)L1:微指令語言虛擬機(jī)L0:邏輯電路物理機(jī)L7:自然應(yīng)用語言虛擬機(jī)軟件實現(xiàn)硬件實現(xiàn)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)7計算機(jī)系統(tǒng)結(jié)構(gòu)是什么?廣義定義:程序員必須掌握的計算機(jī)屬性(P3,Amdahl定義)狹義定義:機(jī)器語言程序員必須掌握的計算機(jī)屬性

(包括:數(shù)據(jù)表示、尋址規(guī)則、寄存器組織、指令系統(tǒng)、中斷機(jī)構(gòu)、機(jī)器工作狀態(tài)、存儲系統(tǒng)、信息保護(hù)手段、輸入/輸出結(jié)構(gòu)與管理)理解:如果兩臺計算機(jī)的系統(tǒng)結(jié)構(gòu)相同,則它們對軟件來說具有完全相同的屬性,所以軟件在它們上面是互相通用的,即互為“兼容機(jī)”。

兼容機(jī):指系統(tǒng)結(jié)構(gòu)相同而組成、實現(xiàn)技術(shù)不同的計算機(jī)。1.1.2計算機(jī)系統(tǒng)結(jié)構(gòu)的定義2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)8計算機(jī)系統(tǒng)結(jié)構(gòu)這門課教什么?學(xué)科定義:通過硬軟件結(jié)合方法提高計算機(jī)性能的理論與技術(shù)說明:1.計算機(jī)性能指速度、容量等;2.提高計算機(jī)性能的硬件技術(shù)———由“組成原理”負(fù)責(zé)(如并行主存);3.提高計算機(jī)性能的軟件技術(shù)———由“計算方法”負(fù)責(zé)(指各種優(yōu)化算法)。舉例:“虛擬存儲器”就是一種通過硬軟件結(jié)合方法提高計算機(jī)存儲容量的技術(shù)。1.1.3計算機(jī)系統(tǒng)結(jié)構(gòu)的任務(wù)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)91.1.4計算機(jī)分類(P4,按并行性分類,只講Flynn分類法)按照指令流和數(shù)據(jù)流的多倍性狀況把計算機(jī)分為:1.單指令流單數(shù)據(jù)流3.多指令流單數(shù)據(jù)流(SISD---SingleInstruction(MISD---MultipleInstructionStreamSingleDataStream)StreamSingleDataStream)2.單指令流多數(shù)據(jù)流4.多指令流多數(shù)據(jù)流(SIMD---SingleInstruction(MIMD---MultipleInstructionStreamMultipleDataStream)StreamMultipleDataStream)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)101.1.2“透明性”概念(P3)1.1.3計算機(jī)組成和計算機(jī)實現(xiàn)(P3)1.2.3計算機(jī)系統(tǒng)設(shè)計的主要方法(P12)1.4.2軟件對系統(tǒng)結(jié)構(gòu)的影響(P19)1.5.1并行性的概念(P23)1.5.2提高并行性的技術(shù)途徑(P25)1.5.4多機(jī)系統(tǒng)中并行性的發(fā)展(P26)其它定性知識(自行閱讀)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)11第一組:Amdahl定律(加速比公式)1.加速比定義(1.1)2.基本Amdahl定律(加快經(jīng)常性事件原理)(1.2)上式中:Sn──系統(tǒng)加速比(Speedup,下標(biāo)n意義不詳);

To──原執(zhí)行時間(Timeold);Tn──新執(zhí)行時間(Timenew);Se──被改進(jìn)部分的部件加速比(enhanced);

Fe──被改進(jìn)部分原執(zhí)行時間占原來總時間的百分比(Fraction)。1.2.1定量知識───三組性能公式(P7)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)12改進(jìn)之前程序運行總時間:改進(jìn)之后,由于部分操作加快,總時間下降為:根據(jù)定義,總加速比:基本Amdahl定律的推導(dǎo)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)13基本Amdahl定律的圖形從圖1.2可以看出,增大Se和Fe對Sn都有提升作用;但當(dāng)Fe固定時,一味增大Se對Sn的作用會越來越不顯著。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)14基本Amdahl定律的極限這是一個非常有用的衍生公式。(1.2a)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)15例1.1(P8)已知Fe=0.4,Se=15,求Sn(說明:在國外教材中,“加快15倍”就表示是它的15倍,國內(nèi)科技界目前也在逐步照此統(tǒng)一)解:使用基本Amdahl定律公式即系統(tǒng)加速比Sn=1.6倍(注意:遠(yuǎn)小于部件加速比)。例題2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)16例1.2(P8)已知Se=25,Sn=4,求Fe解:將已知參數(shù)代入基本Amdahl定律公式解得:Fe≈0.781例題2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)17例1.5(補(bǔ)充):選擇題:下列參數(shù)組中___對Amdahl公式無正常解

A.Fe=0.5,Sn=1.5B.Fe=0.6,Sn=2C.Fe=0.8,Sn=4D.Fe=0.9,Sn=15解:將4個選項中的Fe值分別代入基本Amdahl定律的極限公式獲得:LimSn(A)=2LimSn(B)=2.5LimSn(C)=5LimSn(D)=10再與各選項中Sn值比較,發(fā)現(xiàn)只有D組的Sn超過極限值,所以該組參數(shù)無正常解。答案是D。例題2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)18

已知Fe=0.4,Se=20(注:加快20倍即等于20倍)。求Sn,并畫出Se從0增長到+∞時Sn的曲線。解:

課堂練習(xí)(習(xí)題1.9,加1問)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)193.擴(kuò)展Amdahl定律───多部件改進(jìn)公式(1.3)其中:Sn──系統(tǒng)加速比;Sei──第i個被改進(jìn)部分的部件加速比;

Fei──第i個被改進(jìn)部分原執(zhí)行時間占原來總時間的百分比。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)20擴(kuò)展Amdahl定律的推導(dǎo)記可同時改進(jìn)的部分?jǐn)?shù)為n,改進(jìn)之前程序運行總時間為上式右端方括弧內(nèi)“+”前項代表不可改進(jìn)部分總比例,“+”后項代表可改進(jìn)部分總比例。改進(jìn)之后程序運行總時間為代入加速比的定義式,得2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)21習(xí)題1.10(改寫,原題意不清)系統(tǒng)中有3個部件同時改進(jìn),加速比分別為30、20和10。(1)如果前2個部件時間占總時間比例均為30%,第3個部件所占比例要達(dá)到多少,才能使系統(tǒng)加速比達(dá)到10?(2)如果3個部件時間占總時間比例分別為30%、30%、20%,改進(jìn)之后未被改進(jìn)部分時間占總時間的比例為多少?2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)221.CPU時間公式(P8,又稱為“

CPU性能公式

”)(1.4)其中:

Te──程序執(zhí)行的總時間(ExecuteTime);

IC──程序包含的各種指令總數(shù)(InstructionCount);

CPI──所有指令的平均周期數(shù),也稱有效CPI、等效CPI;

CYCLE──系統(tǒng)時鐘的周期長度(秒)。

這個公式最初是用來描述順序執(zhí)行指令情況下的程序總時間,以后會把它推廣到并行操作情況,那時的CPI不是指每條指令的周期數(shù),而是相鄰兩條指令啟動時刻的相差周期數(shù)。第二組:CPU時間與CPI公式(指令時間公式)2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)232.CPI——每指令周期數(shù)(CyclesPerInstruction,P9)(1.5)

CPI反映CPU執(zhí)行指令的效率。從CPU時間公式知,如果提高主頻(即縮短CYCLE)的同時也增加CPI,則CPU時間不一定會縮短。

CPI公式推導(dǎo):

參照CPU總時間公式,可以寫出其中第i種指令的時間公式。設(shè)指令種類數(shù)為n,在順序執(zhí)行方式下CPU總時間又可以寫為

顯然這兩個Te公式右邊應(yīng)該相等,于是有。改寫它,就得到上面的CPI公式。它表明CPI為所有CPIi的加權(quán)平均值,而對應(yīng)的“權(quán)”就是該類指令所占的比例。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)243.差分形式的CPI公式——均值的增量等于增量的均值

或者(1.6)

有時題目只給出部分指令的CPIi變化量,求平均CPI的變化量,這時用基本CPI公式無法計算,就要用它的差分形式(不變部分被忽略)。差分CPI公式推導(dǎo):把CPI公式展開:如果各類指令的比例不變,但周期數(shù)都變了:兩式相減:簡寫即為上面的差分CPI公式。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)25例1.3(P9)比較兩種改進(jìn)方案的優(yōu)劣,已知方案1:把FPSQR類指令的CPI由20降至2;方案2:把FP類指令的CPI由4降至2。解法1:使用差分CPI公式,分別計算改進(jìn)后CPI的下降值。方案1(只改變FPSQR類指令)方案2(只改變FP類指令)結(jié)論:方案2的CPI的下降值更大,性能更好。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)26例1.3續(xù)解法2:利用原始CPI的唯一性,先使用已知條件表1~2行寫出一個表達(dá)式再使用3~4行列出另一個含待定參數(shù)的原始CPI表達(dá)式二式相等,從而可以解出X。以后就可以用基本CPI公式計算兩種方案的新CPI。同學(xué)們用此方法自己再練習(xí)一遍(不交)。注意差分CPI公式的適用場合:

只適用于指令CPIi改變而比值ICi/IC不變的題目,如果二者都變就不能直接套用了。下面就是一個這樣的例子。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)27例1.4(P9,見教材原題)要比較兩個機(jī)器的快慢,根據(jù)剛才所學(xué)的公式,可以比較它們的加速比Sn、每條指令周期數(shù)CPI、CPU時間、每秒百萬指令數(shù)MIPS等指標(biāo),具體選擇應(yīng)看所給的已知條件更接近哪一個公式。本題看起來用CPU時間比較合適。題意分析:已知條件都是相對值,不便于建立絕對數(shù)字概念。不妨引進(jìn)一個輔助參量——指令總數(shù)M,這樣就可以把各個成分都表示成以M為基數(shù)的絕對值。另外用CYCLEA、CYCLEB分別代表CPUA、CPUB的時鐘周期。示意如下2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)28例1.4續(xù)解:(1)假設(shè)CYCLEB=1.35CYCLEA

比較知:,CPUA更快。(2)假設(shè)CYCLEB=1.15CYCLEACPIA、CPU時間A、CPU時間B都與上面相同,但是

再次比較知:,CPUB更快。(3)結(jié)論:CPU時間受多種因素影響,一項改進(jìn)帶來的副作用有時會抵消其好處。2011.2.20計算機(jī)系統(tǒng)結(jié)構(gòu)291.MIPS(每秒百萬指令數(shù),反映CPU執(zhí)行指令的速度)MillionInstructionsPerSecond,主要用于評測標(biāo)量計算機(jī)(1.7)2.MFLOPS(每秒百萬浮點數(shù),反映CPU處理數(shù)據(jù)的速度,教材外補(bǔ)充)MillionFloationg-pointOperationsperSecond,主要用于評測向量計算機(jī);(1.8)3.二者換算關(guān)系:,其中分母要根據(jù)具體程序來確定,例如對標(biāo)量運算可以取3。第三組:MIPS與MFLOPS公式(CPU速度)2011.2.20計算

溫馨提示

  • 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

提交評論