軟考架構師(1)——計算機組成與體系結構


全文鏈接:https://www.cnblogs.com/nullering/p/9684820.html

一:計算機系統概述

1:計算機發展歷程

2:結構

(1)馮諾依曼機:由運算器,控制器,存儲器,輸入,輸出五部分組成,以運算器為中心

(2)計算機層次結構:應用程序-高級語言-匯編語言-操作系統-指令集架構層-微代碼層-硬件邏輯層

3:分類

單指令單數據流:馮諾依曼體系結構

單指令多數據流:向量處理器

多指令單數據流:不存在

多指令多數據流:多處理器

3:基本概念

機器字長:CPU一次能處理數據的位數,與CPU中寄存器位數有關

存儲字長:存儲器中一個存儲單元(存儲地址)所存儲的二進制代碼位數,與MDR位數有關,數據總線

指令字長:計算機指令字的位數

數據字長,計算機數據存儲所占用的位數

 

總線寬度:總線上同時能夠傳輸的數據位數,即數據總線的根數

總線帶寬:單位時間內總線上傳輸數據的位數,通常每秒傳輸的字節數來衡量  總線帶寬 = 總線工作頻率* (總線寬度/8)

主存帶寬:數據傳輸率

 

總線傳輸周期:一次總線操作所需的時間(申請,尋址,傳輸,結束),由若干總線時鍾周期構成

總線時鍾周期:及其時鍾周期

CPU時鍾周期:主拍脈沖或T周期,為主頻的倒數

 

吞吐量:單位時間內數據輸出數量

響應時間:從事件開始到事件結束的時間

CPU時鍾周期:機器主頻的倒數

CPI:執行一條指令所需的平均時鍾周期

MIPS:每秒百萬條指令

MFLOPS:程序中浮點數的運算次數

 

二:數制與編碼

進制轉換:

BCD碼:8421碼(加6修正)余3碼,2421碼

ASCII碼:

校檢原理:

碼距:

奇偶校檢碼:

海明校檢碼:

循環冗余碼:

定點數:

無符號數與有符號數

原碼

補碼

反碼

移碼

轉換:

x為正數【x】

x為負數

無論正負【x】補——連同符號位取反加一——>【-x】

運算:

加法

移位運算:邏輯移位(無符號)算術移位()

算術運算:

 

 

循環移位

例一:定點數加法運算

假設兩個帶符號整數x , y .用8位補碼表示,x=63 ,y = -31,則x - y 的表示及溢出標識OF是——

解:【x】原 = 0011  1111 ,[y]原 = 1001 1111  ,

  【x】補 = 0011  1111 [y]補 = 1110 0001,[-y]補 = 0001 1111

  【x-y】 = 【x】補 +【-y】補 = 5EH ,沒有溢出 OF =0

例二:溢出判斷:進位丟棄最高位不一定溢出,超出表示范圍才算溢出,(當最高位進位與符號位進位的值不同是才溢出,可能是正負反轉)

 

 

浮點數:

IEEE754標准:

規格化后的短浮點數的真值為:(-1)^s X 1.M X  2^(E-127)

浮點數的加減運算:對階,尾數相加,規格化,舍入,判溢出

溢出:階碼是否超出了表示范圍

注意C語言中運算以補碼表示運算

 例一:浮點數加減運算以及溢出判斷

浮點數的階碼和尾數均采用補碼表示,且位數分別為5位和7位(均含2位符號位),數X=2^7  *  29/32

Y = 2^5   *   5/8 ,則用浮點加法計算X + Y 的最終結果為——

解:x =  00,111;00,11101    y= 00 ,101; 00,101 

1:對階:小階向大階看起:y = 00,111;00,00101

2:尾數相加  00,11101

    +   00,00101

    ——————

         01,00010

3:規格化:尾數右移一位,階碼加一   01,000;00,10001

4:判溢出:階碼符號位為01 溢出

 

三:存儲系統

體系結構化層次:

 

基本概念:

邊界對齊:

