第一章計算機系統(tǒng)概論
硬件:計算機的實體,如主機,外設(shè)等
軟件:具有各類特殊功能的信息(程序)組成
| 軟件類型 | 定義 | 舉例 |
|---|---|---|
| 系統(tǒng)軟件 | 用來管理整個計算機系統(tǒng) | 標(biāo)準(zhǔn)程序庫,語言處理程序,操作系統(tǒng),數(shù)據(jù)庫管理系統(tǒng),網(wǎng)絡(luò)軟件 |
| 應(yīng)用軟件 | 按任務(wù)需要編制成的各種程序 | 科學(xué)計算程序,數(shù)據(jù)處理程序,過程控制程序,事務(wù)管理程序 |
計算機系統(tǒng)的層次結(jié)構(gòu)

image
計算機系統(tǒng)的體系結(jié)構(gòu)
| 分類 | 區(qū)別 | 定義 |
|---|---|---|
| 計算機體系結(jié)構(gòu) | 有無乘法指令 | 程序員見到的計算機系統(tǒng)的屬性,即概念性的結(jié)構(gòu)和功能特性(指令系統(tǒng),數(shù)據(jù)類型,尋址技術(shù),I/O機理) |
| 計算機組成 | 如何實現(xiàn)乘法指令 | 實現(xiàn)計算機體系結(jié)構(gòu)所體現(xiàn)的屬性(具體指令的實現(xiàn)) |
馮.諾依曼計算機的特點
1.計算機由運算器,存儲器,控制器,輸入設(shè)備和輸出設(shè)備五大部分組成
2.指令和數(shù)據(jù)以同等地位存放與存儲器內(nèi),并可按地址尋訪
3.指令和數(shù)據(jù)用二進(jìn)制表示
4.指令由操作碼和地址碼組成
5.存儲程序
6.以運算器為中心
馮.諾依曼計算機硬件框圖

image
現(xiàn)代計算機硬件框圖

image
設(shè)某機的指令字長為16位,其中操作碼占6位,地址碼占10位。
| 操作碼 | 操作性質(zhì) | 具體內(nèi)容 |
|---|---|---|
| 000001 | 取數(shù) | 將指令地址碼指示的存儲單元中的操作數(shù)取到運算器的累加器ACC中 |
| 000010 | 存數(shù) | 將ACC中的數(shù)存至指令地址碼指示的存儲單元中 |
| 000011 | 加 | 將ACC中的數(shù)與指令地址碼指示的存儲單元中的數(shù)相加,結(jié)果存于ACC中 |
| 000100 | 乘 | 將ACC中的數(shù)與指令地址碼指示的存儲單元中的數(shù)相乘,結(jié)果存于ACC中 |
| 000101 | 打印 | 將指令地址碼指示的存儲單元中操作數(shù)打印輸出 |
存儲器的基本組成
| 組成 | 解釋 |
|---|---|
| 存儲單元 | 存放一串二進(jìn)制代碼 |
| 存儲字 | 存儲單元中二進(jìn)制代碼的組合 |
| 存儲字長 | 存儲單元中二進(jìn)制代碼的位數(shù)每個存儲單元賦予一個地址號 |
| MAR | 存儲器地址寄存器,反映存儲單元的個數(shù) 2**n |
| MDR | 存儲器數(shù)據(jù)寄存器,反映存儲字長 n |
運算器基本組成
| 寄存器,操作數(shù),運算 | 加法 | 減法 | 乘法 | 除法 |
|---|---|---|---|---|
| ACC | 被加數(shù)及和 | 被減數(shù)及差 | 乘積高位 | 被除數(shù)及余數(shù) |
| MQ | 乘數(shù)及乘積低位 | 商 | ||
| X | 加數(shù) | 減數(shù) | 被乘數(shù) | 除數(shù) |
控制器的基本組成
| 簡稱 | 意義 | 作用 | 解釋 |
|---|---|---|---|
| PC | 取指令 | 取指,訪存 | 存放當(dāng)前欲執(zhí)行指令的地址,具有計數(shù)功能(PC)+1->pc |
| IR | 分析指令 | 取指,訪存 | 存放當(dāng)前欲執(zhí)行的指令 |
| CU | 執(zhí)行指令 | 執(zhí)行,訪存 | 控制單元 |
以取數(shù)指令為例

