癡——因對法界不如實知見,故作顛倒之行。 調試不僅僅是要發現問題而且還要讓問題得到解決和消除。發現異常僅僅是起手第一步,之后是分析異常的本質。然而,人往往有慣性的思維希望依賴過去的經驗快速地解決問題。然而絕大部分時候過去的經驗并不一定能很完美的解決一個現有的特定環境下的問題。只有掌握現象背后的原理,才能舉一反三。 一個很簡單的例子,在給高速數字芯片加去耦電容的時候,很多人都知道需要加“一個大電容和一個小電容”,問起原因有些人會說濾除電源系統上的噪聲。實際上即使直接采用電池供電(電源非常穩定,沒有開關噪聲)的系統當中,高速數字芯片附近仍然需要去耦電容,這些電容的存在是為了提高電源對芯片的瞬態輸出能力。 當數字芯片的內部時鐘邊沿觸發邏輯翻轉是需要在瞬間從電源吸取比較大的電流,這時需要電容來提供一個“本地”的瞬態電源,以克服電源到芯片之間導線上的寄生電感和電阻的影響。如果盲目的認為電容總是用來濾除噪聲的,就會出現確實使用了兩個電容,但是卻用了比較長的導線布置在了遠離芯片的地方之類的錯誤。 在遇到調試問題的時候要睜大雙眼,同時也要掃除心理的惰性和對已有經驗的依賴,從客觀的角度分析問題。扎實的理論根基可以助人消除迷惘,同時利用從每一次的調試的機會也可以學到很多新的經驗和隱藏在背后的知識。 |