大端小端存儲方式:

    • 大端:最高字節地址是數據地址(0123存成0123)
    • 小端:最低字節地址是數據地址(0123存成3210)

 

1:存儲器月CPU的鏈接

(1)主存容量擴展:

字擴展:

位擴展:

字位同時擴展:

(2)雙口RAM與多模塊存儲器

雙端口RAM

 

兩個端口對同一主存:可同時讀,不可同時寫,也不能邊讀邊寫

 

多提並行存儲器

高位交叉編址:

地位交叉編址:

 

 

 

2:半導體存儲器:

 

 

 (1)隨機存儲器

 DRAM存儲器的刷新

分散刷新:

集中刷新:

異步刷新:

(2)只讀存儲器ROM

MROM(掩膜式只讀存儲器):

PROM(一次可編程只讀存儲器)

EPROM(可編程可擦除)

FlashMermory(閃存存儲器):U盤

固態硬盤

3:Cache

(1)地址映射方式:

全相連:主存字塊標記|字塊內地址

直接映射:

組相連:

(2)替換算法:

隨機

先入先出

最近最少使用(LRU)

最不經常使用(LFU)

(3)寫策略

命中:全寫法 和寫會法

不命中:寫分配法和非寫分配法

 

 

 

 

 

 4:虛擬存儲器

解決主存容量不足,希望向程序員提供更大的編程空間

頁式虛擬存儲器

轉換:虛擬地址= 虛擬頁號+頁內偏移------->物理頁號+頁內偏移

段式虛擬存儲器

段頁式虛擬存儲器

快表TLB:

頁表,段表放在主存中,收到虛擬地址后先訪問主存,查詢頁表段表進行虛實地址轉換

 

 四:總線

1:基本概念

總線:一組能為多個部件分時共享的公共信息傳送線路

總線特性:機械特性(尺寸,形狀,管腳數),電氣特性(傳輸方向和有效的電平范圍),功能特性(每根傳輸線的功能),時間特性(信號的時序關系)

分類:

按數據傳輸格式:串行總線和並行總線

按總線功能:片內總線,系統總線(數據總線,地址總線,控制總線),通信總線

按時序控制方式:同步總線,異步總線

結構:單總線結構,雙總線結構,三總線結構

性能指標:

總線的傳輸周期(總線周期):一次總線操作所需的時間(包括申請階段、 尋址階段、傳輸階段和結束階段),通常 由若干個總線時鍾周期構成。

總線時鍾周期: 即機器的時鍾周期。

總線的工作頻率:為總線周期的倒數。 實際上指一秒內傳送幾次數據。

總線的時鍾頻率  : 即機器的時鍾頻率,為時鍾周期的倒數。 若時鍾周期為T,則時鍾頻率為1/T。 實際上指一秒內有多少個時鍾周期。

總線寬度:是總線上同時能夠傳輸的數據位數, 通常是指數據總線的根數

總線帶寬:可理解為總線的數據傳輸率,即單位時間內總線上可傳輸 數據的位數

2:總線仲裁

集中仲裁

 

 

鏈式查詢

計數器定時查詢

 

 

獨立請求

 

 

分布式

3:操作和定時

4:總線標准

系統總線標准:ISA,EISA,VESA,PCI,PCI-Express

設備總線標准:IDE,AGP,RS-232C,USB,SCSI

局部總線標准:

 五:中央處理器

1:CPU的功能與結構

2:指令執行過程

 

3:數據通路的功能的基本結構

主存與CPU之間的數據傳送

CPU從主存讀取指令,實現傳送操作的流程及控制信號為:

(PC)→Bus→MAR PCout和MARin有效,現行指令地址→MAR

1→R   CU發讀命令(通過控制總線發出,圖中未畫出)

MEM(MAR)→MDR MDRin有效 MDR

MDR→Bus→IR MDRout和IRin有效,現行指令→IR

4:控制器的功能和工作原理

5:指令流水線

 

六:指令系統

基本概念

數據通路:執行部件間傳送信息的路徑,分為共享通路和專用通路

