完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>
標簽 > SerDes
SERDES是(串行器)/(解串器)的簡稱。它是一種主流的時分多路復用(TDM)、點對點(P2P)的串行通信技術。
SERDES是英文SERializer(串行器)/DESerializer(解串器)的簡稱。它是一種主流的時分多路復用(TDM)、點對點(P2P)的串行通信技術。即在發(fā)送端多路低速并行信號被轉換成高速串行信號,經(jīng)過傳輸媒體(光纜或銅線),最后在接收端高速串行信號重新轉換成低速并行信號。這種點對點的串行通信技術充分利用傳輸媒體的信道容量,減少所需的傳輸信道和器件引腳數(shù)目,提升信號的傳輸速度,從而大大降低通信成本。
SERDES是英文SERializer(串行器)/DESerializer(解串器)的簡稱。它是一種主流的時分多路復用(TDM)、點對點(P2P)的串行通信技術。即在發(fā)送端多路低速并行信號被轉換成高速串行信號,經(jīng)過傳輸媒體(光纜或銅線),最后在接收端高速串行信號重新轉換成低速并行信號。這種點對點的串行通信技術充分利用傳輸媒體的信道容量,減少所需的傳輸信道和器件引腳數(shù)目,提升信號的傳輸速度,從而大大降低通信成本。
分類
SerDes 結構大致可以分為四類:并行時鐘SerDes:將并行寬總線串行化為多個差分信號對,傳送與數(shù)據(jù)并聯(lián)的時鐘。這些SerDes比較便宜,在需要同時使用多個SerDes 的應用中,可以通過電纜或背板有效地擴展寬總線;8B/10B 編碼SerDes:將每個數(shù)據(jù)字節(jié)映射到10bit代碼,然后將其串行化為單一信號對。10位代碼是這樣定義的:為接收器時鐘恢復提供足夠的轉換,并且保證直流平衡(即發(fā)送相等數(shù)量的‘1’和‘0’)。這些屬性使8B/10BSerDes 能夠在有損耗的互連和光纖傳輸中以較少的信號失真高速運行;嵌入式時鐘SerDes:將數(shù)據(jù)總線和時鐘串化為一個串行信號對。兩個時鐘位,一高一低,在每個時鐘循環(huán)中內嵌串行數(shù)據(jù)流,對每個串行化字的開始和結束成幀,因此這類SerDes也可稱為“開始-結束位SerDes”,并且在串行流中建立定期的上升邊沿。由于有效負載夾在嵌入式時鐘位之間,因此數(shù)據(jù)有效負載字寬度并不限定于字節(jié)的倍數(shù);位交錯SerDes:將多個輸入串行流中的位匯聚為更快的串行信號對。SERDES技術最早應用于廣域網(wǎng)(WAN)通信。國際上存在兩種廣域網(wǎng)標準:一種是SONET,主要通行于北美;另一種是SDH,主要通行于歐洲。這兩種廣域網(wǎng)標準制訂了不同層次的傳輸速率。萬兆(OC-192)廣域網(wǎng)已在歐美開始實行,中國大陸已升級到2.5千兆(OC-48)水平。SERDES技術支持的廣域網(wǎng)構成了國際互聯(lián)網(wǎng)絡的骨干網(wǎng)。SERDES 并串行與串并行轉換器,串化器/并化器 A device that serializes output from, and deserializes input to, a business machine.一種(信號)轉換設備,對商業(yè)計算機的輸出(信號)進行并串行(串行化)轉換,而對其輸入(信號)進行串并行(解串)轉換。SERializer/DESerializer的縮 寫。系統(tǒng)的設計師們會采用串行器/解串器(SERDES)技術的高速串行接口來取代傳統(tǒng)的并行總線架構?;赟ERDES的設計增加了帶寬,減少了信號數(shù)量,同時帶來了諸如減少布線沖突、降低開關噪聲、更低的功耗和封裝成本等許多好處。而SERDES技術的主要缺點是需要非常精確、超低抖動的元件來提供用于控制高數(shù)據(jù)速率串行信號所需的參考時鐘。即使嚴格控制元件布局,使用長度短的信號并遵循信號走線限制,這些接口的抖動余地仍然是非常小的。
理解SerDes
FPGA發(fā)展到今天,SerDes(Serializer-Deserializer)基本上是標配了。從PCI到PCI Express, 從ATA到SATA,從并行ADC接口到JESD204, 從RIO到Serial RIO,…等等,都是在借助SerDes來提高性能。SerDes是非常復雜的數(shù)?;旌显O計,用戶手冊的內容只是描述了森林里面的一棵小樹,并不能夠解釋SerDes是怎么工作的。SerDes怎么可以沒有傳輸時鐘信號?什么是加重和均衡?抖動和誤碼是什么關系?各種抖動之間有什么關系?本篇小文試著從一個SerDes用戶的角度來理解SerDes是怎么設計的, 由于水平有限,一定有不夠準確的地方,希望對剛開始接觸SerDes的工程師有所幫助。
Contents
1. SerDes的價值。。. 1
1.1并行總線接口。。. 1
1.2 SerDes接口。。. 3
1.3 中間類型。。. 4
2. SerDes結構(architecture) 4
2.1串行器解串器(Serializer/Deserializer) 6
2.2發(fā)送端均衡器( Tx Equalizer) 8
2.3接收端均衡器( Rx Equalizer) 9
2.4時鐘數(shù)據(jù)恢復(CDR) 13
2.5 公用鎖相環(huán)(PLL) 16
2.6 SerDes編解碼。。. 18
2.7 SerDes收發(fā)Driver及差分接口轉換。。. 19
2.8 SerDes環(huán)回和調試。。. 19
3.抖動和信號集成( Jitter, SI ) 19
3.1 時鐘的抖動(clock jitter) 19
3.2. 數(shù)據(jù)的抖動(data jitter) 20
4.信號集成(SI)及仿真。。. 23
4.1信道channel 23
4.2 芯片封裝Package. 24
4.3 SI仿真。。. 24
5. 結尾。。. 25
6.參考資料 了解更多的內容,可以閱讀以下內容。。。. 25
1. SerDes的價值
1.1并行總線接口
在SerDes流行之前,芯片之間的互聯(lián)通過系統(tǒng)同步或者源同步的并行接口傳輸數(shù)據(jù),圖1.1演示了系統(tǒng)和源同步并行接口。
隨著接口頻率的提高,在系統(tǒng)同步接口方式中,有幾個因素限制了 有效數(shù)據(jù)窗口寬度 的繼續(xù)增加。
l 時鐘到達兩個芯片的傳播延時不相等(clock skew)
l 并行數(shù)據(jù)各個bit的傳播延時不相等(data skew)
l 時鐘的傳播延時和數(shù)據(jù)的傳播延時不一致(skew between data and clock)
雖然可以通過在目的芯片(chip #2)內用PLL補償時鐘延時差(clock skew),但是PVT變化時,時鐘延時的變化量和數(shù)據(jù)延時的變化量是不一樣的。這又進一步惡化了數(shù)據(jù)窗口。
源同步接口方式中,發(fā)送側Tx把時鐘伴隨數(shù)據(jù)一起發(fā)送出去, 限制了clock skew對有效數(shù)據(jù)窗口的危害。通常在發(fā)送側芯片內部,源同步接口把時鐘信號和數(shù)據(jù)信號作一樣的處理,也就是讓它和數(shù)據(jù)信號經(jīng)過相同的路徑,保持相同的延時。這樣PVT變化時,時鐘和數(shù)據(jù)會朝著同一個方向增大或者減小相同的量,對skew最有利。
我們來做一些合理的典型假設,假設一個32bit數(shù)據(jù)的并行總線,
a)發(fā)送端的數(shù)據(jù)skew = 50 ps ---很高的要求
b)pcb走線引入的skew = 50ps ---很高的要求
c)時鐘的周期抖動jitter = +/-50 ps ---很高的要求
d)接收端觸發(fā)器采樣窗口 = 250 ps ---Xilinx V7高端器件的IO觸發(fā)器
可以大致估計出并行接口的最高時鐘 = 1/(50+50+100+250) = 2.2GHz (DDR)或者1.1GHz (SDR)。
利用源同步接口,數(shù)據(jù)的有效窗口可以提高很多。通常頻率都在1GHz以下。在實際應用中可以見到如SPI4.2接口的時鐘可以高達DDR 700MHz x 16bits位寬。DDR Memory接口也算一種源同步接口,如DDR3在FPGA中可以做到大約800MHz的時鐘。
要提高接口的傳輸帶寬有兩種方式,一種是提高時鐘頻率,一種是加大數(shù)據(jù)位寬。那么是不是可以無限制的增加數(shù)據(jù)的位寬呢?這就要牽涉到另外一個非常重要的問題-----同步切換噪聲(SSN)。
這里不討論SSN的原理,直接給出SSN的公式 SSN = L *N* di/dt。L是芯片封裝電感,N是數(shù)據(jù)寬度,di/dt是電流變化的斜率。隨著頻率的提高,數(shù)據(jù)位款的增加,SSN成為提高傳輸帶寬的主要瓶頸。圖1.2是一個DDR3串擾的例子。圖中低電平的理論值在0V,由于SSN的影響,低電平表現(xiàn)為震蕩,震蕩噪聲的最大值達610mV,因此噪聲余量只有1.5V/2-610mV=140mV。
Figure 1.2 DDR3串擾演示
因此也不可能靠無限的提高數(shù)據(jù)位寬來繼續(xù)增加帶寬。一種解決SSN的辦法是使用差分信號替代單端信號,使用差分信號可以很好的解決SSN問題,代價是使用更多的芯片引腳。使用差分信號仍然解決不了數(shù)據(jù)skew的問題,很大位寬的差分信號再加上嚴格的時序限制,給并行接口帶來了很大的挑戰(zhàn)。
1.2 SerDes接口
源同步接口的時鐘頻率已經(jīng)遇到瓶頸,由于信道的非理想(channel)特性,再繼續(xù)提高頻率,信號會被嚴重損傷,就需要采用均衡和數(shù)據(jù)時鐘相位檢測等技術。這也就是SerDes所采用的技術。SerDes(Serializer-Deserializer)是串行器和解串器的簡稱。串行器(Serializer)也稱為SerDes發(fā)送端(Tx),(Deserializer)也稱為接收端Rx。Figure1.3是一個N對SerDes收發(fā)通道的互連演示,一般N小于4。
可以看到,SerDes不傳送時鐘信號,這也是SerDes最特別的地方,SerDes在接收端集成了CDR(Clock Data Recovery)電路,利用CDR從數(shù)據(jù)的邊沿信息中抽取時鐘,并找到最優(yōu)的采樣位置。
SerDes采用差分方式傳送數(shù)據(jù)。一般會有多個通道的數(shù)據(jù)放在一個group中以共享PLL資源,每個通道仍然是相互獨立工作的。
SerDes需要參考時鐘(Reference Clock),一般也是差分的形式以降低噪聲。接收端Rx和發(fā)送端Tx的參考時鐘可以允許幾百個ppm的頻差(plesio-synchronous system),也可以是同頻的時鐘,但是對相位差沒有要求。
作個簡單的比較,一個SerDes通道(channel)使用4個引腳(Tx+/-,Rx+/-), 目前的FPGA可以做到高達28Gbps。而一個16bits的DDR3-1600的線速率為1.6Gbps*16 = 25Gbps,卻需要50個引腳。此對比可以看出SerDes在傳輸帶寬上的優(yōu)勢。
相比源同步接口,SerDes的主要特點包括:
l SerDes在數(shù)據(jù)線中時鐘內嵌,不需要傳送時鐘信號。
l SerDes通過加重/均衡技術可以實現(xiàn)高速長距離傳輸,如背板。
l SerDes 使用了較少的芯片引腳
1.3 中間類型
也存在一些介于SerDes和并行接口之間的接口類型,相對源同步接口而言,這些中間類型的接口也使用串行器(Serializer)解串器(Deserializer),同時也傳送用于同步的時鐘信號。這類接口如視頻顯示接口7:1 LVDS等。
2. SerDes結構(architecture)
SerDes的主要構成可以分為三部分,PLL模塊,發(fā)送模塊Tx,接收模塊Rx。為了方便維護和測試,還會包括控制和狀態(tài)寄存器,環(huán)回測試,PRBS測試等功能。見圖2.1。
Figure 2.1 Basic Blocks of a typical SerDes
圖中藍色背景子模塊為PCS層,是標準的可綜合CMOS數(shù)字邏輯,可以硬邏輯實現(xiàn),也可以使用FPGA軟邏輯實現(xiàn),相對比較容易被理解。褐色背景的子模塊是PMA層,是數(shù)?;旌螩ML/CMOS電路,是理解SerDes去別于并行接口的關鍵,也是本文要討論的內容。
發(fā)送方向(Tx)信號的流向: FPGA軟邏輯(fabric)送過來的并行信號,通過接口FIFO(Interface FIFO), 送給8B/10B編碼器(8B/10B encoder)或擾碼器(scambler),以避免數(shù)據(jù)含有過長連零或者連1。之后送給串行器(Serializer)進行 并-》串 轉換。串行數(shù)據(jù)經(jīng)過均衡器(equalizer)調理,有驅動器(driver)發(fā)送出去。
接收方向(Rx)信號的流向, 外部串行信號由線性均衡器(Linear Equalizer)或DFE (Decision Feedback Equalizer)結構均衡器調理,去除一部分確定性抖動(Deterministic jitter)。CDR從數(shù)據(jù)中恢復出采樣時鐘,經(jīng)解串器變?yōu)閷R的并行信號。8B/10B解碼器(8B/10B decoder)或解擾器(de-scambler)完成解碼或者解擾。如果是異步時鐘系統(tǒng)(plesio-synchronous system),在用戶FIFO之前還應該有彈性FIFO來補償頻差。
PLL負責產(chǎn)生SerDes各個模塊所需要的時鐘信號,并管理這些時鐘之間的相位關系。以圖中線速率10Gbps為例,參考時鐘頻率250MHz。Serializer/Deserializer至少需要5GHz 0相位時鐘和5GHz 90度相位時鐘,1GHz(10bit并行)/1.25GHz(8bit并行)時鐘等。
一個SerDes通常還要具調試能力。例如偽隨機碼流產(chǎn)生和比對,各種環(huán)回測試,控制狀態(tài)寄存器以及訪問接口,LOS檢測, 眼圖測試等。
2.1串行器解串器(Serializer/Deserializer)
串行器Serializer把并行信號轉化為串行信號。Deserializer把串行信號轉化為并行信號。一般地,并行信號為8 /10bit或者16/20bit寬度,串行信號為1bit寬度(也可以分階段串行化,如8bit-》4bit-》2bit-》equalizerà1bit以降低equalizer的工作頻率)。采用擾碼(scrambled)的協(xié)議如SDH/SONET, SMPTE SDI使用8/16bit的并行寬度,采用8B/10B編碼的協(xié)議如PCIExpress,GbE使用10bits/20bits寬度。
一個4:1的串行器如圖xxx所示。8:1或16:1的串行器采用類似的實現(xiàn)。實現(xiàn)時,為了降低均衡器的工作頻率,串行器會先把并行數(shù)據(jù)變?yōu)?bits,送給均衡器equalizer濾波,最后一步再作2:1串行化,本文后面部分都按1bit串行信號解釋。
一個1:4的解串器如圖2.3所示,8:1或16:1的解串器采用類似的實現(xiàn)。實現(xiàn)時,為了降低均衡器(DFE based Equalizer)的工作頻率,DFE工作在DDR模式下,解串器的輸入是2bit或者更寬,本文后面部分都按1bit串行信號解釋。
Serializer/Deserializer的實現(xiàn)采用雙沿(DDR)的工作方式,利用面積換速度的策略,降低了電路中高頻率電路的比例,從而降低了電路的噪聲。
接收方向除了Deserializer之外,一般帶有還有對齊功能邏輯(Aligner)。相對SerDes發(fā)送端,SerDes接收端起始工作的時刻是任意的,接收器正確接收的第一個 bit可能是發(fā)送并行數(shù)據(jù)的任意bit位置。因此需要對齊邏輯來判斷從什么bit位置開始,以組成正確的并行數(shù)據(jù)。對齊邏輯通過在串行數(shù)據(jù)流中搜索特征碼字(Alignment Code)來決定串并轉換的起始位置。比如8B/10B編碼的協(xié)議通常用K28.5(正碼10’b1110000011,負碼10’b0001111100)來作為對齊字。圖2.4為一個對齊邏輯的演示。通過滑窗,逐bit比對,以找到對齊碼(Align-Code)的位置,經(jīng)過多次在相同的位置找到對齊碼之后,狀態(tài)機鎖定位置并選擇相應的位置輸出對齊數(shù)據(jù)。
2.2發(fā)送端均衡器( Tx Equalizer)
SerDes信號從發(fā)送芯片到達接收芯片所經(jīng)過的路徑稱為信道(channel),包括芯片封裝,pcb走線,過孔,電纜,連接器等元件。從頻域看,信道可以簡化為一個低通濾波器(LPF)模型,如果SerDes的速率大于信道(channel)的截止頻率,就會一定程度上損傷(distort)信號。均衡器的作用就是補償信道對信號的損傷。
發(fā)送端的均衡器采用FFE(Feed forward equalizers)結構,發(fā)送端的equalizer也稱作加重器(emphasis)。加重(Emphasis)分為去加重(de-emphasis)和預加重(pre-emphasis)。De-emphasis降低差分信號的擺幅(swing)。Pre-emphasis增加差分信號的擺幅。FPGA大部分使用de-emphasis的方式,加重越強,信號的平均幅度會越小。
發(fā)送側均衡器設計為一個高通濾波器(HPF),大致為信道頻響H(f)的反函數(shù)H-1(f),F(xiàn)FE的目標是讓到達接收端的信號為一個干凈的信號。FFE的實現(xiàn)方式有很多,一個典型的例子如圖2.5所示。
調節(jié)濾波器的系數(shù)可以改變?yōu)V波器的頻響,以補償不同的信道特性,一般可以動態(tài)配置。以10Gbps線速率為例,圖2.5為DFE頻率響應演示??梢钥吹剑瑢τ贑0=0,C1=1.0,C2=-0.25的配置,5GHz處高頻增益比低頻區(qū)域高出4dB,從而補償信道對高頻頻譜的衰減。
采樣時鐘的頻率限制了這種FFE最高只能補償?shù)紽s/2(例子中Fs/2=5GHz)。根據(jù)采樣定理,串行數(shù)據(jù)里的信息都包含在5GHz以內,從這個角度看也就足夠了。如果要補償Fs/2以上的頻率,就要求FFE高于Fs的工作時鐘,或者連續(xù)時間域濾波器(Continuous Time FFE)。
圖2.7為DFE時域濾波效果的演示,以10Gbps線速率為例,一個UI=0.1 nS=100ps。演示的串行數(shù)據(jù)碼流為二進制[00000000100001111011110000]。
GMII、SGMII和SerDes的區(qū)別和聯(lián)系? GMII和SGMII區(qū)別,上一篇已經(jīng)介紹了,這一篇重點介紹SGMII和SerDes區(qū)別。 GMII和S...
當然從總數(shù)據(jù)帶寬的角度看,比如64bit DDR3-1600的最大數(shù)據(jù)帶寬也超過了100Gbps(64*1.6Gbps)。也能提供不俗的總帶寬表現(xiàn)。其實...
本篇文章主要是對前兩種常用的千兆網(wǎng)接口的介紹,以直觀的方式對比這兩種接口在引腳方面的不同,比較適合幫助初學者建立一個初步的印象,能夠快速的了解RGMII...
眾所周知,現(xiàn)在主流的 FPGA 上實現(xiàn)的都是時序邏輯。時序邏輯有一個特點就是前面的狀態(tài)會影響到后面的狀態(tài)。所以在這種應用里,初始狀態(tài)的確定是整個設計里非...
對Lattice ECP3/ECP5器件中的SerDes/PCS進行了簡要的介紹
Lattice ECP3,ECP5(ECP5-5G)的SerDes/PCS結構基本相同,區(qū)別主要在于ECP5將兩個SerDes/PCS通道合并到一個叫做...
如何使用HyperLynx_DRC來查找SERDES設計立即下載
類別:PCB設計規(guī)則 2016-01-06 標簽:SERDESHyperLynx_DRC
帶有SerDes接口的PLB千兆位級以太網(wǎng)MAC立即下載
類別:通信網(wǎng)絡 2012-02-13 標簽:千兆以太網(wǎng)MACSerDes
SerDes已經(jīng)成為需要快速數(shù)據(jù)移動和有限I/O的芯片的主要解決方案,但隨著速度不斷提高以抵消數(shù)據(jù)的大量增加,這項技術變得越來越具有挑戰(zhàn)性。
ISERDESE2 在 SDR 模式下數(shù)據(jù)轉換的位寬可以為 2、 3、 4、 5、 6、 7、 8bit,在 DDR 模式時,數(shù)據(jù)轉換位寬為 4、 6、...
高速112G SerDes技術的市場趨勢與設計挑戰(zhàn)
移動數(shù)據(jù)的迅速攀升,蓬勃發(fā)展的人工智能及機器學習(AI / ML)應用,和 5G 通信對帶寬前所未有的需求對現(xiàn)有云數(shù)據(jù)中心的服務器、存儲和網(wǎng)絡架構形成了...
國產(chǎn)車載SerDes百花齊放,12G以上已是“基本操作”
電子發(fā)燒友網(wǎng)報道(文/梁浩斌)隨著自動駕駛攝像頭等傳感器的不斷升級,數(shù)據(jù)傳輸量呈指數(shù)級提升,近幾年高速SerDes在電動汽車上的需求開始受到關注,多家國...
一、SERDES介紹 隨著大數(shù)據(jù)的興起以及信息技術的快速發(fā)展,數(shù)據(jù)傳輸對總線帶寬的要求越來越高,并行傳輸技術的發(fā)展受到了時序同步困難、信號偏移嚴重,抗干...
2021-04-02 標簽:fpgaSerDes大數(shù)據(jù) 5271 0
SERDES的優(yōu)勢 引腳數(shù)量和通道優(yōu)勢 SERDES最明顯的優(yōu)勢是具備更少的引腳數(shù)量和線纜/通道數(shù)量。對于早期的SERDES,這意味著數(shù)據(jù)可以通過同軸電...
2021-07-23 標簽:SerDes 4269 0
電子發(fā)燒友網(wǎng)報道(文/梁浩斌)在車載網(wǎng)絡通信系統(tǒng)中,過去最為常見的是CAN總線、LIN總線等,多個分布式的ECU通過CAN、LIN等總線系統(tǒng)進行連接,而...
2024-09-30 標簽:SerDes 3875 0
通過SerDes遠端I2C接口訪問16位I2C外設寄存器地址
Maxim吉比特多媒體串行鏈路(GMSL)串行器/解串器(SerDes)系列包括MAX9249、MAX9259、MAX9260、MAX9263和MAX9...
Marvell發(fā)布基于DSP的112G SerDes解決方案
目前市面上有三款基于臺積電5nm工藝(N5)的芯片,分別是華為Mate40Pro中的Kirin90005GSoC、蘋果iPhone12系列智能機中的A1...
編輯推薦廠商產(chǎn)品技術軟件/工具OS/語言教程專題
電機控制 | DSP | 氮化鎵 | 功率放大器 | ChatGPT | 自動駕駛 | TI | 瑞薩電子 |
BLDC | PLC | 碳化硅 | 二極管 | OpenAI | 元宇宙 | 安森美 | ADI |
無刷電機 | FOC | IGBT | 逆變器 | 文心一言 | 5G | 英飛凌 | 羅姆 |
直流電機 | PID | MOSFET | 傳感器 | 人工智能 | 物聯(lián)網(wǎng) | NXP | 賽靈思 |
步進電機 | SPWM | 充電樁 | IPM | 機器視覺 | 無人機 | 三菱電機 | ST |
伺服電機 | SVPWM | 光伏發(fā)電 | UPS | AR | 智能電網(wǎng) | 國民技術 | Microchip |
Arduino | BeagleBone | 樹莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 華秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |