基于光口的以太网 udp 回环实验

文章目录

  • 前言
  • 一、系统框架整体设计
  • 二、系统工程及 IP 创建
  • 三、接口讲解
  • 四、顶层模块设计
  • 五、下载验证


前言

本章实验我们通过网络调试助手发送数据给 FPGA,FPGA通过光口接收数据并将数据使用 UDP 协议发送给电脑。


提示:任何文章不要过度深思!万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案」 ;不要急着评判文章列出的观点,只需代入其中,适度审视一番自己即可,能「跳脱出来从外人的角度看看现在的自己处在什么样的阶段」才不为俗人 。怎么想、怎么做,全在乎自己「不断实践中寻找适合自己的大道」

一、系统框架整体设计

本次设计基于以太网 UDP 回环实验,在该系统上进行了一定的添加和修改,本章实验的整体框图。
在这里插入图片描述
本例程在 ACZ7015 开发板上使用光口网口转换模块(1G/2.5G Ethernet PCS/PMA or SGMII IP),再将转换后的数据送到 UDP 回环通信模块中。
在前面小节中我们设计的 UDP 发送模块以及 UDP 接收模块(千兆以太网传输层 UDP 协议原理与 FPGA 实现(UDP回环)),FPGA 程序接收到上位机发来的 UDP 数据包,通过解析目标 MAC_address 来确定是否是发给FPGA 的数据包。如果是的话,FPGA 会把数据包中的数据以及 IP 地址等信息,再通过发送程序将数据包发送回指定上位机。
对上图中各个模块的功能介绍如下:
(1)光口网口转换模块(gig_ethernet_pcs_pma_0):该模块的功能就是将输入的光口数据转换为网口数据,并将数据送入 UDP 回环通信模块中;
(2)UDP 回环通信模块:这个模块例化了 UDP 接收以及 UDP 发送模块,这个模块中完成了回环测试(千兆以太网传输层 UDP 协议原理与 FPGA 实现(UDP回环));

二、系统工程及 IP 创建

创建一个工程名为 sfp_eth_udp_loop 的工程,接下来我们来介绍一下1G/2.5G Ethernet PCS/PMA or SGMII IP,首先在 IP Catalog 里面搜索 1G/2.5G,然后选择红框中的 1G/2.5G Ethernet PCS/PMA or SGMII,再点击该 IP 进入 IP 的配置界面。在这里插入图片描述

由于我们用到的是 PL 端的以太网,而且我们实验中以太网的传输速率为1Gbps,Tri-Mode Ethernet MAC 选项可以提供 1Gbps 的传输速率,所以我们在Select Ethernet 选项中选择的是 Tri-Mode Ethernet MAC 选项。点击图 中Data Rate 选项进入 Data Rate 界面配置。
在这里插入图片描述
本次实验以太网的传输速率为 1Gbps,所以 Select Data Rate 选择 1G 即可。
在这里插入图片描述
图是网口的标准选择界面:
1000BASEX:勾选该选项表示使用千兆以太网 1000BASEX 接口标准 ,简单来说就是使用千兆光口的物理层规范。在该标准下数据编码和解码都是使用 8B/10B 方式,信道上数据的传输速率为1.25Gbps,实际的数据传输速率则为 1.25G*8/10=1000Mbps,本章实验就是采用 1000BASEX 网口标准。
SGMII:勾选该选项表明使用千兆以太网的 SGMII标准,SGMII(Serilal GMII)串行 GMII。SGMII 支持 10/100/1000Mbps ,可以根据实际情况自行协商速率转换。SGMII 接口标准在使用电口(RJ45)时使用。
BOTH:勾选该选项可以在 1000BASEX 标准以及 SGMII 接口标准之间进行动态切换,哪一个稳定就优先使用哪一种接口标准。下面我们点击图中的Core Functionality 选项。
在这里插入图片描述
在 Core Functionality 界面中,Physical Interface 选项是选择物理接口, 物理接口选择的是 Device Specific Transceiver 表明物理接口使用设备特定的收发器(GTP 收发器);
Physical Interface:这个选项是物理接口的选项,这个选项有 3 种物理接口。物理接口的选择和前面的选项以及芯片的型号有关,下面是文档中的原文:

在这里插入图片描述

Receive GMII Clock Source 选项是选择接收 GMII 时钟源,这里可以选择 TXOUTCLK 和
RXOUTCLK,本次实验选择默认选项 TXOUTCLK;在Management Options 选项栏下,我们本次实验勾选 Auto Negotiation 选项表明使用自协商管理功能来配置该 IP。接下来,我们点击图 4- 6 中的 Shared Logic 选项,进入 Shared Logic 配置界面。
在这里插入图片描述

