計算機組成原理及思維導圖【非常全】


第一章、計算機系統概論


 1、計算機系統組成及性能:

  • 計算機系統是由“硬件”和“軟件”組成。

  • 衡量一台計算機性能的優劣是根據多項技術指標綜合確定的,既包括硬件的各種性能指標,又包括軟件的各種功能。

  • 計算機系統由硬件和軟件兩部分組成。

  • 計算機系統性能由硬件和軟件共同決定。

2、計算機系統5層層次結構:

  • 微程序機器、傳統機器、操作系統機器、匯編語言機器、高級語言機器

  • 微程序機器和傳統機器是物理機,其他是虛擬機。

3、馮諾依曼機器的主要特點:

  1. 計算機由運算器、存儲器、控制器、輸入設備和輸出設備五大部分組成;

  2. 指令和數據存儲在存儲器中,並可以按地址訪問;

  3. 指令和數據均以二進制表示;

  4. 指令由操作碼和地址碼構成,操作碼指明操作的性質,地址碼表示操作數在存儲器中的位置;

  5. 指令在存儲器內按順序存放,通常按自動的順序取出執行;

  6. 機器以運算器為中心,I/O設備與存儲器交換數據也要通過運算器。(后來有以存儲器為中心的計算機結構)

4、現代計算機組成圖:

 

5、計算機儲存單元:

  • 存儲單元:存儲一個存儲字並具有特定存儲地址的存儲單位;

  • 存儲字:一個存儲單元中存放的所有的二進制數據,按照某個地址訪問某個存儲單元獲取的二進制數據。

  • 存儲字長:存儲字中二進制數據的位數,即按照某個地址訪問某個存儲單元獲取的二進制數據的位數;

  • 存儲體:由多個存儲單元構成的存儲器件。

6、主存儲器中的MAR和MDR:

  • MAR:存儲地址寄存器,保存需要訪問的存儲單元地址。反映存儲單元的個數。

  • MDR:存儲數據寄存器,緩存讀出/寫入存儲單元的數據。反映存儲字長。

  • 存儲器的最大容量由MAR寄存器的位數和MDR寄存器的位數決定。

7、機器字長和存儲字長:

  • 機器字長:CPU一次能夠處理的二進制數據的位數。

  • 存儲字長:按照某個地址訪問某個存儲單元獲取的二進制數據的位數。


 第二章、計算機系統

  • 硬件

    • 結構
      • 主機
        • CPU
          • ALU運算器
          • CU控制器
        • 存儲器
          • 主存
          • 輔存
      • I/O
        • 輸入設備
        • 輸出設備
    • 主要技術指標
      • 機器字長
        • CPU一次能處理的數據位數
      • 存儲容量
        • 存儲容量=存儲單元個數×存儲字長
      • 運算速度
        • 單位時間執行指令的平均條數,MIPS
  • 軟件

    • 系統軟件

      • 用來管理整個計算機系統
        • 語言處理程序
        • 操作系統
        • 服務性程序
        • 數據庫管理系統
        • 網絡軟件
    • 應用軟件

      • 自己下載的普通軟件


第三章、運算方法和運算部件

1、數據的表示方法和轉換

  • 機器數正0負1真值:符號位加絕對值

    • 符號數值化的帶符號二進制數,稱為機器數。
  • 余三碼:在8421碼的基礎上,把每個編碼都加上0011格雷碼:任何兩個相鄰編碼只有1個二進制位不同,而其余3個二進制位相同

    • 當兩個余三碼想加不產生進位時,應從結果中減去0011;產生進位時,應將進位信號送入高位,本位加0011
  • 8421碼

    • 權值從高到低為8、4、2、1

      • 算術運算時,需對運算結果進行修正。 方法:如果小於、等於(1001)2,不需要修正;否則加6修正

2、帶符號的二進制數據在計算機中的表示方法及運算

(1)原碼表示:

  • X為正數時,符號位為0;X為負數時,符號位為1。

  • 其他位置上與真值一樣

  • 0存在兩種表示形式

  特點:

    • 值+0,-0的原碼分別為00000、10000,形式不唯一;

    • 正數的原碼碼值隨着真值增長而增長,負數的原碼碼值隨着真值增長而減少

    • n+1位原碼表示定點整數范圍-(2n-1)-----(2n-1)

    • n+1位原碼表示定點小數范圍 -(1-2-n)------(1-2-n)

  運算:絕對值相加減,由數值大小決定運算結果符號

