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

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

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

3天內不再提示

Versal GTM如何用Tcl命令在IBERT生成QPRBS13序列

XILINX開發者社區 ? 來源:XILINX開發者社區 ? 2023-08-18 09:53 ? 次閱讀

本文作者:AMD 工程師 Cheng Zhang

一、關于 PRBS13、QPRBS13、PRBS13Q 和 QPRBS13-CEI 的定義。

1. PRBS13 的表達式為 x13 + x12 + x2 + x + 1。

2. 在 AR72117 中對 QPRBS13、PRBS13Q 和 QPRBS13-CEI 有以下定義:

PRBS13Q 按照 IEEE 802.3bs-2017 120.5.11.2.1 被定義為重復兩次以格雷編碼的 PRBS13

QPRBS13-CEI 與 PRBS13Q 相同

QPRBS13 是 PRBS13 和反轉的 PRBS13 組合

目前對于 Vivado 2023.1 版本的 IBERT GUI 界面暫時不支持 QPRBS13 的設置,需要通過 tcl 或者端口設置的方法來實現。

Tips:不建議同時用 IBERT GUI 和 Properties 窗口設置 GTM 的 Attributes,可能會導致寄存器值出錯。

3. PRBS13、QPRBS13、PRBS13Q 解析。

首先,根據 PRBS13 的表達式來構建一個數列表格, PRBS13 每 8191 個 bit 循環一次,此處選取前 64 位數據展示并且與仿真波形作對比:

3b71d85a-3cee-11ee-ac96-dac502259ad0.png

PRBS13 仿真波形 (TXQPRBSEN = 0, TX_GRAY_BYP_EN = 1)

3bc580e0-3cee-11ee-ac96-dac502259ad0.png

注意:按照 AM017 的描述,當 TX_GRAY_BYP_EN 為 1 時,關閉 GARY 編碼器。當 TX_GRAY_BYP_EN 為 0 時,使能 GARY 編碼器。

3be63f9c-3cee-11ee-ac96-dac502259ad0.png

PRBS13Q 仿真波形 (TXQPRBSEN = 0, TX_GRAY_BYP_EN = 0)

3c0b56e2-3cee-11ee-ac96-dac502259ad0.png

QPRBS13 仿真波形 (TXQPRBSEN = 1, TX_GRAY_BYP_EN = 1)

3c4faa86-3cee-11ee-ac96-dac502259ad0.png

當前輸入為反轉后的 PRBS13(連續12位“1”),因此按照 PRBS13 表達式產生的 64 位數據如下表所示:

3c6a728a-3cee-11ee-ac96-dac502259ad0.png

在了解 QPRBS13 的編碼規則后,接下去搭建工程做實際的測試。

二、新建 Versal GTM 工程

對于 Versal GTM,IBERT 工具已經被集成到 GTM 內部。因此需要使用 Versal Transceivers Wizard 新建一個測試工程,本文的測試工程基于 VPK120 評估板設計。

在 Wizard 中主要更改兩個地方的設置:

Transceiver type:設置為 GTM

Preset:選擇 GTM(PAM4) Ethernet 51G

設置完成后打開 IP Example Design:

3ca40464-3cee-11ee-ac96-dac502259ad0.png

三、調整硬件設置

此處需要對 Example design 做四個調整:

1. 把 gpio_enable、gt_reset 和 rate_sel 三個信號連接到 VIO 的輸出。

2. 添加 Clocking wizard 模塊,設置 clk_out1 的頻率為 200MHz,并且提供給 gt_bridge 和 gt_quad 的 apb3_clk 作為時鐘。

3. 設置 TX 和 RX 的 Reference Clock 頻率為 156.25MHz。

4. 把 GT Quad 約束到 Quad 202,Reference clock 約束到管腳 V45。

修改完成后點擊 Generate Device Image 生成 PDI 文件,連接 JTAG 并且把 PDI 下載到 VPK120。

四、構建寄存器讀寫函數

