您當前的位置:首頁 > 遊戲

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

作者:由 楊培文 發表于 遊戲時間:2015-03-30

為什麼樹莓派的晶片周圍有這樣的蛇形走線?加菲貓2015-03-30 16:17:24

高速訊號的等長線,拐來拐去達到一組並行訊號線的長度一致,使訊號經過導線的延時儘量一致。

記憶體條上很常見(網上的圖):

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?知乎使用者2015-04-18 15:48:08

題主圖裡有兩種

我用紅色框起來這些小的彎曲,是HDMI訊號和camera訊號(好像是MIPI-CSI)的差分對,每兩根線是一對,HDMI有四對,都是資料線,MIPI-CSI有三對,一對時鐘,兩對資料線。差分訊號需要做減法,所以要求一對當中的這兩根線長度要匹配(一般差異在5mil之內),這樣延時相同,訊號才不失真。

左邊黃色框裡的大點的彎曲,是為了保證MIPI_CSI的資料線和時鐘線長度匹配,差分對內兩條有要求,差分對時鐘和資料之間也有要求,這個一般不那麼嚴,在幾百mil之內吧,因為setup time和hold time也有餘量。

右邊黃色框裡和左邊黃色框差不多,看上去大部分不是差分對,只是並行的訊號線要求長度匹配,如果是記憶體的訊號線的話,一般是data和dqs長度匹配,dqs和clock長度匹配。

左邊黃色框多框了一對沒走蛇形線的差分對,大概是單獨的USB訊號或者給別的什麼裝置用的差分訊號。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

如果有不對的地方請高手指出。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?郭躍超2015-04-19 22:00:29

正好是我瞭解的技術方面,隨便寫寫吧。

從題主發的照片及問題題目上來看,主要牽涉到兩個方便的問題:

1。差分線,就是題主發的圖片中電路板上特別接近的兩根線,總是一對一對的出現。

2。蛇形走線,就是圖中彎彎曲曲的電路線。

不管是差分走線還是蛇形走線其實都是為了保證電路設計中很重要的一個東西——訊號完整性。什麼是訊號完整性呢?下面是維基百科給的一個解釋:

訊號完整性(Signal

integrity, SI)是對於電子訊號質量的一系列度量標準。在數位電路中,一串二進位制的訊號流是透過電壓(或電流)的波形來表示。然而,自然界的訊號實際上都是模擬的,而非數字的,所有的訊號都受噪音、扭曲和損失影響。在短距離、低位元率的情況裡,一個簡單的導體可以忠實地傳輸訊號。而長距離、高位元率的訊號如果透過集中不同的導體,多種效應可以降低訊號的可信度,這樣系統或裝置不能正常工作。訊號完整性工程是分析和緩解上述負面效應的一項任務,在所有水平的電子封裝和組裝,例如積體電路的內部連線、積體電路封裝、印製電路板等工藝過程中,都是一項十分重要的活動。訊號完整性考慮的問題主要有振鈴(ringing)、串擾(crosstalk)、接地反彈、扭曲、訊號損失和電源供應中的噪音。

一、差分線的作用。

差分線主要是對抗電路板上干擾和噪聲的。組成數位電路的數字器件一般都是由數字邏輯單元組成,而邏輯單元一般都是由開關器件,例如電晶體,mos管構成。數位電路中通常由高低電平來表示數字邏輯的”1”和”0”,但是電路中傳輸的高低電平本身卻是模擬量。由於電路訊號線導線頻寬不是無窮大的,而且開關器件高頻工作時候不能忽略寄生的電容以及電感的影響,其結果就是,在數字開關導通截止的時候,輸出電壓不會從高到底,或者從低到高的平滑過渡,會產生吉布斯(Gibbs phenomenon,如圖所示)振盪,寄生電容,電感振盪等等,這些多餘的振盪電壓如果透過某種路徑影響到有用訊號的傳輸,那麼對於有用訊號來說,這些多餘的東西就是干擾噪聲了。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

上述只是訊號干擾噪聲的一個來源,還有很多其他的來源例如電源噪聲,電磁干擾噪聲等等。

