[TOC]異步
主要爲規定接收信息部件的總線使用權問題;主要包括判優控制和通訊控制;設計
總線上的鏈接設備按對總線有無控制功能能夠分爲主設備和從設備,主設備對總線有控制權,從設備只能響應主設備發來的總線命令,對總線沒有控制權。總線上的信息傳送是由主設備發出總線請求信號,若是多個設備同時請求,就須要總線控制器的判優,仲裁邏輯肯定哪一個設備能使用總線,只有擁有控制權的設備才能傳輸數據;接口
判優控制可分爲:集中式判優和分散式判優;同步
控制總線中有三根線用於總線控制(總線忙BS,總線請求BR,總線贊成BG),其中BG是串行一個IO接口一個IO接口的下送,若是BG到達的接口有總線請求,就再也不往下送,意味着該接口得到總線控制權,並創建BS信號,表示它佔用了總線,能夠看到,最近的優先級最高;它的特色是:只須要幾根線就能按必定次序實現總線控制,而且容易擴充設備,可是電路故障敏感,且優先級低的設備很難得到控制權;io
控制部件接收到BR送來的總線請求信號後,在總線未被佔用BS=0,總線計數器開始計數,並經過設備地址線,向各設備發送一組地址信號。當某個請求佔用總線的設備地址與計數器一致時,便得到總線控制權,終止計數;其特色是:計數能夠從0開始,此時若是設備優先級固定,設備優先級0,1,...n的順序降序排列,且固定不變。計數器也能夠從上次計數終點開始,是一種循環的方式,此時設備使用總線優先級同樣,這種方式對電路故障敏感度不如鏈式查詢,但增長了控制線,控制也較爲複雜;效率
每臺設備有BR和BG線,當設備發出總線請求時,控制器中有排隊電路,可根據優先級肯定響應哪一臺設備;特色是:響應快,優先級靈活,可是控制線數量較多,總線控制更爲複雜。循環
鏈式查詢僅用兩根線肯定總線控制權; 計數查詢大體用logn根線,n爲最大設備數; 獨立請求須要2n根線;請求
一般完成一次總線操做的時間稱爲總線週期。能夠分爲4個階段:im
總線通訊控制主要解決通訊雙方如何獲知傳輸開始,傳輸結束及如何協調和配合;常見的通訊方式有:同步通訊,異步通訊,半同步通訊,分離式通訊;下面主要講解同步和異步通訊。通信
通訊雙方由統一時標控制數據傳送稱爲同步通訊,時標一般由CPU的總線控制器發出,到總線上全部的部件,也能夠由各部件各自的時序發生器發出,但必須總線控制器發出的時鐘信號對其進行同步;
如如下爲某輸入設備向CPU傳輸的同步通訊過程:
CPU在T1上升沿發出地址信息,T2上升沿發出讀命令,與地址信息相符合的輸入設備按命令進行一系列內部操做,且在T3上升沿前將CPU所需數據送到數據總線上,CPU在T3時鐘週期內將數據送到其寄存器,在T4上升沿撤銷讀命令,輸入設備再也不向數據總線傳輸數據。
這種通訊方式有點在於規定明確,統一,模塊間配合簡單一致,缺點是從模塊時間配合屬於強制性「同步」,必須在限定時間內完成規定的要求。而且對全部從模塊都用同一限時,這就形成對於不一樣速度的部件而言,必須按照最慢速度部件來設計公共時鐘,嚴重影響了工做效率; 同步通訊通常用於總線長度較短,各部件存取時間比較一致的場合,總線傳輸週期越短,數據位數越多,直接影響總線數據傳輸速率;
它沒有公共的時鐘標準,不要求全部部件嚴格的統一操做時間,而是採用應答的方式(握手),即主模塊發出請求後,一直等待從模塊反饋的響應信號後,纔開始通訊,所以要求主從模塊之間增長兩條應答線。 異步通訊可分爲:不互鎖,半互鎖,全互鎖
主模塊發出請求信號後,沒必要等到從模塊的應答信號,而是通過一段時間後,確認從模塊已收到請求信號後,撤銷其請求信號。從模塊接收到信號後,條件容許下發出應答信號,並通過一段時間確認主模塊收到應答信號後,自動撤銷回答信號,可見並沒有互鎖關係。例如:CPU向主存寫信息,CPU先給地址信號,寫命令和寫入數據;
主模塊發出請求信號後,必須等待從模塊的應答信號,再主動撤銷其請求信號,有互鎖關係,而從模塊接收到請求信號後發出回答信號,可是沒必要等到獲知主模塊的請求信號已經撤銷,而是隔一段時間後,主動撤銷其回答信號,無互鎖關係。因爲一方有互鎖關係,一方沒有互鎖關係,因此稱爲半互鎖。
主模塊發出請求信號,必須等待從模塊回答後再撤銷請求信號;從模塊發出回答信號後,必須獲知主模塊請求信號撤銷後,再撤銷其回答信號,雙方存在互鎖關係。