- FPGA進階開發(fā)與實踐
- 田亮 張瑞 蔡偉等編著
- 3551字
- 2021-02-22 16:30:22
1.7 FPGA系統(tǒng)設計技術
作為一個FPGA應用工程師,不僅要懂得邏輯設計,還要學會把實現(xiàn)邏輯功能的FPGA器件集成到應用系統(tǒng)中。這就涉及系統(tǒng)設計,本節(jié)主要介紹FPGA系統(tǒng)設計技術。
1.7.1 信號完整性設計
1.信號完整性
信號完整性(Signal Integrity)反映了信號的質(zhì)量。對于數(shù)字電路來說,信號的高電平狀態(tài)、低電平狀態(tài)及狀態(tài)跳變的過程越明顯越好,這樣才能保證信號被正確采樣。理想的情況是,接收端接收到的信號跟發(fā)送端發(fā)送的信號一樣,或者只有細微的變化。實際應用中,信號在各種環(huán)境中傳輸,不可避免地受到各種干擾,造成信號畸變,信號畸變到一定程度,接收端就不能正確采樣,這是系統(tǒng)設計中要想辦法避免的。
1)傳輸線效應
信號傳輸?shù)倪^程,就是傳輸線與參考平面之間建立和釋放電場的過程,如圖1-74所示。
如果傳輸線與參考平面之間的電場建立或者釋放參數(shù)不變化,信號從源端到目的端的傳輸就比較穩(wěn)定。如果這個電場在傳輸線的不同位置建立或者釋放不一致,就會出現(xiàn)信號反射,即信號不能完全傳輸?shù)侥康亩耍幸徊糠謺环瓷浠卦炊耍c源端信號重疊,導致出現(xiàn)錯誤信號。這就是傳輸線效應。

圖1-74 信號傳輸
傳輸線效應一般是走線的交流阻抗變化引起的。這種阻抗變化會出現(xiàn)在下面6種情況下。
(1)線寬改變。
(2)走線與參考平面之間的距離改變。
(3)信號過孔換層。
(4)使用連接器。
(5)走線分叉或者轉(zhuǎn)向。
(6)走線末端。
避免這種效應的方法是阻抗匹配,使信號傳輸過程中的阻抗保持不變。
2)信號串擾
信號串擾(Cross Talk)是指相鄰信號線之間的相互干擾,如圖1-75所示。

圖1-75 信號串擾
信號串擾會帶來嚴重的信號質(zhì)量問題。減少信號串擾的方法是盡量避免信號線過近或者平行,在信號線之間布一根地線也可以有效減少信號串擾。
3)電源地線干擾
電源地線理論上是固定不變的,但是外界的電磁輻射或者系統(tǒng)本身的開關效應會造成電源地線干擾,如圖1-76所示。

圖1-76 電源地線干擾
造成這種干擾的原因是電源的交流阻抗發(fā)生變化,應對方法是在芯片的電源引腳上接一個去耦電容。
4)電磁干擾
電磁干擾(EMI)包括外界引入的電磁信號和電路本身的高頻信號帶來的電磁干擾。電磁干擾無處不在,只能通過屏蔽的方式來減小這種干擾。
2.單端I/O電氣標準及阻抗匹配
常用的單端I/O電氣標準有LVTTL和LVCMOS。
LVCMOS輸出結構如圖1-77所示。

圖1-77 LVCMOS輸出結構
圖1-77中,NMOS管和PMOS管交替導通,從而輸出高、低電平。LVCMOS的特點是高、低電平分別對應電源VCC和地GND的值,噪聲容限大。
LVTTL輸出結構如圖1-78所示。
圖1-78中,兩個NMOS管交替導通,從而輸出高、低電平。LVTTL的特點是輸出的高、低電平接近電源VCC和地GND的值,但是翻轉(zhuǎn)速度快。

圖1-78 LVTTL輸出結構
在這兩種單端輸出結構中,芯片自身的靜態(tài)功耗低,但是在狀態(tài)翻轉(zhuǎn)時會產(chǎn)生大電流,因此它們只適合用作低頻的信號接口。
單端接口的阻抗匹配方式有以下三種。
1)并行直流匹配(圖1-79)

圖1-79 并行直流匹配
在圖1-79中,信號從源端發(fā)出,在末端被地或者電源端完全吸收,接收引腳在信號進入地或者電源端之前正確采樣信號。這種結構簡單有效,但是對地或者電源端的電阻太小,靜態(tài)功耗太大,容易燒壞芯片引腳。
2)并行交流匹配(圖1-80)

