數(shù)字電源控制和管理以及PMBus編程
本文主要討論脈沖寬度調(diào)制(PWM)、脈沖密度調(diào)制(PDM)和脈沖頻率調(diào)制(PFM)開(kāi)關(guān)穩(wěn)壓器和控制器IC。其中一些集成了控制實(shí)際開(kāi)關(guān)的一個(gè)或多個(gè)晶體管的驅(qū)動(dòng)器,另一些則沒(méi)有。還有一些甚至集成了開(kāi)關(guān)FET,如果它們提供合適的負(fù)荷的話(huà)。因此,數(shù)字還是模擬的問(wèn)題取決于穩(wěn)壓器的控制回路如何閉合。
圖1顯示了兩種最常見(jiàn)的PWM開(kāi)關(guān)拓樸布局的變化,降壓和升壓(buck/boost)轉(zhuǎn)換器。在同步配置中,第二只晶體管將取代二極管。在某種意義上來(lái)講,脈沖寬度調(diào)制的采用使得這些轉(zhuǎn)換器“準(zhǔn)數(shù)字化”,至少可與基于一個(gè)串聯(lián)旁路元件的723型線(xiàn)性穩(wěn)壓器相比。事實(shí)上,PWM使得采用數(shù)字控制回路成為可能。不過(guò),圖1中的轉(zhuǎn)換器缺少控制一個(gè)或幾個(gè)開(kāi)關(guān)占空比的電路,它可在模擬或數(shù)字域中實(shí)現(xiàn)。
不管采用模擬還是數(shù)字技術(shù),都有兩種方式實(shí)現(xiàn)反饋回路:電壓模式和電流模式。為簡(jiǎn)單起見(jiàn),首先考慮它在模擬域中如何實(shí)現(xiàn)。
圖1:沒(méi)有控制器的開(kāi)關(guān)模式DC-DC電源十分簡(jiǎn)單。不論用于升壓還是降壓,其成功與否取決于設(shè)計(jì)者如何安排一些基本的元器件。 |
在電壓模式拓樸中,參考電壓減去輸出電壓樣本就可得到一個(gè)與振蕩器斜坡信號(hào)相比較的小誤差信號(hào)(圖2),當(dāng)電路輸出電壓變化時(shí),誤差電壓也產(chǎn)生變化,后者反過(guò)來(lái)改變比較器的門(mén)限值。反過(guò)來(lái),這將使輸出信號(hào)寬度發(fā)生變化。這些脈沖控制穩(wěn)壓器開(kāi)關(guān)晶體管的導(dǎo)通時(shí)間。隨著輸出電壓升高,脈沖寬度將變小。
電流模式控制的一個(gè)優(yōu)勢(shì)在于其管理電感電流的能力。一個(gè)采用電流模式控制的穩(wěn)壓器具有一個(gè)嵌套在一個(gè)較慢的電壓回路中的電流回路。該內(nèi)回路感應(yīng)開(kāi)關(guān)晶體管的峰值電流,并通過(guò)一個(gè)脈沖一個(gè)脈沖地控制各晶體管的導(dǎo)通時(shí)間,使電流保持恒定。
圖2:電壓模式反饋(本例中在模擬域)包含一個(gè)控制回路。 |
與此同時(shí),外回路感應(yīng)直流輸出電壓,并向內(nèi)回路提供一個(gè)控制電壓。在該電路中,電感電流的斜率生成一個(gè)與誤差信號(hào)相比較的斜坡。當(dāng)輸出電壓下跌時(shí),控制器就向負(fù)載提供更大的電流(圖3)。
在這些控制拓樸中,在回路的相移達(dá)到360°的任意頻率處,控制回路的增益不能超過(guò)1。相移包括了將控制信號(hào)饋入反饋運(yùn)放的倒相輸入端所產(chǎn)生的固有180°相移、放大器和其它有源元件的附加延遲、以及由電容和電感(特別是輸出濾波器的大電容)引入的延遲。
穩(wěn)定回路要求對(duì)一定頻率范圍內(nèi)的增益變化和相移進(jìn)行補(bǔ)償。傳統(tǒng)上,采用模擬PWM來(lái)穩(wěn)定電源通常需要采用經(jīng)驗(yàn)方法:你在一塊與生產(chǎn)型電路板相同布局的實(shí)際電路板上,實(shí)驗(yàn)各種無(wú)源器件的不同組合,并觀察在電源電壓和負(fù)載需求變化時(shí)的電路時(shí)間域響應(yīng)。最近,事情已變得很簡(jiǎn)單。因?yàn)楝F(xiàn)在模擬控制器公司在其自己的型號(hào)產(chǎn)品上實(shí)現(xiàn)了首先在數(shù)字控制器上引入的各種“在寄存器中插入一個(gè)值”的功能。
圖3:電流模式反饋采用了嵌套反饋回路。與電壓模式不同,它需要計(jì)入電感上的電流。 |
數(shù)字控制回路
大多數(shù)電壓模式控制的數(shù)字實(shí)現(xiàn)方案包括了模數(shù)轉(zhuǎn)換器(ADC)、實(shí)現(xiàn)一些控制算法的微控制器或DSP、以及一個(gè)數(shù)字脈沖寬度調(diào)制器(DPWM),該DPWM拾取控制器輸出并產(chǎn)生驅(qū)動(dòng)執(zhí)行開(kāi)關(guān)動(dòng)作的一個(gè)或幾個(gè)晶體管所需的信號(hào)(圖4)。
首先,ADC產(chǎn)生饋入控制器的一系列輸出電壓的數(shù)字表示??刂扑惴ㄊ侨藗兯煜さ谋壤e分(PI)或比例積分/差分(PID)算法。
在一個(gè)PID控制器(更復(fù)雜的實(shí)例)中,每個(gè)ADC輸入都要執(zhí)行基于一系列系數(shù)的算法。比例系數(shù)是與靈敏度相關(guān)的增益因子。整數(shù)系數(shù)按照錯(cuò)誤出現(xiàn)的時(shí)間長(zhǎng)短來(lái)調(diào)節(jié)PWM的占空比。誘導(dǎo)系數(shù)補(bǔ)償回路的時(shí)間延遲(相位更有效)。綜合起來(lái),PID算法的各個(gè)系數(shù)決定了系統(tǒng)的頻率響應(yīng)。
控制器隨后將ADC的輸出電壓表示轉(zhuǎn)換成維持期望的輸出電壓所需的脈沖持續(xù)時(shí)間(占空比)信息。然后,該信息被傳送至一個(gè)DPWM,它執(zhí)行與模擬PWM一樣的驅(qū)動(dòng)信號(hào)產(chǎn)生功能。
注意模擬和數(shù)字控制方案管理開(kāi)關(guān)晶體管的不同。模擬控制器在時(shí)鐘上升沿觸發(fā)開(kāi)關(guān)晶體管成ON狀態(tài),并在電壓坡度達(dá)到預(yù)設(shè)的門(mén)檻電壓時(shí)將晶體管觸發(fā)成OFF狀態(tài);PID控制器則計(jì)算開(kāi)關(guān)晶體管ON和OFF狀態(tài)期間所需的持續(xù)時(shí)間。
理論上,模擬控制可以提供連續(xù)精度的輸出電壓。但ADC精度和采樣率的交互作用再加上DPWM開(kāi)關(guān)速率,使情況變得有些復(fù)雜。
例如,DPWM必須具有比ADC更高的精度。否則,ADC輸出的1LSB變化就可能導(dǎo)致DPWM使輸出電壓變化大于1LSB。其結(jié)果是,輸出電壓就穩(wěn)定地在兩個(gè)數(shù)值之間轉(zhuǎn)換,這個(gè)狀態(tài)被稱(chēng)之為“限制性循環(huán)”。
圖4:電壓模式控制的數(shù)字實(shí)現(xiàn)消除了鋸齒產(chǎn)生器。在其他方面,它們與模擬實(shí)現(xiàn)緊密對(duì)應(yīng)。 |
不過(guò),避免循環(huán)也不是輕而易舉的。這是因?yàn)橐峁〥PWM更高的精度就意味著必須提高其脈沖速率(脈沖速率決定了在任一給定時(shí)間段能夠產(chǎn)生多少比特)。然而,DPWM脈沖速率限制了它對(duì)所有來(lái)自控制器的比特進(jìn)行壓縮的時(shí)間。如果一個(gè)DPWM具有1MHz開(kāi)關(guān)速率和10位ADC,那么計(jì)算顯示,調(diào)制器要求超過(guò)1 GHz的脈沖速率。
當(dāng)然,如此的高速度是不切實(shí)際的,因此數(shù)字控制器的設(shè)計(jì)者必須找到另一種替代解決方案。一種方案是引入一些DPWM時(shí)鐘抖動(dòng)。穩(wěn)壓器輸出過(guò)濾器對(duì)饋入的任一脈沖串進(jìn)行平均,這使對(duì)每個(gè)mth輸出脈沖的寬度進(jìn)行相當(dāng)于1 LSB的調(diào)整成為可能。
這將脈沖串的平均值增加或降低了1 LSB精度的1/m倍。如果在控制器輸入端的1LSB使輸出脈沖串平均變化10 mV,這將使每四個(gè)脈沖縮短相應(yīng)于10 mV的時(shí)間,那么通過(guò)濾波器的平均輸出電壓將降低 10 mV/4,即2.5 mV。
當(dāng)系統(tǒng)具有一個(gè)以上的電壓軌時(shí),按照正確順序?qū)妷很?,并在電源啟?dòng)和關(guān)閉時(shí)控制電壓的變化速率將變得十分重要。在具有多個(gè)電源軌的系統(tǒng)中,采用數(shù)字電源管理更易于對(duì)不同電壓軌的順序和時(shí)序進(jìn)行編程。
電源轉(zhuǎn)換器或控制器并沒(méi)必要同時(shí)具有數(shù)字電源控制和數(shù)字電源管理功能。現(xiàn)在,一些DC/DC調(diào)節(jié)器采用模擬控制方式,但能提供增強(qiáng)型I2C總線(xiàn)上的可編程性能;另一些DC/DC調(diào)節(jié)器采用數(shù)字反饋,但通過(guò)將特定引腳直接接地或通過(guò)電阻接地,也可以設(shè)置操作特性。如今,大量的電源管理和一些電源控制功能是通過(guò)電源管理總線(xiàn)(PMBus)來(lái)實(shí)現(xiàn)的。
圖5:基本的PMBus僅要求時(shí)鐘和數(shù)據(jù)線(xiàn),ALERT#、CONTROL和WriteProtect線(xiàn)為可選。 |
PMBus接口和編程
大多數(shù)電源管理和控制IC的數(shù)據(jù)手冊(cè)將通信接口定義為I2C。但仔細(xì)研究后,你會(huì)發(fā)現(xiàn)真正的接口是系統(tǒng)管理總線(xiàn)(SMBus),通信協(xié)議則常為PMBus。
PMBus是系統(tǒng)管理接口論壇所擁有的一個(gè)開(kāi)放標(biāo)準(zhǔn)(圖5)。除采用SMBus傳輸層之外,該規(guī)范還增加了用于電源設(shè)計(jì)的控制語(yǔ)言。PMBus是電源公司和半導(dǎo)體公司互相協(xié)作的結(jié)果。
PMBus采用SMBus的1.1版本作為基礎(chǔ)規(guī)范。然而,1.1版本并不是SMBus的當(dāng)前版本。1.1版本和當(dāng)前2.0版本的主要區(qū)別在于地址總線(xiàn)仲裁功能,該特性對(duì)電源產(chǎn)品來(lái)說(shuō)并不是必需的,因?yàn)槊總€(gè)電源的地址幾乎總是給出了其物理地址和系統(tǒng)功能。
PMBus規(guī)范的第一部分定義了常規(guī)要求、傳輸和電氣接口以及物理層,第二部分則定義了電源業(yè)務(wù)控制器或系統(tǒng)主控器與電源器件之間的數(shù)據(jù)命令語(yǔ)言及其格式。
在PMBus規(guī)范中,PMBus IC、電源轉(zhuǎn)換器、電源等都被稱(chēng)為“器件”。但是,單個(gè)器件不一定要求支持所有特性、功能和命令。然而,為遵守PMBus規(guī)范,器件必須滿(mǎn)足:1)滿(mǎn)足第一部分中的所有要求;2)支持第二部分中至少一種非制造商專(zhuān)用命令;3)正確執(zhí)行PMBus命令代碼定義的功能;4)接受、認(rèn)可并執(zhí)行PMBus命令,或者拒絕;5) 在電源上電時(shí),能在不需要與其它PMBus器件通信的情況下安全啟動(dòng)和操作;6) 采用SMBus進(jìn)行傳輸(有例外說(shuō)明);7) 支持用于向多個(gè)PMBus器件發(fā)送命令的群組命令協(xié)議(Group Command Protocol)( 這些命令在一次傳輸中被接收,當(dāng)器件檢測(cè)到中止命令的STOP條件時(shí),它們開(kāi)始執(zhí)行接收到的命令);8) 在硬件線(xiàn)路信號(hào)狀態(tài)發(fā)生變化時(shí)作出響應(yīng)(對(duì)響應(yīng)時(shí)間沒(méi)有要求);9) 給出可在產(chǎn)品文檔中被設(shè)置和報(bào)告的輸出電壓精度和其它參數(shù)。
PMBus規(guī)范還提供制造商可能實(shí)現(xiàn)的一些功能(如果他們需要的話(huà)),這些功能包括:支持SMBus PEC協(xié)議;臨時(shí)充當(dāng)總線(xiàn)主控器,并與主控器通信;將它們想與主控器通信的信息通知給主控器;寫(xiě)保護(hù)(WP)信號(hào)輸入;通過(guò)SMBus接口升級(jí)固件。
PMBus規(guī)范定義了2個(gè)必需信號(hào)和3個(gè)可選信號(hào)(圖6):必需信號(hào)為時(shí)鐘信號(hào)(SCL)和數(shù)據(jù)信號(hào)(SDA),可選信號(hào)為SMBALERT#、CONTROL和WP。SCL、SDA和SMBALERT#在被下拉到低電壓時(shí)有效,CONTROL和WP的電壓在大多數(shù)情況下與PMBus的邏輯電壓相同。
SMBALERT#是一條連線(xiàn)或信號(hào),它由任何需要獲得PMBus主控器支持的從屬器發(fā)起。當(dāng)SMBALERT#有效時(shí),主控器在PMBus上發(fā)送告警(alert)響應(yīng)地址,然后每個(gè)發(fā)信號(hào)(alerting)的器件將其器件地址放在SDA上。這里有仲裁機(jī)制來(lái)管理沖突。
一旦器件成功地將其地址加入總線(xiàn),它就會(huì)釋放SMBALERT#線(xiàn)。雖然PMBus規(guī)范將該信號(hào)標(biāo)為“可選”,但推薦使用這個(gè)信號(hào),而且一些OEM要求在他們采用的器件中有這個(gè)信號(hào)。
一些系統(tǒng)OEM還需要CONTROL信號(hào)。CONTROL提供一種關(guān)掉支持PMBus電源的輸出的快速方法。OEM很少需要用來(lái)保護(hù)數(shù)據(jù)和程序信息免遭意外修改的WP信號(hào)。
PMBus數(shù)據(jù)分組協(xié)議與SMBus協(xié)議相同,除了前者包括被稱(chēng)為群組命令協(xié)議(Group-Command Protocol)的擴(kuò)展協(xié)議之外。這個(gè)擴(kuò)展協(xié)議允許多個(gè)器件通過(guò)使用STOP位探測(cè)來(lái)同步。
在群組命令協(xié)議中,PEC字節(jié)可能被加到每條命令和數(shù)據(jù)包的末尾,后跟發(fā)送給下一個(gè)器件的重復(fù)START位和地址、命令以及數(shù)據(jù),直至所有器件完成配置。在最后一個(gè)器件的配置數(shù)據(jù)包的末尾,STOP位被發(fā)送出去。當(dāng)探測(cè)到STOP位時(shí),所有器件都按發(fā)送的命令工作(或者說(shuō),利用CONTROL線(xiàn)同步多個(gè)器件)。
圖6:在PMBus規(guī)范的實(shí)現(xiàn)中,SMBus提供主計(jì)算機(jī)或系統(tǒng)管理器與PMBus兼容器件之間的串行通信。 |
PMBus命令語(yǔ)言
PMBus命令語(yǔ)言提供了超過(guò)100個(gè)基本命令代碼和為特定制造商及用戶(hù)命令保留的代碼,另外還支持基本命令的未來(lái)擴(kuò)展。但大多數(shù)PMBus器件并不能執(zhí)行所有PMBus命令。
因?yàn)橐粋€(gè)器件只須支持一種核心命令以遵守PMBus規(guī)范,所以存在一些用來(lái)通知PMBus主控器有一種命令沒(méi)有被支持的規(guī)范,包括響應(yīng)命令代碼或帶有否定應(yīng)答(NACK)的后續(xù)數(shù)據(jù)字節(jié),或以ACK響應(yīng)命令和數(shù)據(jù),但隨后警示主控器出現(xiàn)問(wèn)題。這讓主控器可以讀取命令STATUS_BYTE以確定問(wèn)題。與NACK相比,它減少了不確定性,因?yàn)镹ACK可以表示為“我沒(méi)有聽(tīng)到你”、“我不能支持你”或者“我不理解你”。
PMBus規(guī)范允許工程數(shù)值能以至少兩種格式進(jìn)行編碼:文字格式和直接格式。文字格式以伏特、安培、微秒或攝氏度等工程單位交換數(shù)據(jù)。直接方式則基于從屬器的內(nèi)部單位,它能降低對(duì)從器件運(yùn)算能力的要求,但這是以主控器的復(fù)雜性為代價(jià),因?yàn)橹骺仄鞅仨毦哂袑⒅骺仄鲉挝环g成從屬器單位的信息。文字格式對(duì)主控器工作量的要求最低,但它要求將從屬器將內(nèi)部數(shù)值轉(zhuǎn)換為工程單位。
除了文字格式和直接格式,可以用被稱(chēng)為VID的更簡(jiǎn)單的格式來(lái)表示輸出電壓。盡管VID調(diào)節(jié)無(wú)法滿(mǎn)足動(dòng)態(tài)處理器電源所要求的時(shí)序(因?yàn)榭偩€(xiàn)帶寬太低),但VID提供了一種管理電壓輸出的簡(jiǎn)單途徑。此外,它不要求主控器和從屬器具有很高的復(fù)雜性。
pid控制器相關(guān)文章:pid控制器原理
評(píng)論