四通道I2C多路復(fù)用器提供了地址擴(kuò)展、總線緩沖和故障管理
引言
本文引用地址:http://m.butianyuan.cn/article/91626.htm隨著數(shù)據(jù)處理、海量存儲(chǔ)和通信系統(tǒng)的發(fā)展,用于傳送諸如溫度、扇速、系統(tǒng)電壓和關(guān)鍵產(chǎn)品數(shù)據(jù)(VPD,例如:電路板標(biāo)識(shí))等信息的子系統(tǒng)尺寸和復(fù)雜程度成比例地增長(zhǎng)。在這些信息的傳送中,最常用的就是兩線式串行總線,比如:I2C或SMBus。
在這些系統(tǒng)的設(shè)計(jì)中會(huì)出現(xiàn)若干實(shí)際問題,特別在系統(tǒng)規(guī)模日益擴(kuò)大的情況下更是如此。首先,諸如小型可插拔式光學(xué)模塊(SFP)等眾多設(shè)備都具有硬連線I2C地址,故由于地址沖突的原因而無法使用多個(gè)這樣的設(shè)備。其次,由于設(shè)備種類的增加以及有越來越多的I/O板卡需要在系統(tǒng)上進(jìn)行熱插拔,因此,I2C設(shè)備產(chǎn)生混亂并把總線保持于低電平的可能性有所增加。第三,隨著等效總線電容的增加,總線定時(shí)規(guī)格的滿足變得困難起來。除了這些大的系統(tǒng)問題之外,在安裝一個(gè)新的I/O板卡時(shí)進(jìn)行功率循環(huán)并不是任何規(guī)格的不間斷電源都擁有的功能選項(xiàng)。
具有總線緩沖器的LTC4306四通道兩線式總線多路復(fù)用器/開關(guān)解決了所有這些問題。上行兩線式總線(SDAIN、SCLIN)上的一個(gè)主控器可通過LTC4306的總線緩沖器和多路復(fù)用器/開關(guān)連接至下行總線的任何組合。因此,相同的設(shè)備地址可在多根下行總線上使用。緩沖器在上行和下行總線之間提供了容性隔離,從而為系統(tǒng)負(fù)載的分割創(chuàng)造了條件。上升時(shí)間加速器在克服電容局限性方面起到了進(jìn)一步的幫助作用。當(dāng)總線處于低電平的持續(xù)時(shí)間達(dá)到了設(shè)定的長(zhǎng)度時(shí),阻塞低電平超時(shí)電路將使上行總線與下行總線斷接,從而把上行總線解放出來,以恢復(fù)通信。最后,LTC4306的任何兩線式總線引腳都可在一個(gè)帶電系統(tǒng)上進(jìn)行插拔操作,而不會(huì)對(duì)其造成損害。LTC4306可采用2.7V至5.5V的電源電壓。
一般操作
圖1示出了LTC4306的方框圖。UVLO比較器將阻止LTC4306接收命令,直到VCC電壓升至2.5V(典型值)以上為止。這將確保LTC4306在其擁有足夠的偏置電壓之前不會(huì)試圖運(yùn)行。當(dāng)ENABLE引腳被拉至1V以下時(shí),LTC4306將被復(fù)位至其缺省的高阻抗?fàn)顟B(tài),并且毫不理會(huì)在其兩線式總線上進(jìn)行的任何通信嘗試。當(dāng)ENABLE引腳被回拉至1.1V以上時(shí),主控器可以恢復(fù)與LTC4306的通信。
與一根阻塞總線斷接
當(dāng)兩線式總線阻塞于低電平的持續(xù)時(shí)間達(dá)到了一個(gè)設(shè)定的長(zhǎng)度時(shí),LTC4306將使上行總線與下行總線斷接。主控器隨后處于空閑狀態(tài),以在上行總線上恢復(fù)通信(假定問題的起因存在于一根下行總線上)。阻塞低電平超時(shí)電路負(fù)責(zé)監(jiān)視下行SDA和SCL開關(guān)的兩個(gè)共用的內(nèi)部節(jié)點(diǎn),并在任一個(gè)內(nèi)部節(jié)點(diǎn)電壓低于0.52V的情況下運(yùn)行一個(gè)定時(shí)器。當(dāng)這兩個(gè)內(nèi)部電壓均高于0.6V時(shí),該定時(shí)器將被復(fù)位。利用寄存器2,主控器能夠設(shè)定7.5ms、15ms或30ms的時(shí)間,或者,它們也可選擇停用超時(shí)功能。
兩線式總線緩沖器和多路復(fù)用器開關(guān)提供了電容緩沖和電平移動(dòng)
主控器向寄存器3寫入數(shù)據(jù),以連接至下行通道的任何組合。兩線式總線緩沖器在上行SDAIN、SCLIN總線和下行總線之間提供容性隔離。由于擁有了此項(xiàng)功能,主控器便可在其系統(tǒng)的不同位置上采用LTC4306,以把一根大型總線分裂成若干個(gè)較小的總線。當(dāng)連接了任何下行總線時(shí),LTC4306將允許通過一個(gè)外部電阻器把READY引腳拉至一個(gè)邏輯高電平。
按照缺省設(shè)置,LTC4306僅與高電平的下行總線相連。與低電平下行總線相連的嘗試將是勞而無功的,并將導(dǎo)致LTC4306把ALERT#引腳拉至低電平,以表示發(fā)生了一個(gè)故障。主控器可通過向寄存器2寫入數(shù)據(jù)并指示LTC4306執(zhí)行連接命令(這與下行總線的邏輯狀態(tài)無關(guān))來取代該功能。
上行和下行總線上拉電源電壓可在2.2V至5.5V的范圍內(nèi)變化,而不受LTC4306 VCC電壓的影響—— LTC4306因而能夠在具有不同上拉電壓的總線之間提供電平移動(dòng)。為了保證同時(shí)連接多個(gè)下行通道時(shí)的正確運(yùn)作,需確定LTC4306 VCC電壓低于或等于所有的下行上拉電壓,以維持邏輯高電平期間的通道至通道隔離度。
上升時(shí)間加速器縮短了上升時(shí)間
通過向寄存器2寫入數(shù)據(jù),主控器便可以起動(dòng)或不起動(dòng)上行總線和下行總線上的上升時(shí)間加速器。當(dāng)起動(dòng)時(shí),加速器以一種受控方式接通,并向總線輸送電流,以使它們?cè)谡偩€轉(zhuǎn)換期間以一個(gè)100V/μs的典型速率上升。這些大上拉電流使得用戶能夠在仍舊滿足上升時(shí)間規(guī)格的同時(shí)構(gòu)建龐大的重容性系統(tǒng),但也進(jìn)行了轉(zhuǎn)換限制,以驅(qū)動(dòng)長(zhǎng)電纜。此外,由于加速器提供了強(qiáng)驅(qū)動(dòng),系統(tǒng)設(shè)計(jì)師因而能夠選擇大上拉電阻器來最大限度地減小總線邏輯低電壓,由此實(shí)現(xiàn)邏輯低噪聲容限的最小化。
故障信息為診斷提供了幫助
在發(fā)生了一個(gè)故障且LTC4306把ALERT#引腳拉至低電平之后,LTC4306將和主控器一道工作,以簡(jiǎn)單而迅速地解決故障。LTC4306把特定的故障信息存儲(chǔ)于只讀寄存器0之中。被存儲(chǔ)的故障包括低電平阻塞總線、下行總線上的故障以及與一個(gè)下行通道的失敗連接嘗試。
如果故障的起因存在一根連接下行總線之上,則主控器可直接與出錯(cuò)器件進(jìn)行通信。在這種場(chǎng)合,LTC4306以透明的方式運(yùn)作,且主控器和出錯(cuò)器件通過LTC4306的總線緩沖器直接通信。
在所有其他的場(chǎng)合中,LTC4306與上行兩線式總線上的主控器進(jìn)行通信,以解決故障。在主控器發(fā)送了報(bào)警響應(yīng)地址(ARA)之后,LTC4306利用其位于SDAIN上的地址做出響應(yīng),并釋放ALERT#。如果由主控器來對(duì)其進(jìn)行尋址,則LTC4306也將釋放ALERT#。主控器通過讀出寄存器0的內(nèi)容來確定故障的起因。在主控器解決了問題之后,它把一個(gè)空字節(jié)寫入寄存器0(這是一個(gè)只讀寄存器),以使故障檢測(cè)電路復(fù)位。
嵌套尋址和電平移動(dòng)
圖2所示電路示出了LTC4306的嵌套尋址、電平移動(dòng)和電容緩沖功能。為簡(jiǎn)單起見,圖中僅給出了通道1和4。請(qǐng)注意,背板、板卡1和板卡4被上拉至三個(gè)不同的電源電壓。另外,雖然SFP模塊具有相同的地址,但是,只要通道1和4決不同時(shí)運(yùn)行,就不會(huì)發(fā)生地址沖突。
LTC4306位于背板之上時(shí)的兩線式總線熱插拔
圖3示出了一個(gè)把LTC4306布設(shè)于背板之上并將一個(gè)I/O板卡插入下行通道4之中的電路。同樣,為簡(jiǎn)單起見略去了通道2和3。在進(jìn)行板卡插拔操作之前,需確定通道4未與上行總線相連,這樣上行總線上發(fā)生的任何事務(wù)處理都不會(huì)受到干擾。如圖所示,SDA4和SCL4上的上拉電阻器位于背板上,不過它們也可以安放在I/O板卡上,只要背板上的主控器在沒有板卡插入時(shí)不與通道4相連即可。ALERT4#上的上拉電阻器必須設(shè)置在背板上,以防止在未插入板卡時(shí)發(fā)生錯(cuò)誤的故障報(bào)告。
LTC4306位于I/O板卡之上時(shí)的兩線式總線熱插拔
在圖4中,LTC4306位于具有4根單獨(dú)下行總線的I/O板卡的邊緣。把一個(gè)200kΩ電阻器從ENABLE引腳連接至地,并使ENABLE成為連接器上最短的引腳。這將確保ENABLE引腳在所有其他引腳均連接的情況下保持在一個(gè)恒定的邏輯低電平,因此,LTC4306將處于其缺省的高阻抗?fàn)顟B(tài),且不會(huì)受到在連接期間SDAIN和SCLIN上連接瞬變的影響。此外,應(yīng)使ALERT# 連接器引腳比VCC引腳短,這樣,VCC就將在ALERT# 形成連接之前建立起與I/O板卡上拉電源引腳的可靠連接,并向ALERT1# ~ ALERT4#上的上拉電阻器供電。當(dāng)斷接時(shí),ENABLE首先斷開連接,并使LTC4306復(fù)位至其缺省狀態(tài),因而當(dāng)板卡斷接時(shí)其在SDAIN和SCLIN總線上引起的擾動(dòng)極小。
結(jié)語
LTC4306使得與大型兩線式總線系統(tǒng)相關(guān)的實(shí)際設(shè)計(jì)問題有所緩解。它充當(dāng)了一個(gè)多路復(fù)用器以提供嵌套尋址。它將在總線阻塞于低電平時(shí)使其斷接。它把一根很大的容性總線分裂成較小的分支,并允許I/O板卡在帶電系統(tǒng)上進(jìn)行熱插拔。它可記錄故障、向主控器報(bào)告、并與主控器一道高效地解決故障。
評(píng)論