日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > EDA > 電子設計自動化
[導讀]在串行數(shù)據(jù)傳輸中,數(shù)據(jù)接收端需要一些特定的信息來恢復出正確的字邊界,以確定串行碼流中哪些比特屬于原始并行數(shù)據(jù)里的同一時鐘節(jié)拍里的數(shù)據(jù),這一處理過程稱為字對齊(Word Aligner)。一些標準的協(xié)議會定義特殊的碼

在串行數(shù)據(jù)傳輸中,數(shù)據(jù)接收端需要一些特定的信息來恢復出正確的字邊界,以確定串行碼流中哪些比特屬于原始并行數(shù)據(jù)里的同一時鐘節(jié)拍里的數(shù)據(jù),這一處理過程稱為字對齊(Word Aligner)。一些標準的協(xié)議會定義特殊的碼型(常見的碼型如8B/10B編碼中的K28.5)用于字對齊處理。另一些帶源同步時鐘的LVDS接口,通常會利用低頻的源同步時鐘來攜帶字對齊信息,用于接收端的正確恢復。FPGA對上述兩種方案都可以進行正確處理。那么,如何FPGA中利用低頻源同步時鐘實現(xiàn)低壓差分信號(LVDS)接收字對齊呢?


在串行數(shù)據(jù)傳輸中,數(shù)據(jù)接收端需要一些特定的信息來恢復出正確的字邊界,以確定串行碼流中哪些比特屬于原始并行數(shù)據(jù)里的同一時鐘節(jié)拍里的數(shù)據(jù),這一處理過程稱為字對齊(Word Aligner)。一些標準的協(xié)議會定義特殊的碼型(常見的碼型如8B/10B編碼中的K28.5)用于字對齊處理。另一些帶源同步時鐘的LVDS接口,通常會利用低頻的源同步時鐘來攜帶字對齊信息,用于接收端的正確恢復。FPGA對上述兩種方案都可以進行正確處理。對于標準協(xié)議,F(xiàn)PGA通常都會有知識產(chǎn)權(IP)模塊提供。本文主要討論在FPGA中利用低頻源同步時鐘實現(xiàn)低壓差分信號(LVDS)接收字對齊的設計方法及步驟。


LVDS已經(jīng)成為業(yè)界高速傳輸最普遍應用的差分標準。LVDS的優(yōu)勢包括:由于采用差分信號帶來的對共模噪聲的免疫能力,進而提高了抗噪聲能力;功率消耗較小,噪聲較小等。由于LVDS有比較好的抗躁聲特性,它可以采用低至幾百毫伏的信號擺幅,進而可以支持更高的數(shù)據(jù)速率。


LVDS串行器/解串器(SERDES)可以完成多位寬度的并行信號到LVDS串行信號的轉(zhuǎn)換以及反方向操作,如圖1所示。有些器件提供圖1中的隨路時鐘,但有些器件可能并不提供,這時LVDS解串器還必須具有時鐘恢復(CDR)功能。市面上有各種規(guī)格的LVDS SERDES器件,此外FPGA或其它一些器件也都能集成LVDS SERDES模塊。


圖1:LVDS串行器/解串器的功能示意圖。


為確保正確的數(shù)據(jù)傳送,通過LVDS接收器后必須能恢復字順序,即輸入到LVDS串行器的最高比特能夠正確地出現(xiàn)在解串器恢復輸出數(shù)據(jù)的最高比特位置上,至少是需要預先知道出現(xiàn)在哪個比特位置上后再進行調(diào)整。圖2和圖3分別給出了4位寬度下字順序得到保留和沒有得到保留的例子。對于圖3的情況,需要采用一種方法找把字順序調(diào)整過來。


圖2:字順序得到保留。


圖3:字順序沒有得到保留。


字順序的調(diào)整通常采用尋找訓練碼來進行。一些標準的協(xié)議通常會定義特殊的碼型來進行字對齊處理,比如8B/10B編碼中K28.5碼型的主要功能就是字對齊處理。發(fā)送端在有效數(shù)據(jù)中插入K28.5碼型,接收端在收到的數(shù)據(jù)中尋K28.5碼型,找到之后以這個碼型為參考得到正確的并行數(shù)據(jù)輸出。此外,諸如SDH協(xié)議就利用幀頭位置的A1A2字節(jié)來進行字對齊處理。


另外一些相對低速的LVDS接口也利用低頻的源同步時鐘來攜帶字對齊信息,以便在接收端實現(xiàn)正確的數(shù)據(jù)恢復。這里的低頻源同步時鐘也如圖1中的隨路時鐘,LVDS數(shù)據(jù)和隨路時鐘之間的倍數(shù)關系通常等于LVDS串行化時的倍數(shù)因子。比如,德州儀器(TI)的SN65LVDS95 LVDS發(fā)送器,不僅可完成21:3的LVDS串行化發(fā)送,還將21位的并行數(shù)據(jù)和時鐘串行化成3路LVDS數(shù)據(jù)輸出和1路時鐘輸出。串行化因子的值等于7,所以輸出時鐘的頻率是LVDS數(shù)據(jù)速率的七分之一。通過這個隨路時鐘,配套的解串器SN65LVDS96就能夠正確恢復并行數(shù)據(jù)。


