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

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

3天內不再提示

基于FPGA的UDP RGMII千兆以太網通信方案

CHANBAEK ? 來源: FPGA Zone ? 作者: FPGA Zone ? 2023-09-04 16:49 ? 次閱讀

本文介紹一個FPGA開源項目:UDP RGMII千兆以太網通信。該項目在我之前的工作中主要是用于FPGA和電腦端之間進行圖像數據傳輸。本文簡要介紹一下該項目的千兆以太網通信方案、以太網IP核的使用以及Vivado工程源代碼結構。

Vivado 的 Tri Mode Ethernet MAC IP核需要付費才能使用,因此本文提供完整工程源碼。

01軟硬件平臺

  • 軟件平臺:Vivado 2017.4;
  • 硬件平臺:XC7K410TFFG900-2;

02RGMII接口

本設計采用 RGMII 接口的 88E1512 芯片。RGMII 接口的主要優勢在于,它可以同時適用于1000M、100M、10M三種速率,并且接口占用引腳數較少。

RGMII 使用 4bit 數據接口采用上下沿 DDR(Double Data Rate)的方式在一個時鐘周期內傳輸 8bit 數據信號,即上升沿發送或者接收數據的低4位[3:0],下降沿發送或者接收數據的高4位[7:4]。同理,使用 1bit 控制接口采用 DDR 的方式在一個時鐘周期內傳輸 2bit 控制信號。

  • 發送端:tx_clk,tx_d[3:0],tx_ctrl;
  • 接收端:rx_clk,rx_d[3:0],rx_ctrl;

圖片

  • 三種速率模式

RGMII 接口適用于1000M、100M、10M三種傳輸速率。

當工作于1000M時,時鐘信號TXC和RXC均為 125MHz,4bit數據信號上下沿值均有效,控制信號上下沿值也均有效。

當工作于100M時,時鐘信號TXC和RXC均為25MHz,4bit數據信號只有上升沿值[3:0]有效,相當于此時數據信號切換為單沿SDR(Single Data Rata)4位輸模式??刂菩盘柸詾樯舷卵赜行?。

當工作于10M時,時鐘信號TXC和RXC均為2.5MHz,數據信號和控制信號的使用和100M速率時完全相同。

03UDP通信方案

該以太網通信方案參考米聯客例程設計,硬件接口采用RGMII,IP核調用Vivado 的 Tri Mode Ethernet MAC。通信方案如下圖所示,最上層為用戶邏輯模塊,用于處理和使用解析后的以太網通信數據;uiudp_stack 模塊采用米聯客例程提供的協議棧網表文件;FPGA 以太網IP核采用Tri Mode Ethernet Mac;PHY芯片采用 88E1512;最后 RJ-45 接口通過網線與上位機連接。

圖片

下圖為以太網數據環路傳輸測試方案,在電腦上通過網絡調試助手向FPGA發送任意小于1472字節長度的UDP數據包。由于Tri Mode Ethernet Mac IP核接口數據流為8bits/125M,而uiudp_stack為64bits/15.625M,因此需要在中間插入FIFO緩存模塊,進行數據位寬轉換以及數據跨時鐘域處理。

圖片

04工程源碼結構

下圖是該項目 Vivado 工程源碼結構:

圖片

其中,

  • udp_transmit:UDP以太網數據收發模塊;
  • loopback_test:UDP以太網數據回環傳輸測試模塊;
  • tri_mode_ethernet_mac_0_axi_lite_sm:用于配置、讀取以太網IP核寄存器等。

05IP核參數配置

使用千兆通訊,因此將速率設為 1Gbps;

圖片

接口參數配置如下:

圖片

另外,有關 UDP 協議棧 uiudp_stack 的詳細信息這里不再介紹,其pdf文檔和源碼一起提供,有需要的小伙伴可以自己去查閱。

06其它注意事項

  • PHY芯片 復位信號 :上電后將復位信號拉高;
  • FPGA RGMII輸出 I/O 口 電平標準 :配置成 SSTL 電平標準。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1608

    文章

    21367

    瀏覽量

    594671
  • 千兆以太網
    +關注

    關注

    0

    文章

    65

    瀏覽量

    13817
  • UDP
    UDP
    +關注

    關注

    0

    文章

    311

    瀏覽量

    33689
  • Vivado
    +關注

    關注

    18

    文章

    791

    瀏覽量

    65388
  • RGMII
    +關注

    關注

    0

    文章

    22

    瀏覽量

    12078
