目录

1. 10G以太网结构

1.1 以太网媒体接入控制器(MAC)

1.2 物理接口收发器(PHY)

2.1 IP核使用

2.2 example 代码说明


1. 10G以太网结构

一个完整的10G以太网接口分为10G PHY和10G MAC两部分。如下图所示

1.1 以太网媒体接入控制器(MAC)

主要负责控制与连接物理层的物理介质.在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC层.看图上,输入端是用户接口,输出端是MII等延伸的接口。MII( Media Independant Interface)媒体独立接口,"媒体独立"表明在不对MAC硬件重新设计或替换的情况下,任何类型的PHY设备都可以正常工作。

1.2 物理接口收发器(PHY)

包括MII/GMII(介质独立接口)子层,PCS(物理编码子层),PMA(物理介质附加)子层,PMD(物理介质相关)子层,MDI子层.PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念,对它来说,都是数据而不管什么地址,数据还是CRC.对于100BaseTX因为使用4B/5B编码,每4bit就增加1bit的检错码),然后把并行数据转化为串行流数据,再按照物理层的编码规则把数据编码,再变为模拟信号把数据送出去.收数据时的流程反之.PHY还有个重要的功能就是实现CSMA/CD的部分功能.它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去.如果两个碰巧同时送出了数据,那样必将造成冲突,这时候,冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据.这个随机时间很有讲究的,并不是一个常数,在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突.

2.1 IP核使用

vivado中,添加10G  Ethernet  Mac IP 核

physical interface接口中,如果AXI 数据位宽选择32bit,该处只能选择internal

在internal模式下,共享模式只能选择include shared logic in example design

The physical interface section has a choice of two selections; XGMII, which implements the
32-bit DDR interface to the physical layer, and Internal, which selects the internal
64-bit/32-bit SDR interface to the physical layer. Only the internal interface is supported at
10 Gb/s when using the 32-bit datapath option.

2.2 example 代码说明

想要仔细分析,就自己把仿真波形仿出来,对照代码看一遍。需要注意,TB文件默认的是tb_mode = "DEMO";收发数据就是tb文件中写的,不是代码里的。后来改成tb_mode = "BIST";就能和代码中对应上了。

tx_axis_tkeep :标识tx_axis_tdata的有效字节。

输出数据TXC 来标识当前输出的是帧协议的那部分

0XIF是什么东西?高位55555555 是前导帧,后面070707 是idle状态

10G Ethernet Mac IP核相关推荐

  1. 10G_Ethernet_04 10G Ethernet Subsystem IP 的快速验证(万兆以太网IP的快速验证)

    由于该系列文章阅读有顺序性,所以请跳转至该系列文章第一篇从头开始阅读,并按照文章末尾指示按顺序阅读,否则会云里雾里,传送门在此:  https://blog.csdn.net/qq_33486907/ ...

  2. ZYNQ使用10G Ethernet Subsystem万兆网光通信

    一,10G Ethernet Subsystem IP原理和硬件定义 uiudp_stack是一个"黑盒子"负责处理 ARP 以及 UDP IP 通信协议,上层协议是用户实际收发的 ...

  3. FPGA基于SFP光口实现10G万兆网UDP通信 10G Ethernet Subsystem替代网络PHY芯片 提供工程源码和技术支持

    目录 1.前言 2.我这里已有的UDP方案 3.详细设计方案 4.vivado工程详解 5.上板调试验证并演示 6.福利:工程代码的获取 1.前言 目前网上的fpga实现udp基本生态如下: 1:ve ...

  4. 10G_Ethernet_02 10G Ethernet Subsystem 简介

    由于该系列文章阅读有顺序性,所以请跳转至该系列文章第一篇从头开始阅读,并按照文章末尾指示按顺序阅读,否则会云里雾里,传送门在此:  https://blog.csdn.net/qq_33486907/ ...

  5. linux gmac10下载,ethmac10g verilog代码 10G eth mac verilog代码参考下载 - 下载 - 搜珍网...

    压缩包 : ethmac10g_latest.tar.gz 列表 ethmac10g/ ethmac10g/tags/ ethmac10g/tags/V10/ ethmac10g/tags/V10/M ...

  6. 如何申请Xilinx评估版本ip核license

    问题描述: 在Xilinx中的很多IP和开发工具,都是需要付费才能购买正版的license的.不过XIlinx一般也提供有评估版本的license,可以供大部分客户来免费申请. 下面就简单介绍下评估l ...

  7. 10G Ethernet PCS/PMA IP 核

    目录 1 代码说明 2 时序说明 一个完整的10G以太网接口分为10G PHY和10G MAC两部分.上一节对MAC进行过介绍,这里主要讲PHY.通常都会用PHY芯片,目前vivado也有PHY 对应 ...

  8. ethernet调试工具_开发者分享 | 如何调试10G/25G以太网IP自协商/Link Training

    点击"蓝字"关注我们 *此调试过程亦适用于10G, 25G, 40G, 50G, 100G以太网IP核,每个IP可能会有些细节上的不同,但整个自协商和LinkTraining过程是 ...

  9. 开放性32位RISC处理器IP核的比较与分析(Z)

    引言 随着VLSI设计技术和深亚微米制造技术的飞速发展,SOC(SystemonChip)技术逐渐成为了集成电路设计的主流技术.SOC已经在便携式手持设备.无线网络终端和多媒体娱乐设备等领域得到了广泛 ...

最新文章

  1. 测试工程师的好日子来啦?Testin发布AI测试产品,提升易用性和自动化效率
  2. 转换 Byte 数组到 ... - 回复 高群 的问题
  3. VMware 虚拟化编程(6) — VixDiskLib 虚拟磁盘库详解之二
  4. 数据集shuffle方法中buffer_size的理解
  5. H264编码 封装成MP4格式 视频流 RTP封包
  6. 微软中文网,越办越好了!
  7. mysql修改数据库级别_设置数据库兼容级别的两种方法
  8. ajax请求 304解决方案:
  9. SpringCloud Hoxton版微服务- Gateway网关
  10. mysql主从复制 读写分离
  11. 若依微服务如何设置令牌有效期?
  12. 怎样在全球的Azure上开Case
  13. 设计模式——简单工厂模式
  14. SPSS神经网络心得(一)
  15. 2013年度CSDN十大博客之星
  16. 迅雷链接转为普通链接(js实现)
  17. Impala 在网易有数 BI 应用场景的优化经验
  18. 英伟达GPU中的Tnesor Cores数量多寡与显卡性能有什么关联?
  19. 使用Puppeteer轻松爬取网易云音乐、QQ音乐的精品歌单
  20. iOS开发 - ANPs推送通知

热门文章

  1. 天空卫士监控行为显示叉_天空卫士发布统一内容安全解决方案,助力企业数据安全...
  2. 3.1_2 JavaSE入门 P1 【Java基础】Java语言概述、JDK编译
  3. web站点服务器日志管理及分析
  4. 小女孩和父亲的爆笑对话
  5. 一些兼容性的问题收集
  6. 《植物大战僵尸》开发商PopCap或10亿美元出售
  7. 【bind()函数】JavaScript手写bind()及详解-超详细~~~
  8. iOS 画板的简单实现
  9. 80C51的存储结构,这次一定,一定懂
  10. 怎么写伪原创文章,可以自动生成么?