計算機組成原理-03-計算機的組成(一)

總線

總線(Bus)是計算機各種功能部件之間傳送信息的公共通信干線,它是cpu、內存、輸入、輸出設備傳遞信息的公用通道,主機的各個部件通過總線相連接,外部設備通過相應的接口電路再與總線相連接,從而形成了計算機硬件系統。

為什么要有總線?

假設沒有總線這種設計,計算機設備都是分散連接的,如下圖:

image

此時如果新增了一個輸入設備2,此時需要分別連接存儲器、控制器、運算器,設備一多線路就會十分復雜。


image

有了總線之后,設備直接連接總線,使得計算機內部結構變得十分清晰,設備的添加和卸載也變得容易。


image

總線的分類

片內總線

**高集成度芯片內部的信息傳輸線**,用于連接寄存器與寄存器、寄存器和控制器&運算器之間。

系統總線

 CPU、主內存、IO設備、各組件之間的信息傳輸線。一般有三類:數據總線、地址總線、控制總線。
數據總線
雙向傳輸各個部件的數據信息

數據總線的位數(總線寬度)是數據總線的重要參數,一般與CPU位數相同(32位、64位)
地址總線
指定源數據或目的數據在內存中的地址

地址總線的位數與存儲單元有關

地址總線位數=n,尋址范圍:0~??^??
控制總線
控制總線是用來發出各種控制信號的傳輸線

控制信號經由控制總線從一個組件發給另外一個組件

控制總線可以監視不同組件之間的狀態(就緒/未就緒)

總線的仲裁

系統中多個設備或模塊可能同時申請對總線的使用權,為避免產生總線沖突,需由總線仲裁機構合理地控制和管理系統中需要占用總線的申請者,在多個申請者同時提出總線請求時,以一定的優先算法仲裁哪個應獲得對總線的使用權。

仲裁方法

鏈式查詢

總線授權信號BG串行地從一個I/O接口傳送到下一個I/O接口。假如BG到達的接口無總線請求,則繼續往下查詢;假如BG到達的接口有總線請求,BG信號便不再往下查詢,該I/O接口獲得了總線控制權。離中央仲裁器最近的設備具有最高優先級,通過接口的優先級排隊電路來實現。

好處:只用很少幾根線就能按一定優先次序實現總線仲裁,很容易擴充設備。

壞處:對詢問鏈的電路故障很敏感,如果第i個設備的接口中有關鏈的電路有故障,那么第i個以后的設備都不能進行工作。查詢鏈的優先級是固定的,如果優先級高的設備出現頻繁的請求時,優先級較低的設備可能長期不能使用總線。

計時器定時查詢

總線上的任一設備要求使用總線時,通過BR線發出總線請求。中央仲裁器接到請求信號以后,在BS線為“0”的情況下讓計數器開始計數,計數值通過一組地址線發向各設備。每個設備接口都有一個設備地址判別電路,當地址線上的計數值與請求總線的設備地址相一致時,該設備 置“1”BS線,獲得了總線使用權,此時中止計數查詢。

每次計數可以從“0”開始,也可以從中止點開始。如果從“0”開始,各設備的優先次序與鏈式查詢法相同,優先級的順序是固定的。如果從中止點開始,則每個設備使用總線的優先級相等。

計數器的初值也可用程序來設置,這可以方便地改變優先次序,但這種靈活性是以增加線數為代價的。

獨立請求

每一個共享總線的設備均有一對總線請求線BRi和總線授權線BGi。當設備要求使用總線時,便發出該設備的請求信號。中央仲裁器中的排隊電路決定首先響應哪個設備的請求,給設備以授權信號BGi。

獨立請求方式的優點:響應時間快,確定優先響應的設備所花費的時間少,用不著一個設備接一個設備地查詢。其次,對優先次序的控制相當靈活,可以預先固定也可以通過程序來改變優先次序;還可以用屏蔽(禁止)某個請求的辦法,不響應來自無效設備的請求。

缺點:設備連線多,總線控制復雜。


輸入輸出設備

常見的輸入輸出設備

鼠標、鍵盤、掃描儀、顯示器等。

輸入輸出接口的通用設計

數據線
是I/O設備與主機之間進行數據交換的傳送線 

單向傳輸數據線

雙向傳輸數據線
狀態線
IO設備狀態向主機報告的信號線 

查詢設備是否已經正常連接并就緒 

