計(jì)算機(jī)組成原理(六)總線

6.1 總線概述

6.1.1 總線的基本概念

總線是一組能為多個(gè)部件分時(shí)共享的公共信息傳送線路。

共享是指總線上可以掛接多個(gè)部件,各個(gè)部件之間互相交換的信息都可以通過(guò)這組線路分時(shí)共享。

分時(shí)是指同一時(shí)刻只允許有一個(gè)部件向總線發(fā)送信息,如果系統(tǒng)中有多個(gè)部件,則它們只能分時(shí)地向總線發(fā)送信息。

總線的特性

  1. 機(jī)械特性:尺寸、形狀、管腳數(shù)、排列順序
  2. 電氣特性:傳輸方向和有效的電平范圍
  3. 功能特性:每根傳輸線的功能(地址、數(shù)據(jù)、控制)
  4. 時(shí)間特性:信號(hào)的時(shí)序關(guān)系

6.1.2 總線的分類

總線的分類.png

6.1.2.1 按數(shù)據(jù)傳輸格式分類

  • 串行總線

優(yōu)點(diǎn):只需要一條傳輸線,成本低廉,廣泛應(yīng)用于長(zhǎng)距離傳輸;應(yīng)用于計(jì)算機(jī)內(nèi)部時(shí),可以節(jié)省布線空間。

缺點(diǎn):在數(shù)據(jù)發(fā)送和接收的時(shí)候要進(jìn)行拆卸和裝配,要考慮串行-并行轉(zhuǎn)換的問(wèn)題。

  • 并行

優(yōu)點(diǎn):總線的邏輯時(shí)序比較簡(jiǎn)單,電路實(shí)現(xiàn)起來(lái)比較容易。

缺點(diǎn):信號(hào)線數(shù)量多,占用更多的布線空間;遠(yuǎn)距離傳輸成本高昂;由于工作頻率較高時(shí),并行的信號(hào)線之間會(huì)產(chǎn)生嚴(yán)重干擾,對(duì)每條線等長(zhǎng)的要求也越高,所以無(wú)法持續(xù)提升工作頻率。

1.工作頻率相同時(shí),串行總線傳輸速度比并行總線慢。

2.并行總線的工作頻率無(wú)法持續(xù)提高,而串行總線可以通過(guò)不斷提高工作頻率來(lái)提高傳輸速度,最終超過(guò)并行總線。

6.1.2.2 按總線功能分類

  • 片內(nèi)總線

片內(nèi)總線是芯片內(nèi)部的總線。它是CPU芯片內(nèi)部寄存器與寄存器之間、寄存器與ALU之間的公共連接線。

  • 系統(tǒng)總線

系統(tǒng)總線是計(jì)算機(jī)系統(tǒng)內(nèi)各功能部件(CPU、主存、I/O接口)之間相互連接的總線。按系統(tǒng)總線傳輸信息內(nèi)容的不同,又可分為3類:數(shù)據(jù)總線、地址總線和控制總線。

系統(tǒng)總線.png
  1. 數(shù)據(jù)總線:數(shù)據(jù)總線用來(lái)傳輸各功能部件之間的數(shù)據(jù)信息,它是雙向傳輸總線,其位數(shù)與機(jī)器字長(zhǎng)、存儲(chǔ)字長(zhǎng)有關(guān)。
  2. 地址總線:地址總線用來(lái)指出數(shù)據(jù)總線上的源數(shù)據(jù)或目的數(shù)據(jù)所在的主存單元或I/O端口的地址,它是單向傳輸總線,地址總線的位數(shù)與主存地址空間的大小有關(guān)。
  3. 控制總線:控制總線傳輸?shù)氖强刂菩畔?,包括CPU送出的控制命令和主存(或外設(shè))返回CPU的反饋信號(hào)。
  • 通信總線

通信總線是用于計(jì)算機(jī)系統(tǒng)之間或計(jì)算機(jī)系統(tǒng)與其他系統(tǒng)(如遠(yuǎn)程通信設(shè)備、測(cè)試設(shè)備)之間信息傳送的總線,通信總線也稱為外部總線。

6.1.3 系統(tǒng)總線的結(jié)構(gòu)

總線結(jié)構(gòu)分為單總線結(jié)構(gòu)、雙總線結(jié)構(gòu)和三總線結(jié)構(gòu)等

6.1.3.1 單總線結(jié)構(gòu)