image
程序首地址PC
取指令:PC->MAR->存儲體M-MDR->IR
分析指令:IR->CU
執(zhí)行指令:IR->MAR->M->MDR->ACC
計算機硬件的主要技術(shù)指標(biāo)
機器字長:CPU一次能處理數(shù)據(jù)的位數(shù),與CPU中的寄存器位數(shù)有關(guān)。
運算速度:主頻,吉普森法(每條指令的執(zhí)行的時間以及他們在全部操作中所占的百分比TM=∑ni=1fiti),MIPS(百萬條指令每秒),CPI(執(zhí)行一條指令所需時鐘周期數(shù)),F(xiàn)LOPS(每秒浮點運算次數(shù)), 存儲容量(存放二進(jìn)制信息的總位數(shù))
| 分類 | 組成 |
|---|---|
| 主存容量 | 存儲單元×字節(jié)數(shù) |
| 主存容量 | 字節(jié)數(shù) |
| 輔存容量 | 字節(jié)數(shù) |
指令和數(shù)據(jù)都存于存儲器中,計算機如何區(qū)分它們?
1.通過不同的時間段,在取指令階段取出的為指令,在執(zhí)行指令階段取出為數(shù)據(jù)
2.通過地址源:由PC提供存儲單元地址的取出的是指令,由指令地址碼提供存儲單元地址取出的是操作數(shù)。
第二章 計算機的發(fā)展及應(yīng)用
Moore定律:微芯上集成的晶體管數(shù)目每三年翻兩番
計算機的應(yīng)用
一、科學(xué)計算和數(shù)據(jù)處理
二、工業(yè)控制和實時控制
三、網(wǎng)絡(luò)技術(shù)
1.電子商務(wù)
2.網(wǎng)絡(luò)教育
3.敏捷制造
四、虛擬現(xiàn)實
五、辦公自動化和管理信息系統(tǒng)
六、CAD/CAM/CIMS
七、多媒體技術(shù)
八、人工智能
芯片集成度的提高受以下三方面的限制
芯片集成度受物理極限的制約
按幾何級數(shù)遞增的制作成本
芯片的功耗、散熱、線延遲
| 計算機 | 代替部分 |
|---|---|
| 光計算機 | 利用光子取代電子進(jìn)行運算和存儲 |
| DNA生物計算機 | 通過控制DNA分子間的生化反應(yīng) |
| 量子計算機 | 利用原子所具有的量子特性 |
第三章 系統(tǒng)總線
計算機系統(tǒng)五大部件之間的互連的方式有兩種
1.分散連接:各部件之間使用單獨的連線
2.總線連接:將各部件連到一組公共信息傳輸線上
總線:連接各個部件的信息傳輸線,是各個部件共享的傳輸介質(zhì)
總線傳輸特點:某一時刻只能有一路信息在總線上傳輸,即分時使用。為了減輕總線負(fù)載,總線上的部件應(yīng)通過三態(tài)驅(qū)動緩沖電路與總線相連
總線上信息的傳輸:
串行:每條線可一位一位的傳輸二進(jìn)制代碼,一串二進(jìn)制代碼可在一段時間內(nèi)逐一傳輸完成
并行:若干條傳輸線同時傳輸若干條二進(jìn)制代碼
面向 CPU 的雙總線結(jié)構(gòu)框圖

image
單總線結(jié)構(gòu)框圖

image
以存儲器為中心的雙總線結(jié)構(gòu)框圖

image
| 總線分類 | 解釋 |
|---|---|
| 片內(nèi)總線 | 芯片內(nèi)部的總線,如寄存器與寄存器之間,寄存器與算邏單元ALU之間。 |
| 系統(tǒng)總線 | 計算機各部件之間的信息傳輸線(CPU,主存,I/O設(shè)備等) |
| 系統(tǒng)總線-數(shù)據(jù)總線 | 雙向傳輸,其位數(shù)與機器字長,存儲字長有關(guān) |
| 系統(tǒng)總線-地址總線 | 單向,與存儲地址,I/O地址有關(guān) |
| 系統(tǒng)總線-控制總線 | 單向,發(fā)出各種控制信號。有出(存儲器讀、存儲器寫總線允許、中斷確認(rèn)),有入(中斷請求、總線請求) |
| 通信總線 | 用于計算機系統(tǒng)之間或計算機系統(tǒng)與其他系統(tǒng)(如控制儀表、移動通信等)之間的通信。分為串行通信和并行通信 |
總線物理實現(xiàn)

