公眾號(hào) | 高速先生,作者 | 周偉
上篇文章我們提到希望大家一起來分享硬件調(diào)試中發(fā)現(xiàn)的一些低級(jí)錯(cuò)誤,果然就有我們的鐵桿粉絲之一“曬不”發(fā)來了他初步整理的案例素材,大家一起來學(xué)習(xí)一下吧,也謝謝他的分享!
這個(gè)項(xiàng)目的主芯片是瑞芯微的RV1126(位號(hào)U10),分別拖了一個(gè)金士頓的eMMC芯片(位號(hào)U40)和鎂光的NAND Flash芯片(位號(hào)U41),在Layout的時(shí)候做了兼容設(shè)計(jì),也就是通過選焊電阻的方式,讓主芯片來選通其中一個(gè)芯片,使用的時(shí)候二選一,eMMC和NAND Flash芯片不會(huì)一起工作,大致的拓?fù)鋱D如下所示:
從Layout設(shè)計(jì)文件可以看到,幾個(gè)芯片都是放在Top面,eMMC和NAND Flash基本是放在同一個(gè)中心位置,所以貼片的時(shí)候只能選擇貼其中的一個(gè),兩個(gè)芯片是沒法同時(shí)貼上的,所以需要做兼容設(shè)計(jì)。兩個(gè)分支電阻在垂直空間上重疊放置在Top面和Bottom面,這樣如果只焊接其中一個(gè)電阻的時(shí)候,確實(shí)是可以做選通操作,看起來Layout設(shè)計(jì)沒什么問題,對(duì)應(yīng)的走線如下圖所示:
設(shè)計(jì)上沒發(fā)現(xiàn)什么問題,然后就制板貼片開始調(diào)試。硬件在調(diào)試板子時(shí)發(fā)現(xiàn),有時(shí)候上電,系統(tǒng)會(huì)有卡死的情況,同樣的固件在開發(fā)板上是OK的,軟件做了幾輪修改都會(huì)有類似軟件報(bào)錯(cuò)的情況,顯示出跑到eMMC操作時(shí)就卡住了,最后只能懷疑是硬件或者PCB Layout的問題。
但硬件有排除不是自己?jiǎn)栴}的理由:“最小系統(tǒng)模塊(包含eMMC)的原理是直接復(fù)制開發(fā)板的,所有的器件貼裝也和開發(fā)板一樣,同樣的代碼在之前開發(fā)板上沒有問題,而現(xiàn)在新設(shè)計(jì)的板子有問題,那肯定是PCB Layout出了問題”。
不可否認(rèn),硬件的話確實(shí)有一定的道理,硬件原理之前是驗(yàn)證過的,這樣壓力一下子就給到了PCB設(shè)計(jì)工程師。無奈,PCB工程師只能想辦法自證清白,在沒有專職SI工程師的情況下,PCB設(shè)計(jì)工程師只能通過再次查板,進(jìn)行粗略的估算和評(píng)估一些影響,檢查的方向如下:
1、阻抗不匹配方向:所有信號(hào)走線沒有跨分割平面,走線線寬和阻抗計(jì)算也沒有錯(cuò)誤,同時(shí)也不存在較長的走線Stub,所以這一條不會(huì)影響。
2、時(shí)序方向:因?yàn)樾枰?00MHz的信號(hào),等長也是比較關(guān)鍵的,但因?yàn)闆]有做仿真,只能按照芯片的手冊(cè)要求來做好等長約束,檢查了等長表,每根信號(hào)走線長度也是都可以滿足芯片要求,所以時(shí)序這塊的影響也是可以初步排除。
3、電源方向:按照經(jīng)驗(yàn)簡(jiǎn)單算了電源平面載流能力是可以滿足需求的,相應(yīng)的電源Pin腳也有足夠的濾波電容,硬件測(cè)試電壓和電源噪聲都是可以滿足要求,所以電源的影響也可以排除。
同時(shí)也和開發(fā)版本的設(shè)計(jì)進(jìn)行了對(duì)比,硬件人員覺得是因?yàn)闀r(shí)鐘信號(hào)走線和開發(fā)板不一致導(dǎo)致的。如下圖是開發(fā)板的走線情況。
開發(fā)板上eMMC和NAND Flash也是同面同中心放置,原理是一樣的,也是通過兩個(gè)電阻做了選通,只是走線上的分支更短,而新改板后的分支相對(duì)來說長了很多。所以硬件人員有理由覺得是PCB改版帶來的問題,所有的原理和貼片器件都是一樣,PCB設(shè)計(jì)改了就出問題了,這個(gè)大概率是PCB設(shè)計(jì)不一樣而帶來的問題。
而PCB設(shè)計(jì)工程師也有自己的主張:“CLK信號(hào)是由RV1126源端發(fā)出的,開發(fā)板的串聯(lián)阻抗匹配電阻放在了終端,靠近eMMC和NAND Flash是不對(duì)的,應(yīng)該把串聯(lián)匹配電阻靠近源端,所以本次改版設(shè)計(jì)的電阻就往源端放了,這樣確實(shí)會(huì)導(dǎo)致分支變長,但由于是選焊的,如果一次只焊接其中一路的情況下,另一路是沒有導(dǎo)通的,這樣相當(dāng)于沒有分支的影響,原理上來說信號(hào)質(zhì)量會(huì)更好。如果連串聯(lián)匹配電阻放在源端也被懷疑有問題的話,那就是懷疑信號(hào)完整性的理論有問題了?!盤CB設(shè)計(jì)工程師的話也是說得在理,無可挑剔,由于沒有SI人員支持,于是雙方各執(zhí)一詞,誰也說服不了誰。
經(jīng)過幾天的“溝通”,壓力還是在PCB工程師這。就在PCB工程師拿著PCBA研究的時(shí)候,無意中發(fā)現(xiàn)雖然U41沒有焊接,但是R41卻焊接了器件。這個(gè)發(fā)現(xiàn)仿佛一道佛光,拯救了“背鍋俠”。在PCB工程師的反饋下,硬件拆除了R41,系統(tǒng)終于可以正常啟動(dòng)了。
這個(gè)時(shí)候硬件人員就有疑問了,為什么開發(fā)板上的R41沒有拆除可以正常工作,改版后的R41焊上就有問題了呢?大家可以幫忙回答一下哈!
(同時(shí)也歡迎大家繼續(xù)提供類似這種調(diào)試過程中的典型錯(cuò)誤案例素材,謝謝?。?/p>
聲明:未經(jīng)高速先生授權(quán)許可,任何機(jī)構(gòu)、媒體、個(gè)人不得轉(zhuǎn)載、修改、摘編或以其他方式復(fù)制、傳播高速先生平臺(tái)的原創(chuàng)作品。
Q、本期提問
為什么開發(fā)板上的R41沒有拆除可以正常工作,改版后的R41焊上卻有問題呢?
如果不想錯(cuò)過“高速先生”的精彩內(nèi)容,請(qǐng)記得點(diǎn)擊上方藍(lán)字“高速先生”,右上角“...”點(diǎn)選“設(shè)為星標(biāo)”。可第一時(shí)間看到高速先生的推文,感謝大家的關(guān)注和支持!