(2)反碼表示:

  • 正數的反碼、補碼與原碼相同

  • 負數的反碼,按位取反,符號位取反

  特點:

    • 數值零的反碼表示不唯一

    • 正數反碼碼值隨着真值增大而增大,負數反碼碼值隨着真值增大而增大

    • n+1位反碼所表示定點整數范圍- (2n-1)-----2n-1,n+1位反碼所表示定點小數范圍-(1-2-n)-----1-2-n

  運算:滿足[X+Y]反=[X]反+[Y]反[X-Y]反=[X]反+[-Y]反

 

(3)補碼表示:

  • 從X求[X]

    • X為正數時,[X]=X

    • X為負數時,①按位求反(符號位不變),②末尾加1

  • 從[X]求X:

    • [X]的符號位為0(正數),[X]=X
    • [X]的符號位為1(負數),①按位求反(包括符號位),②末尾加1,再在數值前面加上負號-
  • 從[X]求補:

    • 按位求反(包括符號位)
    • 末尾加1

  特點:

    • 數值零的補碼表示唯一

    • 正數補碼碼值隨着真值增大而增大,負數補碼碼值隨着真值增大而增大

    • n+1位補碼所表示定點整數范圍- 2n----2n-1,n+1位補碼所表示定點小數范圍-1---1-2-n

  結論:

  • 負數的補數=模+負數

  • 互為補數的絕對值相加=模

  • 在補數中,減法運算即加法運算

  運算:[X+Y]補=[X]補+[Y]補,[X–Y]補=[X+(–Y)]補=[X]補+[–Y]補

 

(4)移碼表示:

  • [X]補的符號位取反,即得[X]移

  • 為了從碼值直接判斷對應真值的大小,所以引進移碼

  特點:

    • 最高位是符號位,1表示正,0表示負

    • 數據0有唯一的編碼

    • 移碼碼值隨着真值增大而增大

    • n+1位移碼所表示定點整數范圍- 2n——2n-1, n+1位移碼所表示定點小數范圍-1——1-2-n

    • 計算機中,移碼常用於表示階碼,故只執行加、減運算

    • 計算機中,移碼運算公式需要對結果進行修正

  運算:

    • 移碼定義:[X]移=2的n次方+X

    • 補碼定義:[X]補=2的n+1次方+Y

  • 階碼求和公式

    • [X]移+[Y]補=[X+Y]移 mod2的n+1次方

    • [X]移+[-Y]補=[X-Y]移

 

(5)補、反、原、移碼的相互轉換

  • 反碼----->原碼

    • 方法:符號位不變,正數不變,負數數值部分取反。

  • 補碼----->原碼

    • 方法1:正數不變,負數數值部分求反加1。

    • 方法2:串行轉換

      • 從最后開始數,遇到第一個“1”,除第一個“1”不變,前面數字分別取反

  • 移碼----->原碼

    • 方法:移碼轉換為補碼,再轉換為原碼

 

(6)定點數和浮點數

  定點數:

    • 小數點固定在某個位置上的數據

      • 32位定點小數、定點整數補碼的范圍

        • 32位定點小數-1~1-2-31

        • 32位定點整數-231~231-1

  浮點數:

  • 根據IEEE754國際標准,常用的浮點數有兩種格式

      • Nmax=Mmax2的Emax

      • Nmin=Mmin2的Emax

  • 單精度(32位)=8位階碼+24位尾數

    • 單精度浮點數(32位),階碼8位(含一位符號位),尾數24(含一位符號位),取值范圍:-2的127次方~(1-2的-23次方)*2的127次方
  • 雙精度(64位)=11位階碼+53位尾數

    • 雙精度浮點數(64位),階碼11位(含一位符號位),尾數53位(含一位符號位),取值范圍:-2的1023次方~(1-2的-52次方)*2的1023次方
  • 為了保證數據精度,尾數通常用規格化形式表示:當R=2,且尾數值不為0時,其絕對值應大於或等於(0.5)10小數點位置可以浮動的數據。

    • 左規

    • 右規

  • 表示形式:N = M · RE
  • 計算機中存儲形式

    • Ms+Es+E(n位)+M(m位)

      • 階碼E,一般為整數,用補碼或者移碼表示;

      • 尾數M,一般為規格化的定點小數,用補碼表示;

 3、二進制乘法運算

  • 定點原碼一位乘法

  • 兩個原碼數相乘,其乘積的符號為相乘兩數符號的異或值,數值則為兩數絕對值之積

    • [X·Y]原=[X]原·[Y]原=(X0⊕Y0)|(X1X2…Xn) · (Y1Y2…Yn)

  • 定點補碼一位乘法

  • 表達式:[X·Y]補=[X]補·(-Y0+Y1·2-1+….Yn·2-n)

  • 注意:此處為雙符號位,當最后乘積高位為負數時,需要補充加上[-|x|]補的操作

 4、二進制除法運算

  • 加減交替法:當余數為正時,商上1,求下一位商的辦法是,余數左移一位,再減去除數;當余數為負時,商上0,求下一位商的辦法是,余數左移一位,再加上除數。此方法不用恢復余數,所以又叫不恢復余數法。但若最后一次上商為0而又需得到正確余數,則在這最后扔需恢復余數

 5、浮點數運算

