串?dāng)_的煩惱
少年有維特的煩惱,而SI/PI工程師有串?dāng)_的煩惱。串?dāng)_是在做SI相關(guān)的工程師經(jīng)常聽到或遇到的問題,但實(shí)質(zhì)上能理解串?dāng)_的工程師還是少數(shù)。不管是在低速或是高速電路的設(shè)計(jì)甚至射頻電路、天線都會(huì)有串?dāng)_的問題存在。有人可能會(huì)想說天線?!是的,像陣列天線會(huì)特別強(qiáng)調(diào)Iolation。簡(jiǎn)單來說,兩條傳輸線或?qū)w,相鄰布線就會(huì)有串?dāng)_的風(fēng)險(xiǎn)。
01 引起串?dāng)_的原因是什么?
串?dāng)_是因?yàn)閭鬏斁€之間,透過電磁場(chǎng)相互耦合而產(chǎn)生出的干擾能量(噪聲)。好像有點(diǎn)抽象,說白了就是互容和互感的效應(yīng)。如果是EE相關(guān)背景應(yīng)該都不陌生。也就是說兩條微帶(帶狀)傳輸線中間相隔空氣(FR4),就會(huì)形成寄生電容,互感也是如此。如果不熟悉電容電感可以先看看維基百科 電容 電感的解釋。傳輸?shù)哪芰浚ㄓ嵦?hào))所含的高頻成分越多,串?dāng)_效應(yīng)會(huì)越明顯。
這句話是什么意思?訊號(hào)里的高頻成分?首先我們要先知道的傳輸信號(hào)的屬性, 簡(jiǎn)單來說一般我們傳輸?shù)臄?shù)字信號(hào)(方波)他是屬于寬帶的信號(hào),如果數(shù)字波形越理想所涵蓋的高頻成分就會(huì)越多,信號(hào)所需要的Rise time就越快。不懂可以看一下海綿寶寶跟派大星的傅立葉轉(zhuǎn)換的關(guān)系。海綿寶寶的頭越方正,派大星旁邊的高頻諧波成分就越多(紅色圈圈)!
海綿寶寶做傅立葉轉(zhuǎn)換
看個(gè)圖可能比較容易理解,由下圖可以看到,由微帶傳輸線所引起的電力線之邊緣場(chǎng)會(huì)影響到鄰近的傳輸線導(dǎo)體。也可以解釋成磁流透過寄生電容流入另一條導(dǎo)線。(I=CdV/dt)
02 近端串?dāng)_與遠(yuǎn)端串?dāng)_
在實(shí)務(wù)上工程師將串?dāng)_分成近端與遠(yuǎn)端兩種干擾模式,通常為了快速理解將導(dǎo)線分成有源(攻擊線, agressor)與無源(靜態(tài)線, Victim)兩種狀態(tài)。在靜態(tài)線上靠近源端的量測(cè)點(diǎn)可被定義成近端,反之靠近終端者為遠(yuǎn)端。如圖所示:
互感的串?dāng)_
當(dāng)Agressor傳輸一個(gè)步階方波,前面提到由于寄生電容在電壓變化時(shí),會(huì)產(chǎn)生磁流流進(jìn)Victim,一部分往近端方向前進(jìn),另一部分往遠(yuǎn)端。同時(shí)兩導(dǎo)線也有互感效應(yīng),但不同的是根據(jù)楞次定律,當(dāng)一導(dǎo)體感受到瞬間電壓變化會(huì)產(chǎn)生反向電壓抗拒,故在遠(yuǎn)端處除了電容耦合電壓外,也會(huì)有一反向的感應(yīng)電壓產(chǎn)生負(fù)向的電流。近端的干擾時(shí)間為導(dǎo)體時(shí)延(長(zhǎng)度)的兩倍(去回),遠(yuǎn)端則是持續(xù)Rise time的時(shí)間,Waveform如下圖:
也就是串?dāng)_會(huì)發(fā)生在電壓變化的情況,所以呼應(yīng)前段所說,高頻成分越多,rise time 越快,發(fā)生串?dāng)_的風(fēng)險(xiǎn)越高。另位從數(shù)學(xué)式也可以看出近端是電容與電感耦合效應(yīng)相加,遠(yuǎn)端是相減。遠(yuǎn)端上電感感應(yīng)的能量(能量累加)會(huì)大于電容互耦的能量,所以在Waveform上會(huì)是呈現(xiàn)負(fù)值的電壓。詳細(xì)可以參考互聯(lián)網(wǎng)星空 Crosstalk的解釋。有趣的是遠(yuǎn)程串?dāng)_跟傳輸線長(zhǎng)度與Rise time大小有關(guān),從前面的解釋應(yīng)該可以略知一二。
Xtalk數(shù)學(xué)式
03 減小串?dāng)_的方法
電路布線常會(huì)有串?dāng)_的風(fēng)險(xiǎn),最后簡(jiǎn)單說明幾個(gè)減小串?dāng)_的方法,常見增大走線間距、使兩導(dǎo)體的有串?dāng)_風(fēng)險(xiǎn)的區(qū)域最小化、相鄰層走線時(shí)傳輸線互相彼此垂直、降低板材介電常數(shù)(確保阻抗控制)、內(nèi)層布線(減小遠(yuǎn)程串?dāng)_)... 等。至于內(nèi)層布線可以消除遠(yuǎn)端串?dāng)_的原因在于,內(nèi)層布線導(dǎo)體接觸的介電質(zhì)相同,電感與電容互耦的能量可以相消。故內(nèi)層布線的遠(yuǎn)程串?dāng)_通??梢孕∮?50 dB。其實(shí)減小串?dāng)_的重點(diǎn)就是減小兩導(dǎo)體間的互耦效應(yīng)。
04 一些有用的方法
看到這里你或許會(huì)想,不是阿!哪有每個(gè)電路的空間都么大,讓我可以兩條訊號(hào)線間距很遠(yuǎn)。確實(shí),有些結(jié)構(gòu)是很難避免的,所以需要思考哪些結(jié)構(gòu)是主要的發(fā)生點(diǎn),以及哪一部分可以避免。
像是可以利用Via 錯(cuò)位的方式減少串?dāng)_的影響(先忽略P/N沒有對(duì)稱的情況XD),如下圖:
相鄰Via錯(cuò)位布線
近場(chǎng)的影響
酷炫一點(diǎn)的像是2015年Intel發(fā)表的文章,利用再傳輸線上增加Stub(tabbed line)的結(jié)構(gòu),增加互容的能量,減少遠(yuǎn)端的串?dāng)_。
利用Stub結(jié)構(gòu)減小遠(yuǎn)程串?dāng)_
05 結(jié)語
后來想想人的行為跟串?dāng)_很像,靠得太近容易吵架(loss)。有適當(dāng)?shù)木嚯x反而產(chǎn)生美感。或許會(huì)想,那活人(agressor)對(duì)死人(Victim)呢?活人可能還是會(huì)有點(diǎn)Loss(怕爆)吧 。