image
總線特性
| 總線特性 | |
|---|---|
| 機械特性 | 指總線在機械連接方式上的一些性能,尺寸,形狀,引腳的個數(shù)以及排列的順序,接頭處的可靠接觸 |
| 電氣特性 | 總線的每一根傳輸線上信號的傳輸方向和有效的電平范圍 |
| 功能特性 | 每根傳輸線的功能。地址總線用來指出地址碼;數(shù)據(jù)總線傳遞數(shù)據(jù);控制總線發(fā)出控制信號 |
| 時間特性 | 信號的時序關(guān)系 |
總線性能指標(biāo)
| 性能 | 指標(biāo) |
|---|---|
| 總線寬度 | 數(shù)據(jù)線分根數(shù),用bit |
| 總線帶寬 | 每秒傳輸?shù)淖畲笞止?jié)數(shù)(MBps) |
| 時鐘同步/異步 | 同步,異步 |
| 總線復(fù)用 | 地址線與數(shù)據(jù)線復(fù)用 |
| 信號線數(shù) | 地址線,數(shù)據(jù)線和控制線的總和 |
| 總線控制方式 | 突發(fā),自動,仲裁,邏輯,計數(shù) |
| 其他指標(biāo) | 負(fù)載能力(驅(qū)動能力),電源電壓,總線寬度能否擴展等 |
總線標(biāo)準(zhǔn)
總線標(biāo)準(zhǔn):系統(tǒng)與各模塊,模塊與模塊之間的一個互連的標(biāo)準(zhǔn)界面
為什么要設(shè)立總線標(biāo)準(zhǔn):為了使設(shè)計簡化,模塊生產(chǎn)批量化,確保其性能穩(wěn)定,質(zhì)量可靠,實現(xiàn)可移化,便于維護(hù)。
| 總線標(biāo)準(zhǔn) | 數(shù)據(jù)線 | 地址線 | 總線時鐘 | 帶寬 | 特性 |
|---|---|---|---|---|---|
| ISA | 16 | 24 | 8MHz(獨立) | 16MBps | |
| EISA | 32 | 32 | 8MHz(獨立) | 33MBps | |
| VESA(VL-BUS) | 32 | 33MHz(CPU) | 133MBps | ||
| PCI | 32 64 | 33MHz(獨立)66MHz(獨立) | 132MBps528MBps | 良好的兼容性,即插即用,支持多主設(shè)備,具有與處理器和存儲器子系統(tǒng)完全并行操作的能力,提供數(shù)據(jù)和地址奇偶校驗,可擴充,軟件兼容性好,支持兩種電壓標(biāo)準(zhǔn)5V、3.3V,采用多路復(fù)用 | |
| AGP | 32 | 66.7MHz(獨立)133MHz(獨立) | 266MBps533MBps | ||
| RS-232C | 串行通信總線標(biāo)準(zhǔn) | 數(shù)據(jù)終端設(shè)備(計算機)和數(shù)據(jù)通信設(shè)備(調(diào)制解調(diào)器)之間的標(biāo)準(zhǔn)接口 | |||
| USB | 串行接口總線標(biāo)準(zhǔn) | 普通無屏蔽雙絞線帶屏蔽雙絞線最高 | 1.5 Mbps(USB1.0)12Mbps(USB1.0)480Mbps(USB2.0) | 具有真正的即插即用,很強的連接能力,數(shù)據(jù)傳輸率,標(biāo)準(zhǔn)統(tǒng)一 |
總線結(jié)構(gòu)
單總線結(jié)構(gòu)

image
雙總線結(jié)構(gòu)

image
三總線結(jié)構(gòu)

image
三總線結(jié)構(gòu)又一

image
四總線結(jié)構(gòu)

image
總線判優(yōu)控制
為什么要設(shè)置總線判優(yōu)控制:總線上所連接的各類設(shè)備,按其對總線有無控制功能分為主設(shè)備(模塊)和從設(shè)備(模塊)。主設(shè)備對總線有控制權(quán),從設(shè)備只能響應(yīng)從主設(shè)備發(fā)來的總線命令,對總線沒有控制權(quán)??偩€上的信息是又主設(shè)備啟動的,若多個主設(shè)備同時要使用總線時,就由總線控制器的優(yōu)判,仲裁邏輯按一定的優(yōu)先等級順序確定哪個主設(shè)備能使用總線。
總線優(yōu)判控制分為集中式和分布式兩種
| 集中式種類 | 特點 |
|---|---|
| 鏈?zhǔn)讲樵?/td> | 連線簡單,易于擴充,對電路故障最敏感 |
| 計數(shù)器定時查詢 | 優(yōu)先級設(shè)置較靈活,對故障不敏感,連線及控制過程較復(fù)雜 |
| 獨立請求 | 響應(yīng)速度快,優(yōu)先級次序控制靈活,但連線多,總線控制復(fù)雜 |
總線通信
| 通信方式 | 特點 | 適用場合 |
|---|---|---|
| 同步通信 | 指由統(tǒng)一時鐘控制的通信,控制方式簡單,靈活性差,當(dāng)系統(tǒng)中各部件工作速度差異較大時,總線工作效率明顯下降 | 一般用于總線長度較短,各部件存取時間比較一致的場合 |
| 異步通信 | 指沒有統(tǒng)一時鐘控制的通信,部件采用應(yīng)答方式進(jìn)行聯(lián)系,控制方式較同步復(fù)雜,靈活性高,當(dāng)系統(tǒng)中各部件工作速度差異較大時,有利于提高總線工作效率 | 又分為不互鎖,半互鎖,全互鎖 |
| 半同步通信 | 既可以像同步通信一樣由統(tǒng)一時鐘控制,又可以像異步通信一樣允許傳輸時間不一致,工作效率介于兩者之間 | |
| 分離式通信 | 1.各模塊欲占用總線使用權(quán)必須提出申請2.在得到總線使用權(quán)后,主模塊在限定的時間內(nèi)向?qū)Ψ絺魉托畔?,采用同步方式,不再等待對方回答信?.各模塊在準(zhǔn)備數(shù)據(jù)的過程中都不占用總線,使總線可以接受其他模塊的請求4.總線被占用時都在做有效工作,或者通過它發(fā)送命令,或者通過它傳送數(shù)據(jù),不存在空閑等待時間,充分的利用了總線的有效占用,從而實現(xiàn)了總線在多個主,從模塊間進(jìn)行交叉重疊并行傳送。 | 大型計算機系統(tǒng) |
同步式數(shù)據(jù)輸入傳輸

image
同步式數(shù)據(jù)輸出傳輸

image
第四章 存儲器
存儲器分類

image
存儲器速度容量和價位的關(guān)系

image
緩存主存層次和主存輔存層次

image
緩存主存--解決CPU和主存速度不匹配的問題
主存輔存--解決存儲系統(tǒng)的容量問題
主存的主要技術(shù)指標(biāo)
存儲容量
指主存能存放二進(jìn)制代碼的總位數(shù)
存儲容量=存儲單元個數(shù)*存儲字長
存儲容量=存儲單元個數(shù)*存儲字長/8
存儲速度
由存取時間和存取周期來表示,存取時間指存儲器的訪時間,存取周期指存儲器進(jìn)行兩次獨立的存儲器操作所需的最小時間間隔
存儲器帶寬
單位時間內(nèi)存儲器存取的信息量,單位可以用字/秒或字節(jié)/秒或位/秒。提高存儲器帶寬可以1.縮短存取周期2.增加存儲字長,使每個存取周期可讀/寫更多的二進(jìn)制位數(shù)3.增加存儲體
靜態(tài)RAM

image
動態(tài)RAM
動態(tài)RAM通過電容來存儲電荷的原理來存儲信息,電容上有足夠多的電荷表示存1,無電荷表示存0,電容上電荷一般只能維持1——2ms,因此,必須在2ms內(nèi)對其所存儲單元恢復(fù)一次原狀態(tài),這個過程稱為再生或刷新。
動態(tài)RAM時序圖

image.png
動態(tài)RAM刷新
刷新實質(zhì)是將原信息讀出,在由刷新放大器形成原信息并重新寫入的再生過程
集中刷新--在規(guī)定的一個刷新周期內(nèi),對全部存儲單元集中一段時間逐行進(jìn)行刷新,此刻必須停止讀/寫操作。之后剩余的時間進(jìn)行讀寫操作或維持信息。因此存在“死時間”或訪存“死區(qū)”。

image
分散刷新--對每行存儲單元的刷新分散到每個存取周期內(nèi)完成。其中把機器的周期tc分成兩段,前半段tM用來讀寫或維持信息,后半段tR用來刷新,不存在死時間,但存取周期長

image
異步刷新--異步刷新為前兩種的結(jié)合,既可以縮短死時間,又可以充分利用2ms的特點

image
動態(tài)RAM和靜態(tài)RAM的比較
在同樣大小的芯片中,動態(tài)RAM的集成度遠(yuǎn)高于靜態(tài)RAM。
動態(tài)RAM行、列地址按先后順序輸送,減少了芯片的引腳,封裝尺寸也減少
動態(tài)RAM的功耗比靜態(tài)RAM小
動態(tài)RAM的價格比靜態(tài)RAM的價格便宜
由于使用動態(tài)元件(電容),因此它的速度比靜態(tài)RAM低
動態(tài)RAM需要再生,故需要配置再生電路,也需要消耗一部分功率。通常,容量不大的高速緩存器大多用靜態(tài)RAM實現(xiàn)
存儲器與CPU的連接
存儲容量的擴展
位擴展--增加存儲字長
字?jǐn)U展--增加存儲器字的數(shù)量
字、位擴展--既增加存儲字的數(shù)量,又增加存儲字長
存儲器與CPU連接
地址線的連接--CPU的地址線往往比存儲芯片的地址線數(shù)多,通常總是將CPU地址線的低位與存儲器的芯片的地址線相連,CPU地址線的高位或在存儲芯片的擴充時用,或作其他用途。
數(shù)據(jù)線的連接--CPU的數(shù)據(jù)線與存儲器的也不等,因此必須對存儲芯片擴位使其相等
片選線的連接--是CPU與存儲芯片正確工作的關(guān)鍵
合理選擇存儲芯片--指存儲芯片類型(RAM或ROM)和數(shù)量的選擇。通常用ROM存放程序,標(biāo)準(zhǔn)子程序和各類常數(shù)等。RAM為用戶編程設(shè)計。此外,盡量選擇連線簡單方便。
提高訪存速度的措施
單體多字系統(tǒng)--在一個存取周期內(nèi),從同一地址取出4條指令,然后在逐條送至CPU執(zhí)行。增大存儲器帶寬,提高存儲器工作速度。前提是,指令和數(shù)據(jù)在主存內(nèi)必須是連續(xù)存放。
多體并行系統(tǒng)--采用多提模塊組成的存儲器,每個模塊具有相同的容量和存取速度,各自具有獨立的寄存器(MAR),數(shù)據(jù)寄存器(MDR),地址譯碼,驅(qū)動電路和讀寫電路。

image
高位交叉編址的多體存儲器

image
低位交叉編址的多體存儲器

image
高速緩沖存儲器
Cache的基本結(jié)構(gòu)