結(jié)構(gòu):CPU、主存、I/O設(shè)備(通過(guò)I/O接口)都連接在一組總線上,允許I/O設(shè)備之間、I/O設(shè)備和CPU之間或I/O設(shè)備與主存之間直接交換信息。

  • 優(yōu)點(diǎn):結(jié)構(gòu)簡(jiǎn)單,成本低,易于接入新的設(shè)備。

  • 缺點(diǎn):帶寬低、負(fù)載重,多個(gè)部件只能爭(zhēng)用唯一的總線,且不支持并發(fā)傳送操作。

單總線結(jié)構(gòu).png

單總線并不是指只有一根信號(hào)線,系統(tǒng)總線按傳送信息的不同可以細(xì)分為地址總線、數(shù)據(jù)總線和控制總線。

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

結(jié)構(gòu):雙總線結(jié)構(gòu)有兩條總線,一條是主存總線,用于CPU、主存和通道之間進(jìn)行數(shù)據(jù)傳送;另一條是I/O總線,用于多個(gè)外部設(shè)備與通道之間進(jìn)行數(shù)據(jù)傳送。

  • 優(yōu)點(diǎn):將較低速的I/O設(shè)備從單總線上分離出來(lái),實(shí)現(xiàn)存儲(chǔ)器總線和I/O總線分離。

  • 缺點(diǎn):需要增加通道等硬件設(shè)備。

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

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

結(jié)構(gòu):三總線結(jié)構(gòu)是在計(jì)算機(jī)系統(tǒng)各部件之間采用3條各自獨(dú)立的總線來(lái)構(gòu)成信息通路,這3條總線分別為主存總線、I/O總線和直接內(nèi)存訪問(wèn)DMA總線。

  • 優(yōu)點(diǎn):提高了I/O設(shè)備的性能,使其更快地響應(yīng)命令,提高系統(tǒng)吞吐量。
  • 缺點(diǎn):系統(tǒng)工作效率較低。
三總線結(jié)構(gòu).png

直接內(nèi)存訪問(wèn)(Direct Memory Access,DMA)

6.1.4 總線的性能指標(biāo)

  1. 總線的傳輸周期(總線周期)

一次總線操作所需的時(shí)間(包括申請(qǐng)階段、尋址階段、傳輸階段和結(jié)束階段),通常由若干個(gè)總線時(shí)鐘周期構(gòu)成。

  1. 總線時(shí)鐘周期

即機(jī)器的時(shí)鐘周期。計(jì)算機(jī)有一個(gè)統(tǒng)一的時(shí)鐘,以控制整個(gè)計(jì)算機(jī)的各個(gè)部件,總線也要受此時(shí)鐘的控制。

大多數(shù)情況下,一個(gè)總線周期包含多個(gè)總線時(shí)鐘周期

有的時(shí)候,一個(gè)總線周期就是一個(gè)總線時(shí)鐘周期

有的時(shí)候,一個(gè)總線時(shí)鐘周期可包含多個(gè)總線周期

  1. 總線的工作頻率

總線上各種操作的頻率,為總線周期的倒數(shù)。若總線周期=N個(gè)時(shí)鐘周期,則總線的工作頻率=時(shí)鐘頻率/N。實(shí)際上指一秒內(nèi)傳送幾次數(shù)據(jù)

  1. 總線的時(shí)鐘頻率

即機(jī)器的時(shí)鐘頻率,為時(shí)鐘周期的倒數(shù)。若時(shí)鐘周期為T,則時(shí)鐘頻率為1/T。實(shí)際上指一秒內(nèi)有多少個(gè)時(shí)鐘周期。

  1. 總線寬度

又稱為總線位寬,它是總線上同時(shí)能夠傳輸?shù)臄?shù)據(jù)位數(shù),通常是指數(shù)據(jù)總線的根數(shù),如32根稱為32位(bit)總線。

  1. 總線帶寬

可理解為總線的數(shù)據(jù)傳輸率,即單位時(shí)間內(nèi)總線上可傳輸數(shù)據(jù)的位數(shù),通常用每秒鐘傳送信息的字節(jié)數(shù)來(lái)衡量,單位可用字節(jié)/秒(B/s)表示。
總線帶寬=總線工作頻率×總線寬度(bit/s)=總線工作頻率×(總線寬度/8)(B/s)=\frac{總線寬度}{總線周期}(bit/s)

總線帶寬是指總線本身所能達(dá)到的最高傳輸速率。在計(jì)算實(shí)際的有效數(shù)據(jù)傳輸率時(shí),要用實(shí)際傳輸?shù)臄?shù)據(jù)量除以耗時(shí)。

