計算機組成原理總復習課件()_第1頁
計算機組成原理總復習課件()_第2頁
計算機組成原理總復習課件()_第3頁
計算機組成原理總復習課件()_第4頁
計算機組成原理總復習課件()_第5頁
已閱讀5頁,還剩152頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

計算機組成原理第一章計算機系統概論第二章運算方法和運算器第三章存儲系統第四章指令系統

第五章中央處理器

第六章總線系統

第七章外圍設備

第八章輸入輸出系統目錄第1章教學要求-1了解計算機的類型:模擬和數字,專用和通用,巨型機、大型機、小型機、微型機、單片機熟悉計算機的硬件組成部件及其作用掌握主存有關概念:存儲器地址、存儲單元和存儲容量;位bit、字節byte、KB、MB、GB掌握“存儲程序、程序控制”的馮·諾依曼計算機的基本思想區別操作碼和地址碼(操作數)、指令字和數據字、指令流和數據流理解指令周期(控制器工作周期):取指、譯碼、執行第1章教學要求-2掌握總線、處理器總線和系統總線的概念,熟悉數據總線、地址總線和控制總線的功能理解目的程序、匯編程序、編譯程序的作用,區別機器語言、匯編語言和高級語言(算法語言)掌握計算機系統的層次結構、軟件與硬件的邏輯等價性思想第2章教學要求-1掌握數據的定點格式,定點整數的表達范圍,有符號數和無符號數掌握浮點格式的表達,熟悉浮點數的規格化,掌握規格化單精度浮點數與實數的相互轉換理解真值和機器數,掌握定點整數的補碼、反碼、原碼和移碼表示法掌握BCD碼、ASCII碼的編碼規律區別漢字輸入編碼、機內碼、字模碼和漢字交換碼理解檢驗碼的作用,掌握奇偶校驗以及檢錯能力第2章教學要求-2理解補碼的加法運算和減法運算規律熟悉溢出的概念,理解上溢(正溢)和下溢(負溢)的概念以及符號位檢測方法理解浮點加減法的操作過程,了解其中對階、規格化、舍入處理的作用熟悉IEEE754標準第2章教學要求-3掌握數字信號的特點掌握邏輯與、或、非的邏輯關系,以及它們的邏輯表達式、真值表、邏輯符號、運算規則熟悉與非、或非、異或的邏輯規律、表達式和邏輯符號理解邏輯變量、邏輯電路(數字電路)、邏輯代數(布爾代數)的概念掌握邏輯代數的基本運算規則和運算規律(定律):交換律、結合律、分配律、反演定理熟悉用真值表、邏輯表達式、邏輯電路圖表達邏輯函數的方法,了解卡諾圖的作用理解簡單的邏輯化簡方法(最簡與或式)第2章教學要求-4理解門電路、正邏輯和負邏輯的概念,掌握三態門的特點、用途和電路符號區別組合邏輯電路和時序邏輯電路掌握編碼器、譯碼器、加法器、數據選擇器(多路開關)的作用熟悉觸發器的特點、基本RS觸發器的功能和邏輯符號理解同步時鐘、高電平有效、低電平有效的含義掌握D觸發器的功能和邏輯符號,熟悉電平觸發和邊沿觸發的區別了解數碼寄存器、移位寄存器、計數器、PLD的作用第3章教學要求-1熟悉存儲系統的分級(層次)結構,掌握存儲訪問的局部性原理理解存儲容量、存取時間、存取周期、存儲器帶寬的概念了解SRAM、DRAM的特點掌握SRAM存儲結構與芯片地址引腳和數據引腳的關系理解位擴展和字擴展的含義和作用,掌握芯片擴展與芯片容量的關系了解DRAM的行地址和列地址,掌握DRAM的刷新操作和方法了解ROM芯片的類型和各自特點第3章教學要求-2掌握Cache的功能和基本原理,掌握命中率、平均訪問時間和訪問效率的計算方法理解Cache的地址映射的作用,掌握全相聯、直接和組相聯映射的原理和特點,熟悉Cache中標記(標簽)的作用理解替換策略的作用,熟悉LRU、LFU和隨機法理解Cache的寫操作策略,熟悉直寫法(全寫法)和回寫法(寫回法)第4章教學要求了解指令、指令系統、指令格式、操作碼、地址碼、指令助記符的概念理解尋址方式的含義,區別指令尋址和數據尋址掌握指令的順序尋址和跳躍尋址掌握數據的隱含尋址、立即尋址、寄存器尋址、直接尋址、寄存器間接尋址、寄存器相對(基址)尋址掌握CISC和RISC的含義,掌握RISC的主要特點第5章教學要求-1熟悉CPU的基本模型和主要寄存器的作用理解指令周期、CPU周期(機器周期、總線周期)和時鐘周期(T周期)的概念和區別了解CLA、ADD、STA和JMP指令在CPU基本模型的執行過程理解微程序控制器和硬布線控制器的實現特點,了解微命令、微操作、微指令和微程序的概念熟悉并行性的概念和提高并行性的技術途徑掌握指令流水線的思想,理解流水CPU的時空圖掌握資源相關、數據相關和控制相關的概念第5章教學要求-2掌握CPU性能公式以及CPI、MIPS的計算方法第6章教學要求理解內部總線、系統總線和I/O總線(芯片總線、內總線和外總線)的分類理解總線的4個方面特性,掌握總線帶寬以及計算熟悉單總線、雙總線和三總線結構理解串行傳送和并行傳送的概念理解總線仲裁的作用,了解集中仲裁和分布仲裁思想掌握總線同步定時和異步定時(時序)的特點了解各種總線數據傳送模式了解PCI總線、ISA總線、SCSI總線和IEEE1394總線的特點第7章教學要求掌握像素、點距、分辨率、灰度級(彩色深度)、刷新、掃描的概念,以及對顯示效果的影響掌握磁面、磁道、磁柱、扇區的概念,以及磁盤信息的分布特點第8章教學要求-1理解I/O接口的作用,熟悉I/O端口的編址方式掌握各種外設管理方式的概念和特點熟悉查詢傳送方式的過程理解中斷源、內部中斷(異常)和外部中斷的概念區別可屏蔽中斷和非屏蔽中斷掌握可屏蔽中斷傳送方式的過程及其相關概念熟悉單級中斷、多級中斷的概念理解向量地址、中斷優先權、中斷嵌套的含義理解中斷控制器的作用了解Pentium處理器的中斷機制第8章教學要求-2理解DMA傳送方式的特點,掌握DMA傳送的工作過程了解CPU暫停、周期挪用、交替訪問的區別了解通道的組成結構和類型期末考試考試形式閉卷筆試,120分鐘考試題型填空題:2分×20=40分單項選擇題:2分×10=20分簡答題(基本概念、基本原理等):5分×4=20分計算題:5分×2=10分應用題:10分×1=10分成績計算 考試成績×85%+平時成績×15%電子計算機的設計思想存儲程序,程序控制“存儲程序”,是把指令以代碼的形式事先輸入到計算機的主存儲器中,即用記憶數據的同一裝置存儲執行運算的命令,這些指令按一定的規則組成程序“程序控制”,是當計算機啟動后,程序就會控制計算機按規定的順序逐條執行指令,自動完成預定的信息處理任務馮·諾依曼型計算機的設計思想存儲程序并按地址順序執行馮·諾依曼計算機的基本思想采用二進制形式表示數據和指令。指令由操作碼和地址碼組成;將程序和數據存放在存儲器中,使計算機在工作時從存儲器取出指令加以執行,自動完成計算任務。這就是“存儲程序”和“程序控制”(簡稱存儲程序控制)的概念;指令的執行是順序的,即一般按照指令在存儲器中存放的順序執行,程序分支由轉移指令實現。計算機由存儲器、運算器、控制器、輸入和輸出設備五大基本部件組成,規定了5部分的基本功能軟件與硬件的邏輯等價性隨著大規模集成電路技術的發展和軟件硬化的趨勢,計算機系統軟、硬件界限已經變得模糊了任何操作可以由軟件來實現,也可以由硬件來實現;任何指令的執行可以由硬件完成,也可以由軟件來完成對于某一功能采用硬件方案還是軟件方案,取決于器件價格、速度、可靠性、存儲容量、變更周期等軟件的特點