收藏 人收藏

    評論

    相關推薦

    【紫光同創國產FPGA教程】【第二十三章】千兆以太網傳輸實驗

    本實驗將實現FPGA芯片和PC之間進行千兆以太網數據通信, 通信協議采用Ethernet UDP
    的頭像 發表于 04-07 10:38 ?1.4w次閱讀
    【紫光同創國產<b class='flag-5'>FPGA</b>教程】【第二十三章】<b class='flag-5'>千兆</b><b class='flag-5'>以太網</b>傳輸實驗

    如何使用Vitis自帶的LWIP模板進行PS端千兆以太網TCP通信?

    開發板有兩路千兆以太網,通過RGMII接口連接,本實驗演示如何使用Vitis自帶的LWIP模板進行PS端千兆以太網TCP
    的頭像 發表于 04-28 10:44 ?873次閱讀
    如何使用Vitis自帶的LWIP模板進行PS端<b class='flag-5'>千兆</b><b class='flag-5'>以太網</b>TCP<b class='flag-5'>通信</b>?

    以太網通信S7是什么意思?

    以太網通信
    YS YYDS
    發布于 :2023年06月25日 00:07:18

    基于AlteraFPGA千兆以太網實現方案

    `基于AlteraFPGA千兆以太網實現方案`
    發表于 06-10 11:59

    PC與FPGA以太網通信

    我現在在做FPGA和PC之間的以太網通信,PC和FPGA用交叉線直連,板子上的以太網phy芯片是88e1111,以太網
    發表于 07-05 21:37

    DE2-115開發板以太網通信問題

    4位數據端口,千兆以太網的實現要用RMGII模式,但是signaltapii里看到的125M的時鐘GTX_CLK就根本沒有信號,為什么沒有時鐘?RGMII模式該怎么驅動???(3)需要配置寄存器嗎?硬件又該怎么配置寄存器? 有沒有
    發表于 04-12 09:18

    簡談基于FPGA千兆以太網

    ,只是說以太網的速率為千兆,也就是1G。除了千兆網,還有百兆網,萬兆網,當然這些都是指的以太網的速率。不同速率的以太網,在
    發表于 02-03 15:11

    以太網通訊控制儀器,使用UDP協議,儀器無響應

    一、背景 儀器支持TCP/IP協議,欲使用FPGA編寫UDP協議的以太網通訊模塊,對儀器進行控制。因此,在使用FPGA控制儀器之前,首先使用LabVIEW平臺進行
    發表于 03-22 10:07

    簡談基于FPGA千兆以太網設計

    介紹百兆網和千兆網的接口形式。 這是網口與FPGA連接的常用方案,RJ45就是咱們平常說的水晶頭,Ethernet PHY是以太網的PHY芯片,之后就是Ethernet PHY與
    發表于 06-01 18:39

    關于工業以太網通信的解決方案介紹

    瑞薩電子工業以太網通信解決方案
    的頭像 發表于 07-23 00:43 ?3907次閱讀

    FPGA如何為以太網千兆以太網解決低功耗問題

    探索新的中檔 FPGA 如何為以太網千兆以太網 (GbE) 鏈路執行橋接功能,同時解決低功耗問題。
    的頭像 發表于 05-07 16:54 ?3546次閱讀
    <b class='flag-5'>FPGA</b>如何為<b class='flag-5'>以太網</b>和<b class='flag-5'>千兆</b><b class='flag-5'>以太網</b>解決低功耗問題

    Xilinx KU系列三速以太網IP核RGMII時序約束方法

    基于RGMII時序廣泛應用于以太網通信中,基于Xilinx的三速以太網時序分析,不同的Xilinx系列方法不一樣
    的頭像 發表于 07-07 14:15 ?3483次閱讀
    Xilinx KU系列三速<b class='flag-5'>以太網</b>IP核<b class='flag-5'>RGMII</b>時序約束方法

    基于FPGAUDP千兆以太網通信

    本文介紹一個FPGA開源項目:UDP千兆以太網通信。利用SFP接口,可以通過使用SFP轉RJ45模塊或者直接使用光纖進行
    的頭像 發表于 08-31 11:26 ?2719次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>UDP</b><b class='flag-5'>千兆</b><b class='flag-5'>以太網</b>光<b class='flag-5'>通信</b>

    基于FPGAUDP萬兆光通信測試

    本文開源一個FPGA項目:UDP萬兆光通信。該項目實現了萬兆光纖以太網數據回環傳輸功能。Vivado工程代碼結構和之前開源的《UDP
    的頭像 發表于 09-01 16:25 ?958次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>UDP</b>萬兆光<b class='flag-5'>通信</b>測試

    基于FPGAUDP RGMII千兆以太網設計

    本文總結一下前段時間完成的FPGA以太網通信功能。該方案參考了MILIANKE的設計,但在其基礎上簡化了某些不必要的步驟以及解決了一些由于忽視細節導致的棘手的問題。
    的頭像 發表于 09-06 17:04 ?1052次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>UDP</b> <b class='flag-5'>RGMII</b><b class='flag-5'>千兆</b><b class='flag-5'>以太網</b>設計
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>