(1)浮點數的加減法運算

  • 1.對階操作

    • 求出△E,再對小的進行移位

  • 2.尾數的加減運算

  • 3.規格化操作

    • 規則簡化是符號位和數值最高位不同,即00.1xxxx或11.0xxxx

  • 4.舍入

    • 超出表示范圍的高位為1舍入

  • 5.檢查階碼是否溢出

(2)浮點數的乘除法運算

  • 1.浮點數階碼運算(移碼)

  • [X+Y]移=[X]移+[Y]補

  • [X–Y]移=[X]移+[–Y]補

  • 2.按照一位乘或加減交替除運算

    • 先確定符號,在列式子計算

 6、運算部件

  • ABC寄存器作業

  • 定點運算部件

  • 浮點運算部件

    • 由階碼運算部件和尾數運算部件組成

7、校驗碼

碼距:

  • 任意兩個合法碼之間不相同的二進制位數的最小值

    • 要具有差錯能力,則碼距>1

    • 合理增大碼距,就能提高發現錯誤的能力

鑒定方法:

  • 有無差錯能力

  • 是否能合理增大碼距

(1)奇偶校驗碼

  • 能發現數據代碼中一位或奇數個位出錯情況的編碼

  • 實現原理是使碼距由1增加到2

    • 步驟1:在字節高位補充一位,即校驗位

    • 步驟2:依據圖3.10電路形成原始數據D8…D1的校驗位值

    • 步驟3:將9位數據寫入主存

    • 步驟4:讀出該數據時,讀取數據D8…D1通過圖3.10判定合法性

  • 結論:

    • (1)奇偶校驗碼只能發現一位或奇位錯,且不能確定出錯位置

    • (2)奇偶校驗碼的碼距=2

(2)海明校驗碼

  • 海明碼位號和校驗位位號的關系

    • Pi的位置在2的i-1次方,但是除了最高位

  • 海明碼碼距為4

  • 糾一位錯,查一位錯

    • 2∧r≥k+r+1

  • 糾一位錯,查兩位錯

    • 2∧(r–1)≥k+r

(3)循環冗余校驗碼(CRC)

  • CRC碼可以發現並糾正信息存儲或傳送過程中連續出現的多位錯誤

  • CRC碼一般是指k位信息碼之后拼接r位校驗碼

  • 模2運算

    • 模2加減

    • 模2乘除

    • 異或邏輯

  • CRC的譯碼與糾錯

    • 更換不同的待測碼字可以證明:余數與出錯位的對應關系是不變,只與碼制和生成多項式有關


第四章、存儲器

1、概念

  • 用來存儲數據和指令等的記憶部件,叫做存儲器。存儲器是由一些編號的單元所組成。單元的編號叫做地址。

計算機對存儲器的要求是:一要存取速度快,二要存儲容量大。

存儲器按構造分為磁心存儲器、半導體存儲器、磁盤、磁帶等多種,按與中央處理機的關系可分為內存儲器和外存儲器兩類。

 2、存儲器分類

  • 1)可以分為隨機存儲器、只讀存儲器、順序存儲器和直接存儲器;

  • 2)隨機存儲器和只讀存儲器屬於隨機存儲器,即存取時間與物理地址無關;

  • 3)順序存儲器(典型的如磁帶)和直接存儲器(典型的如磁盤)屬於串行存儲器,即存取時間與物理地址有關。

3、衡量存儲器使用指標

  • 1)速度、容量、位價格。

  • 2)寄存器速度最快,主存最便宜

