數(shù)字電源排序
電源排序是數(shù)字電源架構(gòu)的一個(gè)關(guān)鍵部分。在這我們來(lái)看看幾種設(shè)計(jì)排序的方法及其結(jié)果。特別地,我們將了解一下設(shè)計(jì)選擇在設(shè)計(jì)過(guò)程的后期對(duì)靈活性所產(chǎn)生的影響。
電源轉(zhuǎn)換的構(gòu)件
讓我們來(lái)看一下自己的電源構(gòu)件和工具,并了解我們會(huì)給自身帶來(lái)何種類型的麻煩。為簡(jiǎn)單起見(jiàn),我們假定擁有一個(gè)通用的電源構(gòu)件(UPB)以及所有常見(jiàn)的“麻煩制造者”(例如:FPGA和微控制器、以及邏輯器件等)。我們的UPB具有一個(gè)簡(jiǎn)單的接口:
圖1:電源構(gòu)件。
我們簡(jiǎn)單的電源轉(zhuǎn)換器具有單個(gè)VIN/VOUT、一個(gè)PMBus接口、一個(gè)輸入信號(hào)(CONTROL)、以及兩個(gè)輸出信號(hào)(POWER GOOD和FAULT/)。
CONTROL
CONTROL信號(hào)負(fù)責(zé)輸出的接通和關(guān)斷。其為高電平有效,并具有一個(gè)內(nèi)部上拉電阻器。
POWER GOOD
POWER GOOD信號(hào)在輸出通電時(shí)為高電平,而且它處于有效范圍之中。
FAULT/
FAULT/信號(hào)為低電平有效,開(kāi)路漏極,并在電源構(gòu)件具有某種故障時(shí)被置為有效。如果存在某種故障,則ALERT/被置為有效,并且可以通過(guò)PMBus讀取故障信息。不是所有的電源轉(zhuǎn)換器都將具有一個(gè)POWER GOOD和一個(gè)FAULT/,我們不需要兩者兼?zhèn)?。幾乎在每種場(chǎng)合中,F(xiàn)AULT/皆可作為POWER GOOD的“替身”。
設(shè)計(jì)方案一
現(xiàn)在我們來(lái)設(shè)計(jì)某種方案,這樣就可以將之拆解并設(shè)計(jì)另一種方案,從而一次比一次做得更好。
假設(shè)我們有一個(gè)系統(tǒng),此系統(tǒng)具有一個(gè)中間總線控制器(IBC)和以下的電源軌:48V、19V、5.0V、3.3V、1.2V、0.8V。
我們決定把這些電源軌構(gòu)造為一種層級(jí)體系。不過(guò),我們需要一種用于上電的不同控制結(jié)構(gòu)。
圖2:簡(jiǎn)單的電源結(jié)構(gòu)。[!--empirenews.page--]
對(duì)于實(shí)際的設(shè)計(jì),不要擔(dān)心電源層級(jí)體系或邏輯是否正確。要緊的是這種結(jié)構(gòu)“類型”所產(chǎn)生的影響。我們來(lái)研究一下其優(yōu)缺點(diǎn)。
從好的方面來(lái)說(shuō),不管是在原理上還是對(duì)于實(shí)現(xiàn),它都是很簡(jiǎn)單的。添加LED指示器或者利用一個(gè)FPGA或微處理器的GPIO來(lái)讀取電源良好信息將非常容易。如果出現(xiàn)故障情況,POWER GOOD將讓系統(tǒng)知道某個(gè)電源軌發(fā)生了故障。
從壞的方面來(lái)說(shuō),假如存在某種故障,而且倘若系統(tǒng)必須關(guān)斷所有的電源,那么就必須按照與其上電時(shí)相同的順序把它們逐個(gè)關(guān)斷(別無(wú)選擇)。這意味著,位于最下游的電源軌將由于失去電源而斷電,而不是通過(guò)其控制引腳來(lái)實(shí)現(xiàn)斷電。
由于沒(méi)有定時(shí)控制,因此將不得不增添額外的電路以在電源軌之間安置延遲。如果在電源軌之間添加一個(gè)延遲,則該延遲將僅適用于上電,因?yàn)橐粋€(gè)饋電電源軌上的電源將在斷電時(shí)丟失,因而將在POWER GOOD信號(hào)可以使其關(guān)斷之前關(guān)斷其所依賴的電源軌。
對(duì)于這種結(jié)構(gòu)“類型”,如果您出現(xiàn)任何錯(cuò)誤,那么將必需進(jìn)行PCB的重新布局,而且在等待的過(guò)程中,您將被迫修改設(shè)計(jì)中的導(dǎo)線(別無(wú)選擇),或者去“享受”漫長(zhǎng)的休息時(shí)間。
設(shè)計(jì)方案二
如果我們將邏輯電路集中管理,就能做得更好。一個(gè)可編程器件(例如:FPGA或微處理器)能夠管理所有的邏輯電路。
通過(guò)把所有的邏輯線路均排布至GPIO,控制器即可實(shí)現(xiàn)針對(duì)排序順序(接通和關(guān)斷)以及定時(shí)操作的全面控制。其可在希望改變Verilog或C代碼時(shí)隨時(shí)變更。我已經(jīng)標(biāo)示了控制器上的PMBus(但并未繪出所有的接線),而利用PMBus,控制器現(xiàn)在還能控制電平和故障行為特性。
圖3:采用控制器的電源結(jié)構(gòu)。
就優(yōu)點(diǎn)而言,該設(shè)計(jì)具有靈活性,而且您不會(huì)陷入焦頭爛額的困境。假如您在控制結(jié)構(gòu)中出錯(cuò),無(wú)需重新布局即可加以修復(fù)。
就缺點(diǎn)來(lái)說(shuō),您不得不改變Verilog或C,而且有可能需對(duì)固件重新實(shí)施測(cè)試和鑒定。另外,這種設(shè)計(jì)還必需進(jìn)行大量的布線。每個(gè)POL需要5根控制線,而且它們單獨(dú)地排布至控制器。假設(shè)我們有一個(gè)20軌系統(tǒng),由于PMBus的原因,將需要42個(gè)GPIO引腳。
所以,這種設(shè)計(jì)雖然具有靈活性,但需要很多的GPIO并占用大量的PCB面積資源。
設(shè)計(jì)方案三
當(dāng)與PMBus及智能數(shù)字電源POL組合時(shí),我們可以采用開(kāi)路漏極控制的特性來(lái)簡(jiǎn)化控制器。
所有的CONTROL引腳連接在一起,而所有的FAULT/引腳連接在一起。這意味著一個(gè)20軌系統(tǒng)只需要5根接線,從而使IO引腳的數(shù)目減少了8倍。
圖4:簡(jiǎn)化的控制器。[!--empirenews.page--]
讓我們來(lái)看看這是怎樣奏效的。CONTROL引腳為高電平有效。其受控于GPIO0(這被設(shè)定為“開(kāi)路漏極”)。由于CONTROL引腳為開(kāi)路漏極,這意味著POL也可將其拉至低電平。
當(dāng)POL復(fù)位時(shí),它將把CONTROL引腳拉至低電平,直到其準(zhǔn)備好響應(yīng)一個(gè)外部信號(hào)為止。這意味著倘若控制器速度過(guò)快,則不會(huì)有任何一個(gè)POL接通(直到它們?nèi)空_復(fù)位為止),而且系統(tǒng)何時(shí)上電取決于最慢的POL復(fù)位。如果控制器速度較慢,則其在釋放CONTROL線時(shí)負(fù)責(zé)控制上電。
您可能對(duì)排序感到困惑不解。我們失去對(duì)它的控制了嗎?不,沒(méi)有,因?yàn)镻MBus具有一個(gè)TON_DELAY命令,而且其數(shù)值一般存儲(chǔ)在POL的非易失性存儲(chǔ)器(NVM)中。它可由控制器來(lái)設(shè)定,也可以采用一種外部工具存儲(chǔ)于NVM中。
FAULT/引腳亦為開(kāi)路漏極并受控于GPIO1,而且它們既是輸入也是輸出。這意味著當(dāng)出現(xiàn)任何電源軌故障時(shí),所有的電源軌都將在FAULT引腳被拉至低電平時(shí)得到通知。而且,當(dāng)FAULT/被拉至低電平時(shí),ALERT/被置為有效。于是,控制器獲知存在某種故障。眾人皆知,這款設(shè)計(jì)的關(guān)鍵之處便在于此。
現(xiàn)在,關(guān)于故障處理您可以有幾種選項(xiàng)。PMBus能夠利用一個(gè)報(bào)警響應(yīng)地址(ARA)來(lái)響應(yīng)ALERT/,這可獲得所有具某種故障之POL的地址,并隨后查詢每個(gè)POL以了解故障信息。接著,其可采用一個(gè)決策樹(shù)并按照需要以任何順序關(guān)斷電源軌。或者,它也可以立即關(guān)斷全部的電源軌,而讓PMBus TOFF_DELAY來(lái)管理定時(shí)。
許多POL具有增強(qiáng)型故障管理功能,并可直接響應(yīng)故障(請(qǐng)記住,F(xiàn)AULT/也是一個(gè)輸入)。典型響應(yīng)為:
• 重試
• 立即關(guān)斷
• 斜坡關(guān)斷
當(dāng)POL具備這些高級(jí)特性時(shí),Verilog或C代碼的工作負(fù)荷就會(huì)大大減輕,因?yàn)镻OL可利用一種外部工具(通過(guò)PMBus和外部接口及軟件)來(lái)編程。此外,當(dāng)采用FAULT/引腳時(shí),針對(duì)故障的響應(yīng)速度要比處理ALERT/的響應(yīng)速度快得多。
設(shè)計(jì)方案三的權(quán)衡折衷
如果有了增強(qiáng)型的POL,即可實(shí)施權(quán)衡取舍。假如故障邏輯對(duì)于共用的FAULT/線來(lái)說(shuō)過(guò)于復(fù)雜,則只需增添一個(gè)控制器。如果故障邏輯很簡(jiǎn)單,那么可以采用一種工具來(lái)配置故障行為特性,且不必使用控制器?;蛘?,也可以使用一個(gè)控制器來(lái)實(shí)現(xiàn)遠(yuǎn)端采樣和其他功能,但采用FAULT/引腳來(lái)執(zhí)行故障處理。而且,假如發(fā)現(xiàn)其不能處置所有的故障情況,您始終能夠增添用于故障處理的代碼并加以變更。對(duì)于CONTROL引腳采取了相似的折衷方案。您還可以采用PMBus取而代之。在該場(chǎng)合中,CONTROL引腳仍將推遲接通,直到所有的POL均已完成復(fù)位為止。
當(dāng)CONTROL和FAULT引腳共用、且有一個(gè)用于PMBus的控制器時(shí),可實(shí)現(xiàn)最大的靈活性。利用這種設(shè)計(jì),在PCB制作完成之后可具有全面的靈活性。
電源良好(Power Good)
可能您沒(méi)有注意到,我并未使用POWER GOOD。某個(gè)電源軌什么時(shí)候處于良好狀態(tài),關(guān)于這一點(diǎn)您在接通另一個(gè)電源軌之前無(wú)需知曉。如果全部電源軌由TON_DELAY控制,而一個(gè)未能及時(shí)處于就緒狀態(tài),則將發(fā)生某種故障。PMBus規(guī)定了TON_MAX_FAULT_LIMIT,這限定了某一電源軌必須在多長(zhǎng)的時(shí)間里斜坡上升并進(jìn)入容差范圍之內(nèi)。倘若某個(gè)電源軌到這個(gè)時(shí)候尚未處在規(guī)格指標(biāo)之內(nèi),則將出現(xiàn)故障,從而阻止其他電源軌接通。
設(shè)計(jì)原理是:沒(méi)有消息就是好消息。如果系統(tǒng)需要知道什么時(shí)候全部電源軌都已上電,則只需把一個(gè)簡(jiǎn)單的定時(shí)器設(shè)定至由所有TON_DELAY規(guī)定的最長(zhǎng)時(shí)間即可。或者,控制器也可執(zhí)行最后一個(gè)POL之狀態(tài)的PMBus查詢。
在某些器件中,可以把FAULT/引腳重新配置為POWER GOOD引腳。這使得您能夠在真正需要的時(shí)候擁有POWER GOOD,但將失去故障信息共享(fault sharing)引腳。于是,您可能希望有一個(gè)控制器來(lái)響應(yīng)ALERT/?;蛘?,在較為簡(jiǎn)單的系統(tǒng)中,ALERT/有可能奪取CONTROL引腳的功能,并在出現(xiàn)某種故障時(shí)關(guān)斷所有的電源軌。
在實(shí)際當(dāng)中,POWER GOOD通常并不是必不可少的。不過(guò),假如您真的需要,通常可采取對(duì)FAULT/進(jìn)行重新配置的方法。畢竟,總會(huì)有一些特殊的情況。也許始終存在適合該“通用適配器套件”(Universal Adapter Kit)的空間。
我們來(lái)回顧一下
這里我們做一番簡(jiǎn)要的概述,以方便那些直接跳到結(jié)尾的讀者快速了解本文的要義:
我把第一種設(shè)計(jì)所采用的原理稱之為“事件排序”。POWER GOOD引腳連接至下一個(gè)POL的CONTROL引腳。但其不具備可配置性以及對(duì)故障行為特性的控制能力。第二種設(shè)計(jì)采用了一個(gè)控制器并將所有的排序置于其命令之中,但它采用了大量的GPIO,您因而被迫讓控制器去完成所有的任務(wù)。第三種設(shè)計(jì)采用開(kāi)路漏極引腳以共享CONTROL和FAULT/,并提供了一個(gè)任選的控制器。這種設(shè)計(jì)具有許多靈活性,GPIO引腳數(shù)目較少且布線簡(jiǎn)單。當(dāng)主要的折衷是有關(guān)控制器的決策時(shí),這是最受歡迎的設(shè)計(jì)方法。關(guān)于此項(xiàng)折衷,在以后的文章中將做更多的闡述。設(shè)計(jì)方案一和設(shè)計(jì)方案二并無(wú)過(guò)錯(cuò),只要您理解并能適應(yīng)其限制條件即可。但是我們都知道,在系統(tǒng)鑒定過(guò)程中一旦突發(fā)意外問(wèn)題,那么游戲規(guī)則就會(huì)突然改變。即使您覺(jué)得自己并不需要設(shè)計(jì)方案三,它仍不失為一項(xiàng)極為出色的保險(xiǎn)策略。我所能說(shuō)的是:假如我是電源工程師,而且有一支規(guī)模龐大的工程師團(tuán)隊(duì)依賴于我的設(shè)計(jì),那我肯定不想在出現(xiàn)差錯(cuò)時(shí)陷入困境。我想,如果我延誤了某款產(chǎn)品的發(fā)布,他們是不會(huì)太高興的。