解決干擾噪聲問題的思路有兩個方面:

1。

從干擾的傳輸的路徑上去消除。

就是讓干擾和噪聲儘可能大的衰減,在抵達有用訊號傳輸導線上時候變得很小,從而不影響正常訊號的傳輸。現在的高速電路設計有很多的設計原則和指導,都是用來減小干擾和噪聲的。例如,EMC(Electro Magnetic Compatibility),電源去耦,快速入地,模擬和數字電源和地平面隔離等等,這裡就不展開說了。

2。

從提高傳輸訊號本身的抗干擾和噪聲的能力入手。

先普及一個叫噪聲容限(Noise Margin)的概念,噪聲容限是指在前一極輸出為最壞的情況下,為保證後一極正常工作,所允許的最大噪聲幅度。噪聲容限越大說明容許的噪聲越大,電路的抗干擾性越好。如下圖中,驅動器A傳輸訊號到接收器B端的輸入。

高電平噪聲容限=min{VOH_A}(最小輸出高電平電壓)— min{VIH_B}(最小輸入高電平電壓)

低電平噪聲容限=max{ VOL_A

}(最大輸入低電平電壓) —

max{ VIL_B}最大輸出低電平電壓

噪聲容限=min{高電平噪聲容限,低電平噪聲容限}

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

理論上說,只要表示邏輯“1”和“0”的高低電平電壓差越大,噪聲容限就會越大,但是越大的電壓差就需要越高的電壓供電,造成功耗的浪費,另外電壓差越大,從低電過渡到高電平或者從高平過渡到低電平需要的時間越長,直接影響電路的最高的工作頻率。

早先的數位電路通常是電晶體(transistor)電路,對應這種電路,自然發展出一種叫TTL(Transistor-Transistor Logic)的電平標準,數字器件在5V電源工作,通常驅動器表示高電平,既邏輯”1”的時候,輸出電壓>2。4V,典型值為3。5V;表示低電平,既邏輯“0”的時候,輸出電壓<0。4V,典型值0。2V。同時,輸入端可分辨的最小輸入高電平和最大輸入低電平:輸入高電平>=2。0V,輸入低電平<=0。8V,噪聲容限是0。4V。

可見TTL電路的抗噪聲能力是不強的,TTL電路中高電平2。4V與電源5V之間還有很大空閒,對改善噪聲容限並沒什麼好處,又會白白增大系統功耗,還會影響速度。所以後來就把一部分“砍”掉了,逐漸發展出一種叫LVTTL(Low-Voltage

TTL)的電平標準,分辨支援3。3V電源和2。5V電源(還有支援更低電源的):

3。3V LVTTL: VCC:3。3V;VOH>=2。4V;VOL<=0。4V;VIH>=2V;VIL<=0。8V。

2。5V LVTTL: VCC:2。5V;VOH>=2。0V;VOL<=0。2V;VIH>=1。7V;VIL<=0。7V。

雖然LVTTL的標準,降低了供電電壓,但是對噪聲容限沒有什麼改善(還是0。4V),後來CMOS電路逐漸取代電晶體電路成為主流,對應便有了LVCMOS電平標準:

3。3V LVCMOS:VCC:3。3V;VOH>=3。2V;VOL<=0。1V;VIH>=2。0V;VIL<=0。7V。

2。5V LVCMOS:VCC:2。5V;VOH>=2。0V;VOL<=0。1V;VIH>=1。7V;VIL<=0。7V。

相比於LVTTL,LVCOMS電路的噪聲容限得到一定的改善。

另外,TLL電路是不能和LVTTL和LVCMOS直接相連的,兩者之間需要經過電阻網路匹配才可以。相同電源下LVTTL和LVCMOS電路導線是可以直接互連的,甚至不同電源之間也可以互相直連的,只是不能達到最佳的噪聲容限。不過為了防止電流過載的情況出現,推薦在做電路設計的時候,訊號導線串聯個電阻什麼的。

除了上述提到的電平標準之外常用的還有RS232(串列埠),RS422等電平標準,它們用正負電平表示邏輯“1”和“0”。還有工作在非飽和狀態(飽和狀態指只有導通和截止狀態)的電平標準ECL,PECL等,這裡也不展開說了。