image
地址映射變換機構(gòu)--將CPU送來的主存地址轉(zhuǎn)換為Cache地址。
Cache--主存地址映射
直接映射
優(yōu)點:實現(xiàn)簡單,只需要利用主存地址的某些位直接判斷,即可確定所需字塊是否在緩存中
缺點:不夠靈活,每個主存快只能固定的對應(yīng)某個緩存塊,即使緩存內(nèi)還空著許多位置也不能被占用,使緩存的空間得不到充分的利用。此外,如果程序恰好重復(fù)訪問對應(yīng)同一緩存位置不同的主存塊,就要不停的進(jìn)行替換,降低命中率。
全相聯(lián)映射--允許主存中每一字塊映射到Cache中的任何一塊位置上。
優(yōu)點:靈活,命中率高,縮小了快沖突率。
缺點:所需的邏輯電路甚多,成本較高。
組相聯(lián)映射
第五章 輸入輸出系統(tǒng)
輸入輸出系統(tǒng)發(fā)展的四個階段
1.早期階段
分散連接 CPU和I/O設(shè)備 串行工作 程序查詢方式
2.接口模塊和DMA階段
總線連接 CPU和I/O設(shè)備并行工作
3.具有通道結(jié)構(gòu)的階段
4.具有I/O處理機的階段
輸入輸出系統(tǒng)的組成
1.I/O軟件
I/O指令 CPU指令的一部分
| 操作碼 | 命令碼 | 設(shè)備碼 |
|---|
通道指令:通道自身的指令 指明數(shù)組的首地址、傳送字?jǐn)?shù)、操作命令。
I/O硬件
設(shè)備 I/O接口
設(shè)備 設(shè)備控制器 通道
I/O設(shè)備與主機的聯(lián)系方式
1.I/O設(shè)備編址方式
統(tǒng)一編址 用取數(shù)存數(shù)指令
不統(tǒng)一編址 有專門的I/O指令
2.設(shè)備尋址
用設(shè)備選擇電路識別是否被選中
3.傳送方式
串行 并行
4.聯(lián)絡(luò)方式
立即響應(yīng)方式
異步方式采用應(yīng)答信號

image
同步工作采用同步時標(biāo)聯(lián)絡(luò)
5.I/O設(shè)備
輻射式連接

image
總線式連接
I/O設(shè)備與主機信息傳送的控制方式
1.程序查詢方式

image
2.程序中斷方式
倘若CPU在啟動I/O設(shè)備后,不查詢設(shè)備是否已準(zhǔn)備就緒,繼續(xù)執(zhí)行自身程序,只是當(dāng)I/O設(shè)備準(zhǔn)備就緒并向CPU發(fā)出中斷請求后才予以響應(yīng)。
3.DMA方式(直接存儲器存取)
主存與I/O設(shè)備之間有一條數(shù)據(jù)通路,主存與I/O設(shè)備交換信息時,無須調(diào)用中斷服務(wù)程序。若出現(xiàn)DMA和CPU同時訪問主存,CPU總是將總線占有權(quán)讓給DMA,通常把DMA這種占有稱為竊取或挪用。竊取的時間一般為一個周期,故又把DMA占用的存取周期竊取周期或挪用周期。
I/O接口
為什么設(shè)置I/O接口</mark>
實現(xiàn)設(shè)備的選擇
實現(xiàn)數(shù)據(jù)緩沖達(dá)到速度匹配
實現(xiàn)數(shù)據(jù)串--并格式轉(zhuǎn)換
實現(xiàn)電平轉(zhuǎn)換
實現(xiàn)電平轉(zhuǎn)換
傳送控制命令
反映設(shè)備的狀態(tài)("忙","就緒","中斷請求")
端口和接口的關(guān)系
端口是指接口電路中的一些寄存器,這些寄存器用來存放數(shù)據(jù)信息,控制信息和狀態(tài)信息,相應(yīng)的端口被分別稱為數(shù)據(jù)端口,控制端口,和狀態(tài)端口。若干個端口加上相應(yīng)的控制邏輯才能組成接口。
接口的功能和組成
總線連接方式的I/O接口電路
設(shè)備選擇線,數(shù)據(jù)線,命令線,狀態(tài)線
接口的功能和組成
| 接口功能 | 接口組成 |
|---|---|
| 選址功能 | 設(shè)備選擇電路 |
| 傳送命令的功能 | 命令寄存器,命令譯碼器 |
| 傳送數(shù)據(jù)的功能 | 數(shù)據(jù)緩沖寄存器 |
| 反映設(shè)備狀態(tài)的功能 | 設(shè)備標(biāo)記狀態(tài) |

image
接口類型
| 分類 | 種類 |
|---|---|
| 按數(shù)據(jù)傳送方式 | 并行接口(Intel 8255) 串行接口(Intel 8251) |
| 按功能選擇的靈活性 | 可編程接口(Intel 8255,Intel 8251) 不可編程接口(Intel 8212) |
| 按通用性 | 通用接口(Intel 8255、 Intel 8251) 專用接口(Intel 8279、 Intel 8275) |
| 按數(shù)據(jù)傳送的控制方式 | 中斷接口(Intel 8259) DMA接口(Intel 8257) |
程序查詢方式
| 指令 | 作用 |
|---|---|
| 測試指令 | 用來查詢I/O設(shè)備已準(zhǔn)備就緒 |
| 傳送指令 | 當(dāng)I/O設(shè)備已準(zhǔn)備就緒時,執(zhí)行傳送指令 |
| 轉(zhuǎn)移指令 | 若I/O設(shè)備未準(zhǔn)備就緒,執(zhí)行轉(zhuǎn)移指令,轉(zhuǎn)至測試指令,繼續(xù)測試I/O設(shè)備的狀態(tài) |
程序流程