控制 GTM 相關寄存器需要按位操作,因此首先需要設計一個能夠按位讀寫的函數,函數內部執行步驟如下:

1. 獲取對象名稱。

3cd9a07e-3cee-11ee-ac96-dac502259ad0.png

本文中的 IBERT 名稱為 IBERT_0,在后面的操作中都以 IBERT_0 作為操作的對象名稱。因為工程中用了 GT Quad202,所以 tcl 命令對于 Quad202 的 ch0 定義為:IBERT_0.Quad_202.CH_0 ,其他通道可參照這個命名類推。

2. 刷新全部寄存器。

這一步操作很重要,如果沒有刷新全部寄存器的步驟,將無法讀取到最新的寄存器數據,可能會讀出來上一次的數據或者全 0 的數據。

3d04c3a8-3cee-11ee-ac96-dac502259ad0.png

3. 數據格式轉換。

刷新寄存器后會發現在 GT Properties 窗口顯示的數據從 0xXXXXXXXX 變為了 0xXXXX_XXXX,然而在 tcl 的按位與和按位或的運算中無法識別下劃線,下劃線會導致數據運算出錯,這一步需要先從相應的寄存器把數據讀取出來,然后將下劃線移除。

這里的 channel 和 reg 是函數的參數,channel 代表 GT 的通道編號,reg 是需要操作的寄存器。

3d196bbe-3cee-11ee-ac96-dac502259ad0.png

4. 判斷和位運算。

這里的 op 和 value 是函數的參數,op 代表運算操作是按位與還是按位或,value 是具體運算的值。

3d29072c-3cee-11ee-ac96-dac502259ad0.png

5. 將系數設回到相應的寄存器 。

3d461952-3cee-11ee-ac96-dac502259ad0.png

6. 操作函數定義。

操作函數有4個傳遞參數 proc change_gtm_attributes { channel reg value op },具體作用在上文已經說明。例如對于下面這個函數,其對應的操作是向 Quad_202.CH_0 的 CH0_FABRIC_INTF_CFG0 寄存器按位與的方式寫入 0xFFFEFFDF,即將 CH0_FABRIC_INTF_CFG0 寄存器的 Bit5 和 Bit16 置為“0”,其余位保持不變。

3d632b28-3cee-11ee-ac96-dac502259ad0.png

五、配置 GTM 的相關寄存器產生 QPRBS13 序列

1. 打開 Attributes 控制使能,關閉端口控制。

3d7edf94-3cee-11ee-ac96-dac502259ad0.png

2. 設置 TX PRBS 的 Pattern。

3da21dce-3cee-11ee-ac96-dac502259ad0.png

3. 設置 RX PRBS 的 Pattern。

3db7974e-3cee-11ee-ac96-dac502259ad0.png

4. 打開 TXQPRBS 使能。

3dcc2934-3cee-11ee-ac96-dac502259ad0.png

5. 打開 RXQPRBS 使能。

3dd83364-3cee-11ee-ac96-dac502259ad0.png

6. 關閉 TX Gray Encoder 使能。

3df414f8-3cee-11ee-ac96-dac502259ad0.png

7. 關閉 TX Gray Decoder 使能。

3e0b2102-3cee-11ee-ac96-dac502259ad0.png

8. 設置 LOOPBACK 為 Near end PCS。

3e1d03b8-3cee-11ee-ac96-dac502259ad0.png

六、實際運行結果

1. 將 PDI 文件下載到器件中,并且運行 tcl 命令,先不使能 QPRBS,設置為常規 PRBS13 輸出。

3e4aea26-3cee-11ee-ac96-dac502259ad0.png

可以看到 NEAR-END PCS 回環已經建立,并且 RXPRBSLOCKED 也已經拉高。

3e6afc4e-3cee-11ee-ac96-dac502259ad0.png

2. 運行 TCL 命令,打開 TXQPRBS 使能,對于 RX 繼續輸出常規 PRBS,此時 Link status 顯示為 No Link 和實際速率之間翻轉,且 RXPRBSLOCKED 輸出狀態也呈現為周期性翻轉。

