色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳解Xilinx GTX/GTH及2D eye scan的基本原理

電子設計 ? 來源:懶癌晚期患者 ? 作者:懶癌晚期患者 ? 2020-12-15 15:54 ? 次閱讀

本文介紹Xilinx GT的一些概念,對GT沒有概念但是有時間的童鞋推薦先看一下此文(Xilinx 7系列FPGA 高速收發(fā)器GTX/GTH的一些基本概念),補充一些基礎概念。

隨著高速數(shù)據(jù)傳輸?shù)钠占埃琒erdes已經(jīng)成為FPGA上重要的I/O接口。而線速率也不斷的提高。更高的線速率也就帶來了更大的通道衰減影響。通常,Serdes接收端需要打開內(nèi)部的均衡來對高速串行信號進行處理,保證內(nèi)部的有效信號能夠等到放大而噪聲可以被抑制,并最終恢復出正確的數(shù)據(jù)。

通常,高速信號到達接收端的Pin位置,稱為遠端;進入Pin后,被接收端的均衡處理之后的信號,稱為近端。在一些均衡能力比較優(yōu)秀的Serdes上(例如Xilinx的GTX/GTH),遠端處的眼圖(可以通過高速示波器進行測量)無法睜開,但是近端處的眼圖可以完全睜開。這就是均衡器無法忽視的重要作用。

這也帶來一個問題,就是如何測量眼圖。針對遠端眼圖,可以通過高速示波器來進行測量。但是這個測量在很多情況下并不容易,比如沒有足夠高速的示波器,或者由于FPGA多為BGA封裝導致Serdes的RX Pin沒有合適的測試點來進行測試。而近端眼圖,由于近端的定義就是在Serdes的PMA內(nèi)部,所以沒有使用高速示波器直接測量眼圖的可能。那么如何評價近端眼圖,就成了一個問題。

Xilinx 7系列(及以后)的GTX/GTH中提供了2D眼圖測量的功能,通常稱呼為2D eye scan,可以用來測量近端眼圖。Xilinx提供的GT測試工具ibert中,就是利用這個功能進行眼圖的測量。

圖片來自UG908

關于GT的基本結構和eye scan的具體原理,由于文檔已經(jīng)做了充分的描述,這里就不重復贅述了。下文將會用簡單通俗的語言來描述2D eye scan的基本原理,出發(fā)點是易于理解。所以在準確性和嚴謹程度上肯定有所欠缺,這里先說一聲抱歉。

從字面分析,2D eye scan的意思就是二維眼圖掃描。二維的意思自然是橫縱兩個坐標。所以眼圖掃描的基本原理就是將二維眼圖的最大范圍坐標化,將眼圖整體變?yōu)橐粋€二維矩陣區(qū)域。

眼圖掃描的過程就是依次遍歷眼圖的二位矩陣區(qū)域,并和眼圖掃描的正中間區(qū)域做對比,記錄錯誤值,然后依據(jù)錯誤值,用不同的顏色來繪制當前二位矩陣中某個點,最終組成一個眼圖。

用更通俗的話來解釋,就是眼圖被劃分為一個分辨率是N*M的圖片。測量眼圖的時候會依次遍歷N*M個點,并和中心點的數(shù)據(jù)做對比。多次對比后記錄值不一樣的次數(shù),即誤碼率。當遍歷完N*M個點之后,依據(jù)每個點記錄的誤碼率來用不同的顏色繪制一副圖,即為眼圖。

圖片來自UG476

從上圖的左邊可以看到,每一個點相對中心點都有一個水平偏移量和垂直偏移量,這就等價于每個點的坐標值(至于0,0點在左下角還是在中心點都只是簡單的坐標變換而已)。