多說一句,現在開源硬體很火,買個開發板,再買些周圍的小的裝置板子,或者自己做一些小板子很隨意便可以搭起電路系統來,根本不用擔心各個晶片,器件之間是否存在電壓相容的問題,就得益於LVTTL和LVCMOS這些電平標準的統一應用。所以真應該感謝前人的努力,使得我們可以像做軟體一樣做硬體。

以上無論TTL,LVTTL還是LVCOMS電平標準都是單端電壓標準。所謂單端電壓標準是指這些標準的輸出或者輸入電壓都是相對於電路公用的地平面來講的,在高速數位電路中,公用的地平面很容易傳播干擾和噪聲。

所以有沒有某種技術既可以隔離干擾噪聲,又能保持一定的噪聲容限,還能高速的傳輸訊號?

這當然難不倒聰明的攻(dan)城(shen)獅(gou),這時候差分傳輸技術出現了,區別於傳統的一根訊號線一根地線(在PCB中就是公用地)的做法,差分傳輸在這兩根線上都傳輸訊號,這兩個訊號的振幅相等,相位相反,例如網線中的雙絞線就利用差分傳輸技術。一種比較常見的差分傳輸的電平標準叫LVDS(Low Voltage Differential Signal,用的也比較多,因為沒有專利費),如下圖:

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

LVDS翻轉電壓只有350mv對應比較小的噪聲容限,但是LVDS本身是不容易被幹擾,如圖線圖中,差分訊號分別在AB兩路上傳輸,雖然單獨看A和B都收到很大的干擾影響,但是他們差值A-B則受到的干擾影響小很多,這個過程叫共模干擾抑制(Common Mode Rejection )。另外,較小的翻轉電壓能支援高速訊號傳輸。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

我對題主所發的樹莓派的開發板不太瞭解,但是大體上,如果是連線記憶體的差分線採用的應該是LVDS標準,顯示方面如果支援的是普通RGB高畫質LCD螢幕,差分線採用的也應該是LVDS標準(沒有專利費),如果支援的是HDMI估計採用的是TMDS標準,具體這兩個標準有什麼差別,感興趣的話可以查查資料什麼的。

二、蛇形走線的作用。

蛇形走線是為了保證電路時序約束的正確。數位電路中高低電平相互翻轉的時候是需要時間的,為了保證在接受端電平能被正確的取樣,通常會預留一點時間給訊號電平建立起來,同樣,正確的取樣也需要一點時間,就需要訊號翻轉到某個電平後保持一段時間。這就是所謂的setup time和holdup time。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

如上圖,左邊紅色的Ts是setup time,右邊Th是holdup

time。對於一個導線上傳輸訊號來說了最大的時間延遲 Tdelay=Tclk(工作時鐘)-Ts-Th。對於多個導線訊號傳輸的情況,如果他們之間的長度差距過長,訊號在導線走的路線長短不一樣,造成的時延差大過Tdelay,則接收端就會接收錯誤。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

上面兩張圖是從TI某款DAC晶片手冊上截出來的,可以看出這個時鐘晶片上升沿和下降沿都是要取樣資料的。有一點讓人疑惑了,為什麼 Ts時間為0,這是因為該DAC晶片對於資料來說是輸入端,自身沒有要求,而實際上資料從驅動端到輸入端,電平翻轉建立是需要時間的,如下圖是該DAC晶片自己輸出的上升和下降時間(電壓從高電平電壓的10%升到90%,或者從90%降到10%)。

實際的Ts跟驅動器的能力,電路設計都有關係,我們取一個大概可能的值例如300(setup time是指訊號建立並穩定的時間一般要比簡單上升或者下降時間大些)

可以算出Tdelay = 1000000/(2*625)-300-400 =100ps=0。1ns,既折算回導線之間最大的長度差L= 0。1* 299792458(光速)/10^9 = 0。012m=1。2cm。所以導線之間最大的佈線距離差在此種情況下估算不能超過1。2cm。