4、常見的存儲系統層次結構

  • 1)緩存-主存層次:用來緩解CPU和主存速度不匹配的問題,由硬件來完成,對所有的程序員完全透明。

  • 2)主存-輔存層次:用來解決主存容量不夠的問題,由操作系統和硬件共同完成,對應用程序設計者透明,對系統程序設計者不透明。

5、主存儲器的主要技術指標

  • 主存容量

    • 64×8等等

    • 計算機可尋址的最小信息單元是一個存儲字

    • 主存儲器存儲單元的總數

  • 存取速度:由存儲器存取時間和存儲周期表示

  • 存儲器存取時間:啟動一次存儲器操作(讀/寫)到完成該操作所經歷的時間

  • 存儲周期:連續啟動兩次獨立的存儲器操作所間隔的最小時間

6、主存儲器的基本操作

  • CPU通過使用AR(地址寄存器)和DR(數據寄存器)和主存進行數據傳送

  • 若AR為K位字長,DR為n位字長,則允許主存包含2∧k個可尋址單元

  • CPU與主存采取異步工作方式,以ready信號表示一次訪存操作的結束

7、讀/寫存儲器

  • 隨機存儲器(RAM)按存儲元件在運行中能否長時間保存信息分為靜態存儲器和動態存儲器

  • 靜態存儲器,利用觸發器保存信息,只要不斷電,信息就不會丟失

    • 電路簡圖

    • MOS靜態存儲結構圖

  • 動態存儲器,利用MOS電容存儲電荷來保存信息,需要不斷給電容充電才能使信息來保存信息

    • 電路簡圖

    • 16K×1位動態存儲器框圖

  • 再生

    • 集中式

    • 分散式

    • 時間小於或等於2ms

    • 行讀出再生

8、非易失性半導體存儲器

  • RAM(random access memory)即隨機存儲內存,可讀可寫,斷電時將丟失其存儲內容,故主要用於存儲短時間使用的程序。

  • ROM(Read-Only Memory)即只讀內存,只能讀不能寫,在掉電的情況下,依然保存原有的數據。

9、存儲器的組成與控制

  • 存儲器容量擴展

    • 位擴展:用多個存儲器芯片對字長進行擴充

    • 字擴展:增加存儲器中字的數量,提高存儲器的尋址范圍

    • 字位擴展,假設一個存儲器的容量為M×N位,若使用L×K位存儲器芯片,那么,這個存儲器共需要(M/L)×(N/K)個存儲器芯片

10、多體交叉存儲器

  • 提高訪存速度的方式

    • 采用高速器件

    • 采用層次結構

    • 調整主存結構

  • 計算機中大容量的主存可由多個存儲體組成,每個存儲體都具有自己的讀寫線路,地址寄存器和數據寄存器,稱為"存儲模塊"。這種多模塊存儲器可以實現重疊與交叉存取

  • 第i個模塊M的地址編號應按下式給出:M×j+i

  • 連續地址分布在相鄰的不同模塊內,而同一模塊內的地址都是不連續的

11、提高訪存速度的三種方式

  • 1)采用高速元器件;

  • 2)采用存儲層次結構:cache-主存結構;

  • 3)調整主存結構:包括單體多字,多體並行兩種方式。


  第五章、指令系統

 1、指令系統的發展

  20世紀70年代末人們提出了便於VLSI實現的精簡指令系統計算機,簡稱RISC,同時將指令系統越來越復雜的計算機稱為復雜指令系統計算機,簡稱CISC。

2、指令格式

(1)結構(操作碼+地址碼)

  • 操作碼

  • 操作數的地址

  • 操作結果的存儲地址

  • 下一條指令的地址

(2)地址碼

  • 零地址指令

  • 一地址指令

    • 尋址范圍 224 = 16 M

    • 2次訪存

  • 二地址指令

    • 尋址范圍 212 = 4 K

    • 4 次訪存

  • 三地址指令

    • 尋址范圍 28 = 256
    • 4 次訪存
  • 多地址指令

    • 尋址范圍 26 = 64

    • 4 次訪存

(3)指令字長

  • 取決因素

    • 操作碼的長度

    • 操作數地址的長度

    • 操作數地址的個數

  • 指令字長 固定

    • 指令字長 = 存儲字長
  • 指令字長 可變

    • 按字節的倍數變化
  • 對准邊界存放

    • 不連續存放數據

    • 按字節編址

    • a.半字地址最低位恆為0

    • b.字地址最低兩位恆為0

    • c.雙字地址的最低三位恆為0

    • 減少訪存次數,浪費存儲空間

  • 不 對 准 邊 界 存 放

    • 連續存放數據

    • 節約存儲器空間,但增加訪存次數,對多字節數據存在調整高 低字節位置的問題

(4)尋址方式

①分類:

  1. 立即尋址:執行速度快,不能被修改,立即數大小受長度限制,靈活性較差。

  2. 寄存器間接尋址:又快又靈活,被廣泛使用。

  3. 直接尋址:不需要做尋址運算,簡單直觀,受地址碼字長限制。

  4. 間接尋址:靈活,能擴大尋址范圍,速度慢。

  5. 變址尋址:修改地址方便,無需修改指令,只需修改地址即可。

  6. 基址尋址:大型計算機采用的一種技術,將用戶的邏輯地址轉換為主存的物理地址。

②指令系統類型:

  1. CISC(復雜):數量多,使用頻率差別大,可變長格式;適用於小型機。

  2. RISC(簡單):數量少,使用頻率接近,定長格式;適用於大型機。

(5)指令操作碼的擴展技術

  • 指令操作碼的長度決定了指令系統中完成不同操作的指令數

  • 若某機器的操作碼長度固定為K位,則它最多只能有2^K條不同指令

  • 指令操作碼兩種格式
  • 固定格式

    • 優點:對於簡化硬件設計,減少指令譯碼時間非常有利

    • 缺點:指令少,浪費地址

  • 可變格式(分散地放在字的不同字段)

    • 優點:指令多,縮短指令平均長度,減少程序總位數,增加指令字所能表示的操作信息

    • 缺點:譯碼復雜,控制器的設計難度增大

  • 拓展方法的一個重要原則

    • 使用頻度(即指令在程序中出現概率)高的指令應分配短的操作碼,使用頻度低的指令相應地分配較長的操作碼
  • 指令系統的兼容性

    • 保持系統向上兼容


 第六章、中央處理器

1、計算機工作過程

  • 加電----->產生reset信號----->執行程序----->停機----->停電

  • 產生reset信號的任務

    • 任務一:使計算機處於初始狀態

    • 任務二:從PC中取出指令地址

  • 控制器作用是協調並控制計算機各部件執行程序的指令序列

2、控制器的組成

(1)控制器的功能

  • 取指令

    • 發出指令地址,取出指令的內容
  • 分析指令

    • (1)對操作碼譯碼產生操作相應部件的控制信號

    • (2)根據尋址方式形成操作數地址

  • 執行指令

    • (1)根據分析指令后產生控制信號、操作數地址信號序列,通過CPU及輸入輸出設備的執行實現每條指令的功能

    • (2)結果回送存儲器

    • (3)形成下條指令的地址

  • 控制程序和數據的輸入和結果輸出

  • 對異常情況和某些請求的處理

    • 異常情況的處理:例如算術運算的溢出、數據傳送奇偶錯

    • 某些請求的處理

      • “中斷請求”信號

      • DMA請求信號

(2)控制器的組成

  • 程序計數器(PC):即地址寄存器,用來存放當前正在執行的指令地址或即將要執行的下一條指令地址

  • 指令寄存器(IR):用以存放當前正在執行的指令,以便在指令執行過程中控制完成一條指令的全部功能

  • 指令譯碼器或操作碼譯碼器:對指令寄存器中的操作碼進行分析解釋,產生相應的控制信號

  • 脈沖源及啟停線路:脈沖源參數一定評率的脈沖作為整個機器的時鍾脈沖,是機器周期和工作脈沖的基准信號,在機器剛加電時,還應產生一個總清信號(reset)

  • 時序控制信號形成部件

    • 當程序啟動后,在CLK時鍾作用下,根據當前正在執行的指令的需要,產生相應的時序控制信號,並根據被控制功能部件的反饋信號調整時序控制信號

      • 控制存儲器

      • 微指令寄存器

        • 控制字段+下址

  • 周期概念

    • 指令周期:完成一條指令所需的時間,包括取指令、分析指令、執行指令

    • 機器周期:也稱為CPU周期,是CPU從內存中讀取一個指令的時間,通常等於取指周期

    • 時鍾周期:稱為節拍脈沖或T周期,是基准脈沖信號

  • 三條假設

    • 程序是存放在主存中的,當執行完一條指令后才從主存中取下一條指令(非流水線)

    • 指令的長度是固定的,並限制了尋址方式的多樣化

    • 在程序運行前,程序和數據都已存在主存中

(3)指令執行過程(運算器和控制器配合)

  • 組成控制器的基本電路

    • 具有記憶功能的觸發器以及由它組成的寄存器,計數器和存儲單元

    • 沒有記憶功能的門電路及由它組成的加法器,算術邏輯運算單元(ALU)和各種邏輯電路

  • 舉例加法:取指令——>計算操作數地址——>取操作數——>執行結果並運算送結果
  • 條件轉移指令:取指令——>計算地址
  • 控制器的功能就是按每一條指令的要求產生所需的控制信號

  • 產生控制信號的方法

    • 微程序控制

    • 硬布線控制

3、微程序控制計算機的基本工作原理

(1)基本概念

  • 微指令

    • 在微程序控制的計算機中,將由同時發出的控制信號所執行的一組微操作
  • 微命令

    • 將指令分為若干條微指令,按次序執行這些微指令。組成微指令的操作即微命令
  • 微程序

    • 計算機的程序由指令序列構成,而計算機每條指令的功能均由微指令序列解釋完成,這些微指令序列的集合就叫做微程序
  • 控制存儲器

    • 微程序一般是存放在專門的存儲器中的,由於該存儲器主要存放控制命令(信號)與下一條執行的微指令地址(簡稱下址)

    • 存儲單元內容

      • (1)微指令的控制信號——控制位

      • (2)下條微指令的地址——下址字段

    • 存儲芯片:ROM

      • 執行一條指令實際上就是執行一段存放在控制存儲器中的微程序

(2)實現微程序控制的基本原理

  • 控制信號(23條)

  • 書上P123頁為加法的過程

  • 微指令格式:控制字段+下址字段

  • 23個控制位,12個下址位——>容量為4K

  • 取址微指令的操作對所有指令都是相同的,所以是一條公用的微指令,其下址由操作碼譯碼產生

(3)微程序控制器

  • 時序信號及工作脈沖的形成

  • 停機和停電的區別

    • 停機

      • 電壓:穩定

        • 存放內容:保持

          • 重啟PC內容:斷點指令地址

    • 停電

      • 電壓:消失

        • 存放內容:RAM的內容消失

          • 重啟PC內容:第一條指令地址

4、微程序設計技術

 (1)如何縮短微指令字長

  • ①直接控制法(容量太小)

    • 編譯方法:每一位代表一個控制信號,直接送往相應的控制點

    • 優點:控制簡單

    • 缺點:微指令字長過大

  • ②字段直接編譯法

    • 選出互斥的微指令

    • 每個字段都要留出一個代碼,表示本段不發出任何指令(000)

    • 優點:節省微指令的字長

    • 缺點:增加了額外的硬件開銷

  • ③字段間接編譯法

    • 指令之間相互聯系的情況

    • 舉例:A為0-7,B為0-3,如果是直接編譯——3+2=5,如果是間接編譯——3+1=4

    • 編碼方法:在字段直接編譯法中,譯碼輸出端要兼由另一字段中的某些微命令配合解釋

    • 優點:減少了微指令長度

    • 缺點:可能削弱微指令的並行控制能力,同時增加硬件開銷

  • ④常熟源字段E(了解)

(2)如何減少微指令長度

  • ①現行微指令/微地址

    • 現行微指令:當前正在執行的指令

    • 現行微地址:存放現行微指令的控制器存儲單元

  • ②后繼微指令/微地址

    • 后繼微指令:下一條要執行的微指令

    • 后繼微地址:存放后繼微指令的控制器存儲單元

  • ③增量與下址字段結合產生后繼微指令的方法

    • 下址字段分成:轉移控制字段BCF和轉移地址字段BAF

      • BCF:控制微程序的轉移情況

      • BAF:轉移后的微指令所在地址

    • BAF有兩種情況

      • 與uPC的位數相等——轉移靈活,但增加微指令長度

      • 比uPC短——轉移地址收到限制,但可縮短微指令長度

    • 優點

      • 微指令的下址字段很短,僅用於選擇輸入uPC計數器的某條線路有效

    • 缺點

      • 微程序轉移不靈活,使得微程序在控存中的物理空間分配有困難

  • ④多路轉移方式

    • 一條微指令存在多個轉移分支的情況稱為多路轉移

  • ⑤微中斷

    • 1.微中斷請求信號是由程序中斷請求信號引起的

    • 2.在完成現行指令的微程序后響應該微中斷請求

    • 3.由硬件產生對應微中斷處理程序在控存中的入口地址