Shared Logic 选项卡主要是选择共享逻辑是否被包含在 IP 内部。如果使用 1 个 IP 就将共享逻辑包含在IP 内部,这种方式会减少所生成的模块数量,简化设计;若使用多个 IP,那么将其中一个 IP 采用共享逻辑包含在 IP 内部的方式,其他 IP 选择将共享资源包含在 example 中。

至此,gig_ethernet_pcs_pma 的 IP 就生成成功了。

三、接口讲解

下面对 IP 的信号接口和结构进行讲解:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/412874.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅谈对Maven的理解

一、什么是Maven Maven——是Java社区事实标准的项目管理工具,能帮你从琐碎的手工劳动中解脱出来,帮你规范整个组织的构建系统。不仅如此,它还有依赖管理、自动生成项目站点等特性,已经有无数的开源项目使用它来构建项目并促进团队…

2024.1.17每日一题

LeetCode 2744.最大字符串配对数目 2744. 最大字符串配对数目 - 力扣(LeetCode) 题目描述 给你一个下标从 0 开始的数组 words ,数组中包含 互不相同 的字符串。 如果字符串 words[i] 与字符串 words[j] 满足以下条件,我们称…

开放原子训练营(第四季)TobudOS——TobudOS内核移植(keil版)

前言 12月份参加了开放原第四季线下活动,觉得很有意义。通过这篇博文,记录一下这次活动进行的移植TobudOS内核的过程,下面就让我们开始吧。 开发板介绍 本次使用的开发板型号为STM32H750,当然了,其他型号的开发版也…

在uni-app中使用sku插件,实现商品详情页规格展示和交互。

商品详情 - SKU 模块 学会使用插件市场,下载并使用 SKU 组件,实现商品详情页规格展示和交互。 存货单位(SKU) SKU 概念 存货单位(Stock Keeping Unit),库存管理的最小可用单元,通…

股票套牢,如何解套?当下行情怎么赚钱?

今年开年大盘继续一路下行,今天更是直接跌破2800点,很多朋友都是套牢的阶段,这种时候我们怎样解套,在这种情况下,作为散户的我们又如何才可以赚到钱呢? 股票被套可以借用哪些工具解套?详细操作…

软件测试面试题整理

软件测试的几个阶段 在进行Beta测试之前和之后,通常会进行以下几种测试: 内部测试(Internal Testing) 在Beta测试之前,开发团队会进行内部测试,对软件进行全面的测试。这个阶段包括单元测试、集成测试和系…

flink 最后一个窗口一直没有新数据,窗口不关闭问题

flink 最后一个窗口一直没有新数据&#xff0c;窗口不关闭问题 自定义实现 WatermarkStrategy接口 自定义实现 WatermarkStrategy接口 窗口类型&#xff1a;滚动窗口 代码&#xff1a; public static class WatermarkDemoFunction implements WatermarkStrategy<JSONObject…

【论文简介】个性化真实人像生成方法(2024.01.15发布,即将开源)

零样本身份保留生成方法&#xff1a;声称效果好于PhotoMaker&#xff08;即将开源&#xff09; 2401.InstantID: Zero-shot Identity-Preserving Generation in Seconds &#xff1a; 项目主页&#xff1a;https://instantid.github.io/ 一、简介 本文的主要内容是介绍了一种…

无心剑七绝《腊八粥香》

七绝腊八粥香 欣逢腊八粥浓香 五谷丰登聚宝庄 祈福心诚情不尽 佳肴共品待春芳 2024年1月18日 平水韵七阳平韵 这首七言绝句《腊八粥香》以腊八节为背景&#xff0c;描绘了人们欢庆腊八、祈福迎新的情景。 首句“欣逢腊八粥浓香”&#xff0c;开门见山地点明了主题——腊八节&a…

连接超时的问题

连接超时的问题 通用第三方工具连接超时 connect timeout 方案一&#xff1a; /etc/ssh/sshd_config node1上操作&#xff0c;图是错的 方案二&#xff1a; windows上Hosts文件域名解析有问题 比如&#xff1a; 192.168.xx.100 node1 192.168.xx.161 node1 两个都解析成node…

Flink-SQL——时态表(Temporal Table)

时态表(Temporal Table) 文章目录 时态表(Temporal Table)数据库时态表的实现逻辑时态表的实现原理时态表的查询实现时态表的意义 Flink中的时态表设计初衷产品价格的例子——时态表汇率的例子——普通表 声明版本表声明版本视图声明普通表 一个完整的例子测试数据代码实现测试…

FFmpeg解决视频播放加载卡顿问题(FFmpeg+M3U8分片)

FFmpeg解决视频播放加载卡顿问题(FFmpegM3U8分片) 在这静谧的时光里&#xff0c;我们能够更清晰地审视自己&#xff0c;思考未来的方向。每一步的坚实&#xff0c;都是对勇气的拥抱&#xff0c;每一个夜晚的努力&#xff0c;都是对未来的信仰。不要害怕独行&#xff0c;因为正是…