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