(3)如何提高微程序的執行速度

  • ①微指令格式

    • 水平型微指令:直接控制,字段編譯(直接、間接)

      • 特點:在一條微指令中定義並並行執行多個微命令

    • 垂直型微指令:采用微操作碼編譯法,由操作碼規定微指令的功能

      • 特點:不強調實現微指令的並行控制功能

  • ②微程序控制存儲器

    • 一般采用ROM存儲器

    • 也可采用RAM,為防止斷電后內容消失,則必須開機后將外存中存放的微程序調入控存RAM,然后才能執行程序。

    • 當前為了能不斷擴展指令系統,通常采用ROM+RAM

  • ③動態微程序設計

    • 定義:能根據用戶要求改變微程序

    • 優點:是計算機能更靈活、有效的適應於各種不同的應用目標

  • ④控制存儲器的操作(P136)

    • 串行方式

    • 並行方式——比串行多了微指令寄存器

      • 微周期=max(取微指令時間,執行微指令時間)

      • 由於取微指令、執行微指令同時進行,故對於某些后繼微地址的產生根據處理結果而定的微指令,則延遲一個微周期再取微指令

5、流水線工作原理

(1)結論

  • 每條指令的執行時間不變

  • 每條指令處理結果的時間縮短

  • 流水線處理速率最高時=流水線處於滿載的穩定狀態

  • 流水線處理速率最低時=流水線未滿載狀態

  • 為了滿足在重疊時間段不同指令的機器周期能夠完成指定的操作,將時間段=操作完成的最長時間

  • 為了保證一個周期內流水線的輸入信號不變,相鄰時間段之間必須設置鎖存器或寄存器

  • 除了指令執行流水線,還有運算操作流水線

(2)相關問題

  • 流水線阻塞

    • 數據相關產生

      • 假設第二條指令需要的操作數是第一條指令運算的結果,那么出現了數據相關

    • 指令執行時間不同產生

    • 程序轉移的影響

    • 異常情況響應中斷

(3)流水線計算公式

  • 公式:Nt+(K-1)t (N表示段,K表示多少指令,t表示時間)

  • 流水線周期為執行時間最長的一段

 第七章、存儲系統

1、存儲系統的層次結構

  • cache->主存->輔存

  • cache:提高CPU數據輸入輸出的速度

2、高速緩沖存儲器

  • ①cache的工作原理

  • 局部性原理

  • 主存地址和cache地址

  • 塊長:塊長一般取一個主存周期所能調出的信息長度(一般為16個字)

  • cache的容量和塊的大小是影響cache的效率的重要因素

  • 命中率:CPU所要訪問的信息是否在cache中的比率,而將所要訪問的信息不在cache中的比率稱為失敗率

  • 一致性策略

    • 標志交換方式(寫回法)

    • 通過式寫入(寫通法)

    • 寫操作直接對主存進行,而不寫入cache

  • cache的存取時間:平均存取時間=h*tc+(1-h)(tc+tm)

  • 最好替換策略:按照被替換的字塊是下一段時間最少使用的,由替換部件實現

  • ②cache組織

    • 地址映像

      • 直接映像

        • cache中許多空的位置被浪費

        • 主存地址:主存字塊標記+cache字塊地址+字塊內地址

      • 全相聯映像
        • 成本太高而不能采用
        • 主存地址:主存字塊標記+字塊內地址
        • 優點:方式靈活,縮小了塊發生沖突的概率
        • 缺點:增加了標識位位數
        • 增加了尋找主存塊在cache中對應塊的時間
      • 組相聯映像
        • 直接映像和全相聯映像的折衷
        • 主存地址:主存字塊標記+組地址+塊內地址

3、虛擬存儲器

  • 存儲管理部件(MMU)

    • 現代計算機一般都有輔助存儲器,但具有輔存的存儲系統不一定是虛擬存儲系統

    • 虛擬存儲系統的特點

      • 允許用戶程序用比主存大的多的空間來訪問主存

      • 每次訪存都要進行虛實地址的轉換


 第八章、輔助存儲器

1、概述

   半導體存儲器可隨機訪問任一單元,而輔助存儲器一般為串行訪問存儲器。

2、輔助存儲器的種類

  • 磁表面存儲器

    • 數字式磁記錄

      • 硬盤、軟盤和磁帶
    • 模擬式磁記錄

      • 錄音、錄像設備

  • 光存儲器

    • 光盤