image

image
1)CPU發(fā)I/O地址設(shè)備開始工作;地址總線?接口?設(shè)備選擇器譯碼?選中?發(fā)SEL信號;2)CPU發(fā)啟動命令DBR?開命令接收門;?D置0,B置1?接口向設(shè)備發(fā)啟動命令;3)CPU等待,輸入設(shè)備讀出數(shù)據(jù);4)外設(shè)工作完成,B置0,D置1;5)準(zhǔn)備就緒信號?接口?完成信號?控制總線?CPU;6)輸入:CPU通過輸入指令(IN)將DBR中的數(shù)據(jù)取走。
程序中斷方式
中斷:在執(zhí)行程序過程中,當(dāng)出現(xiàn)異常情況或特殊情況請求時,計算機停止現(xiàn)行程序的運行,轉(zhuǎn)向?qū)@些異常情況或特殊情況的請求的處理,處理結(jié)束后再返回到現(xiàn)行程序的間斷處,繼續(xù)執(zhí)行源程序。
程序中斷方式配置中斷請求和中斷寄存

image
接口電路的基本組成

image
中斷處理過程
1.CPU響應(yīng)中斷的條件和時間
(1)條件
允許中斷觸發(fā)器 EINT = 1
用 開中斷 指令將 EINT 置 “1”
用 關(guān)中斷 指令將 EINT 置“ 0” 或硬件 自動復(fù)位
(2)時間
當(dāng) D = 1(隨機)且 MASK = 0 時
在每條指令執(zhí)行階段的結(jié)束前
CPU 發(fā) 中斷查詢信號(將 INTR 置“1”)
2.I/O中斷處理過程
1.CPU發(fā)啟動I/O設(shè)備命令,將接口中的B置1,D置0
2.接口啟動輸入設(shè)備開始工作
3.輸入設(shè)備將數(shù)據(jù)送入數(shù)據(jù)緩沖寄存器
4.輸入設(shè)備向接口發(fā)出"設(shè)備工作結(jié)束"信號,將D置1,B置0
5.當(dāng)設(shè)備準(zhǔn)備就緒(D=1),且本設(shè)備未被屏蔽(MASK=0),在指令執(zhí)行階段的結(jié)束時刻,由CPU發(fā)出中斷查詢信號
6.設(shè)備中斷請求觸發(fā)器INTR被置1,標(biāo)志設(shè)備向CPU提出中斷請求。于此同時,INTR被送至排隊器,進(jìn)行中斷優(yōu)判
7.若CPU允許中斷(EINT=1),設(shè)備又被選中排隊,即進(jìn)入中斷響應(yīng)階段
8.向量地址送至PC,作為下一條指令的地址
9.無條件轉(zhuǎn)至設(shè)備服務(wù)程序的入口地址,進(jìn)入中斷服務(wù)階段
10.執(zhí)行結(jié)束,中斷返回至原程序的斷點處
中斷服務(wù)程序的流程
保護(hù)現(xiàn)場
中斷服務(wù)
恢復(fù)現(xiàn)場
中斷返回
DMA接口的功能和組成
DMA接口具有的功能
向CPU申請DMA傳送
在CPU允許DMA工作時,處理總線控制權(quán)的轉(zhuǎn)交
在DMA期間管理系統(tǒng)總線,控制數(shù)據(jù)傳送
確定數(shù)據(jù)傳送的氣勢地址和數(shù)據(jù)長度,修正數(shù)據(jù)傳送過程中的數(shù)據(jù)地址和數(shù)據(jù)長度
在數(shù)據(jù)塊傳送結(jié)束時,給出DMA操作完成的信號
DMA與主存交換數(shù)據(jù)的三種方式
1.停止CPU訪問主存
2.周期挪用
3.DMA與CPU交替訪問
DMA基本組成

image
DMA的工作過程
預(yù)處理、數(shù)據(jù)傳送、后處理
DMA方式與中斷程序的比較
| 中斷方式 | DMA方式 | |
|---|---|---|
| 數(shù)據(jù)傳送 | 程序 | 硬件 |
| 響應(yīng)時間 | 指令執(zhí)行結(jié)束 | 存取周期結(jié)束 |
| 處理異常情況 | 能 | 不能 |
| 中斷請求 | 傳送數(shù)據(jù) | 后處理 |
| 優(yōu)先級 | 低 | 高 |
第七章 指令系統(tǒng)
指令的一般格式
| 操作碼字段 | 地址碼字段 |
|---|
操作碼 反映機器做什么操作
1).長度固定:用于指令字長較長的情況,RISC。如IBM 370 操作碼 8位
2).長度可變:操作碼分散在指令字段的不同字段中。
指令字長
指令字長決定于操作碼的長度,操作數(shù)地址的長度,操作數(shù)地址的個數(shù)
指令字長固定的話=存儲字長
指令字長可變的話=,按字節(jié)的倍數(shù)變化
操作數(shù)類型和操作種類
| 類型 | 代表 |
|---|---|
| 地址 | 無符號整數(shù) |
| 數(shù)字 | 定點數(shù)、浮點數(shù)、十進(jìn)制數(shù) |
| 字符 | ASCII |
| 邏輯數(shù) | 邏輯運算 |
操作類型
| 操作類型 | 解釋 |
|---|---|
| 數(shù)據(jù)傳送 | 寄存器->寄存器、寄存器->存儲器等 |
| 算數(shù)邏輯運算 | 加、減、乘、除等 |
| 移位操作 | 算數(shù)移位、邏輯移位、循環(huán)移位(帶進(jìn)位,不帶進(jìn)位) |
| 轉(zhuǎn)移 | 無條件轉(zhuǎn)移(JMP)、條件轉(zhuǎn)移{結(jié)果為零轉(zhuǎn)(JZ)、結(jié)果溢出轉(zhuǎn)(JO)、結(jié)果有進(jìn)位轉(zhuǎn)(JC)、跳過一條指令(SKP)} |
| 調(diào)用和返回 | |
| 陷阱(Trap)與陷阱指令 | 意外事故的中斷 |
| 輸入和輸出 | 端口地址->CPU的寄存器,CPU的寄存器->端口地址 |
尋址方式
| 指令尋址 | 解釋 |
|---|---|
| 順序?qū)ぶ?/td> | 自動形成下一條指令的地址 |
| 跳躍尋址 | 通過轉(zhuǎn)移類指令實現(xiàn) |
| 數(shù)據(jù)尋址 | 例子 |
|---|---|
| 立即尋址 | op # A |
| 直接尋址 | EA=A |
| 隱含尋址 | ACC x |
| 間接尋址 | EA=(A) |
| 寄存器尋址 | EA=R |
| 寄存器間接尋址 | EA=(R) |
| 基址尋址 | EA=A+(BR) |
| 變址尋址 | EA=A+(IX) |
| 相對尋址 | EA=(PC)+A |
| 堆棧尋址 | PUSH A |
設(shè)計指令格式應(yīng)考慮的各種因素
| 因素 | 詳細(xì) |
|---|---|
| 操作類型 | 包括指令數(shù)及操作的難易程度 |
| 數(shù)據(jù)類型 | 確定哪些數(shù)據(jù)類型可以參與操作 |
| 指令格式 | 指令字長是否固定、操作碼數(shù)、是否采用擴展操作碼技術(shù),地址碼位數(shù)、地址個數(shù)、尋址方式類型 |
| 尋址方式 | 指令尋址、操作數(shù)尋址 |
| 寄存器個數(shù) | 寄存器的多少直接影響指令的執(zhí)行時間 |
RISC技術(shù)
RISC:精簡指令系統(tǒng)計算機
CISC:復(fù)雜指令系統(tǒng)計算機
RISC的主要特征
選用使用頻度較高的一些簡單指令,復(fù)雜指令的功能由簡單指令來組合
指令 長度固定、指令格式種類少、尋址方式少
只有 LOAD / STORE 指令訪存
CPU 中有多個 通用 寄存器
采用 流水技術(shù) 一個時鐘周期 內(nèi)完成一條指令
采用 組合邏輯 實現(xiàn)控制器
采用 優(yōu)化 的 編譯 程序
RISC和CISC的比較
RISC更能 充分利用 VLSI 芯片的面積
RISC 更能 提高計算機運算速度(指令數(shù)、指令格式、尋址方式少,通用 寄存器多,采用組合邏輯,便于實現(xiàn)指令流水)
RISC 便于設(shè)計,可 降低成本,提高 可靠性
RISC 有利于編譯程序代碼優(yōu)化
RISC 不易 實現(xiàn) 指令系統(tǒng)兼容
第八章 CPU的結(jié)構(gòu)
CPU的功能
控制器的功能
取指令、分析指令、執(zhí)行指令,發(fā)出各種操作命令、控制程序輸入及結(jié)果的輸出、總線管理、處理異常情況和特殊情況;分別對應(yīng)指令控制、操作控制、時間控制、處理中斷、數(shù)據(jù)加工。
運算器的功能
實現(xiàn)算數(shù)運算和邏輯預(yù)算
CPU的結(jié)構(gòu)

image

image
CPU的寄存器
| 分類 | 寄存器 | 作用 |
|---|---|---|
| 用戶可見寄存器 | 通用寄存器 | 存放操作數(shù):可做某種尋址方式所需的專用寄存器 |
| 用戶可見寄存器 | 數(shù)據(jù)寄存器 | 存放操作數(shù)(滿足各種數(shù)據(jù)類型)兩個寄存器拼接存放雙倍字長數(shù)據(jù) |
| 用戶可見寄存器 | 地址寄存器 | 存放地址:其位數(shù)應(yīng)滿足最大的地址范圍用于特殊的尋址方式 段基值 棧指針 |
| 用戶可見寄存器 | 條件碼寄存器 | 存放條件碼:可作程序分支的依據(jù)如 正、負(fù)、零、溢出、進(jìn)位等 |
| 控制和狀態(tài)寄存器 | 控制寄存器 | PC->MAR->M->MDR->IR,控制CPU |
| 控制和狀態(tài)寄存器 | 狀態(tài)寄存器 | 狀態(tài)寄存器(存放條件碼),PSW寄存器(存放子程序狀態(tài)字) |
指令周期
取出并執(zhí)行一條指令所需的全部時間。分為取值周期和執(zhí)行周期
指令周期的數(shù)據(jù)流
取值周期數(shù)據(jù)流

