計算機組成原理之總線設計

      網友投稿 1003 2025-04-01

      公眾號很多硬核文章,跪求大家關注~~~

      下面開始正題。

      我們知道,計算機是由五大部件組成的:運算器、存儲器、控制器、輸入設備和輸出設備,這個概念比較抽象,簡單一點來說就是 CPU 包含運算器和控制器,存儲器也就指的是內存,而輸入輸出設備分別指的是鍵盤和顯示器。計算機這幾個部件之間是需要共同協作完成信息處理的,那么,這幾大部件之間如何進行通信呢?靠的是系統總線,這也是我們這篇文章討論的重點。

      認識總線

      總線是將兩個計算機或者多個功能單元連接在一起并允許它們相互交換數據的一種通路??偩€還可以將計算機和外部設備連接在一起。總線是計算機系統非常重要的組成部分。關于需要知道下面這幾個概念。

      總線寬度:一般用并行數據通路的數量來定義總線的寬度,一般總線的寬度有 8 位、16 位、32 位、64 位,我們現在最常用的就是 64 位總線,一條 64 位寬的總線一次能夠傳輸 64 位也就是 8 個字節信息。

      帶寬:帶寬是衡量數據在總線上傳輸速率的一項指標。在保持數據傳輸速率不變的情況下提高并行通路的數量,可以提高總線的帶寬。

      延遲:延遲是從發出數據傳輸請求到實際數據傳輸的時間間隔。

      總線分類

      下面我們主要介紹兩種總線,一種是片內總線,一種是系統總線,片內總線一般指的是 CPU 芯片內部、寄存器和寄存器之間、寄存器和算術單元 ALU 之間的連接。

      而系統總線主要是指 CPU 和內存、內存和 IO 設備、CPU 和 IO 設備等各大部件的信息傳輸介質。系統總線按照傳輸信息的不同主要分為下面三類。

      地址線

      數據線

      控制線

      下面我們就來具體了解一下這三類總線

      地址總線

      地址總線主要用于傳輸源數據或者目的數據在主存單元中的地址。

      CPU 通過地址總線來指定存儲單元的位置的,地址總線上能傳送多少信息,CPU 就可以對多少個存儲單元進行尋址。

      上圖中 CPU 和內存中間信息交換通過了 10 條地址總線,每一條線能夠傳遞的數據都是 0 或 1 ,所以上圖一次 CPU 和內存傳遞的數據是 2 的十次方。

      所以,如果 CPU 有 N 條地址總線,那么可以說這個地址總線的寬度是 N 。這樣 CPU 可以尋找 2 的 N 次方個內存單元。

      數據總線

      數據線顧名思義就是一次傳遞數據的位數,數據總線的位數就是數據總線寬度。

      CPU 與內存或其他部件之間的數據傳送是由數據總線來完成的。數據總線的寬度決定了 CPU 和外界的數據傳輸速度。8 根數據總線可以一次傳送一個 8 位二進制數據(即一個字節)。16 根數據總線一次可以傳輸兩個字節,32 根數據總線可以一次傳輸四個字節。。。。。。

      控制總線

      控制總線是在總線上發出控制信號的傳輸線,常見的控制信號有:時鐘(同步操作)、復位(初始化操作)、中斷請求/響應、存儲器讀寫、IO讀寫等。

      CPU 與其他部件之間的控制是通過 控制總線 來完成的。有多少根控制總線,就意味著 CPU 提供了對外部器件的多少種控制。所以,控制總線的寬度決定了 CPU 對外部部件的控制能力。

      以運算器為主的連接方式

      在互聯網的早期階段,大多數總線采用的是分散連接(還有一種是總線連接,后面說),這種連接方式如下圖所示

      從圖上可以看到,運算器是這種分散連接的核心部分,這種連接方式會出現問題,當你的 CPU 正在忙于計算時,發生了 IO 與存儲器的信息交換,此時你的運算器也就是 CPU 不得不停下來,這就導致了運算器運行的中斷,嚴重影響了 CPU 的工作效率。

      你想,當你正在寫文章的時候,你對象問你:你今天怎么不理我?所以你就得放下工作和她聊天;當你處理好她的情緒后繼續寫了 5 分鐘文章,這時你的讀者發表了長篇大論向你咨詢問題,這時候你總不能不回復吧,所以你此時又要放下寫文章,繼而幫助他解決問題,由此可見,你寫文章的效率會高嗎?CPU 也是一樣的道理。

      當然你也可以選擇進入專注模式不回復,這就要視事情的優先級而定了,CPU 也是一樣的。

      總線設計

      以存儲器為主的連接方式

      后來,為了改善這種情況,出現了以存儲器 為中心的結構,這種結構如下所示

      可以看到,這種連接方式以存儲器為核心,圖中主要涉及的部件功能如下

      輸入設備將常用的信息轉換為機器能夠識別的數據形式,常見的有鍵盤和鼠標等

      存儲器用于存放指令和數據

      運算器用來完成算數和邏輯運算,并將運算結果暫存在運算器內

      控制器用來完成指揮、控制程序和數據的輸入、運行和處理運算結果

      輸出設備的轉換過程就是輸入設備的逆過程,即將運算結果轉換為人們可以熟知的形式

      由于運算器和控制器在電路結構上的關系非常緊密,所以通常將運算器和控制器統稱為 CPU,把輸入/輸出設備統稱為 IO設備,存儲器就是內存。

      所以現代計算機的構成一般就是 CPU + 存儲器 + 輸入/輸出設備。

      使用這種連接方式后,使 IO 與主存之間的信息交換可以不經過運算器,并且隨著中斷、DMA 技術的發展和成熟,使 CPU 效率得到很大的提高。

      但是使用這種方式,仍然不能解決 IO 設備和主機之間連接的靈活性,因為當我們想增加一種 IO 設備時,這種連接方式卻無法處理,由此出現了總線的連接方式。

      以 CPU 為主的雙總線連接方式

      總線采用的是多種 IO 部件共享的連接方式,總線實際上是由許多傳輸線組成,每條線可一位一位的傳輸二進制數據,比如 16 條傳輸線可以同時傳輸 16 位二進制代碼。

      計算機組成原理之總線設計

      下面是一種以 CPU 為中心的雙總線結構

      上圖的這種連接方式就是一種總線的連接方式,它將各部件連接到一組公共傳輸線上。從圖中可以體會出雙總線的概念:其中一組總線連接 CPU 和內存,稱為存儲總線;另一組用來建立 CPU 和各 I/O 設備之間交換信息的通道,稱為 IO 總線。

      這種連接方式也會出現問題,當多個部件與總線相連時,如果兩個及以上的部件同時發送消息,那么勢必會產生信號沖突,導致傳輸無效。所以,在同一時刻只允許有一個部件發送消息,但是可以有多個部件接收消息。

      單總線結構設計

      如果將 CPU 、主存和 IO 設備通過 IO 接口都掛到一組總線上,就形成了單總線的連接方式。

      這里思考一個問題,你覺得單總線的連接方式和以 CPU 為主的雙總線的連接方式相比,最大的區別在哪里?

      以 CPU 為主的雙總線連接方式中,CPU 和 IO 總線的交互需要 CPU 參與,CPU 和內存的交互也需要 CPU 參與,所以 CPU 無時無刻都在做功,這也得虧是 CPU ,換個其他人得累死。

      單總線連接連接方式,因為 CPU 、內存和 IO 都掛在同一個總線上,所以內存和 IO 交互不需要 CPU 的參與,這就是最大的改變。這種連接方式同樣也會出現問題,因為只有一組總線,當各個部件都需要交換信息時,就會發生沖突,所以,在這種設計中,需要設定總線占用優先級,讓各個組件按照優先級順序來依次占用總線。這也是為什么編程語言中使用鎖作為線程安全性的真正原因。

      還有一個問題是 CPU 沒有和內存直接交互,大大影響工作效率。

      以存儲器為中心的雙總線結構

      還有一種連接方式是以存儲器為中心的雙總線結構,它的設計如下

      這種總線設計結構就很舒服了。它是在上面單總線結構的基礎上,在 CPU 和內存之間增加了一條存儲總線,在 IO 使用系統總線頻率比較高的時候,CPU 和內存可以通過存儲總線交互,這樣既大大加快了系統工作效率,又降低了總線開銷。還保留了內存和 IO 交互時不需要經過 CPU 的特點。

      我自己肝了六本 PDF,全網傳播超過10w+ ,微信搜索「程序員cxuan」關注公眾號后,在后臺回復 cxuan ,領取全部 PDF,這些 PDF 如下

      六本 PDF 鏈接

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:WPS表格辦公DGET函數的用法(wps表格的功能介紹)
      下一篇:WPS文檔中有一個包含許多數據列的表 如何快速計算有多少行和列(wps中一列表格添加相同的內容)
      相關文章
      国产亚洲精彩视频| 亚洲一久久久久久久久| 精品国产日韩亚洲一区在线| 亚洲国产欧美日韩精品一区二区三区 | 亚洲日本在线观看网址| 亚洲一区二区在线视频| 亚洲人成在线影院| 亚洲人成在线观看| 亚洲综合小说久久另类区| 亚洲精品国产成人中文| 亚洲日产2021三区在线| 亚洲AV无码久久久久网站蜜桃| 久久精品国产亚洲av麻豆蜜芽 | 亚洲国产aⅴ综合网| 亚洲国产天堂久久综合| 精品国产日韩亚洲一区| 国产精品亚洲аv无码播放| 亚洲av永久无码精品秋霞电影影院 | 亚洲国产精品自在在线观看| 亚洲日本中文字幕| 亚洲毛片免费视频| 亚洲制服丝袜第一页| 亚洲中文字幕久久久一区| MM1313亚洲国产精品| 国产成人 亚洲欧洲| 亚洲一级Av无码毛片久久精品| 久久精品国产亚洲5555| 亚洲成色WWW久久网站| 亚洲酒色1314狠狠做| 亚洲三级中文字幕| 亚洲精品无码久久久久YW| 国产精品亚洲а∨无码播放不卡| 亚洲免费视频一区二区三区| 亚洲无线观看国产精品| 精品日韩亚洲AV无码| 亚洲精品456人成在线| 午夜亚洲国产理论片二级港台二级 | 亚洲午夜精品国产电影在线观看| 亚洲中文字幕日本无线码| 亚洲av日韩aⅴ无码色老头| 国产精品V亚洲精品V日韩精品|