3、串行存儲器

  • 順序存取存儲器

  • 直接存取存儲器

4、輔助存儲器的技術指標

  • 存儲密度

    • 定義:單位長度或單位面積磁層表面磁層所存儲的二進制信息量

    • 道密度:沿磁盤半徑方向單位長度的磁道數稱為道密度,單位為道/英寸tpi或道/毫米tpmm

    • 位密度或線密度:單位長度磁道所能記錄二進制信息的位數叫位密度或線密度,單位為位/英寸bpi或位/毫米bpmm

    • 每個磁道所存儲的信息量是一樣的

  • 存儲容量:C = n × k × s

  • 尋址時間:平均尋址時間Ta=平均找道時間Ts+平均等待時間Tw

  • 輔存的速度

    • 尋址時間

    • 磁頭讀寫時間

  • 數據傳輸率:Dr = D × V

  • 誤碼率

  • 價格

 5、硬磁盤存儲器的類型

  • 固定磁頭和移動磁頭

  • 可換盤和固定盤

 6、磁盤存儲器

  • 溫徹斯特磁盤簡稱溫盤

  • 磁盤存儲器由驅動器(HDD),控制器(HDC)和盤片組成

  • 最外面的同心圓叫0磁道,最里面的同心圓假設稱為n磁道

  • 驅動器的定位驅動系統實現快速精准的磁頭定位

  • 主軸系統的作用是帶動盤片按額定轉速穩定旋轉

  • 數據控制系統的作用是控制數據的寫入和讀出,包括尋址,磁頭旋轉,寫電流控制,讀出放大,數據分離

  • 磁盤控制器有兩個方向的接口

    • 與主機的接口

    • 與驅動器(設備)的接口

 7、光盤

  • 采用光存儲技術

    • 利用激光寫入和讀出

    • 第一代光存儲技術

      • 采用非磁性介質
        • 不可擦寫
    • 第二代光存儲技術

      • 采用磁性介質

        • 可擦寫

  • 光盤的存儲原理

    • 只讀型和只寫一次型

      • 熱作用(物理或化學變化)
    • 可擦寫光盤

      • 熱磁效應


第九/十章、輸出輸出(I/O)設備/系統

1、設備控制器(I/O)的基本功能

  • 實現主機和外部設備之間的數據傳送

  • 實現數據緩沖,以達到主機同外部設備之間的速度匹配

  • 接受主機的命令,提供設備接口的設備,並按照主機的命令控制設備

2、I/O 編址方式

  • 統一編址:用取數、存數指令

  • 不統一編址:有專門的 I/O 指令

3、I/O 與主機的連接方式

  • ①輻射式連接

    • 每台設備都配有一套

    • 控制線路和一組信號線

    • 不便於增刪設備

  • ②總線連接

    • 便於增刪設備

4、I/O設備

  • 人機交互設備:鍵盤、鼠標等
  • 計算機信息的駐留設備:硬盤、光盤等
  • 機—機通信設備:MODEN等

5、中斷服務程序的流程

  • (1) 保護現場

    • 程序斷點的保護
    • 寄存器內容的保護
  • (2) 中斷服務

    • 對不同的 I/O 設備具有不同內容的設備服務
  • (3) 恢復現場

    • 出棧指令
  • (4) 中斷返回

    • 中斷返回指令

6、單重中斷和多重中斷

  • 單重 中斷

    • 不允許中斷 現行的 中斷服務程序
  • 多重 中斷

    • 允許級別更高 的中斷源

    • 中斷 現行的 中斷服務程序

7、DMA 方式

  • 主存和 I/O 之間有一條直接數據通道

  • CPU 和 I/O 並行工作

  • DMA 的三種工作方式

    • (1) CPU暫停方式

    • (2) CPU周期竊取方式

    • (3)直接訪問存儲器

  • DMA 接口功能

    • (1) 向 CPU 申請 DMA 傳送

    • (2) 處理總線 控制權的轉交

    • (3) 管理 系統總線、控制 數據傳送

    • (4) 確定 數據傳送的 首地址和長度,修正 傳送過程中的數據地址和長度

    • (5) DMA 傳送結束時,給出操作完成信號

  • DMA 傳送過程

    • 預處理、數據傳送、后處理

8、外設接口

  • 設備與主機相連時,必須按照規定的物理互連特性、電氣特性等進行連接,這些特性的技術規范稱為接口標准。

 思維導圖


 注:本文整理於網絡及課后筆記,供大家學習參考。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM