Reading Notes : 180214 計算機的總線結構


  讀書《計算機組成原理》,百度百科

  基本上接觸過計算機的人,都多少知道計算機的具體構成,但是真正能講明白的卻說了很多,本節將講解一下計算機的基本硬件構成和一些基本信息,簡單認識,以后再深入了解。

計算機的總線結構

  前面我們介紹了計算機的硬件組成,計算機由輸入輸出設備、中央處理器(控制器和處理器)、主存儲器五部分構成。但是將這五部分孤零零的放置在哪里也是沒有意義的,需要將其按照某種方式連接起來構成計算機的硬件系統,這才能使他們發揮各自作用。

  任何一個微處理器都要與一定數量的部件和外圍設備連接,但如果將各部件和每一種外圍設備都分別用一組線路與CPU直接連接,那么連線將會錯綜復雜,甚至難以實現。為了簡化硬件電路設計、簡化系統結構,常用一組線路,配置以適當的接口電路,與各部件和外圍設備連接,這組共用的連接線路被稱為總線。
  采用總線結構便於部件和設備的擴充,尤其制定了統一的總線標准則容易使不同設備間實現互連。
  微機中總線一般有內部總線、系統總線和外部總線。內部總線是微機內部各外圍芯片與處理器之間的總線,用於芯片一級的互連;而系統總線是微機中各插件板與系統板之間的總線,用於插件板一級的互連;外部總線則是微機和外部設備之間的總線,微機作為一種設備,通過該總線和其他設備進行信息與數據交換,它用於設備一級的互連。
  另外,從廣義上說,計算機通信方式可以分為並行通信串行通信,相應的通信總線被稱為並行總線和串行總線。並行通信速度快、實時性好,但由於占用的口線多,不適於小型化產品;而串行通信速率雖低,但在數據通信吞吐量不是很大的微處理電路中則顯得更加簡易、方便、靈活。串行通信一般可分為異步模式和同步模式。---隨着微電子技術和計算機技術的發展,總線技術也在不斷地發展和完善,而使計算機總線技術種類繁多,各具特色。

  目前許多計算機的各大基本部件之間是用總線(Bus)連接起來的。

總線的概念

  總線(Bus)是計算機各種功能部件之間傳送信息的公共通信干線,它是由導線組成的傳輸線束, 按照計算機所傳輸的信息種類,計算機的總線可以划分為數據總線、地址總線和控制總線,分別用來傳輸數據、數據地址和控制信號。總線是一種內部結構,它是cpu、內存、輸入、輸出設備傳遞信息的公用通道,主機的各個部件通過總線相連接,外部設備通過相應的接口電路再與總線相連接,從而形成了計算機硬件系統

  總線分時地發送與接收各部件的信息微型計算機是以總線結構來連接各個功能部件的。計算機中采用總線結構,可以大大減少信息傳送線的數目,又可以提高計算機擴充主存及外部設備的靈活性。

總線的工作原理

  如果說主板(Mother Board)是一座城市,那么總線就像是城市里的公共汽車(bus),能按照固定行車路線,傳輸來回不停運作的比特bit)。這些線路在同一時間內都僅能負責傳輸一個比特。因此,必須同時采用多條線路才能傳送更多數據,而總線可同時傳輸的數據數就稱為寬度(width),以比特為單位,總線寬度愈大,傳輸性能就愈佳。總線的帶寬(即單位時間內可以傳輸的總數據數)為:總線帶寬 = 頻率 x 寬度(Bytes/sec)。當總線空閑(其他器件都以高阻態形式連接在總線上)且一個器件要與目的器件通信時,發起通信的器件驅動總線,發出地址和數據。其他以高阻態形式連接在總線上的器件如果收到(或能夠收到)與自己相符的地址信息后,即接收總線上的數據。發送器件完成通信,將總線讓出(輸出變為高阻態)。

