在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

Xilinx平臺Aurora IP介紹(四)Example Design介紹

C29F_xilinx_inc ? 來源:賽靈思 ? 作者:賽靈思 ? 2022-02-19 19:13 ? 次閱讀

多看一些example design之后,你就會發現都是熟悉的配方。

一、Example Design
首先打開example design,看看示例工程架構:

Xilinx平臺Aurora IP介紹(四)Example Design介紹

多看一些xilinx的example design之后,你就會發現都是熟悉的配方:

support是核心模塊,包含了IP的例化、時鐘及復位邏輯;重點理解。

frame_gen 是數據產生模塊;

frame_check是數據接收檢查模塊;

support.v

support是核心模塊,包含了IP的例化、時鐘及復位邏輯;時鐘和復位在前面文章已經介紹過了,就不再啰嗦;先看下support對外的端口信號

module aurora_8b10b_0_support
(
// AXI TX Interface
input [15:0] s_axi_tx_tdata,
input [1:0] s_axi_tx_tkeep,
input s_axi_tx_tvalid,
input s_axi_tx_tlast,
output s_axi_tx_tready,
// AXI RX Interface
output [15:0] m_axi_rx_tdata,
output [1:0] m_axi_rx_tkeep,
output m_axi_rx_tvalid,
output m_axi_rx_tlast,
// GT Serial I/O
input rxp,
input rxn,
output txp,
output txn,
// GT Reference Clock Interface
input gt_refclk1_p,
input gt_refclk1_n,
// Error Detection Interface
output frame_err,
output hard_err,
output soft_err,
// Status
output lane_up,
output channel_up,
// System Interface
output user_clk_out,
input gt_reset,
input reset,
input power_down,
input [2:0] loopback,
output tx_lock,
input init_clk_p,
input init_clk_n,
output init_clk_out,
output tx_resetdone_out,
output rx_resetdone_out,
output link_reset_out,
output sys_reset_out,
//DRP Ports
input drpclk_in,
input [8:0] drpaddr_in,
input drpen_in,
input [15:0] drpdi_in,
output drprdy_out,
output [15:0] drpdo_out,
input drpwe_in,
output pll_not_locked_out
);

首先是framing接口的發送及接收的端口信號,與上一篇我們介紹的一致;我們使用Aurora IP,無非就是將需要發送的數據放到s_axi_tx_tdata數據總線上,從m_axi_rx_tdata數據總線上接收數據。有了這點認知后,理解就簡單多了。接著是GT串行I/O,對應物理管腳。接著就是狀態信號channel_up,channel_up信號拉高,表明鏈路建立成功可以進行正常數據收發。然后是一些時鐘和復位信號,最后是DRP動態重配置的相關信號。

繼續看support對Aurora 8b/10b的例化:

aurora_8b10b_0 aurora_8b10b_0_i
(
// AXI TX Interface
.s_axi_tx_tdata (s_axi_tx_tdata),
.s_axi_tx_tkeep (s_axi_tx_tkeep),
.s_axi_tx_tvalid (s_axi_tx_tvalid),
.s_axi_tx_tlast (s_axi_tx_tlast),
.s_axi_tx_tready (s_axi_tx_tready),
// AXI RX Interface
.m_axi_rx_tdata (m_axi_rx_tdata),
.m_axi_rx_tkeep (m_axi_rx_tkeep),
.m_axi_rx_tvalid (m_axi_rx_tvalid),
.m_axi_rx_tlast (m_axi_rx_tlast),
// GT Serial I/O
.rxp (rxp),
.rxn (rxn),
.txp (txp),
.txn (txn),
// GT Reference Clock Interface
.gt_refclk1 (gt_refclk1),
// Error Detection Interface
.frame_err (frame_err),
// Error Detection Interface
.hard_err (hard_err),
.soft_err (soft_err),
// Status
.channel_up (channel_up),
.lane_up (lane_up),
// System Interface
.user_clk (user_clk_i),
.sync_clk (sync_clk_i),
.reset (system_reset_i),
.power_down (power_down),
.loopback (loopback),
.gt_reset (gt_reset_i),
.tx_lock (tx_lock_i),
.init_clk_in (init_clk_i),
.pll_not_locked (pll_not_locked_i),
.tx_resetdone_out (tx_resetdone_i),
.rx_resetdone_out (rx_resetdone_i),
.link_reset_out (link_reset_i),
.drpclk_in (drpclk_i),
.drpaddr_in (drpaddr_in),
.drpen_in (drpen_in),
.drpdi_in (drpdi_in),
.drprdy_out (drprdy_out),
.drpdo_out (drpdo_out),
.drpwe_in (drpwe_in),
//_________________COMMON PORTS _______________________________
// ------------------------- Common Block - QPLL Ports ------------------
.gt0_qplllock_in (gt0_qplllock_i),
.gt0_qpllrefclklost_in (gt0_qpllrefclklost_i),
.gt0_qpllreset_out (gt0_qpllreset_i),
.gt_qpllclk_quad1_in (gt_qpllclk_quad1_i ),
.gt_qpllrefclk_quad1_in (gt_qpllrefclk_quad1_i ),
.sys_reset_out (sys_reset_out),
.tx_out_clk (tx_out_clk_i)
);