在高速電路的PCB佈線中,因為器件位置的影響,有些位置的導線天生的長些,有些會短,所以為了保證時序約束的正確性,使得有些位置的導線多走些路,保證走過的距離差不多,時延差也差不多。

另外,在板級系統設計上,時延約束並不是一個特別大的問題,這是因為板級系統的時鐘工作頻率不會特別高。實際上,時延約束在晶片級系統的設計上才是一個比較難解決的問題,因為晶片的工作頻率動輒上G,對於時延要求很高,通常攻(dan)城(shen)獅(gou)要耗費大量的工作在最佳化邏輯閘電路的佈局和佈線上。

以上,第一次回答問題,順序比較亂,請大家指正,謝謝了。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?馬卡龍能餵豬嗎2015-12-01 11:08:25

借鑑嘯風院士的姿勢————————————————————————————————- 在 PCB 設計中,等長走線主要是針對一些高速的並行匯流排來講的。由於這類並行匯流排往往有多根資料訊號基於同一個時鐘取樣,每個時鐘週期可能要取樣兩次(DDR SDRAM)甚至 4 次,而隨著晶片執行頻率的提高,訊號傳輸延遲對時序的影響的比重越來越大,為了保證在資料取樣點(時鐘的上升沿或者下降沿)能正確採集所有訊號的值,就必須對訊號傳輸的延遲進行控制。等長走線的目的就是為了儘可能的減少所有相關訊號在 PCB 上的傳輸延遲的差異。

至於 USB/SATA/PCIE 等序列訊號,並沒有上述並行匯流排的時鐘概念,其時鐘是隱含在序列資料中的。資料傳送方將時鐘包含在資料中發出,資料接收方透過接收到的資料恢復出時鐘訊號。這類序列匯流排沒有上述並行匯流排等長佈線的概念。但因為這些序列訊號都採用差分訊號,為了保證差分訊號的訊號質量,對差分訊號對的佈線一般會要求等長且按匯流排規範的要求進行阻抗匹配的控制。

等長線常用在高速儲存器的地址和資料線上,簡而言之,等長線的作用,就是讓訊號傳輸的速度一致。

低速訊號就無需特別注意線長度了,訊號頻率較低的話,由導線長度引起的延時不足以影響正常時序,所以無需等長。但是你保持等長也好,這是一種良好的設計習慣。

還有一點就是並不是說高速訊號就是頻率比較高的訊號,低速訊號就是頻率比較低的訊號——是不是高速訊號,主要取決於是不是上升沿很陡,也就是說,上升沿越陡,就是個高速訊號,反之就是低速訊號。這點要和高頻訊號和低頻訊號區分開。高速訊號透過PCB走線進行傳輸的時候會發生一些問題,影響時域的波形,造成振鈴,回溝,過沖,串擾等一些現象,從而造成一些時序問題。

所以在高速PCB設計時應注意訊號完整性,建議看看Eric Bogatin的訊號完整性分析。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?森山2021-12-07 23:30:13

蛇形走線是高速PCB layout中比較常見的操作了,也是必要的。

其他答主寫的都很詳細了。

我補充幾點:

1、蛇形走線是為了平衡同組訊號的延時,其實我們設計時過於嚴苛了,具體的誤差設定,要根據晶片設計手冊中建議的去做,不一定要在5mil誤差範圍內,有時候這種嚴苛誤差會對佈線帶來很多工作量,以及增加PCB板的面積。

2、對於頻率特別高的,設計時也要考慮2端晶片內部的走線延時,這個規格書裡一般也會有說明,沒有的話就無需注意。

3、

訊號完整性、參考平面、阻抗設計,同樣很重要,他們決定了訊號質量。而蛇形走線主要解決的是時序上的正確性。

4、還有個小技巧,有些人可能還不知道,DDR這種資料線在佈線時,同一組內可以任意排序,不一定要嚴格按照引腳序號去設計,這樣做的好處,會大大最佳化佈線難度,簡化設計。

為什麼樹莓派的晶片周圍有這樣的蛇形走線?

森山:60天掌握CADENCE-電路設計原創教程【硬體工程師的自我修養】森山:如何打造自己的低成本電子實驗室?