1 前言
由于數(shù)字電源的控制靈活、結(jié)構(gòu)變化靈活、調(diào)節(jié)、維護方便和造價低的一系列優(yōu)點,代表了電源技術(shù)的發(fā)展方向。而在數(shù)字電源中,總線技術(shù)發(fā)揮了很重要的作用,本文結(jié)合數(shù)字電源中常用的總線技術(shù)加以介紹。
2 I2C總線
I2C總線是英文“Inter Integrated Circuit Bus”的縮寫,常譯為“集成電路間總線”或“內(nèi)部集成電路總線”。I2C總線以它強大的控制能力和精巧的電路結(jié)構(gòu),得到各生產(chǎn)廠家的認(rèn)可。目前,I2C總線在許多電子產(chǎn)品中得到了廣泛應(yīng)用。
I2C總線接口的有關(guān)技術(shù)指標(biāo)最早在1982年確定。Philips公司將I2C總線以簡單雙線接口的形式首先推出,用于在同一塊電路板或機柜中的有關(guān)電子部件之間實現(xiàn)通信,1987年P(guān)hilips公司擁有了I2C總線的專利。在I2C中有兩條信號線,一條用于時鐘信號的傳輸,一條用于數(shù)據(jù)信號的傳輸,通過I2C總線,可以在主控部件和從控部件之間完成有關(guān)命令、控制和工作信息通過兩條串行信號線來傳輸。I2C總線的最典型應(yīng)用就是通過一個主控部件來完成有關(guān)部件之間的通信控制。由于I2C總線的使用簡單性,所以目前I2C總線得到了廣泛的應(yīng)用,I2C總線的有關(guān)性能不斷得到提高,通信速率和尋址范圍也在不斷提升。
作為工業(yè)標(biāo)準(zhǔn),I2C總線作為一種很有吸引力的物理通信方式,在ACCES bus、SM Bus、PSMI和IPMI工業(yè)標(biāo)準(zhǔn)總線中,I2C總線的有關(guān)技術(shù)指標(biāo)也被引用。I2C總線可以應(yīng)用于許多的微控制器,并且在許多應(yīng)用場合,利用通用的I/O引腳,通過軟件也可以驅(qū)動I2C總線。例如,在1991年,由一些公司牽頭開發(fā)了ACCESS bus(存取總線,簡稱A.b),這里利用了I2C總線作為它的物理通信層,從而使ACCESS bus具有使能被控器件的能力,ACCESS bus被用作是一種改進(jìn)的、簡化的、規(guī)范的和靈活多用的方法來連接計算機的內(nèi)部,外部器件到CPU,它支持像時鐘和電池電能監(jiān)控等器件的工作,并且也支持鍵盤、鼠標(biāo)、顯示器和調(diào)制解調(diào)器的工作。在1995年,ACCESS bus工作組(ABIG)發(fā)布了V3.0技術(shù)文件版本,一些公司(例如:USAR和日本Fujitsu公司都參加到了ABIG的活動中,并在智能電池系統(tǒng)接口論壇Smart Battery system Interface Forum:SBS-IF)中積極參與工作。
2.1 關(guān)于I2C總線
I2C總線是串行總線系統(tǒng),I2C總線由兩根線組成,一根是串行數(shù)據(jù)線,常用SDA表示;另一根是串行時鐘線,常用SCL表示。CPU利用串行時鐘線發(fā)出時鐘信號,用串行數(shù)據(jù)線發(fā)送或接收數(shù)據(jù),實現(xiàn)對被控電路的調(diào)整與控制。由于I2C總線只有兩根信號線,因此數(shù)據(jù)的傳輸方式是串行方式,其數(shù)據(jù)傳輸速度低于并行數(shù)據(jù)傳輸方式,但I(xiàn)2C總線占用CPU的引腳很少,只有兩個,有利于簡化CPU的外圍線路。
在I2C總線系統(tǒng)中,CPU是核心,I2C總線由CPU電路引出,其他被控對象均掛接在I2C總線上,I2C總線系統(tǒng)電路結(jié)構(gòu)示意圖如圖1所示。
圖1 I2C總線系統(tǒng)電路結(jié)構(gòu)示意圖
2.2 I2C總線接口電路
I2C總線上傳輸?shù)氖菙?shù)字信號,如果I2C總線上掛接的被控集成電路為模擬電路,為便于與被控模擬電路通信,在被控對象中需要增加I2C總線接口電路,受控IC中I2C總線接口電路工作原理圖如圖2所示。接口電路一般由I2C控制器和控制開關(guān)等電路組成。由CPU送來的數(shù)據(jù)信息經(jīng)譯碼器譯碼后控制信號才能對被控IC執(zhí)行控制操作。被控對象通過I2C總線接口電路接收由CPU發(fā)出的控制指令和數(shù)據(jù),實現(xiàn)CPU對被控對象的控制。
I2C總線是雙向總線系統(tǒng),通過I2C總線CPU可以向被控IC發(fā)送數(shù)據(jù),被控IC也可通過I2C總線向CPU傳送數(shù)據(jù),但被控IC是接收數(shù)據(jù)還是發(fā)送數(shù)據(jù)則由CPU控制。由于I2C總線是雙向總線系統(tǒng),因此CPU可以對I2C總線上掛接的有關(guān)電路進(jìn)行故障檢查。
對生產(chǎn)自動化調(diào)整功能的電器,可將生產(chǎn)線上的計算機與電器的I2C總線相連,根據(jù)電器不同調(diào)整項目的預(yù)置功能和要求,將最佳調(diào)整數(shù)據(jù)傳送到電器的E2PROM存儲器中,也可將標(biāo)準(zhǔn)數(shù)據(jù)固化在CPU的只讀存儲器中。采用I2C總線的電器節(jié)省了很多可調(diào)電位器,簡化了調(diào)整工藝,產(chǎn)品的一致性好,工作可靠性高。
圖2 I2C總線系統(tǒng)的電路結(jié)構(gòu)示意圖
2.3 I2C總線系統(tǒng)的功能
以CPU為核心的I2C總線系統(tǒng),主要用完成以下幾個功能。
?、庞脩舨僮鞴δ?/p>
用戶在使用電器時,通常要進(jìn)行有關(guān)控制參量的調(diào)節(jié)、控制等操作,操作時只需按動本機鍵盤或遙控器鍵盤上的相應(yīng)按鍵,CPU便通過I2C總線向被控電路發(fā)出有關(guān)控制指令。
?、凭S修調(diào)整功能
完成對被控電器各單元電路進(jìn)行工作方式設(shè)定和調(diào)整的控制功能。在普通電器中,是利用可調(diào)電位器進(jìn)行有關(guān)單元電路的各種工作參數(shù)調(diào)整。而在I2C總線的被控電器中,這些參數(shù)都可由操作人員進(jìn)行專門的調(diào)整狀態(tài)后,通過遙控器或本機操作鍵來完成有關(guān)工作參數(shù)的調(diào)整。⑶故障自檢功能
由于I2C總線上的信息是由SDA和SCL兩線串行數(shù)據(jù)信號線雙向傳輸?shù)?,因此CPU可以對I2C總線的通信情況和被控集成電路的工作狀態(tài)進(jìn)行監(jiān)測,并在屏幕上顯示檢測結(jié)果,為維修人員提供有關(guān)故障自檢信息。被控器送來的低電平應(yīng)答信號,CPU就會判斷該被控器有故障,并終止數(shù)據(jù)傳送。由于各被控集成電路和器件均有自己的地址,所以,在總線上不同時間傳送著眾多的控制信號,但各被控器只要把與自己地址相同的控制信號從總線上取下來,并進(jìn)行識別和處理,得到相應(yīng)的控制信號,就可以實現(xiàn)相應(yīng)的控制。
2.4 I2C總線系統(tǒng)的控制過程
?、臗PU與存儲器之間的數(shù)據(jù)交換
I2C總線系統(tǒng)中的存儲器存儲有兩種信息:一是用戶信息,是用戶寫入的控制信息,此信息用戶可以更改,如各種模擬控制量(例如電源的OVP、OCP、OTP和所需輸出電壓值等);另一種是控制信息,是由廠家寫入的控制數(shù)據(jù),此信息用戶不能改變。電器正常工作時,CPU從存儲器中取出有關(guān)用戶信息和控制信息,并送往被控電路使其處于正常工作狀態(tài);當(dāng)調(diào)整電器時,CPU也從存儲器中取出控制信息,檢修人員使用正確的調(diào)試步驟來改變這些控制信息,以確保采用I2C總線的電器處于最佳工作狀態(tài)。
?、艭PU對被控電器的控制過程
CPU對采用I2C總線的被控電器控制需經(jīng)過以下過程。
?、貱PU尋址過程。當(dāng)CPU要對某被控器進(jìn)行控制時,CPU將向總線發(fā)出該被控器的地址指令,被控器收到指令后,便發(fā)出應(yīng)答信息,CPU總線收到應(yīng)答信息后,就將該被控器作為控制對象。
?、贑PU調(diào)用數(shù)據(jù)過程。CPU找到被控器后,就從存儲器中調(diào)出相應(yīng)的用戶信息及控制信息,并通過I2C總線送到被控器,使被控器處于所要求的工作狀態(tài)。
?、郾豢仄鲌?zhí)行指令的過程。被控器接收到指令后,便對指令進(jìn)行譯碼,并將譯碼的結(jié)果與自己的控制內(nèi)容編碼進(jìn)行比較,以確定進(jìn)行何種操作,這項工作是由總線接口電路中的譯碼器來完成的。確定進(jìn)行何種操作后,總線接口電路中的相應(yīng)控制開關(guān)便自動接通,控制數(shù)據(jù)經(jīng)過控制開關(guān)送到D/A轉(zhuǎn)換器,轉(zhuǎn)換成模擬控制電壓,用以控制相應(yīng)的模擬電路,完成有關(guān)操作。I2C總線數(shù)據(jù)傳送最繁忙的時刻是在采用I2C總線電路的剛開機一瞬間,由于被控電路沒有存儲數(shù)據(jù)的功能,因此,每次開機時CPU都要從存儲器中取出控制數(shù)據(jù),送往各被控器,使被控器進(jìn)人相應(yīng)的工作狀態(tài)。因此,剛開機時CPU的控制任務(wù)最繁重,控制過程最復(fù)雜,損壞的可能性也就最大,所以使用I2C總線的電器應(yīng)盡量避免頻繁開/關(guān)機。
根據(jù)電器功能的強弱以及在I2C總線上掛接的被控電路的不同,在I2C總線采用的CPU上可引出一組或多組I2C總線。
由I2C總線控制的集成電路或器件必須具有專用的總線端子,即SDA端子與SCL端子。凡是具有SDA、SCL端子(引腳)的集成電路或器件,均可以由總線控制。
2.5 I2C總線信號的傳輸方式
I2C總線中的兩根信號線(SDA、SCL)在傳輸各種控制信號的過程中是有嚴(yán)格分工的。其中,SDA數(shù)據(jù)線用來傳輸各控制信號的數(shù)據(jù)及這些數(shù)據(jù)占有的地址等內(nèi)容;SCL時鐘線用來控制器件與被控器件之間的工作節(jié)拍。為保證總線輸出電路得到供電,SDA線和SCL線均通過上拉電阻和電源連接,當(dāng)總線空閑時,SDA和SCL兩線均保持高電平。I2C總線控制信號傳輸波形如圖3所示。
圖3 I2C總線控制信號傳輸波形
(1)時鐘線控制信號
SCL線為高電平期間,SDA線上傳輸?shù)臄?shù)據(jù)必須保持穩(wěn)定,在此期間,控制器件與被控制器件之間可以交換數(shù)據(jù);SCL線為低電平期間,SDA線上傳輸?shù)臄?shù)據(jù)可以變化,即允許數(shù)據(jù)線上電平高低跳變。
(2)數(shù)據(jù)線控制信號
數(shù)據(jù)線上傳輸?shù)目刂菩盘枺磮D3所示的內(nèi)容和順序先后傳輸:起始狀態(tài)信號、被控電路地址、讀寫方式(數(shù)據(jù)傳輸方向位)、應(yīng)答信號、數(shù)據(jù)信號、應(yīng)答信號、數(shù)據(jù)信號、應(yīng)答信號、終止?fàn)顟B(tài)信號。
在時鐘線為高電平期間,數(shù)據(jù)線上一個電平由高到低的跳變規(guī)定為起始狀態(tài),電平由低到高的跳變規(guī)定為終止?fàn)顟B(tài),起始狀態(tài)信號和終止?fàn)顟B(tài)信號均由CPU發(fā)出。當(dāng)CPU發(fā)出起始狀態(tài)信號后,總線即處于占用狀態(tài);當(dāng)CPU發(fā)出終止?fàn)顟B(tài)信號后,總線又處于空閑狀態(tài)。在SDA線上傳輸?shù)臄?shù)據(jù),其字節(jié)為8位。前7位是被控電路的地址,第8位是數(shù)據(jù)傳輸?shù)姆较蛭唬?ldquo;0”表示由CPU發(fā)送數(shù)據(jù),“1”表示CPU接收數(shù)據(jù)。每傳輸一個數(shù)據(jù)字節(jié)后,跟著一位應(yīng)答(確認(rèn))信號,這個應(yīng)答信號是由CPU發(fā)出的,在應(yīng)答位時鐘期間,CPU釋放數(shù)據(jù)線,以便被控器在這一位上送出應(yīng)答信號。
當(dāng)被控器的數(shù)據(jù)接收無誤時,被控器發(fā)出低電平應(yīng)答信號,經(jīng)確認(rèn)后的數(shù)據(jù)才有效。當(dāng)數(shù)據(jù)被確認(rèn)后,CPU便可以繼續(xù)傳送數(shù)據(jù)并繼續(xù)對數(shù)據(jù)加以確認(rèn),直到CPU發(fā)出終止?fàn)顟B(tài)信號為止。若在應(yīng)答位時鐘期間,CPU未接收到被控器送來的低電平應(yīng)答信號,CPU就會判斷該被控器有故障,并終止數(shù)據(jù)傳送。由于各被控集成電路和器件均有自己的地址,所以,在總線上不同時間傳送著眾多的控制信號,但是各被控器只要把與自己的地址相同的控制信號從總線上取下來,并進(jìn)行識別和處理,得到相應(yīng)的控制信號,就可以實現(xiàn)相應(yīng)的控制。
2.6 I2C總線系統(tǒng)與外部電路的連接方式
I2C總線系統(tǒng)的外部電路結(jié)構(gòu)簡單,它與被控電路之間的連接方式有直接式和隔離式兩種。
(1)直接式I2C總線
直接式I2C總線是指被控集成電路直接或通過電阻掛在I2C總線上,其電路工作原理圖如圖4所示。因為CPU的I2C總線輸出端口內(nèi)部電路形式為集電極開路(或漏極開路)形式,所以在CPU的I2C總線輸出端必須通過上拉電阻R接+5V電源,為CPU的I2C總線輸出端口的內(nèi)部電路供電。圖4中的電阻R為隔離電阻,C為抗干擾電容,主要是為了提高I2C總線上數(shù)據(jù)傳輸?shù)目煽啃?,防止誤動作進(jìn)人維修狀態(tài)和防止由于外部干擾信號改變I2C總線數(shù)據(jù)。穩(wěn)壓管VS是為了防止外部高電壓損壞CPU的I2C總線輸出端的內(nèi)部電路。
圖4 直接式I2C總線工作原理圖
(2)隔離式I2C總線
隔離式I2C總線是指CPU引出的總線通過隔離器與被控集成電路相連接。隔離器一般由晶體管組成,其電路工作原理圖如圖5所示。這種電路的優(yōu)點是CPU與被控集成電路被晶體管隔離器隔離開,當(dāng)被控對象發(fā)生故障使I2C總線上電壓升高時,晶體管會截止,從而保護CPU不被高電壓沖擊而損壞。
圖5 隔離式I2C總線工作原理圖2.7 I2C總線系統(tǒng)與外部電路的有關(guān)引腳
(1)CPU與I2C有關(guān)的引腳
采用I2C的CPU除了設(shè)置SCL串行時鐘線引腳和SDA串行數(shù)據(jù)線引腳外,一般還設(shè)置了便于工廠生產(chǎn)線調(diào)試使用的I2C通/關(guān)閉控制引腳。當(dāng)CPU的I2C通/關(guān)閉控制引腳接規(guī)定電平時,CPU便將I2C總線的控制權(quán)交給了生產(chǎn)線調(diào)試計算機,此時CPU不能通過I2C所掛接的電路進(jìn)行控制。
在電路圖上,I2C通/關(guān)閉控制引腳常用Bus OFF(總線關(guān)閉)、Service(維修)、EXT BUS(外部總線)、TEST(測試)、FACTORY(工廠)來表示。圖6所示為I2C通/斷控制工作原理圖。例如CPU的第36引腳EXT BUS為I2C通/關(guān)閉控制端,正常工作時,CPU的第36引腳為高電平。接插件BC為生產(chǎn)調(diào)試時CPU的I2C外部計算機的連接插口,生產(chǎn)調(diào)試時,生產(chǎn)線計算機通過BC與此CPU相連,BC④引腳接地,使CPU的第36引腳EXT BUS變?yōu)榈碗娖?,CPU的I2C總線42、43引腳停止輸出。電器的I2C系統(tǒng)由外部計算機接管。
圖6 I2C通/斷開控制工作原理圖
在對具有I2C功能的CPU進(jìn)行檢查時,不要忘記檢測I2C通/關(guān)閉控制引腳。如果此引腳工作條件不正確,則CPU不能向I2C發(fā)出時鐘和數(shù)據(jù)信號,導(dǎo)致整個電器不能進(jìn)人正常工作狀態(tài)。
(2)被控電路與I2C有關(guān)引腳
I2C掛接的被控集成電路,除SCL和SDA引腳外,還有與I2C總線接口電路有關(guān)的其他引腳,如果這些引腳的工作條件發(fā)生變化,也會使I2C總線接口電路不正常工作,從而使電器出現(xiàn)故障。下面介紹幾個比較重要的與I2C總線接口電路有關(guān)的引腳。
?、買2C總線接口電路專用電源引腳(受控IC數(shù)字電路電源引腳)
掛接在I2C總線上的受控集成電路大多屬于模擬電路,而受控集成電路中的I2C總線接口電路則屬于數(shù)字電路。為避免數(shù)字電路與模擬電路之間的互相干擾,常為數(shù)字電路與模擬電路設(shè)置單獨的供電端子,即設(shè)置I2C總線接口電路專用電源端子(或數(shù)字電路電源引腳)。如果I2C總線接口電源端子沒有電壓,則這塊集成電路不能正常工作。
現(xiàn)在的集成電路常為不同功能的電路單獨設(shè)置電源和接地端子,因此除了注意檢查主電源引腳電壓外,千萬不要忘記檢查其他電源引腳。
集成電路數(shù)字電源端電壓一般為5V、3.5V或3V等低電壓。數(shù)字電路電源端子常用以下方式標(biāo)注:I2LVCC邏輯電路電源;DVCC數(shù)字電路電源;DVDD數(shù)字電路電源;DIGVDD數(shù)字電路電源;D.GND數(shù)字電路地線等。
?、谳o助地址選擇引腳
CPU通過I2C總線對被控電路的地址進(jìn)行選擇,有時為了擴展I2C總線的功能和電路上的要求,在有些被控電路上還設(shè)有輔助地址選擇引腳,只有對輔助地址選擇引腳進(jìn)行正確的設(shè)置后,CPU才能通過I2C總線對這一電路進(jìn)行控制。當(dāng)被控電路的輔助地址選擇引腳電路出觀故障時,將會造成I2C總線無法控制該電路,使整機電路功能不正常。在電路圖上,輔助地址選擇引腳常用ADDRESS(地址)、ADR(address地址)、ADDSEL(address selection地址選擇)、MAD(module address組件地址)等英文表示。
3 PM Bus
3.1 關(guān)于PM Bus
PM Bus是屬于系統(tǒng)管理實施論壇(System Implementers Forum:SM-IF)的一個開放性標(biāo)準(zhǔn),用于定義功率集成電路,所有類型的功率變換電路(例如AC/DC,隔離的DC/DC,非隔離的點負(fù)載(POL)變換器和微處理器供電的變換器等)之間相互通信的一種開放性通信協(xié)議。
有關(guān)PM Bus的有關(guān)技術(shù)文件可以免費得到,并且任何對PM Bus感興趣的公司都可以參與到SM-IF論壇中。
電源管理總線接口論壇(PM Bus-IF)是系統(tǒng)管理接口論壇(SM-IF)的一部份,是一個非盈利性質(zhì)的工業(yè)標(biāo)準(zhǔn)化組織。
由主要電源產(chǎn)品供應(yīng)商、半導(dǎo)體公司和有關(guān)軟、硬件產(chǎn)品供應(yīng)商參于的PM Bus接口論壇(PM Bus-IF)所制定的PM Bus是一種開放的電源系統(tǒng)標(biāo)準(zhǔn),目前PM Bus接口論壇有30多個成員,其目的是要促進(jìn)PM Bus的推廣和使用,電源管理總線(Power Management Bus:PM Bus)是關(guān)于電源系統(tǒng)的一個標(biāo)準(zhǔn)。
在PM Bus中充分定義了電源系統(tǒng)中的變換器和其它相關(guān)部件之間的有關(guān)命令語句,PM Bus控制協(xié)議是建立在系統(tǒng)管理總線(SM Bus)的串行通信協(xié)議基礎(chǔ)上,利用PM Bus可以實現(xiàn)有關(guān)編程、控制和有關(guān)電源變換產(chǎn)品的實時監(jiān)控,是一種用于電源部件之間的模擬和數(shù)字信號控制的一種方便、實用的通信控制方式,有良好的互操作性,利用PM Bus可以簡化電源系統(tǒng)的設(shè)計和節(jié)省電源系統(tǒng)的設(shè)計周期。目前使用PM Bus的有關(guān)公司各單如下:
Active-Semi
Analog Devices,Inc.
Artesyn Technologies,Inc.
Astec of Emerson Network Power
ATC Power Systems
Cherokee International
CHiL Semiconductor Corporation
ColdWatt
Dell
Delta Electronics
Ericsson Power Modules
Fairchild Semiconductor
Infineon
Integral Wave Technologies
Intel
International Rectifier
Intersil Corporation
Linear Technology
Maxim Integrated Products, Inc.
Micro Computer Control Corporation (MCC)
Microchip
Murata
National Semiconductor
NXP
ON Semiconductor
Power Plaza
Primarion
Richtek
Roal Electronics
RRC Power Solutions
Silicon Laboratories
Sili con Storage Technology
STMicroelectronics
Texas Instruments
Tyco Electronics Corp.
Unipower Corporation
Vicor
Volterra Semiconductor Corporation
Zilker Labs到目前為止,電源系統(tǒng)各部份電路之間的通信已不是一個新的概念,在電源系統(tǒng)和主控電路單元之間的通信已使用了許多年,最早采用使電源系統(tǒng)工作和被監(jiān)控的通信控制方法,電源系統(tǒng)的工作狀態(tài)被主控電路加以監(jiān)控。
微控制器(MCU)是一種可以很好應(yīng)用于電源管理的器件,利用微控制器可以實現(xiàn)電源系統(tǒng)更為復(fù)雜和有效的控制和監(jiān)控,最早使用的電源控制命令就是電源的開/關(guān)控制命令,隨后,隨著在電源系統(tǒng)中微控制器件的使用,就可以很方便的實現(xiàn)電源輸出電壓/輸出電流等相關(guān)工作參數(shù)的控制。例如,利用一個“digi pot”的簡單部件就可以通過微控制器來調(diào)節(jié)電源系統(tǒng)的電壓檢測信號和電流檢測信號的參數(shù),而“digi pot”這類的器件又是許多采用I2C總線優(yōu)勢的器件之一。利用I2C總線可以實現(xiàn)存儲器、顯示器、傳感器和電源控制集成電路之間的互連。
早在1995年,通過各種各樣的總線,(例如RS-232、單線(One Wire)、SPI和I2C等)完成了電池管理工作,這時對通信管理的物理接口、命令、數(shù)據(jù)格式均沒有統(tǒng)一的工業(yè)標(biāo)準(zhǔn)。Intel公司和Duracell公司合作開發(fā)了智能電池系統(tǒng)SBS(Smart Battery System),其目的想要做出一個與電池類型無關(guān)的高級和精確的電池管理系統(tǒng),并且使這個智能電池管理系統(tǒng)適用于不同的可充電電池生產(chǎn)廠商生產(chǎn)的可充電電池的充電管理,并降低智能電池管理系統(tǒng)支持多種通信控制協(xié)議的負(fù)擔(dān),這個物理通信協(xié)議就是系統(tǒng)管理總線(SM Bus),而命令語言就是智能電池數(shù)據(jù)SBD(Smart Battery Data)。
系統(tǒng)管理總線(SM Bus)是I2C總線的一個版本,是智能電池系統(tǒng)(SBS)的物理層。智能電池系統(tǒng)(SBS)的上一層發(fā)出命令,并在智能電池系統(tǒng)元件之間實現(xiàn)有關(guān)命令的響應(yīng),智能電池、智能充電器和智能選擇器利用SM Bus的通用命令就可以完成相關(guān)控制信息的傳送和響應(yīng)。這些命令有許多是和I2C中的命令相同的,利用這些命令可以完成電池容量和工作條件的監(jiān)控。同時更為重要的是,智能電池系統(tǒng)(SBS)中的電池或主控電路還可以對智能充電器發(fā)出控制命令,利用這些控制命令來設(shè)定充電器的輸出電壓、輸出電流和其它一些重要的工作參數(shù)。在大多數(shù)情況下,輸出電壓命令的分辨在mV數(shù)量級,輸出電流命令的分辨率在mA數(shù)量級,利用SM Bus可以完成和可充電電池類型無關(guān)的充電器系統(tǒng)的管理和控制。
1996年,由Intel和Duracell公司發(fā)起成立的智能電池管理系統(tǒng)接口論壇(SBS-IF)。為了保持智能電池系統(tǒng)(SBS)和SM Bus的優(yōu)越性,其它一些相關(guān)公司也參與到了論壇的工作,特別是美國德州儀器TI公司參與了電源管理總線接口論壇(PM Bus-IF)的工作。
在筆記本電腦的硬件電路中智能電池系統(tǒng)(SBS)和SM Bus已得到了廣泛的應(yīng)用,在Windows2000系統(tǒng)中也含有SM Bus的軟件驅(qū)動程序。
智能電池系統(tǒng)(SBS)和SM Bus有關(guān)技術(shù)內(nèi)容的發(fā)展是和高級結(jié)構(gòu)與電源接口(ACPI:Advanced Configuration and Power Interface)的有關(guān)技術(shù)內(nèi)容的發(fā)展同步進(jìn)行的。ACPI的第1版本在1996年12月公布,其中,Intel公司發(fā)揮了重要的作用,對與操作系統(tǒng)和電源管理(OSPM:Operating System-directed Configuration and Power Management)應(yīng)用方面有關(guān)的內(nèi)容,ACPI是一個很重要的內(nèi)容。如果要實現(xiàn)SBS和支持SBS系統(tǒng)的SM Bus,需要用到和高級結(jié)構(gòu)與電源接口(ACPI)兼容的有關(guān)系統(tǒng)。
1998年,SBS-IF發(fā)布了SBS1.1和SMBus1.1版本。SMBus1.1中的主要特點是在每個SM Bus通信數(shù)據(jù)包的末位加了可選數(shù)據(jù)包檢錯字節(jié),采用8位的循環(huán)冗余糾錯檢錯算法(CRC-8)。
2000年,SBS-IF發(fā)布了SMBus2.0,即所謂基于PCI的SM Bus。SMBus2.0中允許器件的地址被動態(tài)分配,然后,外設(shè)元件互聯(lián)特殊興趣小組(PCI-SIG:Peripheral Component Interconnect Special Interest Group)(在2000.10.20日)將它的PCI連接器的第○40和○41引腳分配給SM Bus的時鐘和數(shù)據(jù)信號。
在2000年,SBS-IF公布了它用于Windows的SM Bus的驅(qū)動程序。和微軟的SM Bus驅(qū)動程序不同,SBS-IF推出的SM Bus驅(qū)動程序可以用于Windows98系統(tǒng),并且工作時不需借助于嵌入式控制器。
作為源于1998年的另一個應(yīng)用實例,Intel公司公布了它的智能管理接口平臺IPMI(Intelligent Platform Management Interface)。IPMI1.0采用I2C總線作為它的物理層,IPMI1.5可以使用SM Bus 1.1,并且具有使所傳送的數(shù)據(jù)包出錯的檢測功能。
作為數(shù)控源系統(tǒng),很需要一個用于電源通信管理的工業(yè)標(biāo)準(zhǔn)協(xié)議,在這個標(biāo)準(zhǔn)協(xié)議中需注意以下幾方面的問題:首先這個協(xié)議對電源系統(tǒng)設(shè)計人員而言要簡單、易懂和易學(xué),并且造價要低。這里I2C總線就是一個很好的例子,智能電池系統(tǒng)(SBS)采用SM Bus用于可充電電池充電器和背光照明系統(tǒng)的電源管理已有一段時間了。
在2004年,由電源管理總線(PM Bus)開發(fā)為主的一些公司推出了電源管理用的工業(yè)標(biāo)準(zhǔn),PM Bus采用SM Bus做為它的物理通信層,并且支持SM Bus中的如可選控制信號線。在現(xiàn)行的PM Bus 1.0中沒有地址仲裁功能,PM Bus的技術(shù)指標(biāo)被分為2部份,第1部份規(guī)范了物理層的有關(guān)技術(shù)指標(biāo),第二部份規(guī)范了命令層的有關(guān)技術(shù)指標(biāo)。同樣,和在SM Bus智能電池系統(tǒng)(SBS)中界定了便攜式電源管理的方法一樣,在PM Bus中也界定了電源子系統(tǒng)的管理方法。
SM Bus的主要任務(wù)由負(fù)載點聯(lián)盟POLA(Point of Load Alliance)和分布式電源開放標(biāo)準(zhǔn)聯(lián)盟DOSA(Distributed-Power Open Standards Alliance)加以賦予。
在2005年,智能電池系統(tǒng)接口論壇(SBS-IF)又被更名為系統(tǒng)管理接口論壇(SM-IF),并且經(jīng)過重新組合,形成2個論壇,即SBS論壇(SBS-IF)和PM Bus接口論壇(PM Bus-IF)。組織利用了SBS和PM Bus的共生關(guān)系,SBS工作組利用SM Bus來進(jìn)行筆記本電腦中的電源管理和控制已有10余年的時間,所有這些對PM Bus的開發(fā)與使用都有很大的幫助。
在2005年3月PM Bus接口論壇推出了PM Bus的1.0版本有關(guān)技術(shù)文件,目前有30多個公司使用PM Bus,利用PM Bus可以簡化數(shù)字電源系統(tǒng)的設(shè)計。
3.2 PM Bus的系統(tǒng)結(jié)構(gòu)圖和有關(guān)命令類型
PM Bus的系統(tǒng)結(jié)構(gòu)圖如圖7所示,有關(guān)命令類型如表1所示。
圖7 PM Bus的系統(tǒng)結(jié)構(gòu)圖
表1 PM Bus的有關(guān)命令類型