啊這,突然覺得官方例程的注釋已經很清楚了,再羅里吧嗦的介紹有點煩。

真不是筆者偷懶~ = =||

個人建議,把時鐘復位理清楚,再按照framing接口時序,來設計數據的收發。基本上就能使用Aurora搬磚了。

二、仿真
直接看仿真,清晰明了。

Xilinx平臺Aurora IP介紹(四)Example Design介紹

可以看到,還是熟悉的配方,仿真頂層還是例化了兩個example實體,然后在TB頂層對其進行環回連接:
assign rxn_1_i = txn_2_i;

assign rxp_1_i = txp_2_i;

assign rxn_2_i = txn_1_i;

assign rxp_2_i = txp_1_i;

也就是說,Aurora-2的發送管腳接到了Aurora-1的接收管腳,那么Aurora-2發送的數據必然與Aurora-1接收到的數據是相等的;我們打開仿真,驗證一下。

首先把相關信號拖到仿真,并設置group,便于歸類查看:

Xilinx平臺Aurora IP介紹(四)Example Design介紹

根據推論,先看Aurora-2發送的第一個數據:

Xilinx平臺Aurora IP介紹(四)Example Design介紹

如圖所示:

tx_data = 16’he6d5; 只有一個數據,占了一個時鐘周期(user_clk時鐘域),所以tlast與tvalid都只是同時拉高了一個時鐘周期。同時,tkeep = 2’h3;表明這個數據所有字節都是有效的。另外注意,數據是在valid和ready握手(同時有效)時發送的。

再看Aurora-1接收的第一個數據:

Xilinx平臺Aurora IP介紹(四)Example Design介紹

如圖所示:

當rx_tvalid有效時,rx_data = 16’he6d5;同時,tlast信號為1,表明這一次數據傳輸的接收完畢。rx_tkeep = 2’h3,表明數據全部字節有效。

通過對比可知,接收數據等于發送數據。驗證成功。

接下來可以繼續驗證Aurora-2發送的第二個數據與Aurora-1接收的第一個數據;也可以驗證Aurora-1發送的數據與Aurora-2接收的數據。這里就不再啰嗦了。

下一篇,我們基于Aurora IP完成自己的數據收發。
審核編輯:湯梓紅

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

    關注

    0

    文章

    25

    瀏覽量

    5400