例. 某同步總線采用數(shù)據(jù)線和地址線復(fù)用方式,其中地址/數(shù)據(jù)線有32根,總線時(shí)鐘頻率為66MHz,每個(gè)時(shí)鐘周期傳送兩次數(shù)據(jù)(上升沿和下降沿各傳送一次數(shù)據(jù))。

  1. 該總線的最大數(shù)據(jù)傳輸率(總線帶寬)是多少?
  2. 若該總線支持突發(fā)(猝發(fā))傳輸方式,傳輸一個(gè)地址占用一個(gè)時(shí)鐘周期,則一次“主存寫(xiě)”總線事務(wù)傳輸128位數(shù)據(jù)所需要的時(shí)間至少是多少?

1)每個(gè)時(shí)鐘周期傳送兩次數(shù)據(jù)→總線工作頻率是時(shí)鐘頻率的兩倍
總線工作頻率= 2 × 66MHz =132MHz
總線寬度= 32bit = 4B
總線帶寬=總線工作頻率×總線寬度= 132 × 4 MB/s = 528 MB/s

2)發(fā)送首地址占用1個(gè)時(shí)鐘周期,128位數(shù)據(jù)需傳輸4次,占用2個(gè)時(shí)鐘周期
一個(gè)時(shí)鐘周期= 1/66MHz ≈ 15ns
總耗時(shí)= (1+2) × 15ns =45ns

突發(fā)(猝發(fā))傳輸方式:一次總線事務(wù)中,主設(shè)備只需給出一個(gè)首地址,從設(shè)備就能從首地址開(kāi)始的若干連續(xù)單元讀出或?qū)懭攵鄠€(gè)數(shù)據(jù)。

  1. 總線復(fù)用

總線復(fù)用是指一種信號(hào)線在不同的時(shí)間傳輸不同的信息??梢允褂幂^少的線傳輸更多的信息,從而節(jié)省了空間和成本

  1. 信號(hào)線數(shù)

地址總線、數(shù)據(jù)總線和控制總線3種總線數(shù)的總和稱為信號(hào)線數(shù)。

6.2 總線操作和定時(shí)

操作和定時(shí)主要解決占用總線的一對(duì)設(shè)備如何進(jìn)行數(shù)據(jù)傳輸這個(gè)問(wèn)題

總線定時(shí)是指總線在雙方交換數(shù)據(jù)的過(guò)程中需要時(shí)間上配合關(guān)系的控制,這種控制稱為總線定時(shí),它的實(shí)質(zhì)是一種協(xié)議或規(guī)則

6.2.1 總線傳輸?shù)乃膫€(gè)階段

  1. 申請(qǐng)分配階段:由需要使用總線的主模塊(或主設(shè)備)提出申請(qǐng),經(jīng)總線仲裁機(jī)構(gòu)決定將下一傳輸周期的總線使用權(quán)授予某一申請(qǐng)者。也可將此階段細(xì)分為傳輸請(qǐng)求和總線仲裁兩個(gè)階段。
  2. 尋址階段:獲得使用權(quán)的主模塊通過(guò)總線發(fā)出本次要訪問(wèn)的從模塊的地址及有關(guān)命令,啟動(dòng)參與本次傳輸?shù)膹哪K。
  3. 傳輸階段:主模塊和從模塊進(jìn)行數(shù)據(jù)交換,可單向或雙向進(jìn)行數(shù)據(jù)傳送。
  4. 結(jié)束階段:主模塊的有關(guān)信息均從系統(tǒng)總線上撤除,讓出總線使用權(quán)。

6.2.2 同步定時(shí)方式

同步定時(shí)方式是指系統(tǒng)采用一個(gè)統(tǒng)一的時(shí)鐘信號(hào)來(lái)協(xié)調(diào)發(fā)送和接收雙方的傳送定時(shí)關(guān)系。若干個(gè)時(shí)鐘產(chǎn)生相等的時(shí)間間隔,每個(gè)間隔構(gòu)成一個(gè)總線周期。在一個(gè)總線周期中,發(fā)送方和接收方可進(jìn)行一次數(shù)據(jù)傳送。因?yàn)椴捎媒y(tǒng)一的時(shí)鐘,每個(gè)部件或設(shè)備發(fā)送或接收信息都在固定的總線傳送周期中,一個(gè)總線的傳送周期結(jié)束,下一個(gè)總線傳送周期開(kāi)始。

優(yōu)點(diǎn):傳送速度快,具有較高的傳輸速率;總線控制邏輯簡(jiǎn)單。