與這類單獨的LVDS SERDES器件相比,F(xiàn)PGA集成LVDS模塊能提供更高的集成度,并簡化硬件設計、節(jié)省PCB面積,從而降低應用成本。高端FPGA還在I/O單元里固化了LVDS串行器/解串器,支持非常高的速率,比如Altera公司的Stratix III系列。


Stratix III FPGA系列是Altera公司基于TSMC 65nm工藝的高端FPGA,是業(yè)界高密度高性能可編程邏輯器件中,功耗最低的產(chǎn)品系列。Stratix III 器件可以同時提供最多276對LVDS串行化發(fā)送模塊和276對LVDS解串行化接收模塊,每路LVDS最高可以支持1.6Gbps。此外,它還獨家提供可編程的輸出擺幅和預加重功能,以支持長距離背板傳送,如圖4所示。


圖4:Stratix III 支持可編程的輸出擺幅(Vs(p-p))和預加重(Vpp(p-p))。


圖5顯示了Stratix III的LVDS接收器中固化在I/O單元里的模塊。源同步的低頻時鐘rx_inclk通過PLL倍頻移相后得到DIFFI/OCLK,對輸入數(shù)據(jù)rx_in進行采樣,采樣后的數(shù)據(jù)可以進行最高因子為10的解串行化。


圖5:Stratix III I/O固化的LVDS接收器。


由于FPGA具有非常高的靈活性,比如支持不同LVDS輸入數(shù)據(jù)和輸入時鐘之間的倍頻關系,以及不同的解串行化因子,所以Stratix III LVDS硬核模塊的輸出字順序通常是不確定的,每次上電或者復位后字順序都有可能發(fā)生變化,使用時需要根據(jù)特殊碼型進行字對齊處理。
當輸入到FPGA的數(shù)據(jù)和時鐘之間的倍數(shù)關系等于解串器的解串行化因子時,F(xiàn)PGA與單獨的LVDS解串器一樣,有確定的字順序輸出,可以在沒有訓練碼型的情況下繼續(xù)正常應用。圖6是解串行化因子為7時的時序圖。假設隨路時鐘的上升沿對應數(shù)據(jù)的最高比特,在FPGA內(nèi)部,PLL會從隨路時鐘產(chǎn)生一個進行過相位調(diào)整的7倍頻率采樣時鐘。此時鐘對輸入數(shù)據(jù)進行采樣后送入解串器,通過控制解串器的裝載時鐘相位,得到確定的并行數(shù)據(jù)輸出字順序。裝載時鐘的相位相對隨路時鐘相位的固定差異是通過接收PLL的相位控制來實現(xiàn)的,因此必須在輸入時鐘穩(wěn)定后再釋放PLL的復位控制,或者等輸入時鐘穩(wěn)定后再復位PLL一次,否則輸出的字順序在每次上電時都可能不固定。


圖6:LVDS接收及解串行化時序圖。


在具體應用時,還需通過仿真來確定具體應用下的字輸出順序,然后在邏輯設計里面進行調(diào)整,使最終的并行輸出符合滿足需求。下面以與TI的SN65LVDS95 LVDS發(fā)送器對接為例來介紹具體的設計方法和步驟。當把Stratix III的LVDS與別的LVDS器件對接時,也可以此為參考。

 
圖7:LVDS95輸出時序。


點擊查看大圖

在圖7,LVDS95輸出的時鐘和數(shù)據(jù)是對齊到輸出時鐘的上升沿上的,數(shù)據(jù)的最高比特(MSB)出現(xiàn)在時鐘上升沿之在后的第三個比特。這里的目的是使Stratix III 的LVDS接收器輸出正確的字順序,也即圖7中的D6出現(xiàn)在并行輸出數(shù)據(jù)的最高比特上。


圖8:綜合設置頁面。


假設并行側(cè)的時鐘頻率是60MHz,這樣串行LVDS的速率是480Mbps。為方便描述,這里只針對1路LVDS數(shù)據(jù)進行設計。


首先根據(jù)LVDS95的時序進行Stratix III中的LVDS模塊(ALTLVDS)的調(diào)用。


圖9:頻率和鎖相環(huán)設置頁面。


在圖8的綜合設置頁面中,我們沒有選上“Implement Serializer/Deserializer circuitry in logic cells",這樣就用到了LVDS SERDES硬核。同樣也沒有選上“Enable Dynamic Phase Alignment mode”選項,這表示不使用DPA功能。


圖10:接收器設置頁面。


在圖9中,根據(jù)LVDS95的輸出時序,在“What is the phase alignment of 'rx_in' with respect to the rising edge of 'rx_inclock'? ”里選擇了0度。在圖10的設置中,通常情況下需要選上“Register outputs”選項。但因為后續(xù)設計邏輯包含了這些寄存器,所以這里選擇該選項。此外,在這里沒有使能“rx_channel_data_align”端口來進行字重新對齊。