收藏 人收藏

    評論

    相關推薦

    SRIO介紹xilinx的vivado 2017.4中生成srio例程代碼解釋

    介紹 本處將從SRIO的數據流,數據協議,常用FPGA支持模式,以及IP例程中的時鐘大小計算等部分介紹SRIO的情況。 3.1 SRIO的數據流 SRIO通過生成IP后,通常情況下主要
    的頭像 發表于 12-10 16:24 ?383次閱讀
    SRIO<b class='flag-5'>介紹</b>及<b class='flag-5'>xilinx</b>的vivado 2017.4中生成srio例程代碼解釋

    【米爾-Xilinx XC7A100T FPGA開發板試用】+04.SFP之Aurora測試(zmj)

    ,點擊“Open IP Example Design...”可以生成Example工程。 工程如下圖所示,gt_aurora_GT_FRAM
    發表于 11-14 21:29

    如何申請xilinx IP核的license

    在使用FPGA的時候,有些IP核是需要申請后才能使用的,本文介紹如何申請xilinx IP核的license。
    的頭像 發表于 10-25 16:48 ?366次閱讀
    如何申請<b class='flag-5'>xilinx</b> <b class='flag-5'>IP</b>核的license

    門窗傳感器評估平臺介紹和性能概述

    電子發燒友網站提供《門窗傳感器評估平臺介紹和性能概述.pdf》資料免費下載
    發表于 09-10 10:49 ?0次下載
    門窗傳感器評估<b class='flag-5'>平臺</b><b class='flag-5'>介紹</b>和性能概述

    如何在ModelSim中添加Xilinx仿真庫

    。 9、再次打開ModelSim,即可以看到Xilinx的庫已經默認出現在了庫列表里。以后仿真XilinxIP核時,就不用每次都添加庫了。
    發表于 07-03 18:16

    介紹如何使用海外住宅IP培養海外社交媒體賬號#海外住宅IP

    IP
    jf_62215197
    發布于 :2024年06月25日 07:12:30

    介紹MCUboot支持的種升級模式(2)

    介紹MCUboot支持的種升級模式,分別是Overwrite、Swap、Direct XIP和加載到RAM中執行。由于FSP不支持第種——加載到RAM中執行,因為我們重點介紹前三種
    的頭像 發表于 06-13 10:56 ?942次閱讀
    <b class='flag-5'>介紹</b>MCUboot支持的<b class='flag-5'>四</b>種升級模式(2)

    介紹如何切換動靜態IP方法 # 全球ip代理#靜態IP

    IP
    jf_62215197
    發布于 :2024年06月06日 08:45:01

    Xilinx SelectIO資源內部的IDELAYE2應用介紹

    本文我們介紹Xilinx SelectIO資源內部IDELAYE2資源應用。IDELAYE2原句配合IDELAYCTRL原句主要用于在信號通過引腳進入芯片內部之前,進行延時調節,一般高速端口信號由于走線延時等原因,需要通過IDELAYE2原語對數據做微調,實現時鐘與數據
    的頭像 發表于 04-26 11:33 ?2023次閱讀
    <b class='flag-5'>Xilinx</b> SelectIO資源內部的IDELAYE2應用<b class='flag-5'>介紹</b>

    Xilinx 7系列FPGA功能特性介紹

    Xilinx7系列FPGA由個FPGA系列組成,可滿足一系列系統需求,從低成本、小尺寸、成本敏感的大容量應用到最苛刻的高性能應用的超高端連接帶寬、邏輯容量和信號處理能力。
    發表于 04-22 10:49 ?5449次閱讀
    <b class='flag-5'>Xilinx</b> 7系列FPGA功能特性<b class='flag-5'>介紹</b>

    SC171開發套件V1 硬件平臺介紹及使用

    課程類別 課程名稱 視頻課程時長 視頻課程鏈接 課件鏈接 硬件 硬件平臺介紹 6分29秒 https://t.elecfans.com/v/25510.html *附件:硬件平臺介紹V
    發表于 04-01 10:35

    Xilinx FPGA NVMe主機控制器IP,高性能版本介紹應用

    NVMe Host Controller IP1介紹NVMe Host Controller IP可以連接高速存儲PCIe SSD,無需CPU和外部存儲器,自動加速處理所有的NVMe協議命令,具備
    發表于 03-09 13:56

    國產計算機平臺介紹)——飛騰

    前面介紹了龍芯、申威、海光三個平臺,本期為您介紹國產飛騰平臺。 飛騰CPU最早由國防科技大學研究團隊創造,現屬于飛騰信息技術有限公司。目前該公司是由中國電子信息產業集團、天津市濱海新區
    的頭像 發表于 03-05 11:44 ?1092次閱讀
    國產計算機<b class='flag-5'>平臺</b><b class='flag-5'>介紹</b>(<b class='flag-5'>四</b>)——飛騰

    一控的儲氣罐超溫保護裝置介紹

    電子發燒友網站提供《一控的儲氣罐超溫保護裝置介紹.docx》資料免費下載
    發表于 01-17 16:27 ?0次下載
    主站蜘蛛池模板: 韩国激情啪啪| 日本特级黄色录像| 久久婷婷国产精品香蕉| 噜噜色综合| 久久久噜噜噜久久久午夜| 玖玖精品国产| 草草影院www色极品欧美| 九色综合网| 91精品福利视频| h视频在线播放| 午夜性| www.亚洲免费| 香港三级理论在线观看网站| 亚洲va久久久噜噜噜久久| 网友偷自拍原创区| 清纯唯美亚洲综合欧美色| 毛片的网站| 高清欧美日本视频免费观看| 亚色在线观看| 国内黄色录像| 一区二区三区亚洲| 一级特黄色毛片免费看| 三级国产| 寄宿日记在线看| 夜夜爽66| 国产一级大片免费看| 2022年永久免费观看| 曰本又色又爽又黄三级视频| avbobo在线| 在线人成精品免费视频| 色老头·com| 国产午夜人做人视频羞羞| 夜夜爱视频| www.夜夜操.com| 男人午夜| 生活片黄色| 国产一区二区三区在线观看视频 | 中文字幕视频一区| 有一婷婷色| 欧美人与动性xxxxbbbb| freesexvideo性欧美2|