查詢設備是否已經被占用
命令線
CPU向設備發送命令的信號線 

發送讀寫信號

發送啟動停止信號
設備選擇線
主機選擇I/O設備進行操作的信號線 

對連在總線上的設備進行選擇   

CPU與IO設備的通信

CPU和IO設備的速度是不一致的

程序中斷

提供低速設備通知CPU的一種異步的方式,CPU可以高速運轉同時兼顧低速設備的響應。

當外圍IO設備準備就緒時,向CPU發送中斷信號,CPU內部有專門的電路響應中斷信號,CPU收到中斷信號后就會中斷當前工作轉為處理外圍設備的工作。待工作完成后,CPU加載之前的工作,繼續處理。

DMA(直接存儲器訪問)

當主存與IO設備交換信息時,不需要中斷CPU,可以提高CPU的效率。一般計算機的硬盤與顯卡都有DMA設備。

image-20210223233726647

存儲器

存儲器的分類

image-20210224004720192
image-20210224004726664

存儲器的層次結構

image-20210224000418297
緩存-主存層次

利用了局部性原理,在CPU和主存之間增加了一層速度快(容量小)的Cache,目的是為了解決主存速度不足的問題。

將程序經常訪問的內存置換到高速緩存即可。

局部性原理
局部性原理是指CPU訪問存儲器時,無論是存取指令 還是存取數據,所訪問的存儲單元都趨于聚集在一個 較小的連續區域中。
主存-輔存層次

利用了局部性原理,在主存之外增加輔助存儲器,目的是解決主存容量不足的問題。

將程序當前使用的數據加載到主存,不使用的數據加載到輔存。

主存儲器與輔存儲器

主存

RAM(隨機存取存儲器:Random Access Memory)

RAM通過電容存儲數據,必須隔一段時間刷新一次

如果掉電,那么一段時間后將丟失所有數據

32位系統主存大小為:2^32 =4×2^30 =4????

64位系統主存大小為:2^64 = 234 × 2^30 = 2^34????

輔存

表面是可磁化的硬磁特性材料

移動磁頭徑向運動讀取磁道信息

磁盤調度算法

先來先服務算法 :按順序訪問進程的磁道讀寫需求

最短尋道時間優先:與磁頭當前位置有關,優先訪問離磁頭最近的磁道

掃描算法(電梯算法) :每次只往一個方向移動,到達一個方向需要服務的盡頭再反方向移動

循環掃描算法:每次只往一個方向移動,到盡頭后回到初始位繼續掃描


高速緩存

在存儲器的層次結構中,高速緩存在CPU和主存之間,主要是為了解決CPU和主存速度不匹配的問題。

image-20210224003028615

高速緩存的工作原理

在往下看之前,先了解下下面的概念:

字: 指存放在一個存儲單元中的二進制代碼組合
字塊:存儲在連續存儲單元中而被看作是一個單元的一組字

假設一個字有32位,一個字塊有A個字,主存共有B個字塊 
那么:主存總字數 = A * B ,主存總容量(bits) = A * B * 32

高速緩存的結構和主存類似,但是主存的容量是遠大于緩存的容量。

緩存中存儲的數據是主存中的一份復制,當CPU需要的數據在緩存中,直接從緩存里拿,當CPU需要的數據不在緩存中,則需要從主存里拿。

所以就有了兩個量化指標:

命中率:命中緩存的次數占CPU訪問次數的比例

訪問效率:訪問緩存時間和訪問緩存-主存平均時間之比

高速緩存的替換策略

當CPU所需要的數據不在高速緩存中時,就需要從主存載入數據到高速緩存。一般有四種替換策略。

隨機算法

隨機選取高速緩存中的一個位置再替換

先進先出算法(FIFO)

把高速緩存看做是一個先進先出的隊列,優先替換最先進入隊列的字塊

最不經常使用算法(LFU)

優先淘汰最不經常使用的字塊,需要額外的空間記錄字塊的使用頻率

最近最少使用算法(LRU)

優先淘汰一段時間內沒有使用的字塊

有多種實現方法,一般使用雙向鏈表,把當前訪問節點置于鏈表前面(保證鏈表頭部節點是最近使用的)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,835評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,676評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,730評論 0 380
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,118評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,873評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,266評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,330評論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,482評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,036評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,846評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,025評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,575評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,279評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,684評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,953評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,751評論 3 394
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,016評論 2 375

推薦閱讀更多精彩內容