總線特性

  由於總線是連接各個部件的一組信號線。通過信號線上的信號表示信息,通過約定不同信號的先后次序即可約定操作如何實現。總線的特性如下

  • 物理特性:物理特性又稱為機械特性,指總線上部件在物理連接時表現出的一些特性,如插頭與插座的幾何尺寸、形狀、引腳個數及排列順序等。
  • 功能特性:功能特性是指每一根信號線的功能,如地址總線用來表示地址碼。數據總線用來表示傳輸的數據,控制總線表示總線上操作的命令、狀態等。
  • 電氣特性:電氣特性是指每一根信號線上的信號方向及表示信號有效的電平范圍,通常,由主設備(如CPU)發出的信號稱為輸出信號(OUT),送入主設備的信號稱為輸入信號(IN)。通常數據信號和地址信號定義高電平為邏輯1、低電平為邏輯0,控制信號則沒有俗成的約定,如WE表示低電平有效、Ready表示高電平有效。不同總線高電平、低電平的電平范圍也無統一的規定,通常與TTL是相符的。
  • 時間特性:時間特性又稱為邏輯特性,指在總線操作過程中每一根信號線上信號什么時候有效,通過這種信號有效的時序關系約定,確保了總線操作的正確進行。

  為了提高計算機的可拓展性,以及部件及設備的通用性,除了片內總線外,各個部件或設備都采用標准化的形式連接到總線上,並按標准化的方式實現總線上的信息傳輸。而總線的這些標准化的連接形式及操作方式,統稱為總線標准。如ISAPCIUSB總線標准等,相應的,采用這些標准的總線為ISA總線、PCI總線、USB總線等。

總線分類

  總線按功能和規范可分為五大類型:

  • 數據總線(Data Bus):在CPURAM之間來回傳送需要處理或是需要儲存的數據。
  • 地址總線(Address Bus):用來指定在RAMRandom Access Memory)之中儲存的數據的地址。
  • 控制總線(Control Bus):將微處理器控制單元(Control Unit)的信號,傳送到周邊設備,一般常見的為 USB Bus1394 Bus
  • 擴展總線(Expansion Bus):可連接擴展槽和電腦。
  • 局部總線(Local Bus):取代更高速數據傳輸的擴展總線。

 

  其中的數據總線DBData Bus)、地址總線ABAddress Bus)和控制總線CBControl Bus),也統稱為系統總線,即通常意義上所說的總線。

 

  有的系統中,數據總線和地址總線是復用的,即總線在某些時刻出現的信號表示數據而另一些時刻表示地址;而有的系統是分開的。51系列單片機的地址總線和數據總線是復用的,而一般PC中的總線則是分開的。

  “數據總線DB”用於傳送數據信息的多根信號線。數據總線是雙向三態形式的總線,即他既可以把CPU數據傳送存儲器I/O口等其它部件,也可以將其它部件的數據傳送到CPU數據總線位數是微型計算機的一個重要指標,通常與微處理的字長相一致。例如Intel 8086微處理器字長16位,其數據總線寬度也是16位。需要指出的是,數據的含義是廣義的,它可以是真正的數據,也可以是指令代碼或狀態信息,有時甚至是一個控制信息,因此,在實際工作中,數據總線上傳送的並不一定僅僅是真正意義上的數據。

  常見的數據總線為ISAEISAVESAPCI等。

  “地址總線AB”是專門用來傳送地址的多根信號線,由於地址只能從CPU傳向外部存儲器I/O端口,所以地址總線總是單向三態的,這與數據總線不同。地址總線的位數決定了CPU直接尋址的內存空間大小,比如8位微機的地址總線為16,則其最大可尋址空間2^16=64KB16位微型機(x位處理器指一個時鍾周期微處理器能處理的位數(1 0)多少,即字長大小)的地址總線為20位,其可尋址空間為2^20=1MB。一般來說,若地址總線為n位,則可尋址空間為2^n字節尋址空間物理上取決於CPU的位寬和地址總線寬度,實際操作中還收到OS的影響,這三者放在一塊考慮時取決於最小的寬度,這也是木桶效應

  “控制總線CB”用來傳送控制信號時序信號。控制信號中,有的是微處理器送往存儲器I/O接口電路的,如讀/寫信號,片選信號中斷響應信號等;也有是其它部件反饋給CPU的,比如:中斷申請信號、復位信號、總線請求信號、設備就緒信號等。因此,控制總線的傳送方向由具體控制信號而定,(信息)一般是雙向的,控制總線的位數要根據系統的實際控制需要而定。實際上控制總線的具體情況主要取決於CPU

  按照傳輸數據的方式划分,可以分為串行總線和並行總線。串行總線中,二進制數據逐位通過一根數據線發送到目的器件;並行總線的數據線通常超過2根。常見的串行總線有SPII2CUSBRS232等。

  按照時鍾信號是否獨立,可以分為同步總線和異步總線。同步總線的時鍾信號獨立於數據,而異步總線的時鍾信號是從數據中提取出來的。SPII2C是同步串行總線,RS232采用異步串行總線。