指令集:一台機器所有指令的集合

RISC(精簡指令集)和CISC(復雜指令集)

指令字長:指令中包含的二進制位數,有等長指令、變長指令。

指令分類

零地址指令:

一地址指令:訪存2次

二地址指令:訪存3次

三地址指令:訪存4次

尋址方式

指令尋址方式:順序尋址,跳躍尋址

操作數尋址方式:

立即數尋址:地址碼字段是操作數本身 MOV AX, 200H

寄存器尋址:地址碼字段是寄存器地址 MOV AX, BX

直接尋址:地址碼字段是內存地址 MOV AX, [200H]

間接尋址:地址碼字段是內存地址的地址 MOV AX, I[200H]

寄存器間接尋址:地址碼字段是存內存地址的寄存器地址 MOV AX, [BX]

相對尋址:操作數地址 + 當前PC的值

基址尋址:操作數地址 + 基址寄存器的值(一段程序中不變) MOV AX, 32[B]

變址尋址:操作數地址 + 變址寄存器的值(隨程序不斷變化) MOV AX, 32[SI]

 指令格式:R型指令,I型指令,J型指令

 

微指令

微指令的編碼方式:目標盡量縮短指令字長

(1)直接編碼方式:無須譯碼,以為代替一個微指令

(2)字段直接編碼:互斥的放在同一字段,留出一個狀態(000)

(3)字段間接編碼

微指令格式

水平型             垂直型

微程序短,速度快        微程序長,速度慢

微指令長,編碼麻煩      微指令端,好編碼

流水線

 

 

七:輸入輸出系統

1:IO系統

 (1)IO軟件

IO指令:CPU指令的一部分

通道指令

(2)IO硬件:外部設備,設備控制器和接口,IO總線

 

(3)IO接口

統一編址和獨立編址

(4)IO子系統結構層次

用戶層I/O軟件:實現與用戶交互的接口,用戶可以直接調用在用戶層提供的、與I/O操作有關的庫函數,對設備進行操作。

設備獨立軟件:用於實現用戶程序與設備驅動器的統一接口、設備命令、設備保護以及設備分配與釋放等,同時為設備管理和數據傳送提供必要的存儲空間。

設備驅動程序:與硬件直接相關,負責具體實現系統對設備發出的操作指令,驅動I/O設備工作的驅動程序。

中斷處理程序:用於保護被中斷進程的CPU環境,轉入相應的中斷處理程序進行處理,處理完並恢復被中斷進程的現場后,返回到被中斷進程。

2:IO方式

程序查詢方式

 

程序中斷方式

中斷:

 

中斷判優:

中斷隱指令:

關中斷:

保存斷點:

引出中斷服務程序:

DMA方

3:外部設備

輸入設備:鍵盤,鼠標

輸出設備:顯示器,打印機

外存儲器:磁盤,光驅

磁盤存儲器:

 

 記錄密度:道密度(磁盤延半徑方向的磁道數,),位密度(磁道單位長度上能記錄的二進制代碼位數),面密度(位密度與道密度的乘積)

 平均存取時間=尋道時間(磁頭移動到目的磁道)+旋轉延遲時間(磁頭固定到所在扇區)+傳輸時間(傳輸數據所花的時間)

數據傳輸率:單位時間內向主機傳送數據的字節數

磁盤陣列:

RAID0:無冗余和無校檢的磁盤陣列,條帶均勻分布

RAID1:以鏡像為冗余方式

RAID2:糾錯海明碼

RAID3:位交叉奇偶校檢

RAID4:塊交叉奇偶校檢

RAID5:無獨立校檢的奇偶校檢

 

 八:專題專解

1:各種實現

程序查詢:純軟件

程序中斷:軟件傳遞+硬件中斷

DMA:純硬件

通道:軟硬件結合

中斷系統:隱指令(硬件)中斷程序(軟件)

時鍾管理:專用統一計數器

地址映射:寄存器+加法器+其他

 

計算專題:

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

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



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