在某產(chǎn)品的調(diào)試中發(fā)現(xiàn),板上核心處理芯片在每次啟動后的表現(xiàn)不同,偶爾會出現(xiàn)無法啟動的故障。
經(jīng)過幾百次反復(fù)上下電測試發(fā)現(xiàn),在大多數(shù)情況下,芯片啟動后能正常工作,但有約2%的概率會出現(xiàn)芯片無法啟動的問題。
【討論】
在故障發(fā)生時,由于芯片并沒有完全掛死,工程師可以通過底層軟件查詢芯片內(nèi)部寄存器,從而通過寄存器找到故障診斷的線索。這種方法是CPU、核心處理器等芯片故障調(diào)試的重要手段之一。但是,在該芯片故障的調(diào)試中發(fā)現(xiàn),在芯片每次啟動出故障時,片內(nèi)寄存器的參數(shù)值是不同的。這就使得若以寄存器作為故障診斷的線索,可能會出現(xiàn)多個可能的調(diào)試方向。
一個重要的調(diào)試經(jīng)驗是,對于大多數(shù)故障,故障的表現(xiàn)方式可能有很多種,但故障的根源很可能是唯一的。
基于這項調(diào)試經(jīng)驗,若故障表現(xiàn)具備一致性,我們可以采用逆推的方式,也就是通過故障表現(xiàn)逆向推出故障根源。但是,若故障表現(xiàn)不具備一致性,則不宜采用逆推的分析方式 。
對于本案例,寄存器參數(shù)值只是故障的表現(xiàn),而不是導(dǎo)致故障的根源。由于在每次上電出現(xiàn)故障的過程中,芯片寄存器的狀態(tài)并不完全相同,因此繼續(xù)執(zhí)著于對寄存器的研究可能就不是個好策略了,此時應(yīng)該回到上電工作的本身,通過波形測試,尋找其他線索。
該芯片有12種供電電源,經(jīng)過多次對上電電源波形的捕捉,發(fā)現(xiàn)有一個給芯片內(nèi)核供電的電源上電波形存在臺階,不論芯片是否能正常啟動,該臺階都存在。同時捕捉該路 電源上電電壓波形和電流波形,發(fā)現(xiàn)在電壓出現(xiàn)臺階的瞬間,該路電源的負(fù)載電流會突然增大 。
可以推測電壓出現(xiàn)臺階的原因是,在上電過程中,當(dāng)電壓爬升到某位置,負(fù)載芯片電流突然增大,導(dǎo)致電源環(huán)路無法迅速響應(yīng)負(fù)載突變能量的需求,只能依靠電源輸出端的電 容向負(fù)載提供能量,導(dǎo)致在這個瞬間電壓無法繼續(xù)上升,并伴隨電容放電而略微向下,在波形上表現(xiàn)為臺階。在一段延時之后,電源環(huán)路使能量傳遞恢復(fù),電源電壓才能繼續(xù)上升,但在這之前,電源能量無法完全滿足芯片的需求,可能造成芯片內(nèi)部紊亂,表現(xiàn)為無法正常啟動,寄存器出現(xiàn)各式錯誤。
該問題的解決方案有:
①優(yōu)化電源環(huán)路響應(yīng)速度。
②在電源和負(fù)載芯片之間加入MOS管,等電源啟動完成并穩(wěn)定后再開啟MOS管。在負(fù)載啟動瞬間存在較大突變電流的應(yīng)用中,如果同時進(jìn)行電源上電和負(fù)載啟動,有可能出現(xiàn)與本案例類似的問題。通過MOS管將二者之間的關(guān)聯(lián)斷開是解決這類問題的一種方法。
③利用對復(fù)位等信號的控制,修改芯片啟動流程,使芯片的啟動在板上所有電源上電完成后再進(jìn)行。
本案例最終的解決方案是,通過調(diào)整控制信號發(fā)出的時序,將芯片啟動時間向后延 遲,在板上所有電源上電結(jié)束或接近結(jié)束時再開始芯片的啟動。在采用這種解決方案時, 需注意研究芯片上電初始化流程的具體要求。
【擴(kuò)展1】
本質(zhì)上,本案例的故障是由于電源啟動和芯片啟動同時進(jìn)行導(dǎo)致的。當(dāng)這兩種啟動同時發(fā)生時,電源輸出能量不僅需滿足輸出端大電容的充電,還需滿足負(fù)載的用電需求。許多核心處理芯片在啟動瞬間會出現(xiàn)負(fù)載電流的迅速增大,該電流可能遠(yuǎn)大于芯片穩(wěn)態(tài)工作時的最大電流值,這種情況下,同樣處于啟動過程中的電源很可能無法滿足突變負(fù)載電流的需求,從而造成啟動過程中電壓的跌落。
【擴(kuò)展2】
上電測試是電路測試中一項非常關(guān)鍵的項目。
本案例中的電路,在調(diào)試早期已經(jīng)經(jīng)過了初步的上電測試,包括電源上電波形的測量等,但工程師未發(fā)現(xiàn)電源軌道上存在臺階的問題。原因是,該臺階太小,若不將示波器時間軸拉開,是無法看清楚的。
這是電源上電波形測量中很常見的問題之一。由于芯片有上電順序的要求,各電源上電軌道存在相對時延,有的工程師為了在示波器屏幕上同時觀察幾個電源軌道的上電波形,會將示波器時間軸設(shè)置到ms級甚至10ms級,在這種情況下是很難發(fā)現(xiàn)上電波形邊沿上臺階、振蕩等現(xiàn)象的。
通常而言,在電路中有許多看上去很困難的問題,在解決后往往發(fā)現(xiàn)問題本身并不復(fù)雜,只是前期的某項基本測試項目沒有正確地進(jìn)行,或沒有對波形進(jìn)行正確的分析,導(dǎo)致問題被掩蓋了。在多年的工作中,筆者深刻地體會到,測試這項工作,或者就不做,而如果要做,務(wù)必采用正確的測試方法、獲得正確的波形,并對波形等測試數(shù)據(jù)做認(rèn)真的分析。錯誤的測試得到錯誤的結(jié)果,辛苦測得了大批數(shù)據(jù)而不做細(xì)致分析,不僅浪費時間,而且造成誤判,是復(fù)雜問題調(diào)試中必須避免的。
【擴(kuò)展3】
有的工程師提出可以利用緩啟動電路解決本案例提到的問題,這個方案是不正確的。
緩啟動電路的使用,用得好能解決電壓沖擊、電流沖擊的問題;用得不好則很可能導(dǎo)致電路間歇性上電故障的問題。尤其是某些大功率核心處理芯片,在啟動瞬間需要極大的電流,若在電源通路上加上緩啟動電路,則在芯片啟動過程中,芯片內(nèi)核更加難以得到所需能量,從而可能進(jìn)入錯誤的狀態(tài)。
很多芯片對電源上電爬升速度有最小、最大值的要求,不能太快,也不能太慢,這是設(shè)計中值得注意的。
【擴(kuò)展4】
上電時,在電壓波形上出現(xiàn)臺階是常見的,顯然并非任何上電臺階都會造成電路啟動故障 。
以上案例來自電路設(shè)計領(lǐng)域知名專家-王老師《高速電路設(shè)計進(jìn)階》著作內(nèi)容其一案例!
-
芯片
+關(guān)注
關(guān)注
459文章
52343瀏覽量
438424 -
cpu
+關(guān)注
關(guān)注
68文章
11059瀏覽量
216420 -
MOS管
+關(guān)注
關(guān)注
109文章
2549瀏覽量
70275
發(fā)布評論請先 登錄
電源故障分析及處理
電腦內(nèi)存異常故障提示處理
開關(guān)穩(wěn)壓電源電路故障表現(xiàn)分析
如何使用Ozone分析Cortex-M故障?
linux系統(tǒng)異常重啟,如何獲取最后一次啟動日志并分析異常?
礦井地面變壓器的異常運行和常見故障分析
變壓器異常運行和常見故障分析
常見電源模塊使用異常故障問題分析
自耦降壓啟動故障排除
STM32:啟動文件分析

柔性測斜儀數(shù)據(jù)異常故障分析及解決方法

【案例3.9】電路板無法啟動的故障分析

評論