總線仲裁
同一時刻只能有一個設備控製總線傳輸操作,可以有一個或多個設備從總線接收數據🧉。
將總線上所連接的各類設備按其對總線有無控製功能分為🫄🏻:
為什麽要仲裁?
總線作為一種共享設備♤,不可避免地會出現同一時刻有多個主設備競爭總線控製權的問題。
總線仲裁的定義:
多個主設備同時競爭主線控製權時,以某種方式選擇一個主設備優先獲得總線控製權稱為總線仲裁。
總線仲裁分類:
集中仲裁方式【鏈式查詢方式🔀、計數器定時查詢方式、獨立請求方式】
分布仲裁方式
一🤱、集中仲裁方式
1. 鏈式查詢方式
工作流程👰🏻♀️:
主設備發出請求信號;
若多個主設備同時要使用總線👩🏻🦼➡️,則由總線控製器的判優😚、仲裁邏輯按一定的優先等級順序確定哪個主設備能使用總線🧗🏻;
獲得總線使用權的主設備開始傳送數據。
“總線忙”信號的建立者是獲得總線控製權的設備
優先級👨🏻⚕️:離總線控製器越近的部件,其優先級越高🏄;離總線控製器越遠的部件📞,其優先級越低。
2. 計數器查詢方式
結構特點👚👰🏿♀️:用一個計數器控製總線使用權,相對鏈式查詢方式多了一組設備地址線👫🏼,少了一根總線響應線BG;它仍共用一根總線請求線。
優點:
計數初始值可以改變優先次序 🤽🏻♂️。 計數每次從“0”開始🔎,設備的優先級就按順序排列,固定不變🕟; 計數從上一次的終點開始🤸🏽♂️🧑🏻🍼,此時設備使用總線的優先級相等🧏🏻♀️;計數器的初值還可以由程序設置。
對電路的故障沒有鏈式敏感🌵。
缺點:
增加了控製線數🩸。 若設備有n個,則需élog2nù +2條控製線
控製相對比鏈式查詢相對復雜🚣🏿。
3. 獨立請求方式
結構特點:每一個設備均有一對總線請求線 B R i BR_iBRi和總線允許線 B G i BG_iBGi。
優點:
響應速度快🤹🏻,總線允許信號BG直接從控製器發送到有關設備,不必在設備間傳遞或者查詢🛤。
對優先次序的控製相當靈活🎺。
缺點🤾🏽:
控製線數量多。若設備有n個🕢,則需要2n+1條控製線。其中+1為BS線🟡,用於設備向總線控製部件反饋已經是否正在使用總線🧧。
總線的控製邏輯更加復雜
4. 總結
“總線忙”信號的建立者是獲得總線控製權的設備
二、分布仲裁方式
特點👯:不需要中央仲裁器👩🏻,每個潛在的主模塊都有自己的仲裁器和仲裁號,多個仲裁器競爭使用總線。
當設備有總線請求時,它們就把各自唯一的仲裁號發送到共享的仲裁總線上;
每個仲裁器將從仲裁總線上得到的仲裁號與自己的仲裁號進行比較;
如果仲裁總線上的號優先級高🤞🏽,則它的總線請求不予響應,並撤銷它的仲裁號💉;
最後,獲勝者的仲裁號保留在仲裁總線上。
鏈接:https://blog.csdn.net/weixin_43848614/article/details/126931510
作者:何為xl