從圖中的右邊可以看到,最終眼圖的顏色是依據(jù)誤碼率繪制的,結合前文來自UG908的截圖,可以清楚的看到當誤碼率越低,顏色越偏向藍色(深藍色);當誤碼率越高,顏色越偏向紅色。理論上,越接近中心的點,誤碼率越低,所以越偏藍色,而越接近外圍的點,誤碼率越高,所以越偏紅色。所以實際獲取的眼圖樣子,是中心藍色,四周紅色的眼圖。

所以從原理上說,2D眼圖的測量步驟其實是遍歷整個N*M的點陣,計算每一個點與中心點數(shù)據(jù)值的誤碼率。當?shù)玫近c陣誤碼率的數(shù)據(jù)之后,后面僅僅是繪圖以便美觀顯示的事情。

具體的測量細節(jié)可以參考UG476的第四章。這里直接給出結論,內(nèi)置的2D eye scan是逐個點進行測量的,所以每次測量只需一組坐標值。從微觀看來,逐點測量由于是串行的,所以是比較慢的。但是從宏觀來看,整體測量速度是比較快速的。

另外一個優(yōu)點就是,眼圖的測量不需要特殊的配置和數(shù)據(jù),也不會對數(shù)據(jù)鏈路帶來任何負面影響。由于是和中心點數(shù)據(jù)的對比,所以無論GT跑的是什么數(shù)據(jù)流,都可以進行測量,也沒有影響。這就擴展了這一功能的使用范圍。例如ibert的誤碼率只能統(tǒng)計PRBS,無法用于實際數(shù)據(jù)的統(tǒng)計/測試。而這一功能可以實時測試,不影響GT正常業(yè)務的運行。將這一功能集成到最終版本中,可以作為實時監(jiān)控高速鏈路質(zhì)量的一個參考標準。

如果GT無法正確回復出數(shù)據(jù),則中心點的數(shù)據(jù)不會穩(wěn)定。這樣統(tǒng)計出來的結果也不會穩(wěn)定的顯示為一個眼睛的圖案,而是一個奇怪的圖案。如果GT能正確恢復出數(shù)據(jù),那么中心點一定是穩(wěn)定的數(shù)據(jù),所以無論眼圖是否睜開,張開多大,大體的形狀還是一個眼睛的圖案。進而,眼圖張開的大小就代表信號質(zhì)量的好壞。所以2D eye scan的結果對鏈路信號質(zhì)量的判斷,是非常有幫助的。

由于是逐點測試,所以這個過程相對來說更適合基于CPU/MCU的軟件來實現(xiàn)。Xilinx提供了兩個XAPP來實現(xiàn)該功能,其核心的控制都是交給MCU軟核MicroBlaze來實現(xiàn)的。
https://www.xilinx.com/support/documentation/application_notes/xapp743-e...
https://www.xilinx.com/support/documentation/application_notes/xapp1198-...

下面介紹一下具體的操作步驟。

首先,eye scan的具體操作是需要使用DRP的端口,這一端口也是容易和CPU接口適配的。

使用DRP端口的優(yōu)點是,主要步驟不占用FPGA可編程邏輯資源。代價是這個結構更適合MCU接口的實現(xiàn),如果使用普通邏輯資源實現(xiàn),會需要設計接口。

1.部分默認端口可以直接連接到地,例如:
EYESCANMODE
EYESCANTRIGGER

EYESCANRESET端口如果不需要使用,也是可以連接到地。

2.下面幾個信號設置為1
ES_SCAN_EN
PMA_RSV2[5]
ES_ERRDET_EN
ES_QUAL_MASK=(80’b1)

