拆分和仲裁雙向串行總線(xiàn)
雙向總線(xiàn)(例如,I 2 C、SMBus 和 LIN)在當今的電子產(chǎn)品中已變得無(wú)處不在,部分原因在于它們的簡(jiǎn)單性。僅使用兩條線(xiàn)——數據線(xiàn)和時(shí)鐘線(xiàn)——多個(gè)設備就可以相互通信。根據I 2 C總線(xiàn)規范,多128個(gè)設備可以共享相同的數據和時(shí)鐘線(xiàn);這是通過(guò)在每個(gè)設備上使用外部上拉電阻和開(kāi)漏驅動(dòng)器來(lái)實(shí)現的。如果沒(méi)有設備在傳輸 0,則總線(xiàn)自然會(huì )被上拉電阻拉到 1。但是,總線(xiàn)上的任何設備都可以將其拉為 0。
本文引用地址:http://dyxdggzs.com/article/202303/444906.htm雙向總線(xiàn)介紹
雙向總線(xiàn)(例如,I 2 C、SMBus 和 LIN)在當今的電子產(chǎn)品中已變得無(wú)處不在,部分原因在于它們的簡(jiǎn)單性。僅使用兩條線(xiàn)——數據線(xiàn)和時(shí)鐘線(xiàn)——多個(gè)設備就可以相互通信。根據I 2 C總線(xiàn)規范,多128個(gè)設備可以共享相同的數據和時(shí)鐘線(xiàn);這是通過(guò)在每個(gè)設備上使用外部上拉電阻和開(kāi)漏驅動(dòng)器來(lái)實(shí)現的。如果沒(méi)有設備在傳輸 0,則總線(xiàn)自然會(huì )被上拉電阻拉到 1。但是,總線(xiàn)上的任何設備都可以將其拉為 0。
允許總線(xiàn)master隨時(shí)驅動(dòng)總線(xiàn),slave在一定時(shí)間內響應總線(xiàn)master的查詢(xún)
收到查詢(xún)后。在多主機場(chǎng)景中,充當總線(xiàn)主機的各個(gè)設備需要執行自己的總線(xiàn)仲裁。希望斷言對總線(xiàn)的控制的總線(xiàn)主機需要通過(guò)將其拉至 0 來(lái)對其進(jìn)行測試;這會(huì )通知其他主設備正在使用總線(xiàn)。
為什么拆分雙向總線(xiàn)?
I 2 C 總線(xiàn)規范 [1] 包含一個(gè)參考電路,允許將其分為輸入和輸出對。出于多種原因需要此配置。首先,在安全、噪聲和接地問(wèn)題的情況下,分離總線(xiàn)可用于光學(xué)隔離總線(xiàn)主機和從機(圖 1 )。此外,可以通過(guò)放大分離總線(xiàn)(圖 2)或用執行媒體轉換的電路替換放大器來(lái)實(shí)現性能提升。這可以增加總線(xiàn)的工作距離,并通過(guò)減少電容來(lái)提高性能。隨著(zhù)電容下降,信號時(shí)間常數 t 將由上拉電阻決定。
圖 1 雙向總線(xiàn)隔離
圖2 雙向總線(xiàn)中繼器
對于那些設計雙向總線(xiàn)控制器的人,可以使用總線(xiàn)拆分技術(shù)進(jìn)行調試。雙向協(xié)議的典型調試變得困難,因為行為不當的控制器可能將總線(xiàn)拉到 0,而另一個(gè)控制器正在斷言對總線(xiàn)的控制。這種情況使得在不知道每個(gè)設備控制器的內部狀態(tài)的情況下不可能識別總線(xiàn)上的傳輸設備。然而,通過(guò)監控圖 2中的 /gateB1 和 /gateA2 線(xiàn)路, 可以?xún)H使用標準實(shí)驗室設備和調試技術(shù)來(lái)識別傳輸設備和總線(xiàn)的任何同時(shí)斷言。
總線(xiàn)拆分技術(shù)可用于將支持 I 2 C 的設備連接到另一個(gè)沒(méi)有 I 2 C 控制器的設備。在這種情況下,分離總線(xiàn)可以連接到其他設備的 GPIO(圖 3)。
圖 3 連接到 GPIO 的拆分總線(xiàn)
有幾個(gè)已發(fā)布的電路可以拆分雙向總線(xiàn)。不幸的是,用于分離總線(xiàn)應用的參考電路要么需要為特定應用專(zhuān)門(mén)設計的電路(如 見(jiàn)于已發(fā)表的文章),或需要使用傳輸門(mén)的外部控制邏輯(如 I 2C 標準中所示)允許發(fā)送器和接收器進(jìn)行通信,而不會(huì )創(chuàng )建導致閂鎖的反饋路徑。閂鎖情況在圖 2中很明顯,其中 IOA 將總線(xiàn)拉至 0 迫使 IOB 通過(guò) /gateB1 拉至 0,然后強制 IOA 通過(guò) /gateA2 無(wú)限期拉至 0。
本設計理念中介紹的雙邊仲裁器可以將雙向總線(xiàn)拆分為發(fā)送和接收對,并以通用方式構建,使其可用于任何拆分總線(xiàn)應用。此外,它不需要外部控制邏輯——總線(xiàn)僅由數據總線(xiàn)的狀態(tài)控制:
圖 4 雙邊仲裁器使能電路
雙邊仲裁
圖 5中所示的仲裁器由圖 4中的交叉耦合使能電路組成,之所以起作用,是因為根據定義,雙向總線(xiàn)僅支持半雙工通信。在穩定狀態(tài)下,DATA 總線(xiàn)被上拉電阻 R1 和 R2 拉高,迫使 OUT1 和 OUT2 為 0。這使兩個(gè) NMOS FET 都處于截止狀態(tài)。當IC1拉低DATA時(shí),OUT1變?yōu)?,使Q2拉低IC2的DATA總線(xiàn)。同時(shí),OUT1 被饋送到或非門(mén) U2 的輸入端,斷開(kāi)從 OUT2 返回到 Q1 的反饋回路。反饋回路的這種中斷消除了閉鎖條件,使得任何其他控制邏輯都變得不必要,因為個(gè)斷言其數據線(xiàn)的電路贏(yíng)得了比賽,并通過(guò)或非門(mén)阻塞了另一個(gè)電路。
圖5 雙向總線(xiàn)的雙邊仲裁
圖 6 雙邊仲裁啟用總線(xiàn)放大
由于電路的通用性,雙邊仲裁可應用于任何拆分總線(xiàn)應用。圖 6 顯示了應用于放大的雙邊仲裁。通過(guò)分別用媒體轉換電路或光隔離器替換放大器組件,這可以很容易地擴展到媒體轉換和總線(xiàn)隔離。出于調試總線(xiàn)控制器的目的,可以監控放大器之間的線(xiàn)路以幫助識別故障總線(xiàn)控制器。圖 7 顯示了應用于 I 2 C 到 GPIO 連接的雙邊仲裁。
圖 7 I 2 C 到 GPIO 連接
結論
將雙向總線(xiàn)分成發(fā)送/接收對有多種原因。從提高性能到啟用調試再到隔離,總線(xiàn)分離是一種許多設計人員都曾發(fā)現有用的技術(shù)。
雙邊仲裁是一種總線(xiàn)仲裁技術(shù),可實(shí)現大多數總線(xiàn)拆分應用。它依賴(lài)于雙向總線(xiàn)通信的行為來(lái)消除對外部控制電路的需求,并且足夠通用以用于許多應用程序而不會(huì )增加不必要的復雜性。
評論