image
間址周期數(shù)據(jù)流

image
執(zhí)行周期數(shù)據(jù)流--不同指令的執(zhí)行周期數(shù)據(jù)流不同
中斷周期數(shù)據(jù)流

image
影響指令流水線性能的因素
| 因素 | 解釋 | 解決 |
|---|---|---|
| 結(jié)構(gòu)相關(guān) | 不同指令爭用同一功能部件產(chǎn)生資源沖突使指令流水出現(xiàn)停頓,影響流水線效率 | 停頓、指令存儲器和數(shù)據(jù)存儲器分開、指令預(yù)取技術(shù) |
| 數(shù)據(jù)相關(guān) | 不同指令因重疊操作,可能改變操作數(shù)的 讀/寫 訪問順序 | 后推法、采用旁路技術(shù) |
| 控制相關(guān) | 由轉(zhuǎn)移指令引起 | 今早判別轉(zhuǎn)移是否發(fā)生、及早生成轉(zhuǎn)移目標(biāo)地址、預(yù)取轉(zhuǎn)移成功或不成功兩個控制流方向上的目標(biāo)指令、加快和提前形成條件碼等 |
流水線性能
| 指標(biāo) | 性能 |
|---|---|
| 吞吐率 | 單位時間內(nèi) 流水線所完成指令 或輸出結(jié)果的數(shù)量 |
| 加速比 | m 段的流水線的速度與等功能的非流水線的速度之比 |
| 效率 | 流水線中各功能段的 利用率 |
流水線的多發(fā)技術(shù)
超標(biāo)量技術(shù)、超流水線技術(shù)、超長指令字技術(shù)
流水線結(jié)構(gòu)
指令流水線結(jié)構(gòu)

image
運算流水線

image
中斷請求
中斷請求標(biāo)記、中斷判優(yōu)邏輯、(硬件排隊、軟件排隊)
中斷響應(yīng)
響應(yīng)中斷的條件:允許中斷觸發(fā)器 EINT = 1
響應(yīng)中斷的 時間:指令執(zhí)行周期結(jié)束時刻由CPU發(fā)查詢信號
中斷隱指令
1.保護(hù)程序斷點
2.尋找服務(wù)程序入口地址
3.硬件 關(guān)中斷
保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場
程序斷點保護(hù)和保護(hù)CPU內(nèi)部個寄存器內(nèi)容
中斷屏蔽技術(shù)
1.多重中斷的概念
2.實現(xiàn)多重中斷的條件
1).提前設(shè)置“開中斷”指令
2).優(yōu)先級別高的中斷源有權(quán)中斷優(yōu)先級別低的中斷源
3.屏蔽技術(shù)
1).屏蔽觸發(fā)器和屏蔽字
2).屏蔽技術(shù)可改變優(yōu)先等級
3).屏蔽技術(shù)的其他應(yīng)用
4.多重中斷的斷點保護(hù)
第九章 控制單元功能
取值周期
PC->MAR
1->R
M(MAR)->MDR
MDR->IR
OP(IR)->CU
(PC)+1->PC
間址周期
Ad(IR)->MAR
1->R
M(MAR)->MDR
MDR->Ad(IR)
執(zhí)行周期
| 指令類別 | 步驟 |
|---|---|
| 非訪存指令 | ![]() |
| 訪存指令-加法指令 | ADD X、Ad(IR)->MAR、1->R、M(MAR)->MDR、(ACC)+(MDR)->ACC |
| 訪存指令-存數(shù)指令 | STA X、Ad(IR)->MAR、1->W、ACC->MDR、MDR->M(MAR) |
| 訪存指令-取數(shù)指令 | LDA x、Ad(IR)->MAR、1->R、M(MAR)->MDR、MDR-ACC |
| 轉(zhuǎn)移指令-無條件轉(zhuǎn)移 | JMP x、Ad(IR)->PC |
| 轉(zhuǎn)移指令-條件轉(zhuǎn)移 | ![]() |
中斷周期
0->MAR
1->W
PC->MDR
MDR->M(MAR)
中斷程序識別程序入口地址M->PC
0->EINT
控制方式
| 控制方式 | 解釋 |
|---|---|
| 同步控制方式 | 任一微操作均由統(tǒng)一基準(zhǔn)時標(biāo)的時序信號控制 |
| 異步控制方式 | 無基準(zhǔn)時標(biāo)信號、無固定的周期節(jié)拍和嚴(yán)格的時鐘同步、采用 應(yīng)答方式 |
| 聯(lián)合控制方式 | 同步與異步相結(jié)合 |
| 人工控制方式 | Reset、連續(xù)和單條指令執(zhí)行轉(zhuǎn)換開關(guān)、符合停機開關(guān) |

