目錄
1.1總線基本概念
一、使用總線原因
- 每兩個設備都使用線來連接,分散連接消耗和難度較大
- 在設備之間連接的接口需要大量空間
- 系統很難擴展,增加一個設備的時候,要和許多設備進行連接非常麻煩
二、什麼是總線
- 總線是連接各個部件的信息傳輸線,是各個部件共享的傳輸介質
三、總線上信息的傳輸
- 串行 將要傳輸的信息一位一位的進行傳輸
- 並型 將要傳輸的信息多位同時放在總線上進行傳輸需要多條數據線進行傳輸
串行傳輸還分爲:異步傳輸、同步傳輸、等時傳輸。實際上由於頻率加快串行傳輸速度超過並行
當傳輸距離較長時多線同時傳輸會發生干擾,並行傳輸一般較短,在一臺設備內部使用。當遠距離傳輸時一般會使用串行傳輸
四、總線結構的計算機舉例
1、單總線
總線是信號的公共傳輸線,同一時刻只能有一對設備使用總線,實際上不採取特殊措施會嚴重影響cpu效率,而設備較多會導致總線長度較長。
2、面向cpu的雙總線
和單總線結構相比,在cpu與主存間添加總線,專門提供cpu與主存間進行數據傳輸,但是主存無法與I/O設備直接傳輸
3、以存儲器爲中心的雙總線結構框圖
通常情況下雙口ram無法同時對存儲總線與系統總線傳輸數據
1.2總線的分類
1、片內總線 芯片內部的總線
2、系統總線 計算機各個部件之間的信息傳輸線
通常情況下總線寬度是小於等於機器字長
- 數據總線 雙向 與機器字長、存儲字長有關
- 地址總線 單向 與存儲地址、I/O地址有關 由cpu等發出的 寬度與mar寄存器相同
- 控制總線 有出 存儲區讀寫 總線使用權的許可與中斷的確認;有入 中斷請求、總線請求
3、通信總線 用於計算機系統之間或計算機系統與其他系統(控制儀表、移動通信)之間的通信
1.3總線特性及性能指標
一、總線物理實現
二、總線特性
- 機械特性 尺寸、形狀、管腳數、排列順序
- 電氣特性 傳輸方向和有效的電平範圍
- 功能特性 每根傳輸線的功能(地址、數據、控制)
- 時間特性 信號的時序關係
三、總線的性能指標
- 總線寬度:數據線的根數 同時可以傳輸多少位數據
- 標準傳輸率:每秒傳輸的最大字節數(MBps)
- 時鐘同步/異步
- 總線複用:地址線與數據線複用
- 信號線數:地址線、數據線和控制線的總和
- 總線控制方式:突發、自動、仲裁、邏輯、計數
四、總線標準
1.4總線結構
一、單總線結構
把所有的設備都連接在總線上,導致總線成爲系統的瓶頸
二、多總線結構
1、雙總線結構
通道專門用於輸入輸出操作,通道有自己的控制器和指令系統,執行通道程序,通道由操作系統編寫而不是人工編寫
2、三總線結構
DMA(Direct Memory Access):直接存儲器訪問
一些高速設備通過DMA與內存進行交互,但是低速設備與主存進行操作使用I/O總線
3、其他三總線結構
內存的速度成爲瓶頸,現在cpu與內存間添加了小容量高速Cache進行緩存,cpu運行時需要的指令和數據從Cache獲取。
局部I/O控制器連接一些高速設備
4、四總線結構
橋電路擴展出高速總線,低速設備通過拓展總線
三、總線結構舉例
1、傳統微型機總線結構
2、VL-BUS局部總線結構
3、PCI總線
系統總線連接PCI橋擴展出PCI總線連接高速設備,又通過標準總線控制器連接低速設備
4、多層PCI總線結構
PCI總線上連接設備過多會導致驅動能力不夠,使用PCI橋進行拓展
1.5總線控制
- 總線判優 多個設備可能同時向總線發出總線佔用請求,但同一時刻只能有一對設備佔用總線
- 通訊控制 一對設備佔用總線後進行通訊,如何進行通訊才能保證通信正確
一、總線判優控制
1、基本概念
- 主模塊(模塊) 對總線有控制權 可以提出總線佔用申請,可以控制與另外一臺設備的通訊過程
- 從設備(模塊) 本身不能對總線進行控制,也不能提出佔用請求,只能響應從主設備發來的總線命令
- 計算機系統當中有一些設備既可以當做主設備也可以當作從設備,有些總線有多個主設備
- 總線判優分爲兩種方法:集中式 分佈式 其中 集中式 又分爲三種方法:鏈式查詢 計數器定時查詢 獨立請求方式
2、鏈式查詢方式
- 總線控制部件是集中在一起的是集中式判優的特點
- 數據總線用於信息交換過程中數據的傳輸
- 主設備通過地址總線找到要通訊的從設備
- BR 設備都通過它發出總線佔用或使用請求
- BS 如果有一個設備佔用了總線的控制權,就通過BS告訴控制部件
- BG 是總線授權線,鏈式查詢方式特點就在BG
若設備有總線佔用請求,則它會通過BR向總線控制部件,總線控制部件收到請求後若可以讓外部設備使用,因爲所有外部設備都會用BR進行請求,不知道是哪個設備,這時將要通過BG向下逐個進行查詢,直到碰到第一個提出總線佔用請求的I/O接口,此時該接口將會通過BS設置總線忙,於此獲得總線使用權
總線使用優先級與BG查詢順序有直接關係,優先級在連接時已經確定,若設備排的比較靠後,則可能他提出的總線佔用請求一直不會收到應答
對電路故障非常敏感,若電路發生故障則後面的設備再也無法獲得總線使用權
電路結構簡單,與優先級和仲裁設備只與三條線有關,非常簡單,增加設備也比較簡單,進行可靠性設計比較容易實現,速度較慢,這種結構一般用在微型計算機或嵌入式系統
3、計數器定時查詢方式
- 設備地址線 是這種方式命名的來源,這上面傳輸的地址是由一個計數器給出的,通過這個地址來查找某個設備是否發出總線請求
- 總線控制部件中有計數器
- 若某個主設備想要佔用總線,與某個從設備進行傳輸,它將向BR提出總線佔用請求,總線控制部件若可以讓出總線控制權時,啓動計數器,計數器的值,是通過設備地址線向外進行輸出的。設備地址線給出信號後,若計數器值爲0,則查看接口0,若接口0沒有則加1,查看接口1提出請求,則通過BS進行應答,接口1被選中
優先級次序:若計數器不從0開始,若從上一次計數開始,則爲循環給予總線控制權,若使用軟件控制計數器,則可以更靈活的改變優先級。
設備地址線寬度與設備數有關 至少需要條線
4、獨立請求方式
任何I/O接口都增加兩條線,BG給出應答信號,優先級排隊在總線控制部件內部有排隊起,優先級確定由排隊器決定,可以使用自適應。該方法需要2n條線
二、總線通訊控制
1、目的 解決通訊雙方協調配合的問題
2、總線的傳輸週期 指主設備和從設備之間完成一次完整的可靠的通訊所需要的時間
- 申請分配階段 主模塊申請,總線仲裁決定
- 尋址階段 主模塊想從模塊給出地址和命令
- 傳輸階段 主模塊和從模塊交換數據 如果從設備已經準備好數據,就可以發送,如果準備好數據接收,就進行數據接收。
- 結束階段 主模塊撤銷有關信息
3、總線通信的四種方式
- 同步通信 由統一定寬定距時標控制數據傳送的過程 每一個操作每一個信號的給出都是在固定的時間點由時標進行控制
- 異步通信 採用應答方式,沒有公共時鐘標準,主設備發出請求,從設備給出應答信號
- 半同步設備 主要爲不同速度兩設備之間通訊問題 是同步和異步的結合
- 分離式通信 可以充分挖掘系統總線每一瞬間的潛力,讓系統總線發揮最大的效能
(1)同步式數據輸入
加入CPU使用同步方式從某一個外部設備進行數據輸入,同步式是要有一個定寬定距的時鐘來控制
- 在T1時鐘的上升沿,必須給出地址信號,是主設備給出的
- 在T2上升沿,必須給出讀命令信號,告訴從設備,主設備要讀入數據
- 在T3上升沿之前,從設備必須要給出數據信號,從數據總線給出
- 在T4上升沿,數據信號與控制信號可以撤銷
- 在T4結束,地址信號撤銷
(2)同步式數據輸出
- 在T1時鐘的上升沿,必須給出地址信號
- 在T1時鐘的下降沿,給出數據
- 在T2時鐘的上升沿,給出寫命令
- 在T4時鐘的上升沿,主設備撤銷數據和寫命令
- 在T4時鐘的上升沿,撤銷地址信息完成這次輸出操作
同步方式所有從模塊都用同一個時標進行控制,要在同一個實現中完成規定的操作,主從模塊是強制同步的,對多個速度不同的模塊必須要選擇最慢的模塊作爲統一時標進行控制
這種方式應用在總線較短因爲傳輸時延不能太大,且各個模塊存取時間比較一致的情況下。
(3)異步通信
設備有主設備和從設備,主設備發起,從設備受主設備控制,與同步相比無時鐘但增加兩條線請求線和應答線
不互鎖方式:主設備發出通信請求,從設備接收到後進行應答,主設備撤銷請求信號,從設備撤銷應答信號。主設備不管是否接收到了應到信號,一段時間後會自動撤銷請求信號;從設備也不管主設備是否接收到了應答信號,一段時間後也會自動撤銷應答信號
- 半互鎖方式:主設備發出通信請求,從設備發出應答信號,主設備接收到應答信號後再撤銷請求,若接受不到,請求會保持。有可能會造成請求信號一直保持高電平
- 全互鎖方式,主設備發出請求信號,從設備發出應答信號,主設備接收到應答信號後再撤銷請求信號,主設備信號撤銷後,從設備纔會撤銷應答信號
若傳輸過程中數據出錯,半互鎖全互鎖可以請求從設備重新發送或接收數據
(4)半同步通信(同步、異步結合)
同步特徵:有定寬定距時鐘,發送方用系統時鐘前沿發信號,接收方用系統時鐘後沿判斷、識別
異步特徵:允許不同速度的模塊協調進行工作,爲調整主從設備速度差異,增加了一條由從設備給出的等待信號WAIT
以輸入數據爲例的半同步通信時序
- T1 上升沿 主模塊發地址
- T2 上升沿 主模塊發命令
- Tw 當WAIT爲低電平時 等待一個T,等待數據的到來,再下一個時鐘週期到來時,主模塊繼續檢測,繼續等待T,直到某一個時鐘週期WAIT爲高電平,從模塊已經準備好發送設備
- T3 上升沿 從模塊提供數據
- T4 上升沿 從模塊撤銷數據,主模塊撤銷命令
上述三種通信的共同點
- 主模塊發地址、命令 佔用總線
- 從模塊準備數據 不需要佔用總線 總線空閒(總線是瓶頸,空閒即造成總線資源浪費)
- 從模塊向主模塊發數據 佔用總線
(5)分離式通信
充分挖掘系統總線再每一瞬間的潛力
一個總線傳輸週期分成兩個子週期
子週期1:主模塊申請佔用總線,使用完後即放棄總線使用權,從設備開始準備數據
子週期2:從設備可以發送設備(此時從模塊變成了主模塊,因爲他發起總線佔用請求),即從模塊申請佔用總線,將各種信息送至總線上
分離式通訊特點
- 各個模塊都有權申請佔用總線
- 採用同步方式通訊,不等對方應答
- 個模塊準備數據時,不佔用總線
- 總線被佔用時,無空閒,充分利用總線帶寬