圖1-80 并行交流匹配
與并行直流匹配相比,并行交流匹配增加了一個電容,阻容等效交流阻抗和傳輸線的阻抗一樣,這樣可以隔離直流和交流信號,不過增加電容會影響信號跳變的速度和幅度。這種方式只適合周期變化的時鐘信號。
3)串行匹配(圖1-81)

圖1-81 串行匹配
在源端串接一個電阻,使得源端輸出電阻加串接電阻與傳輸線阻抗相等。因為接收端的輸入電阻很大,所以信號在接收端被完全反射,在輸出端被完全吸收,不影響信號質(zhì)量。這種方式應用最廣、最有效。
3.差分I/O電氣標準及阻抗匹配
差分I/O即用兩根信號線傳輸信號,兩根信號線上的電平相反,電流方向相反,與參考平面建立的電場方向也相反,所以兩者建立的電場可以相互抵消,對外的電磁干擾也小。差分I/O結構如圖1-82所示。
常見的差分I/O電氣標準有LVDS、LVPECL、CML等。它們的驅(qū)動結構如圖1-83~圖1-85所示。

圖1-82 差分l/O結構

圖1-83 LVDS驅(qū)動結構

圖1-84 LVPECL驅(qū)動結構

圖1-85 CML驅(qū)動結構
差分接口輸出的是電流信號,而單端接口輸出的是電壓信號,恒定的電流信號在傳輸線上傳輸是不存在衰減和反射的,而且對于外界引入的串擾和電磁干擾具有共模抑制效應。如圖1-86所示,共模干擾被濾除。

圖1-86 濾除共模干擾
差分接口通常在接收端并聯(lián)一個100Ω左右的采樣電阻來實現(xiàn)信號的變換與采樣。
4.片上可編程終端電阻
為了方便設計,減少電路板上的分離電阻,F(xiàn)PGA器件一般有一個片上可編程終端電阻,如圖1-87所示。

圖1-87 片上可編程終端電阻
1.7.2 電源完整性設計
穩(wěn)定的電源對數(shù)字系統(tǒng)的正常高效工作非常重要,因此有必要進行電源完整性設計。
1.電源完整性
電源完整性反映了電源的質(zhì)量,電源完整性設計的目標是保證電源電壓穩(wěn)定,參考平面無波動。數(shù)字系統(tǒng)中有很多噪聲會影響電源的狀態(tài),主要是一些高頻噪聲,這些噪聲達到一定程度就會影響信號的正確采樣。要做好電源完整性設計,就要先分析噪聲來源。
2.同步翻轉(zhuǎn)噪聲
多個I/O同時進行狀態(tài)翻轉(zhuǎn),從而產(chǎn)生大電流變化,電源系統(tǒng)來不及提供足夠的電流支持,導致電源平面產(chǎn)生瞬間的電場變化,這就是同步翻轉(zhuǎn)噪聲(SSN)。
同步翻轉(zhuǎn)噪聲包括芯片內(nèi)部的SSN和電路板上的SSN。
芯片內(nèi)部的SSN如圖1-88所示。
電路板上的SSN就是各種芯片引腳同步翻轉(zhuǎn)產(chǎn)生的噪聲。
減小SSN的方法是盡量避免同步翻轉(zhuǎn)的能量過大,具體措施如下。
(1)在需要高速翻轉(zhuǎn)的引腳附近布置足夠的電源平面。
(2)把同步翻轉(zhuǎn)的I/O分配到不同地方。
(3)減小引腳翻轉(zhuǎn)的電流。
(4)在同步翻轉(zhuǎn)引腳附近的電源平面加去耦電容。
3.非理想回路
這里的回路指的是信號回路,即信號從源端發(fā)出去再回到源端的通路。信號回到源端時是通過電流回路傳輸?shù)模鐖D1-89所示。

圖1-88 芯片內(nèi)部的SSN

圖1-89 信號傳輸
在低速信號電路中,信號沿著電阻最小的路徑回流。在高速信號電路中,信號沿著電抗最小的路徑回流,高速信號電路中的電抗大多是感抗,所以回流的路徑就是感抗最小的路徑。
在高速信號電路中,找到最小感抗路徑就能很好地傳輸信號,該路徑一般在信號線下面的參考平面上,如圖1-90所示。

圖1-90 最小感抗路徑
因此,要盡量保證信號線下面的參考平面連續(xù),以免信號繞行,造成信號衰減。
如果不連續(xù)的參考平面是不可避免的,就要通過過孔來連接相同的參考平面,或者通過去耦電容來連接不同的參考平面。
總之,電源完整性設計要保證電源在任何時候都能提供充足的能量來驅(qū)動信號。
1.7.3 高速I/O設計
高速I/O就是前面介紹的高速差分接口。現(xiàn)在很多廠家把高速差分接口和串并轉(zhuǎn)換模塊、時鐘和數(shù)據(jù)調(diào)制模塊集成在一起,做成一個高速收發(fā)模塊,即SERDES。
SERDES原理圖如圖1-91所示。