計算機總線種類

  前面我們通過總線的功能和規范對計算機的總線進行了分類介紹,在這里還可以通過總線在計算機中的位置分為三部分。

主板的總線--前端總線

  在計算機科學技術中,人們常常以MHz表示的速度來描述總線頻率。計算機總線的種類很多,前端總線的英文名字是Front Side Bus,通常用FSB表示,是將CPU連接到北橋芯片的總線。計算機的前端總線頻率是由CPU和北橋芯片共同決定的。

  主板北橋芯片負責聯系內存、顯卡等數據吞吐量最大的部件,並和南橋芯片連接。CPU就是通過前端總線(FSB)連接到北橋芯片,進而通過北橋芯片和內存、顯卡交換數據。前端總線是CPU和外界交換數據的最主要通道,因此前端總線的數據傳輸能力對計算機整體性能作用很大,如果沒足夠快的前端總線,再強的CPU也不能明顯提高計算機整體速度。數據傳輸最大帶寬取決於所有同時傳輸的數據的寬度和傳輸頻率,即數據帶寬=總線頻率×數據位寬÷8。目前PC機上所能達到的前端總線頻率266MHz333MHz400MHz533MHz800MHz幾種,前端總線頻率越大,代表着CPU北橋芯片之間的數據傳輸能力越大,更能充分發揮出CPU的功能。現在的CPU技術發展很快,運算速度提高很快,而足夠大的前端總線可以保障有足夠的數據供給給CPU,較低的前端總線將無法供給足夠的數據給CPU,這樣就限制了CPU性能得發揮,成為系統瓶頸。

硬盤的總線

  一般有SCSIATASATA等幾種。SATA是串行ATA的縮寫,為什么要使用串行ATA就要

  從PATA——並行ATA的缺點說起。我們知道ATA或者說普通IDE硬盤的數據線最初就是40根的排線,這40根線里面有數據線、時鍾線、控制線、地線,其中32根數據線是並行傳輸的(一個時鍾周期可以同時傳輸4個字節的數據),因此對同步性的要求很高。這就是為什么從PATA-66(就是常說的DMA66)接口開始必須使用80根的硬盤數據線,其實增加的這40根全是屏蔽用的地線,而且只在主板一邊接地(千萬不要接反了,反了的話屏蔽作用大大降低),有了良好的屏蔽硬盤的傳輸速度才能達到66MB/s100MB/s和最高的133MB/s。但是在PATA-133之后,並行傳輸速度已經到了極限,而且PATA的三大缺點暴露無遺:信號線長度無法延長、信號同步性難以保持、5V信號線耗電較大。那為什么SCSI-320接口的數據線能達到320MB/s的高速、而且線纜以很長呢?你有沒有注意到SCSI的高速數據線是花線?這可不是為了好看,那的部分實際上就是一組組的差分信號線兩兩扭合而成,這成本可不是普通電腦系統願意承擔的。

 

其他的總線

  計算機中其他的總線還有:通用串行總線USBUniversal Serial Bus)、IEEE1394PCI等等。

技術指標