3.根據(jù)位寬(RX_INT_DATAWIDTH)設置ES_SDATA_MASK
40-bit 位寬: ES_SDATA_MASK = (40'b1, 40'b0)
32-bit位寬: ES_SDATA_MASK = (40'b1, 32'b0, 8'b1)
20-bit位寬: ES_SDATA_MASK = (40'b1, 20'b0, 20'b1)
16-bit位寬: ES_SDATA_MASK = (40'b1, 16'b0, 24'b1)

4.根據(jù)誤碼率設置ES_PRESCALE,關于這個參數(shù)的值,可以暫時跳過,等看完下文,理解原理之后再選擇合適的值寫入。

上述設置只需要設置一次即可。其中要注意,ES_QUAL_MASK和ES_SDATA_MASK都是80bit數(shù)據(jù),需要分多次才能寫入。7系列的GTX/GTH,DRP數(shù)據(jù)位寬為16bit,所以需要5次才能完成80bit的寫入。

開始遍歷每一個點(即每一對橫縱坐標)。橫軸由ES_HORZ_OFFSET控制,縱軸由ES_VERT_OFFSET控制。

1.對每個點,將縱坐標寫入ES_VERT_OFFSET

這里需要注意,ES_VERT_OFFSET和ES_PRESCALE的地址是一樣的,高5bit是給ES_PRESCALE使用,低9位給ES_VERT_OFFSET使用。對于ES_VERT_OFFSET,0-7bit作為地址使用。第8位作為一個控制位,先填入0。DFE條件下后續(xù)還需要用到。

2.將橫坐標寫入ES_HORZ_OFFSET

3.將ES_CONTROL的低兩位設置為2'b01

這里需要先讀取出來,然后將低位設置位01,高位不變,再寫入ES_CONTROL寄存器中。

4.循環(huán)查詢es_control_status寄存器的值,如果發(fā)現(xiàn)最低位是1,表明采樣/記錯計數(shù)器溢出了,該點統(tǒng)計完畢(關于兩個計數(shù)器的含義,下文在做討論)。此時可以將ES_CONTROL的最低兩位設置為2'd00,以便于下一個點的測量。

5.讀取ES_ERROR_COUNT和ES_SAMPLE_COUNT寄存器的值,分別為記錯寄存器和采樣寄存器。

6.計算一下誤碼率

誤碼率的計算公式為,誤碼數(shù)目 / 采樣數(shù)目。

誤碼數(shù)目即為ES_ERROR_COUNT的值,如果該值為0,則誤碼率直接為0。

采樣數(shù)目的計算則相對負責。具體公式為:

SAMPLE/_COUNT=ES/_SAMPLE/_COUNT/times2^{(ES/_PRESCALE+1)}/times RX/_INT/_DATAWIDTH

可以看到,具體的采樣數(shù)和ES_SAMPLE_COUNT的值是有一個非線性的計算關系。

通過上述公式可以計算出采樣數(shù)的值,然后參與運算即可獲取誤碼率這一數(shù)據(jù)。

7.當使用DFE的時候,需要將ES_VERT_OFFSET的第八位設置為1(前文描述設置為0),然后重新測試一邊,計算出另一個誤碼率,和設置為0的誤碼率取一次平均才為最終的誤碼率。

這樣就完成一個點的測試了。

所以測試的大體流程就是先設置好一些固定的參數(shù),然后設置橫縱坐標,開始測試。等測試結束后獲取采樣數(shù)和錯誤數(shù)兩個值,計算誤碼率即可。DFE模式下需要將縱坐標的一位取反后重新測算一下,然后兩個誤碼率取平均。

這里就能看出來測試的具體細節(jié)。內(nèi)部測試提供了兩個計數(shù)器,一個用于統(tǒng)計采樣次數(shù),另一個用于統(tǒng)計錯誤次數(shù)。測試過程其實就是進行多次的數(shù)據(jù)對比。對比一次,采樣次數(shù)加1,如果數(shù)據(jù)不對,則錯誤次數(shù)也加1。等到兩個計數(shù)器有一個溢出的時候就可以結束統(tǒng)計了。這樣會有兩種情況。
1.錯誤計數(shù)器溢出,采樣計數(shù)器沒有溢出,此時錯誤值比較大,可以保證精度。
2.采樣計數(shù)器溢出,錯誤計數(shù)器沒有溢出,此時采樣值比較大,誤碼率往往比較低。
由于兩個技術器溢出值相差非常大,所以不可能同時溢出。如果都沒有溢出,那么測試就不會停止。
用這種方法,可以獲取一個比較好的測試精度結果,也便于測試流程的控制。
另外,理解了這一流程,并觀察采樣值的計算公式,就能反推出ES_PRESCALE比較合適的值。
通過逐點的測量,就可以獲取完整的眼圖數(shù)據(jù),然后進行繪圖即可。

2D eye scan的原理就分析完了。

下面分析一下實際操作中的一些問題。

1.ES_PRESCALE:如果確定這個值

這個參數(shù)實際控制的是采樣數(shù)的計算結果。通常情況下,通過公式反推,選區(qū)一個固定值就好。但是實際情況下,如果使用動態(tài)的控制,可以提高精度。關于這部分的討論就非常深入了。有興趣的童鞋可以再熟悉2D eye scan之后進行研究。

2.采樣點的數(shù)量:一定要逐點嗎

從手冊中可以查詢到ES_HORZ_OFFSET和ES_VERT_OFFSET的范圍。實際操作中,其實并不需要逐點測試。從圖片的角度觸發(fā),逐點(或者點間隔較小)的好處就是圖片的分辨率較高。同時弊端就是花費的時間較長。通常使用中并不需要非常高的眼圖分辨率,尤其是并不需要將眼圖美觀的繪制出來的條件下,適當加大間隔可以快速獲取眼圖的基本信息。依據(jù)基本信息再考慮是否提高精度,改變參數(shù)等操作,更為合適。ibert中也提供了調(diào)整采樣點間隔的選項。

3.關于ibert眼圖顯示的美觀性和眼圖的顯示

根據(jù)上述分析,眼圖最終結果其實是一個顆粒感比較強的圖片。ibert中較為平滑/美觀的眼圖其實是美化過的結果。右鍵點擊眼圖彈出的菜單中可以選擇沒有沒畫過的點陣圖。

ibert繪制的平滑眼圖

ibert的原始點陣眼圖,每個點為細長的橫條形狀

以上兩張圖為同一次測量后調(diào)整ibert顯示參數(shù)獲取的不同效果,可以看到ibert默認顯示是經(jīng)過了美化的。而原始圖就是一個顆粒感很強的點陣圖。

下圖為自行設計/實現(xiàn)2D eye scan后自行繪制的眼圖。

自行實現(xiàn)2D eye scan測量后繪制的眼圖

原始數(shù)據(jù)已經(jīng)有了的情況下,眼圖的繪制其實只是一個繪圖的軟件設計。考慮到大部分FPGA開發(fā)者可能并不擅長于圖形界面的開發(fā),所以推薦了解一下tk繪圖。不過更好的方案是讓專業(yè)的人做專業(yè)的事情。通過基本的數(shù)據(jù),即使沒有繪圖,也能做很多事情了。

4.DRP如何控制

官方推薦的方案是利用MCU來進行控制,比如MicroBlaze的軟核。

另外可以通過JTAG,由PC發(fā)起控制。原廠方案為AXI JTAG。

本人是通過TCL和JTAG來控制VIO接口,進而控制DRP端口的。關于這個方案,除了控制DRP端口,還可以控制BRAM。具體可以參考專欄文章:Vivado功能完善:如何用Tcl/VIO更新BRAM中的數(shù)據(jù)

5.寄存器的地址

上文的描述中最大的問題就是沒有介紹寄存器和相關的地址。關于各個寄存器的名稱再文章已經(jīng)給出了。具體的地址可以參考UG476的附錄D(通常都是最后一個附錄)。
ES_QUAL_MASK 0x031~0x035
ES_SDATA_MASK 0x036~0x03A
PMA_RSV2 0x082
ES_ERRDET_EN 0x03D
ES_EYE_SCAN_EN 0x03D
ES_CONTROL 0x03D
ES_PRESCALE 0x03B
ES_VERT_OFFSET 0x03B
ES_HORZ_OFFSET 0x03C
es_control_status 0x151
ES_ERROR_COUNT 0x14F
ES_SAMPLE_COUNT 0X150

這里給出7系列GT的部分寄存器地址。

整套方案可以移植到UltraScale/UltraScale+的GT上,需要注意的是,寄存器地址需要重新核對一下。可以確定很多寄存器的地址/定義都不一樣。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 收發(fā)器
    +關注

    關注

    10

    文章

    3424

    瀏覽量

    105967
  • 示波器
    +關注

    關注

    113

    文章

    6240

    瀏覽量

    184820
  • 寄存器
    +關注

    關注

    31

    文章

    5336

    瀏覽量

    120261
  • Xilinx
    +關注

    關注

    71

    文章

    2167

    瀏覽量

    121331
收藏 人收藏

    評論

    相關推薦

    RNN的基本原理與實現(xiàn)

    RNN,即循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network),是種特殊類型的人工神經(jīng)網(wǎng)絡,專門設計用于處理序列數(shù)據(jù),如文本、語音、視頻等。以下是對RNN基本原理與實現(xiàn)的介紹:
    的頭像 發(fā)表于 11-15 09:49 ?415次閱讀

    高斯濾波的基本原理有哪些

    高斯濾波的基本原理可以從以下幾個方面進行闡述: 、定義與性質(zhì) 定義 :高斯濾波(Gaussian Filter)是種常見的圖像處理技術,實質(zhì)上是種信號的濾波器,用于平滑和降噪圖像
    的頭像 發(fā)表于 09-29 09:27 ?501次閱讀

    Allegro推出2D霍爾效應速度和方向鎖存器

    對于天窗頂電機位置,升降門電機,車窗升降電機和電子駐車制動(EPB)系統(tǒng)等應用,透過使用單個2D磁性速度和方向傳感器,可以簡化系統(tǒng)設計和生產(chǎn),減少BOM,并提高系統(tǒng)安全性。APS12625和APS12626系列2D霍爾效應2D
    的頭像 發(fā)表于 09-27 09:58 ?441次閱讀

    3DP工藝基本原理

     3DP工藝,全稱Three-Dimensional Printing(三維打印),是種3D打印技術,其基本原理可以詳細闡述如下:
    的頭像 發(fā)表于 09-16 15:32 ?753次閱讀

    TMAG511x 2D鎖扣的優(yōu)點

    電子發(fā)燒友網(wǎng)站提供《TMAG511x 2D鎖扣的優(yōu)點.pdf》資料免費下載
    發(fā)表于 09-13 09:53 ?0次下載
    TMAG511x <b class='flag-5'>2D</b>鎖扣的優(yōu)點

    限流保護電路的基本原理

    限流保護電路的基本原理個復雜但至關重要的概念,它涉及到電子電路中電流控制的多個方面。這種電路的主要目的是在電流超過預設的安全閾值時,通過系列機制來限制或切斷電流,從而保護電路中的元件和設備免受損壞。以下是對限流保護電路
    的頭像 發(fā)表于 08-19 17:55 ?1920次閱讀

    神經(jīng)網(wǎng)絡的基本原理

    神經(jīng)網(wǎng)絡,作為人工智能領域的個重要分支,其基本原理和運作機制直是人們研究的熱點。神經(jīng)網(wǎng)絡的基本原理基于對人類大腦神經(jīng)元結構和功能的模擬,通過大量的神經(jīng)元相互連接、協(xié)同工作,實現(xiàn)對信
    的頭像 發(fā)表于 07-01 11:47 ?1125次閱讀

    AC/DC電源模塊的基本原理與應用

    BOSHIDA AC/DC電源模塊的基本原理與應用 AC/DC電源模塊是種將交流電轉(zhuǎn)換為直流電的電子設備,它廣泛應用于電子設備、電信設備、工控設備以及家電等領域。本文將介紹AC/DC電源模塊
    的頭像 發(fā)表于 05-21 11:15 ?843次閱讀
    AC/DC電源模塊的<b class='flag-5'>基本原理</b>與應用

    通過2D/3D異質(zhì)結構精確控制鐵電材料弛豫時間

    受經(jīng)典德拜弛豫啟發(fā)的米勒模型提供了通過操縱弛豫時間來控制自發(fā)極化的理論框架。作者通過使用層轉(zhuǎn)移技術形成的2D/C-3D/2D異質(zhì)結構克服了傳統(tǒng)異質(zhì)結存在的鐵電性惡化和能量損失的問題。
    的頭像 發(fā)表于 04-29 10:27 ?652次閱讀
    通過<b class='flag-5'>2D</b>/3<b class='flag-5'>D</b>異質(zhì)結構精確控制鐵電材料弛豫時間

    基于MAXWELL 2D 的永磁電機研究

    電子發(fā)燒友網(wǎng)站提供《基于MAXWELL 2D 的永磁電機研究.pdf》資料免費下載
    發(fā)表于 04-23 14:18 ?7次下載

    激光二極管基本原理介紹

    激光二極管基本原理介紹
    發(fā)表于 03-19 10:57

    有了2D NAND,為什么要升級到3D呢?

    2D NAND和3D NAND都是非易失性存儲技術(NVM Non-VolatileMemory),屬于Memory(存儲器)的種。
    的頭像 發(fā)表于 03-17 15:31 ?1015次閱讀
    有了<b class='flag-5'>2D</b> NAND,為什么要升級到3<b class='flag-5'>D</b>呢?

    浪涌抑制器的基本原理和種類?

    浪涌抑制器的基本原理和種類?|深圳比創(chuàng)達電子
    的頭像 發(fā)表于 01-18 09:59 ?870次閱讀
    浪涌抑制器的<b class='flag-5'>基本原理</b>和種類?

    介紹種使用2D材料進行3D集成的新方法

    美國賓夕法尼亞州立大學的研究人員展示了種使用2D材料進行3D集成的新穎方法。
    的頭像 發(fā)表于 01-13 11:37 ?1063次閱讀

    了解3D視覺和2D視覺的區(qū)別

    了解3D視覺和2D視覺的區(qū)別 3D視覺和2D視覺是兩種不同的視覺模式,其區(qū)別主要體現(xiàn)在立體感
    的頭像 發(fā)表于 12-25 11:15 ?3021次閱讀
    主站蜘蛛池模板: 男人j进女人j一进一出| 接吻吃胸摸下面啪啪教程| 国产AV在线传媒麻豆| 怪物高h粗暴无尽| 国产精品久久高潮呻吟无码| 国产午夜在线观看视频播放| 狠狠干狠狠色| 麻豆精品一区二正一三区 | www.亚洲天堂| 国产成人精品免费视频下载| 好大快用力深一点h视频| 久久伦理影院| 亲胸吻胸添奶头GIF动态图免费| 骚妇BB双飞插| 一本久道久久综合狠狠躁AV | 51无码人妻精品1国产| 99久久精品6在线播放| 动漫美女被到爽了流| 果冻传媒在线观看视频| 伦理电影v男人天堂| 日韩欧美一区二区三区免费观看| 亚洲 小说 欧美 激情 另类| 伊人国产精品| 芭乐草莓樱桃丝瓜18岁大全| 国产无遮挡无码视频在线观看不卡| 精品视频网站| 青娱乐视觉盛宴国产视频 | 亚洲黄色三级视频| 18女下面流水不遮网站免费| 成人国产精品免费网站| 极品美女穴| 日本工口生肉全彩大全| 亚洲AV精品一区二区三区不卡| 777米奇影院第七色色| 国产精品99久久久久久动态图| 久久久黄色片| 偷拍久久国产视频免费| 最新亚洲一区二区三区四区| 国产精品成人观看视频免费| 美女搜查官被高难度黑人在线播放| 我与恶魔的h生活ova|