圖1-91 SERDES原理圖
它實際傳輸?shù)男盘柌ㄐ稳鐖D1-92所示。

圖1-92 實際傳輸?shù)男盘柌ㄐ?/p>
這個波形中間的六邊形越大,邊界越清晰,表示傳輸?shù)男盘栙|(zhì)量越高。
英特爾FPGA SERDES結構圖如圖1-93所示。

圖1-93 英特爾FPGA SERDES結構圖
(1)輸入緩沖電路(圖1-94)。

圖1-94 輸入緩沖電路
該電路主要由可編程終端匹配電阻、接收端信號均衡器、信號檢查器組成,用于完成信號的恢復與檢測。
(2)接收端環(huán)回電路。
該電路的功能主要是把接收的信號環(huán)回發(fā)射出去,為遠端調(diào)試提供方便。
(3)時鐘檢測恢復模塊。
該模塊的功能是通過本地參考時鐘來恢復隨路傳送時鐘,并將其作為信號采樣時鐘。
(4)接收端PLL。
接收端PLL主要用來實現(xiàn)參考時鐘倍頻并產(chǎn)生恢復時鐘。
(5)串并轉(zhuǎn)換單元。
該單元把串行接收的數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)和時鐘一起發(fā)送給后端邏輯處理模塊。
(6)碼型檢測器、字節(jié)對齊模塊和數(shù)據(jù)對齊模塊(圖1-95)。
字節(jié)對齊模塊根據(jù)各種協(xié)議來檢測數(shù)據(jù)碼流中的字節(jié)對齊標志。
(7)接收端到邏輯模塊的接口(圖1-96)。
這主要是數(shù)據(jù)FIFO和控制I/O接口。
(8)發(fā)送端電路。
發(fā)送端與接收端類似,可認為是接收端的反向數(shù)據(jù)流。

圖1-95 碼型檢測器、字節(jié)對齊模塊和數(shù)據(jù)對齊模塊

圖1-96 接收端到邏輯模塊的接口
1.7.4 高速I/O的PCB設計
1.信號線布局
信號線通常有兩種,一種是微帶線,布置在參考平面一側(cè),如圖1-97所示。

圖1-97 微帶線
另一種是帶狀線,布置在參考平面中間,如圖1-98所示。

圖1-98 帶狀線
差分信號對的布線,可以采用微帶邊緣耦合布線,如圖1-99所示;也可以采用帶狀邊緣耦合布線,如圖1-100所示;還可以采用寬邊耦合帶狀布線,如圖1-101所示。

圖1-99 微帶邊緣耦合布線

圖1-100 帶狀邊緣耦合布線

圖1-101 寬邊耦合帶狀布線
一般建議采用邊緣耦合布線方式,以避免過耦合和欠耦合。
2.高頻旁路電容
為了濾除高頻干擾,需要在信號線與地平面之間加一個容量很小的電容,把高頻干擾旁路掉。
3.耦合電容布線
耦合電容布線(圖1-102)的主要特點如下。
(1)使用大尺寸過孔連接電容焊盤,減少容抗。
(2)使用低串聯(lián)阻抗電容。
(3)電容GND引腳連到地平面。

圖1-102 耦合電容布線
4.高速時鐘布線
(1)避免使用鋸齒繞線,盡量使用直線。
(2)盡量在單層布線。
(3)盡量不使用過孔。
(4)盡量在頂層用微帶布線。
(5)正確匹配阻抗。
5.電源布線
(1)在電源入口處加電容高低頻濾波器。
(2)將VCC和GND平面平行布置。
- 用“芯”探核:龍芯派開發(fā)實戰(zhàn)
- FPGA從入門到精通(實戰(zhàn)篇)
- Applied Unsupervised Learning with R
- Android NDK Game Development Cookbook
- 計算機組裝與系統(tǒng)配置
- AMD FPGA設計優(yōu)化寶典:面向Vivado/SystemVerilog
- 微軟互聯(lián)網(wǎng)信息服務(IIS)最佳實踐 (微軟技術開發(fā)者叢書)
- 面向?qū)ο蠓治雠c設計(第3版)(修訂版)
- Blender Quick Start Guide
- 單片機技術及應用
- 無蘋果不生活:OS X Mountain Lion 隨身寶典
- Istio服務網(wǎng)格技術解析與實踐
- Spring Cloud微服務和分布式系統(tǒng)實踐
- Istio實戰(zhàn)指南
- 微服務實戰(zhàn)