數(shù)字電源管理――PMBus
復(fù)雜性
SMBus 1.1標(biāo)準(zhǔn)的篇幅達(dá)39頁(yè)。PMBus 1.2則為125頁(yè)。而且,制造商們除此之外還添加了他們自己的特殊寄存器和功能性(配有100多頁(yè)的相關(guān)規(guī)范)。那么,如何應(yīng)對(duì)所有這些復(fù)雜性呢?基本上是借助工具和重用。當(dāng)然,還包括相關(guān)的規(guī)范,其可通過(guò)System Management Interface Forum獲得。
使用模型
我將提出兩種重要的使用模型,雖然可能還有其他的使用模型,不過(guò)此二者是我發(fā)現(xiàn)得到大量運(yùn)用的兩種主要模型:
1. 配置(Configure)和部署(Deploy)
2. 監(jiān)視(Monitor)和運(yùn)作(Act)
最重要的PMBus命令集之一用于存儲(chǔ)和恢復(fù)操作存儲(chǔ)器和非易失性存儲(chǔ)器之間的設(shè)定值。當(dāng)與用于改變操作存儲(chǔ)器(行為特性)的命令相組合時(shí),其可支持Configure和Deploy使用模型。
配置(Configure)和部署(Deploy)
大多數(shù)PMBus產(chǎn)品制造商都擁有一種GUI工具,該工具可通過(guò)PMBus和一個(gè)接口轉(zhuǎn)換板與其產(chǎn)品進(jìn)行通信。在多數(shù)場(chǎng)合中,接口轉(zhuǎn)換板通過(guò)USB連接至一部主PC?;臼褂媚J绞窃诳偩€上配置PMBus器件的所有寄存器,并將其數(shù)值存儲(chǔ)于非易失性存儲(chǔ)器中。這樣,當(dāng)系統(tǒng)通電或復(fù)位時(shí),所有的器件在啟動(dòng)期間將從非易失性存儲(chǔ)器來(lái)給操作存儲(chǔ)器加載。
這種模型的基本優(yōu)勢(shì)在于其簡(jiǎn)單性。工具能夠通過(guò)數(shù)據(jù)組織、模板和項(xiàng)目重用來(lái)消除PMBus的大部分復(fù)雜性。第二項(xiàng)優(yōu)勢(shì)是成本較低,因?yàn)椴恍枰捎?ldquo;額外的”器件來(lái)管理總線。
此模型的主要劣勢(shì)是喪失了正常操作期間PMBus的所有功能。在異常情況下(比如:發(fā)生了故障),所有的器件都必須自主地做出反應(yīng),但靈活性受到限制,而且缺少協(xié)調(diào)。在復(fù)位時(shí)情況同樣如此。所有的器件均必須自主啟動(dòng)。
讓我們來(lái)研究一下由此強(qiáng)加的某些限制條件。假設(shè)一種電源架構(gòu)具有由一個(gè)IBC(中間總線控制器)運(yùn)作的12軌POL(負(fù)載點(diǎn))轉(zhuǎn)換器。POL1存在OC(過(guò)流)故障,而且故障響應(yīng)是關(guān)斷電源軌。由于總線上沒(méi)有用于對(duì)故障做出反應(yīng)的任何主機(jī)控制器,因此其他的電源軌將繼續(xù)運(yùn)作,除非POL1的OC通過(guò)負(fù)載在另一個(gè)電源軌上引起了某種故障。
為了克服這些限制,許多器件都具有附加的IO引腳,這些引腳允許器件在沒(méi)有PMBus的情況下進(jìn)行相互通信。傳統(tǒng)的方法是在器件之間采用漏極開(kāi)路信號(hào)。通常有3個(gè)引腳:
• SYNC(同步)
• RUN(運(yùn)行)
• GPIO(通用輸入輸出)
SYNC引腳用于在復(fù)位時(shí)建立一個(gè)公共時(shí)基。這提供了用于接通/關(guān)斷事件排序的準(zhǔn)確時(shí)間相關(guān)。RUN引腳可使所有器件利用一個(gè)外部邏輯門(mén)或器件本身實(shí)現(xiàn)同時(shí)復(fù)位。GPIO通常是一個(gè)故障輸出和故障輸入。這允許源自某個(gè)器件的故障傳播至其他器件。這些引腳雖然并非PMBus規(guī)范的一部分,但為了讓Configure和Deploy使用模型作為一個(gè)系統(tǒng)來(lái)工作,它們卻是必不可少的。
監(jiān)視(Monitor)和運(yùn)作(Act)
最靈活的使用模型需要一個(gè)在系統(tǒng)操作期間處于運(yùn)行狀態(tài)的PMBus主機(jī)。由于能夠全面使用完整的命令集,因此系統(tǒng)僅受限于PMBus的速度和您的想象力。
有幾種用于構(gòu)建PMBus主機(jī)的子模型。一個(gè)微處理器或微控制器、FPGA邏輯器件或一個(gè)嵌入在FPGA中的控制器。通常,它是某種類型的控制器,即使是內(nèi)嵌于一個(gè)FPGA中。它只是更容易實(shí)現(xiàn),而且更加靈活。
Alert引腳一般連接至控制器上的一個(gè)中斷引腳。當(dāng)存在某種故障時(shí),微處理器(μP)通過(guò)以下方式對(duì)中斷做出反應(yīng):獲得故障器件的地址、通過(guò)PMBus查詢相關(guān)狀況、并采取措施以校正問(wèn)題或使電源軌斷電。
控制器也用于遙測(cè)。數(shù)據(jù)可以用來(lái)預(yù)測(cè)故障、測(cè)量功耗或調(diào)試罕見(jiàn)的故障。另外,控制器還將在復(fù)位時(shí)設(shè)置所有的電源軌。
該使用模型的終極價(jià)值是靈活性。不過(guò),必需為此付出代價(jià):開(kāi)發(fā)時(shí)間/成本和更多的硬件。雖然開(kāi)發(fā)成本能夠借助可重用框架而略有減低,但硬件成本的額外增加卻是無(wú)法避免的。
混合模型
根據(jù)我的經(jīng)驗(yàn),有許多工程師都在使用Configure和Deploy模型,少部分的工程師則采用Monitor和Act模型。當(dāng)采用后者時(shí),很少是以其純粹的形式來(lái)使用。利用工具來(lái)處理大部分的配置要常見(jiàn)得多,借助的方法是:確保接口轉(zhuǎn)換板與主機(jī)具有兼容性,并且僅將PMBus主機(jī)用于遙測(cè)、高級(jí)故障處理和最終用戶通知。
另外,這種工作的劃分還可提供針對(duì)策略和安全決定的某種控制。電源工程師能夠通過(guò)一種工具來(lái)控制電源軌電壓、啟動(dòng)定時(shí)和主要的故障響應(yīng)。而利用針對(duì)PMBus主機(jī)所發(fā)出之容許命令的規(guī)則,嵌入式軟件設(shè)計(jì)人員的工作內(nèi)容被限定為一組有助于調(diào)試的安全遙測(cè)功能和異常情況記錄。
最終決定
做出有關(guān)使用模型的決策并不簡(jiǎn)單。通常,直到您設(shè)計(jì)了自己的首個(gè)數(shù)字電源架構(gòu)之后才會(huì)真正了解本應(yīng)當(dāng)怎么做。希望通過(guò)這文章系列可使這些決策變得更加容易,而且您甚至可以在最終設(shè)計(jì)之前進(jìn)行架構(gòu)的原型設(shè)計(jì)(假定擁有我所提供的資源)。如果您有話題希望在我今后的文章中看到討論,請(qǐng)給我們知道,我們將盡全力對(duì)其作相關(guān)的論述。
評(píng)論