接下來需要通過仿真找出串行因子等于7的情況下,LVDS硬核的字順序情況。圖11給出了頂層設計例子,圖12是在MODELSIM里的仿真結(jié)果。


圖11:頂層模塊的設計。


從圖11的仿真波形可以看到,LVDS時鐘上升沿之后的第一個數(shù)據(jù)將在并行側(cè)的rx_out_tmp[6:0]中的rx_out_tmp[2]出現(xiàn)。結(jié)合LVDS95的特性,LVDS95輸出的MSB(D6)將在rx_out_tmp[0]出現(xiàn),于是需要將此輸出滑動一位,得到正確的字順序。


圖12:仿真波形。


在圖13中,首先將數(shù)據(jù)進行一拍延時,得到rx_out_tmp_dly[6:0],然后將rx_out_tmp_dly[0]放置在輸出數(shù)據(jù)的最高位,rx_out_tmp[6:1]順序放置在其他位上,得到數(shù)據(jù)向右滑動一位的效果。如果需要滑動多位,調(diào)整上述的放置位置就可以了。對上述調(diào)整邏輯,我們可以進一步通過仿真來驗證。在此我們輸入了一個計數(shù)器數(shù)據(jù)進行確認。圖14給出了仿真的部分輸出結(jié)果,圖中,左邊兩根豎條標出了LVDS輸入的“000001”數(shù)據(jù),右邊的兩個豎條標出了rx_out的正確輸出。這證明了我們的調(diào)整是正確的。


圖13:字順序的調(diào)整邏輯。


圖14:內(nèi)容為計數(shù)器的仿真輸出波形。


本文小結(jié)


在利用Stratix III做LVDS接收時,我們可以將解串行化因子設置成等于輸入的LVDS數(shù)據(jù)和時鐘之間的倍數(shù)關系,這樣就可以得到確定的字輸出順序,從而可以不依賴訓練碼實現(xiàn)正確LVDS接收的字對齊。此方法不僅適合于FPGA與單獨的LVDS發(fā)送器進行對接,也可用于FPGA與FPGA之間的數(shù)據(jù)傳送,使用時FPGALVDS發(fā)送端送出低頻的源同步時鐘即可。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

最近為什么越來越多的研究開始利用FPGA作為CNN加速器?FPGA與CNN的相遇究竟能帶來什么神奇效果呢?原來,F(xiàn)PGA擁有大量的可編程邏輯資源,相對于GPU,它的可重構性以及高功耗能效比的優(yōu)點,是GPU無法比擬的;同時...

關鍵字: FPGA 可編程邏輯資源 GPU

FPGA的應用領域包羅萬象,我們今天來看看在音樂科技領域及醫(yī)療照護的智能巧思。

關鍵字: FPGA 科技領域 智能

強大的產(chǎn)品可降低信號噪音并提高分辨率與動態(tài)

關鍵字: Spectrum儀器 數(shù)字化儀 FPGA

最近某項目采用以太網(wǎng)通信,實踐起來有些奇怪,好像設計成只能應答某類計算機的ICMP(ping)命令, 某類計算機指的是Windows特定系統(tǒng),其他系統(tǒng)發(fā)送ping都不能正確識別。

關鍵字: 嵌入式Linux FPGA 協(xié)議

近兩年,國外廠商的FPGA芯片價格飆升,由于價格,貨期,出口管制等多方面因素的影響,很多公司都在尋找FPGA國產(chǎn)化替代方案。我工作中正在使用的幾款芯片也面臨停產(chǎn)的風險,用一片少一片,了解到國產(chǎn)FPGA發(fā)展的也不錯,完全自...

關鍵字: FPGA 芯片 EDA

本篇是FPGA之旅設計的第十二例,在前面的例程中,完成了DS18B20溫度傳感器數(shù)據(jù)的采集,并且將采集到的數(shù)據(jù)顯示在數(shù)碼管上。由于本例將對溫濕度傳感器DHT11進行采集,而且兩者的數(shù)據(jù)采集過程類似,所以可以參考一下前面的...

關鍵字: FPGA DS18B20溫度傳感器

這是FPGA之旅設計的第十三例啦,本例是一個綜合性的例程,基于OLED屏幕顯示,和DHT11溫濕度采集,將DHT11采集到的溫濕度顯示到OLED屏幕上。

關鍵字: FPGA OLED屏幕

第八例啦,本例將介紹如何通過FPGA采集DS18B20傳感器的溫度值。

關鍵字: FPGA DS18B20傳感器

這是FPGA之旅設計的第九例啦!??!本例將介紹如何使用FPGA驅(qū)動OLED屏幕,并在接下來的幾例中,配合其它模塊,進行一些有趣的綜合實驗。由于使用的OLED屏是IIC接口的,對IIC接口不是很清楚的,可以參考第五例的設計...

關鍵字: FPGA OLED屏幕

這是FPGA之旅設計的第十例啦,在上一例中,已經(jīng)成功驅(qū)動了OLED屏幕,本例將結(jié)合上一例,以及第四例多bytes串口通信做一個有趣的例程。

關鍵字: FPGA OLED屏 串口

電子設計自動化

21319 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