Abhinay Patil
在我之前的文章中,我談到了設(shè)備消耗太少的功率——是的,有這樣的事情——給我?guī)砹寺闊5@種情況很少見。我處理的更常見的情況是客戶抱怨零件消耗的功率超過他們的數(shù)據(jù)手冊要求。
我記得有一個例子,當(dāng)一位客戶帶著他的處理器板走進(jìn)我的辦公室時,他說他消耗了太多的電量并耗盡了電池電量 - 由于我們自豪地聲稱該處理器是超低功耗處理器,因此我們有責(zé)任證明這一點(diǎn)。當(dāng)我準(zhǔn)備進(jìn)行通常的磨練,一個接一個地切斷板上不同設(shè)備的電源,直到找到真正的罪犯時,我想起了不久前的一個類似案例,我發(fā)現(xiàn)罪魁禍?zhǔn)资且粋€ LED 獨(dú)自懸掛在電源軌和接地之間,沒有公司限流電阻器。我不能確定是過流還是純粹的無聊最終殺死了 LED,但我跑題了。從那次經(jīng)歷來看,我做的第一件事就是在板上的某個地方尋找一個燃燒明亮的 LED。然而,這一次沒有這樣的希望。此外,事實(shí)證明處理器是板上唯一的設(shè)備,因此,我沒有其他設(shè)備可以嘗試將責(zé)任歸咎于此。當(dāng)客戶漏出另一條信息時,我的心進(jìn)一步沉了下去:當(dāng)他在實(shí)驗(yàn)室進(jìn)行測試時,他發(fā)現(xiàn)功耗和電池壽命處于預(yù)期水平,但是當(dāng)系統(tǒng)部署在現(xiàn)場時,電池很快就會耗盡。這些是最難調(diào)試的問題,因?yàn)樗鼈兪紫群茈y重現(xiàn)。這為數(shù)字世界問題增加了一種模擬的不可預(yù)測性和挑戰(zhàn),而數(shù)字世界問題通常存在于可預(yù)測和舒適的1和0世界中。
在最簡單的層面上,處理器消耗功率有兩個主要領(lǐng)域:內(nèi)核和 I/O。在控制內(nèi)核功耗方面,我會考慮PLL配置/時鐘速度、內(nèi)核電源軌以及內(nèi)核繁忙的計(jì)算活動量等因素。有一些方法可以最大限度地降低內(nèi)核功耗,例如,降低內(nèi)核時鐘速度或執(zhí)行某些指令,迫使內(nèi)核停止或進(jìn)入睡眠/休眠狀態(tài)。如果我懷疑是I/O占用了所有電力,我會注意I/O電源、I/O切換的頻率以及它們驅(qū)動的負(fù)載。
這是我唯一可以探索的兩條途徑。事實(shí)證明,在核心方面,我沒有什么可以真正懷疑的。它必須與 I/O 有關(guān)。此時,客戶透露他使用處理器純粹是為了計(jì)算功能,并且 I/O 活動非常少。事實(shí)上,他沒有使用設(shè)備上大多數(shù)可用的 I/O 接口。
“等等!您沒有使用某些 I/O。你的意思是那些 I/O 引腳未使用。你是如何將它們聯(lián)系起來的?
“當(dāng)然,我沒有在任何地方連接它們!”
“啊哈!”
那是我的尤里卡時刻。雖然我沒有尖叫著跑到街上,但我確實(shí)花了一點(diǎn)時間讓它沉入其中,然后才坐下來解釋。
典型的CMOS數(shù)字輸入如下所示:
圖1.典型的CMOS輸入電路(左)和CMOS電平邏輯(右)。
當(dāng)該輸入以推薦的高電平(1)或低電平(0)驅(qū)動時,PMOS和NMOS FET一次導(dǎo)通一個,但絕不會同時導(dǎo)通。輸入驅(qū)動電壓中存在一個稱為閾值區(qū)域的不確定區(qū)域,PMOS和NMOS可以同時部分導(dǎo)通,從而在電源軌和接地之間形成泄漏路徑。當(dāng)輸入保持浮動并拾取雜散噪聲時,可能會發(fā)生這種情況。這既解釋了客戶電路板上的高功耗,也解釋了為什么它是隨機(jī)發(fā)生的。
圖2.PMOS和NMOS都部分開啟,在電源和接地之間形成泄漏路徑。
在某些情況下,這可能會導(dǎo)致類似閂鎖的情況,即設(shè)備繼續(xù)消耗過多的電流并燒壞。有人可能會說這是一個更容易識別和調(diào)試的問題,因?yàn)槟忝媲坝幸话衙盁煹臉尅N业目蛻魣蟾娴膯栴}更難處理,因?yàn)楫?dāng)您在實(shí)驗(yàn)室的涼爽范圍內(nèi)進(jìn)行測試時,它不會引發(fā)很大的危險信號,但當(dāng)它在現(xiàn)場時會引起很多悲傷。
現(xiàn)在我們知道了問題的根本原因,顯而易見的解決方案是將所有未使用的輸入驅(qū)動到有效的邏輯電平(高或低)。但是,您需要注意細(xì)則中的某些內(nèi)容。讓我們再看一些處理不當(dāng)?shù)腃MOS輸入可能會給您帶來麻煩的場景。我們需要擴(kuò)大范圍,不僅包括完全開放/浮動的輸入,還包括那些似乎與適當(dāng)?shù)倪壿嬎较嚓P(guān)的輸入。
如果選擇簡單地通過電阻將引腳連接到電源軌或接地,請注意您使用的上拉或下拉電阻的大小。這與引腳的源/灌電流相結(jié)合,可能會將引腳看到的實(shí)際電壓電平移動到不希望的水平。換句話說,您需要確保上拉或下拉足夠強(qiáng)。
如果選擇主動驅(qū)動引腳,則應(yīng)始終確保驅(qū)動強(qiáng)度足以滿足手頭的CMOS負(fù)載。否則,電路周圍的噪聲可能足夠強(qiáng),足以覆蓋驅(qū)動信號并迫使引腳進(jìn)入不需要的狀態(tài)。
讓我們研究幾個場景:
在實(shí)驗(yàn)室中工作正常的處理器可能會在現(xiàn)場無緣無故地開始重新啟動,因?yàn)樵肼?a href="http://www.1cnz.cn/tags/耦合/" target="_blank">耦合到?jīng)]有足夠強(qiáng)上拉的RESET線路中。
您可以想象,如果CMOS輸入屬于控制高功率MOSFET/IGBT的柵極驅(qū)動器,則可能會在不應(yīng)該打開時無意中打開!確實(shí)是嚴(yán)峻的消息。
圖4.噪聲覆蓋弱驅(qū)動CMOS輸入柵極驅(qū)動器,導(dǎo)致高壓總線短路。
另一個相關(guān)但不那么明顯的問題場景是當(dāng)驅(qū)動信號的上升/下降時間非常慢時。在這種情況下,輸入可以在有限的時間內(nèi)停留在中間電壓電平上,這可能會導(dǎo)致各種麻煩。
圖5.CMOS輸入端的緩慢上升和下降時間在過渡期間造成瞬時短路。
既然我們已經(jīng)研究了一般適用于CMOS輸入的一些潛在問題,那么值得注意的是,一些器件在設(shè)計(jì)上處理這些問題方面比其他器件更好。例如,具有施密特觸發(fā)器輸入的器件本質(zhì)上更擅長處理噪聲或邊沿較慢的信號。
我們的一些最新一代處理器也注意到了這一點(diǎn),并在設(shè)計(jì)中采取了特殊的預(yù)防措施或明確的指導(dǎo)方針,以確保一切順利進(jìn)行。例如,ADSP-SC58x/ADSP-2158x數(shù)據(jù)手冊清楚地突出顯示了具有內(nèi)部端接或其他邏輯電路的引腳,以確保引腳永不浮動。
圖6.ADSP-SC58x/ADSP-2158x數(shù)據(jù)手冊快速參考。
最后,正如他們常說的那樣,最好將所有松散的末端捆綁起來,尤其是CMOS數(shù)字輸入。
圖3.通過弱上拉耦合到RESET引腳的噪聲會導(dǎo)致處理器重新啟動。
審核編輯:郭婷
-
電源
+關(guān)注
關(guān)注
184文章
17768瀏覽量
250710 -
處理器
+關(guān)注
關(guān)注
68文章
19339瀏覽量
230201 -
led
+關(guān)注
關(guān)注
242文章
23306瀏覽量
661515
發(fā)布評論請先 登錄
相關(guān)推薦
評論