總線的帶寬(總線數據傳輸速率)

  總線的帶寬指的是單位時間內總線上傳送的數據量,即每鈔鍾傳送MB的最大穩態數據傳輸率。與總線密切相關的兩個因素是總線的位寬總線的工作頻率,它們之間的關系:

  總線的帶寬=總線的工作頻率*總線的位寬/8

  或者 總線的帶寬=(總線的位寬/8 /總線周期

總線的位寬

  總線的位寬指的是總線能同時傳送的二進制數據的位數,或數據總線的位數,即32位、64等總線寬度的概念。總線的位寬越寬,每秒鍾數據傳輸率越大,總線的帶寬越寬。

總線的工作頻率

  總線的工時鍾頻率MHZ為單位,工作頻率越高,總線工作速度越快,總線帶寬越寬。

單總線結構

最簡單的總線結構是單總線結構,如下圖所示:

 

  各大部件都連接在單一的一組總線上,故將這個單總線稱為系統總線。CPU與主存、CPU與外設之間可以直接進行信息交換,主存與外設、外設與外設之間也可以直接進行信息交換,而無須經過CPU的干預。

  單總線結構提高了CPU的工作效率,而且外設連接靈活,易於擴充。但由於所有部件都掛在同一組總線上,而總線又只能分時地工作,故同一時刻只允許一對設備(或部件)之間傳送信息。但是單總線並非是指只有一根信號線。仍然遵循功能和規范的分類,分為數據總線、控制總線和地址總線等。

  單總線結構我們只用了解就可以,現在計算機多數使用的是多總線結構設計。

總線操作

  總線一個操作過程是完成兩個模塊之間傳送信息,啟動操作過程的是主模塊,另外一個是從模塊。某一時刻總線上只能有一個主模塊占用總線。

總線的操作步驟:

  • 主模塊申請總線控制權,總線控制器進行裁決。
  • 主模塊得到總線控制權后尋址從模塊,從模塊確認后進行數據傳送。
  • 數據傳送的錯誤檢查。
  1. 總線定時協議:定時協議可保證數據傳輸的雙方操作同步,傳輸正確。定時協議有三種類型:
  2. 同步總線定時:總線上的所有模塊共用同一時鍾脈沖進行操作過程的控制。各模塊的所有動作的產生均在時鍾周期的開始,多數動作在一個時鍾周期中完成。
  3. 異步總線定時:操作的發生由源或目的模塊的特定信號來確定。總線上一個事件發生取決前一事件的發生,雙方相互提供聯絡信號。

總線定時協議

  • 半同步總線定時:總線上各操作的時間間隔可以不同,但必須是時鍾周期的整數倍,信號的出現,采樣與結束仍以公共時鍾為基准。ISA總線采用此定時方法。
  • 數據傳輸類型:分單周期方式和突發(burst)方式。
  1. 單周期方式:一個總線周期只傳送一個數據。
  2. 突發方式:取得主線控制權后進行多個數據的傳輸。尋址時給出目的地首地址,訪問第一個數據,數據23到數據n的地址在首地址基礎上按一定規則自動尋址(如自動加1)。

優點與缺點

采用總線結構的主要優點

  • 面向存儲器的雙總線結構信息傳送效率較高,這是它的主要優點。但CPUI/O接口都要訪問存儲器時,仍會產生沖突。
  • CPU與高速的局部存儲器和局部I/O接口通過高傳輸速率的局部總線連接,速度較慢的全局存儲器和全局I/O接口與較慢的全局總線連接,從而兼顧了高速設備和慢速設備,使它們之間不互相牽扯。
  • 簡化了硬件的設計。便於采用模塊化結構設計方法,面向總線的微型計算機設計只要按照這些規定制作cpu插件存儲器插件以及I/O插件等,將它們連入總線就可工作,而不必考慮總線的詳細操作。
  • 簡化了系統結構。整個系統結構清晰。連線少,底板連線可以印制化。
  • 系統擴充性好。一是規模擴充,規模擴充僅僅需要多插一些同類型的插件。二是功能擴充,功能擴充僅僅需要按照總線標准設計新插件,插件插入機器的位置往往沒有嚴格的限制。
  • 系統更新性能好。因為cpu存儲器I/O接口等都是按總線規約掛到總線上的,因而只要總線設計恰當,可以隨時隨着處理器的芯片以及其他有關芯片的進展設計新插件,新的插件插到底板上對系統進行更新,其他插件和底板連線一般不需要改。
  • 便於故障診斷和維修。用主板測試卡可以很方便找到出現故障的部位,以及總線類型。

采用總線結構的缺點

  由於在CPU與主存儲器之間、CPUI/O設備之間分別設置了總線,從而提高了微機系統信息傳送的速率和效率。但是由於外部設備與主存儲器之間沒有直接的通路,它們之間的信息交換必須通過CPU才能進行中轉,從而降低了CPU的工作效率(或增加了CPU的占用率。一般來說,外設工作時要求CPU干預越少越好。CPU干預越少,這個設備的CPU占用率就越低,說明設備的智能化程度越高),這是面向CPU的雙總線結構的主要缺點。同時還包括:

  • 利用總線傳送具有分時性。當有多個主設備同時申請總線的使用是必須進行總線的仲裁。
  • 總線的帶寬有限,如果連接到總線上的某個硬件設備沒有資源調控機制容易造成信息的延時(這在某些即時性強的地方是致命的)。
  • 連到總線上的設備必須有信息的篩選機制,要判斷該信息是否是傳給自己的。

結束語

  總線或許很不經意,但它如同人體的神經中樞一樣,連接計算機的各個組件,是計算機構成的脈絡所在,同時也是主板的基本內容,關於總線我們就了解到這里,更多資料可以參見百度百科

鞏固問題:為什么32bit只能支持4GB內存


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com