易于實現各種邏輯和運算功能,但是常受到速度指標和軟件容量的制約;硬件的特點

可以高速實現邏輯和運算功能,但是難以實現復雜功能或計算,受到控制復雜性指標的制約。系統結構、組成與實現計算機系統結構(Computerarchitecture)計算機系統的軟件與硬件的界面--指令系統程序員所看到的計算機屬性--外特性計算機組成(Computerorganization)=組織計算機系統結構的邏輯實現計算機實現(Computerimplementation)計算機組成的物理實現計算機系統的結構,組成,實現是三個完全不同的概念,相互間有著十分密切的依賴關系和相互的影響。廣義的計算機系統結構即包括經典的指令集結構,也包括計算機組成和實現技術的研究真值和機器數真值:現實中真實的數值機器數:計算機中用0和1數碼組合表達的數值定點數:固定小數點的位置表達數值的機器數定點整數:將小數點固定在機器數的最右側表達的整數定點小數:將小數點固定在機器數的最左側表達的小數浮點數:小數點浮動表達的實數無符號數:只表達0和正整數的定點整數有符號數:表達負整數、0和正整數的定點整數符號位需要占用一個位,常用機器數的最高位0表示正數、1表示負數具有原碼、反碼、補碼、移碼定點數的表示方法定點表示:約定機器中所有數據的小數點位置是固定不變的。通常將數據表示成純小數或純整數定點數x=x0x1x2…xn

在定點機中表示如下(x0表示符號位,0代表正號,1代表負號)定點整數的小數點位置定點小數的小數點位置定點整數的表示范圍純整數的表示范圍為(x1x2…xn各位均為0時最??;各位均為1時最大,x0為符號位)

0≤|x|≤2n

-1例如:n=8,最大值編碼:11111111

表示:11111111=100000000-1

=28-1目前計算機中多采用定點純整數表示,因此將定點數表示的運算簡稱為整數運算定點小數的表示范圍純小數的表示范圍為(x1x2…xn各位均為0時最?。桓魑痪鶠?時最大,x0為符號位)

0≤|x|≤1-2-n例如,n=8,最大值編碼:0.11111111

表示:0.11111111=1.0-0.00000001

=1-2-8浮點數的表示方法把一個數的有效數字和數的范圍在計算機的一個存儲單元中分別予以表示數的小數點位置隨比例因子的不同而在一定范圍內自由浮動

一個十進制數N可以寫成

N=10e×M一個R進制數N可以寫成

N=Re×MM

尾數e

指數R 基數數的科學表達法階碼和尾數用定點小數表示,給出有效數字的位數決定了浮點數的表示精度表達指數部分用整數形式表示,指明小數點在數據中的位置決定浮點數的表示范圍早期計算機表達法32位單精度浮點數E:含階符的階碼,8位階碼采用移碼方式來表示正負指數S:1位符號位0表示正數1表示負數M:尾數,23位小數表示,小數點放在尾數域最前面IEEE754標準64位雙精度浮點數E:含階符的階碼,11位S:1位符號位M:尾數,52位小數IEEE754標準浮點數的規格化例:156.78 =15.678×101 =

1.5678×102 =0.15678×103=RE×M對于二進制數1011.1101 =0.10111101×2+4 =10.111101×2+2 =1.0111101×2+3(規格化表示法)

=1.0111101×2+11(規格化表示法)

=RE×M那么,計算機中究竟采用哪種數據形式?多種數據形式二進制數尾數最高有效位為1,隱藏,并且隱藏在小數點的左邊(即:1≤M<2)32位單精度浮點數規格化表示 x=(-1)s×(1.M)×2E-127 e=E-127(E=e+127)64位雙精度浮點數規格化表示 x=(-1)s×(1.M)×2E-1023 e=E-1023(E=e+1023)指數真值e用偏移碼形式表示為階碼E規格化表示原則IEEE754標準④

X=(-1)s×1.M×2e

=+(1.011011)×23

=+1011.011=(11.375)10②指數e=階碼-127=10000010-01111111

=00000011=(3)10③包括隱藏位1的尾數1.M=1.011011例1:浮點機器數(41360000)16,求真值①十六進制數展開成二進制數01000001001101100000000000000000S階碼E(8位)尾數M(23位)例2:真值20.59375,求32位單精度浮點數①分別將整數和分數部分轉換成二進制數

20.59375=10100.10011②移動小數點,使其在第1、2位之間10100.10011=1.010010011×24e=4S=0E=4+127=131=10000011M=010010011③得到32位浮點數的二進制存儲格式為:0

1000001101001001100000000000000=(41A4C000)16E=1(00000001)~254(11111110)e=-126~+127表達的數據范圍(絕對值):最小值:e=-126,M=0(1.M=1) 十進制表達:2-126≈1.18×10-38最大值:e=127,M=11…1(23個1)

1.M=1.11…1

(23個1)

=2-2-23

十進制表達:(2-2-23)×2127

≈2×2127≈3.40×103832位單精度規格化浮點數IEEE754標準E=1~2046e=-1022~+1023表達的數據范圍(絕對值):最小值:e=-1022,M=0(1.M=1)十進制表達:2-1022≈2.23×10-308

最大值:e=1023,M=11…1(52個1)

1.M=1.11…1(52個1)=2-2-52

