arbiration logic
總線仲裁簡介
系統中多個設備或模塊可能同時申請對總線的使用權,為避免產生總線衝突,需由總線仲裁機構合理地控制和管理系統中需要佔用總線的申請者,在多個申請者同時提出總線請求時,以一定的優先算法仲裁哪個應獲得對總線的使用權。總線判優控制按照仲裁控制機構的設置可分為集中控制和分散控制兩種。其中就集中控製而言,常用的總線仲裁方式有:菊花鏈仲裁、二維仲裁、同步通信方式、異步通信方式和半同步通信方式。
連接到總線上的功能模塊有主動和被動兩種形態,CPU可以做主方也可以做從方,而存取器模塊只能用作從方。主方可以啟動一個總線週期,而從方只能響應主方的請求。對多個主設備提出的佔用總線請求,一般採用優先級或公平策略進行仲裁。
仲裁方式分類:
按照總線仲裁電路的位置不同,仲裁方式分為集中式仲裁和分佈式仲裁兩類:
1.集中式總線仲裁的控制邏輯基本集中在一處,需要中央仲裁器,分為鍊式查詢方式、計數器定時查詢方式、獨立請求方式;
(1) 鍊式查詢方式
鍊式查詢方式的主要特點:總線授權信號BG串行地從一個I/O接口傳送到下一個I/O接口。
假如BG到達的接口無總線請求,則繼續往下查詢;假如BG到達的接口有總線請求,BG
信號便不再往下查詢,該I/O接口獲得了總線控制權。離中央仲裁器最近的設備具有最高
優先級,通過接口的優先級排隊電路來實現。鍊式查詢方式的優點: 只用很少幾根線就能
按一定優先次序實現總線仲裁,很容易擴充設備。鍊式查詢方式的缺點: 對詢問鏈的電路
故障很敏感,如果第i個設備的接口中有關鏈的電路有故障,那麼第i個以後的設備都不能
進行工作。查詢鏈的優先級是固定的,如果優先級高的設備出現頻繁的請求時,優先級
較低的設備可能長期不能使用總線。
(2)計數器定時查詢方式
總線上的任一設備要求使用總線時,通過BR線發出總線請求。中央仲裁器接到請求信
號以後,在BS線為“0”的情況下讓計數器開始計數,計數值通過一組地址線發向各設備。
每個設備接口都有個設備地址判別電路,當地址線上的計數值與請求總線的設備地址相
一致時,該設備置“1”BS線,獲得了總線使用權,此時中止計數查詢。
每次計數可以從“0”開始,也可以從中止點開始。如果從“0”開始,各設備的優先次序與
鍊式查詢法相同,優先級的順序是固定的。如果從中止點開始,則每個設備使用總線的
優先級相等。計數器的初值也可用程序來設置,這可以方便地改變優先次序,但這種靈
活性是以增加線數為代價的。
(3)獨立請求方式
每一個共享總線的設備均有一對總線請求線BRi和總線授權線BGi。當設備要求使用總線
時,便發出該設備的請求信號。中央仲裁器中的排隊電路決定首先響應哪個設備的請求,
給設備以授權信號BGi。獨立請求方式的優點:響應時間快,確定優先響應的設備所花費
的時間少,用不著一個設備接一個設備地查詢。其次,對優先次序的控制相當靈活,可以
預先固定也可以通過程序來改變優先次序;還可以用屏蔽(禁止)某個請求的辦法,不響應
來自無效設備的請求。
2.分佈式仲裁不需要中央仲裁器,每個潛在的主方功能模塊都有自己的仲裁號和仲裁器。
當它們有總線請求時,把它們唯一的仲裁號發送到共享的仲裁總線上,每個仲裁器將仲裁
總線上得到的號與自己的號進行比較。如果仲裁總線上的號大,則它的總線請求不予響應,
並撤消它的仲裁號。最後,獲勝者的仲裁號保留在仲裁總線上。顯然,分佈式仲裁是以
優先級仲裁策略為基礎。
留言列表