缺點(diǎn):主從設(shè)備屬于強(qiáng)制性同步;不能及時(shí)進(jìn)行數(shù)據(jù)通信的有效性檢驗(yàn),可靠性較差。

同步通信適用于總線長(zhǎng)度較短及總線所接部件的存取時(shí)間比較接近的系統(tǒng)。

6.2.3 異步定時(shí)方式

在異步定時(shí)方式中,沒(méi)有統(tǒng)一的時(shí)鐘,也沒(méi)有固定的時(shí)間間隔,完全依靠傳送雙方相互制約的“握手”信號(hào)來(lái)實(shí)現(xiàn)定時(shí)控制。主設(shè)備提出交換信息的“請(qǐng)求”信號(hào),經(jīng)接口傳送到從設(shè)備;從設(shè)備接到主設(shè)備的請(qǐng)求后,通過(guò)接口向主設(shè)備發(fā)出“回答”信號(hào)。

  • 優(yōu)點(diǎn):總線周期長(zhǎng)度可變,能保證兩個(gè)工作速度相差很大的部件或設(shè)備之間可靠地進(jìn)行信息交換,自動(dòng)適應(yīng)時(shí)間的配合。
  • 缺點(diǎn):比同步控制方式稍復(fù)雜一些,速度比同步定時(shí)方式慢。

根據(jù)“請(qǐng)求”和“回答”信號(hào)的撤銷是否互鎖,分為以下3種類型。

  1. 不互鎖方式

主設(shè)備發(fā)出“請(qǐng)求”信號(hào)后,不必等到接到從設(shè)備的“回答”信號(hào),而是經(jīng)過(guò)一段時(shí)間,便撤銷“請(qǐng)求”信號(hào)。而從設(shè)備在接到“請(qǐng)求”信號(hào)后,發(fā)出“回答”信號(hào),并經(jīng)過(guò)一段時(shí)間,自動(dòng)撤銷“回答”信號(hào)。雙方不存在互鎖關(guān)系。

  1. 半互鎖方式

主設(shè)備發(fā)出“請(qǐng)求”信號(hào)后,必須待接到從設(shè)備的“回答”信號(hào)后,才撤銷“請(qǐng)求”信號(hào),有互鎖的關(guān)系。而從設(shè)備在接到“請(qǐng)求”信號(hào)后,發(fā)出“回答”信號(hào),但不必等待獲知主設(shè)備的“請(qǐng)求”信號(hào)已經(jīng)撤銷,而是隔一段時(shí)間后自動(dòng)撤銷“回答”信號(hào),不存在互鎖關(guān)系。

  1. 全互鎖方式

主設(shè)備發(fā)出“請(qǐng)求”信號(hào)后,必須待從設(shè)備“回答”后,才撤銷“請(qǐng)求”信號(hào);從設(shè)備發(fā)出“回答”信號(hào),必須待獲知主設(shè)備“請(qǐng)求”信號(hào)已撤銷后,再撤銷其“回答”信號(hào)。雙方存在互鎖關(guān)系。

不互鎖方式速度最快,可靠性最差

全互鎖方式最可靠,速度最慢

6.3 總線標(biāo)準(zhǔn)

根據(jù)總線在計(jì)算機(jī)系統(tǒng)中的位置,可分為

  • 系統(tǒng)總線:通常與CPU直接相連,用于連接CPU與北橋芯片、或CPU與主存等

  • 局部總線:沒(méi)有直接與CPU連接,通常是連接高速的北橋芯片,用于連接了很多重要的硬件部件(如顯卡、聲卡等)

  • 設(shè)備總線、通信總線:通常由南橋芯片控制,用于連接計(jì)算機(jī)與計(jì)算機(jī),或連接計(jì)算機(jī)與外部I/O設(shè)備

總線標(biāo)準(zhǔn) 全稱 特點(diǎn)
ISA 工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu) 系統(tǒng)總線
EISA 擴(kuò)展ISA 系統(tǒng)總線
VESA 視頻局部總線 局部總線
PCI 周邊組件互連總線 局部總線
PCI-E PCI-Express 串行
AGP 加速圖形接口 局部總線
RS-232C Recommended Standard 串行通信總線
SCSI 小型計(jì)算機(jī)系統(tǒng)接口 智能通用接口
PCMCIA Personal Computer Memory CardInternational Association 便攜設(shè)備接口
USB Universal Serial Bus 設(shè)備總線、串行
IDE(ATA) Integrated Drive Electronics電子集成驅(qū)動(dòng)器 硬盤光驅(qū)接口
SATA Serial Advanced Technology Attachment 串行硬盤接口
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容