十進制表達:(2-2-52)×21023 ≈2×21023≈1.79×1030864位雙精度規格化浮點數IEEE754標準真值0的機器數(機器零)階碼E=0,尾數M=0正0:S=0,負0:S=1非規格化浮點數:階碼E=0,尾數M≠0規格化浮點數:階碼E=1~254(11111110)無窮大的機器數階碼E=全1(11111111),尾數M=0+∞:S=0,-∞:S=1NaN(notanumber,不是一個數)階碼E=全1(11111111),尾數M≠0用來通知異常情況IEEE754標準32位單精度浮點數數的機器碼表示正數的原碼、反碼、補碼等于真值,只有負數才分別有不同的表示方法采用補碼,減法運算可以用加法運算實現,節省硬件,目前機器中廣泛采用補碼表示法有些機器用原碼進行存儲和傳送,運算時改用補碼有些機器做加減法時用補碼,做乘除法時用原碼移碼表示法主要用于表示浮點數的階碼,可以直接比較大小。表示范圍和補碼相同,只有最高位相反表2.1ASCII字符編碼表000000010010001101000101011001110000NULDELSP0@P`p0001SOHDC1!1AQaq0010STXDC2"2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB'7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;K[k{1100FFFS,<L\1|1101CRGS-=M]m}1110SORS.>N^n~1111SIUS/?O_oDEL0-3位4-7位漢字的表示方法漢字的輸入編碼、交換碼、漢字內碼、字模碼是計算機中用于輸入、內部處理、交換、輸出四種不同用途的編碼,不要混為一談

顯示輸出打印輸出機內碼向字形碼轉換機內碼輸入碼向機內碼轉換字符代碼化(輸入)校驗碼校驗碼:能夠發現甚至糾正信息傳輸或存儲過程中出現錯誤的編碼檢錯碼:僅能檢測出錯誤的編碼糾錯碼:能夠發現并糾正錯誤的編碼最簡單且應用廣泛的檢錯碼:奇偶校驗碼奇校驗:使包括校驗位在內的數據中為“1”的個數恒為奇數偶校驗:使包括校驗位在內的數據中為“1”的個數恒為偶數(包括0)只能檢測出奇數個位出錯的情況,不能糾錯計算機的數據表示整數編碼定點數,無符號數,有符號數(補碼),BCD實數編碼浮點數,單精度,雙精度,規格化字符編碼:ASCII碼漢字編碼輸入碼,機內碼,交換碼,字形碼國際字符編碼:Unicode編碼:用文字、符號或者數碼來表示某種信息(數值、語言、操作指令、狀態)的過程2.2.3

溢出概念與檢驗方法兩個正數相加,結果為負(即:大于機器所能表示的最大正數),稱為上溢。兩個負數相加,結果為正(即:小于機器所能表示的最小負數),稱為下溢。運算出現溢出,結果就是錯誤的進一步結論:

當最高有效位產生進位而符號位無進位時,產生上溢;當最高有效位無進位而符號位有進位時,產生下溢。產生“溢出”的原因:分析可知,當最高有效數值位的運算進位與符號位的運算進位不一致時,將產生運算“溢出”“溢出”檢測方法:

為了判斷“溢出”是否發生,可采用兩種檢測的方法。第一種方法:采用雙符號位法,稱為“變形補碼”或“模4補碼”,可使模2補碼所能表示的數的范圍擴大一倍第二種溢出檢測方法:采用“單符號位法”。當最高有效位產生進位而符號位無進位時,產生上溢;當最高有效位無進位而符號位有進位時,產生下溢。故:溢出邏輯表達式為:

V=Cf⊕Co其中:

Cf為符號位產生的進位,Co為最高有效位產生的進位。(顯然:此邏輯關系可用異或門方便地實現)

在定點機中,當運算結果發生溢出時,機器通過邏輯電路自動檢查出溢出故障,并進行中斷處理。

2.2.4基本的二進制加法/減法器在計算機中完成兩個二進制數相加的基本加法器有半加器和全加器。半加器在完成兩數相加時,不需要考慮低位進位。全加器用來完成兩個二進制數相加,并且同時考慮低位的進位,即全加器完成三個一位數相加的功能。設:

Ai表示被加數的第i位

Bi表示加數的第i位

Ci為第i-1位向第i位產生的進位

Ci+1為第i位向第i+1位產生的進位

Si為第i位產生的和則全加器以Ai、Bi、Ci為輸入,以Ci+1、Si為輸出構成一個邏輯圖。2.2.4基本的二進制加法/減法器全加器邏輯圖CiAiBiSiCi+1FACiAiBiSiCi+1輸出輸入0110100001101000100010100010111010111111表2-2全加器真值表2.2.4基本的二進制加法/減法器全加器的表達式為:

Si=AiBiCi

Ci+1=AiBi+BiCi+AiCi一位全加器內部邏輯圖

BCSiCi+1ABCAAiBiCi加法運算及其加速方法由4片4位先行加法器構成的16位快速進位加法器邏輯示意圖GI+3PI+3CCI+3C2C0C0C1C3PI+0GI+0CI+0PI+1GI+1CI+1G15G12G11G8G7G4G3G0P15P12P11P8P7P4P3P0中組(包括四小組)加法器…………C6C5C7C10C9PI+2CI+2GI+2C11C14C13C15一級先行進位第3組一級先行進位第2組一級先行進位第1組一級先行進位第0組IEEE754標準的舍入處理就近舍入就是通常所說的“四舍五入”多余位:10010→向最低有效位進位多余位:01111→截尾多余位:10000→最低有效位為0:截尾;最低有效位為1,進位朝0舍入朝數軸原點方向舍入(截尾)朝+∞舍入對正數,只要多余位不全為0,則向最低有效位進1;對負數,則是截尾朝-∞舍入對正數,截尾;對負數,只要多余位不全為0,則向最低有效位進13.1.1存儲器分類半導體存儲器:用半導體器件組成的存儲器磁表面存儲器:用磁性材料做成的存儲器★按存儲介質分

★按存儲方式分

隨機存儲器:任何存儲單元的內容都能被隨機存取,且存取時間和存儲單元的物理位置無關順序存儲器:只能按某種順序來存取,存取時間和存儲單元的物理位置有關★按存儲器的讀寫功能分:ROM,RAM

★按信息的可保存性分:非永久記憶,永久記憶

★按在計算機系統中的作用分:

主存、輔存、高速緩存、控制存儲器3.1.3主存儲器的技術指標存儲容量主存存儲容量:以字節B(Byte)為基本單位半導體存儲器芯片:以位b(Bit)為基本單位存儲容量以210=1024規律表達KB,MB,GB和TB廠商常以103=1000規律表達KB,MB,GB和TB存取時間(訪問時間)發出讀/寫命令到數據傳輸操作完成所經歷的時間存取周期兩次存儲器訪問所允許的最小時間間隔存取周期大于等于存取時間存儲器帶寬(數據傳輸速率)單位時間里存儲器所存取的信息量

CPU對存儲器進行讀/寫操作,首先由地址總線給出地址信號,然后要對存儲器發出讀操作或寫操作的控制信號,最后在數據總線上進行信息交流。所以,存儲器與CPU之間,要完成:①地址線的連接;②數據線的連接;③控制線的連接。

存儲器芯片的容量是有限的,為了滿足實際存儲器的容量要求,需要對存儲器進行擴展。存儲器與CPU連接

8K×1位擴展組成的8K×8RAM

8

7

6

5

4

3

2

8k×1中央處理器

CPUA0A12D0::D7…位擴展法:只加長每個存儲單元的字長,而不增加存儲單元的數量演示

A15A14CPUA0A13

WED0~D72:4譯碼器

CE16K×8WE

CE16K×8WE

CE16K×8WE

CE16K×8WE16K×8字擴展法組成64K×8RAM…11100100字擴展法:僅增加存儲單元的數量,而各單元的位數不變演示字位同時擴展:2114存儲芯片1K×4擴展成2K×8存儲器

D4--D7D3--D0A0A1…A9WECPUA10

2114CSR/W

2114CSR/W

2114CSR/W

2114CSR/W字位同時擴展法:既增加存儲單元的數量,也加長各單元的位數存儲器系統的存儲容量:M×N位使用芯片的存儲容量:L×K位(L≤M,K≤N)需要存儲器芯片個數:(M×N)/(L×K)[例]:利用2K×4位的存儲芯片,組成16K×8位的存儲器,共需要多少塊芯片?

[解]:(16K×8)/(2K×4)=8×2=16即:共需16塊芯片。(既需要位擴展,又需要字擴展)[又例]:利用1K×4位的存儲芯片,組成2K×8位的存儲器,共需要芯片數:(2K×8)/(1K×4)=2×2=4字、位同時擴展法:刷新周期從上次對整個存儲器刷新結束時刻,到本次對整個存儲器完成全部刷新一遍為止的時間間隔一般為2ms,4ms或8ms刷新方式集中式分散式異步式刷新方式有一個4K*16的存儲器,用1K*4位的DRAM芯片(內部結構為64*16,引腳同SRAM)構成,設讀寫周期為0.2us,問:如采用集中刷新方式,存儲器刷新一遍最少用多少讀寫周期?死時間率是多少(刷新周期默認為2ms)?答:假定T為讀寫周期,如4組同時進行刷新,則所需刷新時間為64T。因為T單位為0.1us,2ms=2000us,則死時間率=64T/2000*100%=0.32%。如4組分別進行刷新,則所需刷新時間為4*64T。因為T單位為0.1us,2ms=2000us,則死時間率=4*64T/2000*100%=1.28%。3.4高速存儲器3.4.1

雙端口存儲器同一個存儲器具有兩組相互獨立的讀寫控制線路,提供了兩個相互獨立的端口,都可以對存儲器中任何位置上的數據進行獨立的存取操作3.4.2

多模塊交叉存儲器每個模塊各自以等同的方式與CPU傳送信息。連續地址分布在相鄰的模塊,對連續字的成塊傳送可以重疊進行實現流水線并行存取3.4.3

相聯存儲器按內容尋址的存儲器把存儲單元所存內容的某一部分作為檢索項,去檢索該存儲器,并對存儲器中與該檢索項符合的存儲單元內容進行讀出或寫入多體交叉存儲器方案一:順序方式

(a)主存地址被分成高n位和低m位,高位(n)表示模塊號,低位(m位)表示塊內地址;

(b)在一個模塊內,程序是從低位地址連續存放;

(c)對連續單元存取,一般僅對一個模塊操作

(d)特點:多模塊并行工作易擴充容量故障局部性。多體交叉存儲器數據總線

模塊i

模塊2n-1

模塊0模塊號塊內地址

MAR

m位

n位并行多模塊存儲器結構框圖............多體交叉存儲器方案二:交叉方式

(a)主存地址被分成高n位和低m位,低位(m位)表示模塊號,高位(n)表示塊內地址;

(b)各模塊間采用多模塊交叉編址;

(c)對連續單元存取,則多個模塊并行工作

(d)特點:多模塊并行工作,速度快不易擴展故障全局性。多體交叉存儲器

模塊i

模塊2n-1

模塊0塊內行地址模塊號

MAR

n位

m位多模塊交叉存取存儲器結構框圖............數據總線3.5

Cache存儲器Cache:asafeplaceforhidingorstoringthings.在相對容量較大而速度較慢的主存與高速處理器之間設置的少量但快速的存儲器主要目的:提高存儲器速度為追求高速,包括管理在內的全部功能由硬件實現3.5.1Cache基本原理CPU與cache之間的數據交換以字(字節)為單位Cache與主存間的數據傳送以數據塊為單位一個塊(Block)由若干字組成Cache的讀操作高速命中(Hit):微處理器讀取主存的內容已包含在Cache中,可以直接讀取Cache,不用訪問主存從CPU接收地址RAY(命中hit)N(失效miss)開始Cache中含RA?從Cache讀RA的字送CPU從主存讀含RA的塊向CPU傳送RA的字向Cache傳送含RA的主存塊結束高速失效(Miss)、缺失、未命中:微處理器讀取主存的內容不在Cache中,需要訪問主存讀取一個數據塊

Cache的工作原理1、Cache以塊為單位進行操作2、當CPU發出訪內操作請求后,首先由Cache控制器判斷當前請求的字是否在Cache中,若在,叫命中,否則,不命中3、

若命中:若是“讀”請求,則直接對Cache讀,與主存無關若是“寫”請求:Cache單元與主存單元同時寫(Writethrough寫)只更新Cache單元并加標記,移出時修改主存(寫回Copyback)只寫入主存,并在Cache中加標記,下次從MM讀出,保證正確。4、未命中時:若是“讀”請求,則從主存讀出所需字送CPU,且把含該字的一塊送Cache,稱“裝入通過”,若Cache已滿,置換算法;若是“寫”請求,直接寫入主存。Cache的命中率命中率(HitRate):高速命中的概率h=NcNc+Nmcache/主存系統的平均訪問時間ta:

ta=htc+(1-h)tm tc=命中時的cache訪問時間

tm=未命中時的主存訪問時間h=命中率Nc=cache完成存取的總次數Nm=主存完成存取的總次數設r=tm/tc表示主存慢于cache的倍率tce=ta=tchtc+

(1-h)tm1h+

(1-h)r==1r+

(1-r)hCache的訪問效率e【例5】CPU執行一段程序時,cache完成存取的次數為1900次,主存完成存取的次數為100次,已知cache存取周期為50ns,主存存取周期為250ns,求cache/主存系統的效率和平均訪問時間?!窘狻縣=Nc/(Nc+Nm)=1900/(1900+100)=0.95r=tm/tc=250ns/50ns=5e=1/(r+(1-r)h)=1/(5+(1-5)×0.95)=83.3%ta=tc/e=50ns/0.833=60ns

或者,ta=h·tc+(1-h)·tm=60nsCache結構Cache的數據塊稱為行(線Line,槽Slot)用Li表示,其中i=0,1,…,m-1,共有m=2r行主存的數據塊稱為塊(Block)用Bj表示,其中j=0,1,…,n-1,共有n=2s塊行與塊是等長的,包含k=2w個主存字字是CPU每次訪問存儲器時可存取的最小單位Cache由數據存儲器和標簽存儲器組成數據存儲器:高速緩存主存數據標簽存儲器:保存數據所在主存的地址信息3.5.2主存與Cache的地址映射Cache通過地址映射(mapping)的方法確定主存塊與Cache行之間的對應關系,確定一個主存塊應該存放到哪個Cache行中全相聯映射(fullyassociativemapping)可以將一個主存塊存儲到任意一個Cache行直接映射(directmapping)將一個主存塊存儲到唯一的一個Cache行組相聯映射(setassociativemapping)可以將一個主存塊存儲到唯一的一個Cache組中任意一個行直接映射、2/4/8路組相聯映射使用較多全相聯映射優點:命中率較高,Cache的存儲空間利用率高缺點:線路復雜,成本高,速度低直接映射優點:硬件簡單,容易實現缺點:命中率低,Cache的存儲空間利用率低組相聯映射組間采用直接映射,組內為全相聯硬件較簡單,速度較快,命中率較高3.5.3替換策略替換問題新主存塊要進入Cache,決定替換哪個原主存塊直接映射,只能替換唯一的一個Cache行全相聯和組相聯,需要選擇替換策略(算法)1.最不常用(LFU:least-frequentlyused)

替換使用次數最少的塊2.最近最少使用法(LRU:least-recentlyused)

本指替換近期最少使用的塊,實際實現的是替換最久沒有被使用的塊3.隨機法(random)

隨意選擇被替換的塊,不依賴以前的使用情況3.6

虛擬存儲器虛擬存儲器: 在主存-外存層次間 借助于磁盤輔助存儲器實現 由系統軟件和輔助硬件管理 以透明方式提供給用戶 一個比實際主存空間大得多的程序地址空間作用:擴大主存容量,提高輔存訪問速度,有效管理存儲系統虛擬:利用其他部件實現的本來不存在的事物或屬性透明:本來存在的事物或屬性,從某種角度看似乎不存在4.1指令系統的發展與性能要求指令系統決定了計算機的基本功能,指令系統的設計是計算機系統設計的一個核心問題。它不僅與計算機的硬件設計緊密相關,而且直接影響到系統軟件設計的難易程度。完善的計算機的指令系統應具備:1、完備性:一臺計算機中最基本的、必不可少的指令構成了指令系統的完備性。2、有效性:指利用該指令系統所提供的指令編制的程序能夠產生高效率。高效率主要表現在空間和時間方面,即占用存儲空間小、執行速度快。3、規整性:指令操作的對稱性和勻齊性,指令格式與數據格式的一致性。(1)對稱性:在指令系統中,所有寄存器和存儲單元都可同等對待,這對簡化程序設計,提高程序的可讀性非常有用。(2)勻齊性:是指一種操作性質的指令可以支持各種數據類型。(3)指令的格式與數據格式的一致性:指令長度與數據長度有一定關系,以方便存取和處理。4、兼容性:兼容性一般是指計算機的體系結構設計基本相同,機器之間具有相同的基本結構、數據表示和共同的基本指令集合。[例1]分析指令格式的特點單字長二地址指令操作碼字段OP長度為7位,可指定128條指令源寄存器和目標寄存器都是通用寄存器(可分別指定16個)。兩個操作數均在寄存器中,所以是寄存器-寄存器型指令這種指令結構常用于算術邏輯運算類指令1597430OP

--------源寄存器目標寄存器[例2]分析指令格式的特點雙字長二地址指令,用于訪問存儲器操作碼字段OP為6位,可以指定64種操作一個操作數在源寄存器(共16個),另一個操作數在存儲器中(由變址寄存器和位移量決定),所以是寄存器-存儲器型指令1597430OP

--------源寄存器變址寄存器位移量(16位)

常用數據尋址方式隱含尋址:在指令中不明顯地給出操作數的地址寄存器尋址:指令中給出的操作數地址不是內存的地址單元號,而是通用寄存器的編號。即操作數不放在內存中,而是放在通用寄存器中立即尋址:指令的地址字段指出的不是操作數的地址,而直接是操作數本身直接尋址:在指令格式的地址字段中,直接給出操作數在內存的地址寄存器間接尋址:指令中指定的寄存器中的內容不是操作數,而是操作數的地址基址(寄存器相對)尋址:基址寄存器的內容加上指令中給定的形式地址(偏移量),形成操作數的有效地址尋址方式總結立即(數)尋址存儲器直接尋址間接尋址變址尋址基址尋址基址加變址尋址在指令中在寄存器中在主存中在I/O端口中直接尋址寄存器間接尋址寄存器尋址寄存器間接尋址存儲器間接尋址4.5.1指令的分類數據傳送指令實現主存與寄存器之間、寄存器與寄存器之間或立即數到寄存器和主存的數據傳送算術運算指令實現加、減、乘、除等運算的指令邏輯運算指令實現邏輯與、或、非、異或,以及移位等操作的指令程序控制轉移指令無條件轉移指令、有條件轉移指令、子程序調用和返回指令等輸入輸出指令CPU與外設之間傳送數據的指令5.1.1CPU的功能

★指令控制

保證機器按程序規定的順序取出執行★操作控制

CPU產生每條指令所對應的操作信號,并把各種操作信號送往相應的部件,從而控制這些部件按指令的要求進行動作★時間控制

對各種操作的實施時間進行定時★數據加工

對數據進行算術運算和邏輯運算處理5.1.2CPU的基本組成控制器完成對整個計算機系統操作的協調與指揮。

(1)控制機器從內存中取出一條指令,并指出下一條指令在內存中的位置;

(2)對指令進行譯碼,并產生相應的操作控制信號,送往相應的部件,啟動規定的動作;

(3)指揮并控制CPU、內存與輸入/輸出(I/O)設備之間數據流動的方向運算器是數據加工處理部件,所進行的全部操作由控制器發出的控制信號指揮

(1)執行所有的算術運算;

(2)執行所有的邏輯運算,并進行邏輯測試算術邏輯單元狀態條件寄存器程序計數器PC地址寄存器AR地址總線ABUS數據總線DBUS累加器AC存儲器

I/OCPUALU指令寄存器IR指令譯碼器操作控制器時序產生器時鐘狀態反饋取指控制執行控制ccccc緩沖寄存器DRCPU的基本模型5.1.3

CPU中的主要寄存器

數據緩沖寄存器(DR)暫時存放由內存讀出或寫入的指令或數據字指令寄存器(IR)保存當前正在執行的一條指令程序計數器(PC)確定下一條指令的地址地址寄存器(AR)保存當前CPU所訪問的內存單元的地址累加寄存器(AC)最常使用的一個通用寄存器狀態條件寄存器(PSW)保存由算術和邏輯指令的結果建立的各種條件碼5.2

指令周期—讀取指令指令地址送入主存地址寄存器讀主存,讀出內容送入指定的寄存器—分析指令—按指令規定內容執行指令不同指令的操作步驟數和具體操作內容差異很大—檢查有無中斷請求若無,則轉入下一條指令的執行過程形成下一條指令地址指令的執行過程取指令執行指令指令的執行這里可以出現綜合應用題,結合指令尋址方式與微指令的考點考查一條指令執行的各個步驟。5.3.1時序信號的作用和體制

計算機的協調動作需要時間標志,而且需要采用多級時序體制。而時間標志則用時序信號來體現。

硬布線控制器中,時序信號往往采用主狀態周期-節拍電位-節拍脈沖三級體制。主狀態周期(指令周期):包含若干個節拍周期,可以用一個觸發器的狀態持續時間來表示節拍電位(機器周期):表示一個CPU周期的時間,包含若干個節拍脈沖節拍脈沖(時鐘周期):表示較小的時間單位

微程序控制器中,時序信號則一般采用節拍電位-節拍脈沖二級體制。節拍脈沖節拍電位1主狀態周期節拍電位2主狀態周期-節拍電位-節拍脈沖數據準備好后,以電位的方式送觸發器控制信號來到后,用一個脈沖信號把數據裝入觸發器數據:電位控制信號:脈沖節拍電位-節拍脈沖5.3.3控制方式控制不同操作序列時序信號的方法1.同步控制方式已定的指令在執行時所需的CPU周期(機器周期)數和時鐘周期數都固定不變。例如采用完全統一的機器周期執行各種不同的指令2.異步控制方式

控制器發出某一操作控制信號后,等待執行部件完成操作后發“回答”信號,再開始新的操作3.聯合控制方式同步控制和異步控制相結合的方式5.8.1并行處理技術并行性(Parallelism): 在同一時刻或是同一時間間隔內完成兩種或兩種以上性質相同或不相同的工作同時性(Simultaneity):同一時刻發生的并行性并發性(Concurrency):同一個時間間隔內發生的并行性并行性的等級指令內部并行:微操作之間指令級并行(ILP:InstructionLevelParallel)線程級并行(TLP:ThreadLevelParallel)程序級并行系統級并行:分布式系統、多機系統、機群系統提高并行性的技術途徑時間重疊(Time-interleaving)=時間并行

多個過程在時間上相互錯開,輪流重疊地使用同一套硬件設備的各個部分資源重復(Resource-replication)=空間并行 通過重復設置資源(尤其是硬件資源),提高性能資源共享(Resource-sharing)

使多個任務按一定時間順序輪流使用同一套硬件設備單機系統中并行性的發展→9.1.3指令流水線,部件冗余,分時系統多機系統中并行性的發展→9.1.4多機系統耦合度:松散耦合、緊密耦合流水線的特點流水線實際上是把一個功能部件分解成多個獨立的子功能部件(一個任務也就分成了幾個子任務,每個子任務由一個子功能部件完成),并依靠多個子功能部件并行工作來縮短所有任務的執行時間流水線有助于提高整個程序(所有任務)的吞吐率,但并沒有減少每個指令(任務)的執行時間流水線各個功能段所需時間應盡量相等。否則,時間長的功能段將成為流水線的“瓶頸”,會造成流水線的“阻塞”(Stall)流水線開始需要“通過時間”(Fill)和最后需要“排空時間”(Drain)。流水線只有處理連續不斷的任務才能發揮其效率5.8.3流水線中的主要問題流水線中存在一些相關(沖突、冒險Hazard,相關、依賴Dependence,競爭Competition)的情況,它使得下一條指令無法在設計的時鐘周期內執行。這些相關將降低流水線性能主要有三種類型的相關(沖突)結構相關(資源沖突):當指令重疊執行過程中,硬件資源滿足不了指令重疊執行的要求數據相關(數據沖突):在同時執行的多條指令中,一條指令依賴前一條指令的執行結果(數據)卻無法得到控制相關(控制沖突):流水線遇到分支指令或其他改變PC值的指令5.9RISCCPURISC的三個要素

(1)一個有限的簡單的指令集

(2)CPU配備大量的通用寄存器

(3)強調對指令流水線的優化5.11CPU性能評價CPU性能與3個要素有關時鐘頻率f每條指令需要的時鐘周期數CPI指令條數IN時鐘周期長度t=1/fCPU時鐘周期數Nc=CPI×IN5.11.2性能評價標準最初:執行單項操作的時間,例如:加法操作時間改進為:平均指令執行時間=進一步成為容易理解的:每秒百萬條指令(MillionInstructionsPerSecond)同時出現:

MFLOPS(每秒百萬浮點操作)最終形成: 測試程序(Benchmarks)CPU時間與CPU性能衡量性能最可靠的標準:真實程序的執行時間真實程序的執行時間 =CPU時間+I/O操作等時間CPU時間 =用戶CPU時間+系統CPU時間CPU性能對應用戶CPU時間CPU時間還可細分為用戶CPU時間及系統CPU時間,前者表示用戶程序所花費的CPU時間,后者表示用戶程序運行期間操作系統花費的CPU時間?!怖}8〕一臺40MHz處理器執行標準測試程序求:CPI,MIPS和執行時間T指令類型指令條數時鐘周期數整數運算數據傳送浮點運算控制傳送45000320001500080001222例題8解答CPI=(45000×1+32000×2+15000×2+8000×2)÷(45000+32000+15000+8000)

=1.55(時鐘周期/指令)MIPS=f/(CPI×106)=40×106/(1.55×106)

=25.81(百萬條指令/秒)T=(45000×1+32000×2+15000×2+8000×2)÷(40×106) =3.87×10-3(秒)6.1

總線的概念和結構形態

總線是構成計算機系統的互連機構,是多個系統功能部件之間進行數據傳送的公共通路單處理器系統的總線,大致分為三類:內部總線:CPU內部連接各寄存器及運算部件之間的總線系統總線:CPU同計算機系統的其他高速功能部件,如存儲器、通道等互相連接的總線I/O總線:中低速I/O設備間互相連接的總線總線特性物理特性:物理連接方式,包括總線的根數、排列方式,總線的插頭、插座的形狀等功能特性:描述總線中每一根線的功能電氣特性:定義每一根線上信號的傳遞方向及有效電平范圍。送入CPU的信號叫輸入信號(IN),從CPU發出的信號叫輸出信號(OUT)時間特性:定義了每根線在什么時間有效,即總線上各信號有效的時序關系為了方便各個功能部件的連接,廣泛應用的總線都實現了標準化總線帶寬總線帶寬=總線傳輸速率=吞吐率單位時間傳輸的數據量每秒兆字節(MB/S)或每秒位(bps)總線帶寬=傳輸的數據量÷需要的時間舉例5MHz的8086微處理器16÷(4×0.2×10-6)bps=20×106bps=2.5MB/S66MHz的Pentium,基本非流水線總線周期64÷2×66×106bps=264MB/S66MHz的Pentium,2-1-1-1猝發讀周期32÷5×66×106B/S=422.4MB/S【例1】(1)某總線在一個總線周期中并行傳送4個字節的數據,假設一個總線周期等于一個總線時鐘周期,總線時鐘頻率為33MHz,則總線帶寬是多少?(2)如果一個總線周期中并行傳送64位數據,總線時鐘頻率升為66MHz,則總線帶寬是多少?

解:(1)設總線帶寬用Dr表示,總線時鐘周期用T=1/f表示,一個總線周期傳送的數據量用D表示,根據定義可得:Dr=D/T=D×1/T=D×f=4B×33×1000000/s=132MB/s(2)64位=8BDr=D×f=8B×66×1000000/s=528MB/s

此處:1MB=106B1.單總線結構在單處理器的計算機中,使用一條單一的系統總線來連接CPU、主存和I/O設備,叫做單總線結構。要求連接到總線上的邏輯部件必須高速運行,以便在某些設備需要使用總線時能迅速獲得總線控制權;當不再使用總線時,能迅速放棄總線控制權。CPU主存設備接口設備接口單總線結構系統總線2.雙總線結構

在CPU和主存之間專門設置了一組高速的存儲總線,使CPU可通過專用總線與存儲器交換信息,減輕了系統總線的負擔,主存仍可通過系統總線與外設之間實現DMA操作,而不必經過CPUCPU主存設備適配器設備適配器雙總線結構存儲總線系統總線3.三總線結構

CPU主存設備適配器設備適配器IOPI/O總線三總線結構系統總線存儲總線6.2

總線接口

1.串行傳送只有一條傳輸線,每次一位,按順序來傳送表示一個數碼的所有二進制位(bit)2.并行傳送每個數據位都需要單獨一條傳輸線。二進制數“0”或“1”在不同的線上同時進行傳送演示演示串行通信串行通信:將數據分解成二進制位用一條信號線,一位一位順序傳送的方式串行通信的優勢:用于通信的線路少,因而在遠距離通信時可以極大地降低成本通信協議(通信規程):收發雙方共同遵守 解決傳送速率、信息格式、位同步、字符同步、數據校驗等問題串行通信適合于遠距離數據傳送,也常用于速度要求不高的近距離數據傳送PC系列機上有兩個串行異步通信接口、鍵盤、鼠標器與主機間采用串行數據傳送通信方式串行異步通信:以字符為單位進行傳輸串行同步通信:以一個數據塊(幀)為傳輸單位,每個數據塊附加1個或2個同步字符,最后以校驗字符結束傳輸制式全雙工:雙根傳輸線,能夠同時發送和接收半雙工:單根傳輸線,不能同時發送和接收單工:單根傳輸線只用作發送或只用作接收調制解調器Modem:通信線路信號與計算機數字信號相互轉換的設備演示數據傳輸速率數據傳輸速率=比特率(BitRate)每秒傳輸的二進制位數bps字符中每個二進制位持續的時間長度都一樣,為數據傳輸速率的倒數進行二進制數碼傳輸,每位時間長度相等: 比特率=波特率(BaudRate)過去,限制在50bps到9600bps之間現在,可以達到115200bps或更高6.3.1總線的仲裁主設備(Master):控制總線完成數據傳輸從設備(Slave):被動實現數據交換總線仲裁:決定當前控制總線的主設備集中仲裁:中央仲裁器負責分布仲裁:比較各個主設備仲裁號決定某一時刻,只能有一個主設備控制總線,其它設備此時可以作為從設備某一時刻,只能有一個設備向總線發送數據,但可以有多個設備從總線接收數據像素:組成圖像的最小單位,顯示器上的發光點點距:相鄰像素的距離(相同色彩點的距離)0.31mm、0.28mm、0.25mm……分辨率:顯示器所能表示的像素個數分辨率=水平點數×垂直點數640×480800×6001024×7681280×1024……像素和分辨率點距越小,顯示的圖像越細膩分辨率越高,所能表達的圖像信息越多灰度級:黑白顯示器所顯示的像素點的亮暗差別,彩色顯示器所能表現的顏色數量(彩色深度)單色顯示器:只有兩級灰度的顯示器黑白顯示器:具有多種灰度級的黑白顯示器彩色顯示器:紅、綠、藍三色發光點組成灰度和彩色深度與顯示存儲器有關。如果使用8個二進制位表達一個像素的灰度,則可以有256種不同的亮度。如果紅、綠、藍三色都用8個二進制位表達,則彩色圖像就具有224(16M)種顏色,被成為真彩色灰度級越多,圖像層次感越強;色彩數越多,圖像越清楚逼真灰度和色彩刷新:使電子束不斷地重復掃描整個屏幕的過程不感到閃爍的刷新頻率:>30次/秒模擬電視標準:每秒刷新50幀圖像刷新和掃描光柵掃描:光柵掃描是從上至下順序掃描整個屏幕逐行掃描隔行掃描掃描頻率:完成一幀所花時間的倒數,也叫刷新頻率(每個像素在一秒內被刷新次數)刷新頻率越高、圖像越穩定,感覺越舒服

磁記錄方式磁記錄方式是一種編碼方法,將數字信息轉換成磁化單元歸零制(RZ):ReturntoZero正脈沖電流表示“1”,負脈沖電流表示“0”;不論記錄“0”或“1”,在記錄下一信息前,記錄電流恢復到零電流簡單易行,記錄密度低,改寫磁層上的記錄比較困難,一般是先去磁后寫入。具有自同步能力(能從磁頭讀出信號中分離獲得同步/選通信號)不歸零制(NRZ):NonReturntoZeroChange磁頭線圈始終有電流對連續記錄的“1”和“0”,寫電流的方向是不改變的。無自同步能力。

磁記錄方式見“1”就翻的不歸零制(NRZ1)NonReturntoZeroChangeOnOne磁頭線圈始終有電流通過。在記錄“1”時,電流改變方向,寫“0”電流保持不變。不具備自同步能力,需要引用外同步信號調相制(PM):又稱相位編碼(PE)PhaseMudulation記錄數據“0”時,規定磁化翻轉的方向由負變為正,記錄數據“1”時從正變為負“0”,“1”的讀出信號相位不同,抗干擾能力強(磁帶多用此)。具有自同步能力

磁記錄方式調頻制(FM)FrequencyModulation記錄“1”時,不僅在位周期的中心產生磁化翻轉,而且在位與位之間的邊界處要翻轉一次。記錄“0”時,位周期中心不產生磁化翻轉,但位與位之間的邊界處要翻轉一次。

具有自同步能力。改進調頻制(MFM)ModifiedFrequencyModulation記錄數據“1”時在位周期中心磁化翻轉一次,記錄數據“0”時不翻轉。連續兩個或兩個以上“0”時,在位周期的起始位置翻轉一次,而不是在每個位周期的起始處都翻轉。具有自同步能力記錄方式:代碼0或1的寫入電流波形數據序列10001110NRZ0NRZ1PMFMMFMI/O接口(電路)→6.2.2計算機的外圍(外部)設備多種多樣工作原理、驅動方式、信息格式、以及工作速度方面彼此差別很大外設不能與CPU直接相連,必須經過中間電路(I/O接口電路)再與系統相連I/O接口電路是位于系統與外設間、用來協助完成數據傳送和控制任務的邏輯電路CPU接口電路外設多種多樣的外設工作原理不同機械、電子、機電、電磁……傳送信息類型多樣數字量、模擬量、開關量傳送速度差別極大傳送方式不盡相同串行、并行編碼方式不同二進制、BCD碼、ASCII碼……返回I/O接口的典型結構內部結構數據寄存器:保存微處理器與外設之間交換的數據狀態寄存器:保存外設當前的工作狀態信息控制寄存器:保存微處理器控制接口電路和外設操作的有關信息外部特性面向微處理器一側的信號:與微處理器總線類似面向外設一側的信號:與外設有關示意圖I/O端口的編址I/O端口(Port)泛指I/O地址,對應I/O接口寄存器一個接口電路可以具有多個I/O端口,每個端口用來保存和交換不同的信息數據寄存器、狀態寄存器和控制寄存器占有的I/O地址常依次被稱為數據端口、狀態端口和控制端口,用于保存數據、狀態和控制信息輸入、輸出端口可以是同一個I/O地址接口電路占用的I/O端口有兩類編排形式I/O端口單獨編址I/O端口與存儲器統一編址I/O端口與存儲器獨立編址將I/O端口單獨編排地址,獨立于存儲器地址優點:I/O端口的地址空間獨立控制和地址譯碼電路相對簡單專門的I/O指令使程序清晰易讀缺點:I/O指令沒有存儲器指令豐富主存空間I/O空間FFFFF0FFFF80x86采用I/O端口獨立編址I/O端口與存儲器統一編址將I/O端口與存儲器地址統一編排,共享一個地址空間優點:不需要專門的I/O指令I/O數據存取靈活缺點:占去部分存儲器空間程序不易閱讀(在匯編語言級不容易區別訪問存儲器和訪問外設)主存部分I/O部分存儲器空間00000FFFFF8.1CPU對外圍設備的管理方式I/O控制方式主要由程序實現主要由附加硬件實現程序查詢方式程序中斷方式DMA方式通道方式PPU方式CPU和外設之間信息交換的方式程序控制下的數據傳送通過CPU執行程序中的I/O指令來完成傳送程序查詢方式程序中斷方式直接存儲器存取DMA方式外設經DMA控制器向CPU申請總線,由DMA控制器利用系統總線完成外設和存儲器間的數據傳送通道方式通道(I/O處理器)管理外設,完成傳送和數據處理外圍處理機方式通道方式的進一步發展,基本獨立于主機工作8.2程序中斷方式處理器在執行程序過程中,被內部或外部的事件所打斷,轉去執行一段預先安排好的中斷服務程序;服務結束后,又返回原來的斷點,繼續執行原來的程序中斷源:引起中斷的事件或原因例如:外設的數據傳送請求系統定時請求電源掉電等故障運算出錯等錯誤程序異?;蛘{試請求中斷的基本概念

(1/3)1、概念:當計算機執行正常程序時,系統中出現某些異常情況或特殊請求,這些情況和請求可能來自計算機內部,也可能來自計算機外部;一旦有上述事件發生,計算機執行正常程序的狀態被中斷,就是說,CPU要暫停它正在執行的程序,而轉去處理所發生的事件(通常就是執行一段特殊程序,被稱為中斷服務程序);CPU處理完畢后,自動返回到原來被中斷了的程序繼續運行。中斷的基本概念

(2/3)2、與子程序調用的比較(1)相同點:正常程序:主程序 中斷服務程序:子程序(2)區別:(A)子程序的執行是程序員事先安排好的; 中斷服務程序的執行則是由隨機的中斷事件引起的,比如電源掉電、請求I/O數據傳送、現場報警等。(B)子程序的執行往往與主程序有關; 中斷服務程序可能與被中斷的程序毫無關系。(C)有可能出現多個中斷事件同時請求的情況,此時,主機就需要進行判優,進而決定為哪一個請求服務。 子程序不存在此種情況。中斷的基本概念

(3/3)3、中斷的作用(1)主機與外部設備并行工作(2)實現實時處理(3)硬件故障處理(4)實現多道程序和分時操作CPU響應中斷的條件

(1/11)一、中斷源(1)概念:能夠引起CPU中斷的原因就是中斷源。中斷源是指形成這個原因的設備、部件或條件。(2)種類:

輸入輸出設備。系統中的外部設備都可以設計成為以中斷方式與主機進行數據的交換,從而作為系統的中斷源。

故障與錯誤。系統運行中會出現諸如電源掉電、運算出錯、非法指令等問題,它們也常采用中斷方式請求CPU立即處理。

實時時鐘。系統中的時鐘定時電路是必不可少的,若定時時間到,時鐘電路就可以通過中斷告知主機。

程序調試和軟件中斷。程序調試中常常采用設置中斷斷點的方法來觀察程序運行是否正確;有些機器的指令系統設計有軟件中斷指令,利用中斷機制實現操作系統的功能調用以及調試程序。需要說明一點,這類中斷是由程序員事先安排好的,和調用子程序的作用一樣,與上述由外部硬件產生的中斷有些不同。CPU響應中斷的條件

(2/11)二、中斷的分類:(1)按中斷源是在主機之內還是外分:(A)內部中斷內部中斷是指中斷源來自主機內部,如運算出錯、程序調試和軟件中斷等;(B)外部中斷外部中斷來自主機之外,如外部設備、實時時鐘和硬件故障產生的中斷等。CPU響應中斷的條件

(3/11)二、中斷的分類:(2)

按中斷對CPU的打擾情況分:(A)程序中斷

CPU要用專門的中斷服務程序為中斷源服務,并且在服務前要進行斷點和現場的保護,在服務后要進行現場和斷點恢復的中斷。這種中斷就是一般所說的中斷,是大多數中低速外設以及內中斷常用的中斷方式。(B)簡單中斷當這種中斷發生時,相應的請求源只是請求CPU的正常程序暫停一下,通常稱為總線請求或DMA請求。暫停的目的是把主存和接口的數據通路讓給請求源使用(即總線使用權),使得能在主存和請求源之間直接進行一次數據傳送,當這次傳送結束后,請求源立即把這個使用權歸還給CPU。接著運行剛才暫停的程序,這個暫停時間通常一次一個存取周期。CPU響應中斷的條件

(4/11)二、中斷的分類:(3)

按尋找中斷服務程序入口的實現方法區分:(A)向量中斷(矢量中斷):中斷服務程序入口由中斷源自己提供。(B)

非向量中斷:入口由CPU查詢得到。CPU響應中斷的條件

(5/11)三、中斷工作過程:1、中斷請求(1)中斷請求是中斷源向CPU發出中斷請求信號,要求CPU為它服務的過程。(2)何時?基本條件兩個:(A)

外設本身工作已經完成(B)

外設被允許中斷(3)硬件支持:中斷請求電路,基本組成是兩個觸發器:(A)

一個反映外設工作是否完成,其形成與程序查詢的準備就緒狀態標志一樣;

溫馨提示

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

評論

0/150

提交評論