3e831a9a-3cee-11ee-ac96-dac502259ad0.png

3e9da19e-3cee-11ee-ac96-dac502259ad0.png

3. 再次運行 TCL 命令,打開 RXQPRBS 使能,此時的 Link status 再次恢復顯示為實際速率,RXPRBSLOCKED 輸出也再次呈現為高電平。

3eac5fcc-3cee-11ee-ac96-dac502259ad0.png

3ec91824-3cee-11ee-ac96-dac502259ad0.png

4. Versal GTM 除了不支持 QPRBS-7,其他的 Pattern 都是支持的。

3edaa97c-3cee-11ee-ac96-dac502259ad0.png

5. 這個方法也可以用于產生其他 QPRBS Pattern。

審核編輯:湯梓紅

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

    關注

    25

    文章

    5475

    瀏覽量

    134282
  • 仿真
    +關注

    關注

    50

    文章

    4099

    瀏覽量

    133720
  • 命令
    +關注

    關注

    5

    文章

    688

    瀏覽量

    22055
  • GUI
    GUI
    +關注

    關注

    3

    文章

    662

    瀏覽量

    39759
  • Versal
    +關注

    關注

    1

    文章

    159

    瀏覽量

    7676

原文標題:開發者分享|Versal GTM 如何用 Tcl 命令在 IBERT 生成 QPRBS13 序列

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何使用GTM_TIM (TIM_EXT_CAPTURE) 作為觸發源SOMP模式下觸發GTM_ATOM頻道?

    500us),計時器達到所需值(500us)后,會生成一個觸發器,用于重置連接的 GTM_ATOM 通道的 CN0 值。 CAN 有人給我一些幫助嗎?
    發表于 01-29 08:13

    怎么ibert中使用外部時鐘

    我一直試圖ibert中使用外部時鐘。但我不能。任何人都可以幫助我?我使用核心生成器從ISE Designs Tools生成核心,并且放置了作為我的外部時鐘源的引腳號。但是當我
    發表于 03-12 13:48

    如何使用IBERT生成眼圖

    GTX端口是TX,另一個是RX)。以下是頂層模塊中IBERTblock的實例化。 ibert_7series_gtx_0 ibert_0 //頂層生成
    發表于 05-22 10:18

    IBERT設計如何配置?

    你好, 我遇到了生成IBERT設計的問題。第一個配置工作正常,但如果我示例項目中修改IBERT核心,那些更改將不會生效。對于Virtex設計,我修改了
    發表于 08-05 13:36

    如何使用ISE 14.7并且使用斯巴達6生成IBERT核心?

    我正在使用IBERT進行掃描測試,發現IBERT控制臺上用于掃描測試日志,掃描測試圖和掃描測試信息的單選按鈕丟失了。我正在使用ISE 14.7并且使用斯巴達6生成IBERT核心。有沒
    發表于 08-10 10:27

    IBERT GUI中,如果我將DWELL BER設置為1e-5是什么意思?

    嗨,我已經ISE 14.7中的芯片內窺鏡IBERT核心上生成了以太網10G BASE-R核心,我能夠成功運行眼睛掃描測試。IBERT G
    發表于 08-17 09:13

    Vivado圖形化界面IDE中運行和調試Tcl命令

    管腳到內部的線長也需要考慮。fpga工程師可以vivado的Tcl Console中執行tcl命令,生成對應器件的trace length
    發表于 06-17 14:52

    華為gtm900無線模塊(AT命令手冊)

    本手冊包含7 章,內容如下。􀁺 AT 命令概述:從整體上對GTM900 提供的AT 命令進行了介紹,包括AT 命令類型、AT 命令
    發表于 08-14 22:21 ?192次下載

    詳解如何用AD生成Gerber文件

    詳解如何用AD生成Gerber文件
    發表于 11-23 11:07 ?0次下載

    WCDMA中如何用FPGA生成下行擾碼

    由兩個M序列相加而成,且容易產生、自相關性優良的優點。本文介紹下行擾碼的生成過程和如何用FPGA的實現。采用Verlog硬件描述語言進行功能描述,寫信號的作用下,予付擾碼初值,
    的頭像 發表于 07-02 08:06 ?1964次閱讀
    <b class='flag-5'>在</b>WCDMA中如<b class='flag-5'>何用</b>FPGA<b class='flag-5'>生成</b>下行擾碼

    何用proc sql生成宏變量?

    上節我們講了PROC SQL的基本結構,以及一些sql命令的使用,這節我們主要講一下case...when...、order by 、group by 、update、delete語句以及如何用proc sql生成宏變量。
    的頭像 發表于 05-19 16:13 ?2424次閱讀
    如<b class='flag-5'>何用</b>proc sql<b class='flag-5'>生成</b>宏變量?

    Versal GTY/GTYP:使用PRBS生成器和檢查器

    本文涵蓋了 Versal GTY 和 GTYP 中使用模式生成器和檢查器時對以下操作的限制
    的頭像 發表于 07-10 17:18 ?1131次閱讀

    Vivado設計套件Tcl命令參考指南

    電子發燒友網站提供《Vivado設計套件Tcl命令參考指南.pdf》資料免費下載
    發表于 09-14 10:23 ?1次下載
    Vivado設計套件<b class='flag-5'>Tcl</b><b class='flag-5'>命令</b>參考指南

    AMD Versal自適應SoC GTM何用XSIM仿真和觀察PAM4信號

    可以傳輸兩個 Bit 的信息,相比傳統的 NRZ 模式,信號傳輸速率相當于原來的兩倍,當前主流的 400G 光模塊廣泛采用 PAM4 技術。AMD Versal 自適應 SoC 的 GTM 支持 PAM4 電平,本文將介紹如何使用 GT
    的頭像 發表于 11-22 13:49 ?256次閱讀
    AMD <b class='flag-5'>Versal</b>自適應SoC <b class='flag-5'>GTM</b>如<b class='flag-5'>何用</b>XSIM仿真和觀察PAM4信號

    高速串行總線系列-IBERT使用介紹

    對IP核進行配置即可,下面大概描述下這個過程: IBERT IP核生成及使用簡介 Vivado中IP catalog中搜索IBERT,如下: 開始定制IP核。
    的頭像 發表于 12-20 09:38 ?275次閱讀
    高速串行總線系列-<b class='flag-5'>IBERT</b>使用介紹
    主站蜘蛛池模板: 免费看黄色小说| 苍井空小公主qvod| 免费一级片网站| 福利免费观看体检区| 中国女人内谢69xxxxxx直播| 特黄特黄aaaa级毛片免费看| 快插我我好湿啊公交车上做| 国产午夜人做人免费视频中文| 99久久精品免费国产一区二区三区| 性虎成人网| 日韩 国产 中文 无码| 乱奷XXXXXHD| 久久精品日本免费线| 国产日韩精品一区二区三区在线| caoporn免费视频在线| 欲乱艳荡少寡妇全文免费| 午夜国产高清精品一区免费| 人妻无码AV中文系统久久免费| 乱VODAFONEWIFI熟妇| 精品欧美小视频在线观看| 国产精自产拍久久久久久蜜| 粉嫩国产14xxxxx0000| a视频在线观看| 717影院理论午夜伦不卡久久| 亚洲免费三区| 亚洲高清无在码在线无弹窗| 四虎视频最新视频在线观看| 日韩亚洲国产欧美免费观看| 欧美丰满熟妇无码XOXOXO| 猛烈抽插H1V1| 蜜饯1V1高H-| 毛片免费观看的视频| 久久视频在线视频观品15| 九九精彩视频在线观看视频| 国产在线观看网址你懂得| 国产嫩草影院精品免费网址| 国产叼嘿久久精品久久| 姑娘视频日本在线播放 | 美女一级毛片免费不卡视频| 久久精品国产福利电影网| 久久精品国产男包|