目录

前言

一、IP核配置

1.ETHLITE配置

2.GMIITORGMII配置

二、IP 连接关系

三、设备树描述


前言

本文将介绍如何在Linux下使用EthLite加GmiitoRgmii实现百兆网络通信。此方法只需要一个中断,若工程中断资源相对紧张的情况下,可以用此来扩展网口。

一、IP核配置

1.ETHLITE配置

2.GMIITORGMII配置

此处GMIITORGMII的phy地址配置为15,确保与外接的phy地址不重复即可。

在此说明下:若只扩展一个网口,则选择Include Shared Logic In Core。若要扩展多个网口,则第一个GMIITORGMII选择Include Shared Logic In Core,剩下的几个GMIITORGMII选择Include Shared Logic In Example Design。

二、IP 连接关系

连线按照上述图片连接即可,xdc约束文件按照实际情况自行约束,clkin 需要 200Mhz时钟。Zynq在图中未连接。大家自行连接上即可。

三、设备树描述

设备树如下所示:

AXI_ETHLITE_axi_ethernetlite_0: ethernet@40e00000 {clock-names = "s_axi_aclk";clocks = <&clkc 15>;compatible = "xlnx,axi-ethernetlite-3.0", "xlnx,xps-ethernetlite-1.00.a";device_type = "network";interrupt-names = "ip2intc_irpt";interrupt-parent = <&intc>;interrupts = <0 29 1>;reg = <0x40e00000 0x10000>;xlnx,duplex = <0x1>;xlnx,include-global-buffers = <0x1>;xlnx,include-internal-loopback = <0x0>;xlnx,include-mdio = <0x1>;xlnx,rx-ping-pong = <0x1>;xlnx,s-axi-id-width = <0x1>;xlnx,select-xpm = <0x1>;xlnx,tx-ping-pong = <0x1>;xlnx,use-internal = <0x0>;phy-handle = <&axiphy>;gmii2rgmii-phy-handle = <&gmii_to_rgmii_0>;AXI_ETHLITE_axi_ethernetlite_0_mdio: mdio {#address-cells = <1>;#size-cells = <0>;axiphy: axiphy@11 {compatible = "cdns,macb-mdio";  device_type = "ethernet-phy";reg = <11>;};gmii_to_rgmii_0: gmii_to_rgmii_0@15 { compatible = "xlnx,gmii-to-rgmii-1.0";device_type = "ethernet-phy"; phy-handle = <&axiphy>; reg = <15>; };};};

在生成设备树时,记得检查下设备树中的中断号描述,是否跟自己的工程连线一致。不然可能导致网口无法正常工作。

最后,生成linux系统时,记得加上GMIITORGMII的驱动,以及ETHLITE的驱动即可。本工程经过验证可以实现通信。大家若有问题可按教程多尝试几次。

Linux下基于Zynq用EthLite+GmiitoRgmii实现100M网络通信相关推荐

  1. Linux下基于密钥的安全验证实现方法

    Linux下基于密钥的安全验证实现方法 -------OpenSSH+WinSCP+putty密钥生成器+putty 实验背景: 小诺公司目前已使用Linux搭建了各个服务器(FTP.DNS.Apac ...

  2. linux 下基于jrtplib库的实时传送实现

    linux 下基于jrtplib库的实时传送实现 一.RTP 是进行实时流媒体传输的标准协议和关键技术 实时传输协议(Real-time Transport Protocol,PRT)是在 Inter ...

  3. Linux下基于Libmad库的MP3音乐播放器编写

    linux下基于Libmad库的MP3音乐播放器编写 libmad是一个开源mp3解码库,其对mp3解码算法做了很多优化,性能较好,很多播放器如mplayer.xmms等都是使用这个开源库进行解码的: ...

  4. linux c语言 信号,linux下基于C语言的信号编程实例

    搜索热词 本文实例讲述了linux下基于C语言的信号编程方法.分享给大家供大家参考.具体如下: #include #include #include #include #include void si ...

  5. linux下基于jrtplib库的实时传送实现

    linux 下基于jrtplib库的实时传送实现 一.RTP 是进行实时流媒体传输的标准协议和关键技术  实时传输协议(Real-time Transport Protocol,PRT)是在 Inte ...

  6. linux80端口检查,Linux下基于端口的服务检查脚本

    Linux下基于端口的服务检查脚本 #!/bin/bash #program:Usingtostudythe[if...then...fi]program #dsk2007/10/83:00 #con ...

  7. Linux下基于qt的视频监控系统

    目录 一.原始需求 二.环境安装 2.1 qt安装 2.2 opencv安装 三.系统设计 3.1. 整体流程设计 3.2 .数据传输交互流程 3.3 .数据库设计 四.关键代码 4.1.如何实现通信 ...

  8. Linux下基于GTK人脸识别界面设计

    Linux下基于GTK人脸识别界面设计 1.人脸识别简介   人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术.用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸, ...

  9. Linux下基于ffmpeg音视频解码

    Linux下基于ffmpeg音视频解码 1.ffmpeg简介   FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以 ...

最新文章

  1. markdown编辑器 typora的安装和使用
  2. Docker Swarm删除节点
  3. android camera viewport rect,Unity 实现屏幕抖动效果(通过Camera Viewport Rect)
  4. python写前端代码_哪种ide能同时写java和前端代码?
  5. JQuery函数在IE浏览器中测试的注意事项
  6. 六年级计算机课学什么时候,六年级信息技术《进一步了解计算机》教学设计
  7. 不用第三方插件如何统计自己wordpress的访问量
  8. 03-24 CPU 统计
  9. andrew ng 机器学习笔记_所有笔记目录 | 数据分析 | 机器学习 | 深度学习等
  10. 智能穿戴市场群雄逐鹿,OPPO入局能没有杀手锏?
  11. 查看别人IP经典办法
  12. google浏览器截取长图
  13. Excel2019画正态分布图和正态曲线组合图
  14. 罗斯柴尔德家族与人类的四次战争
  15. 什么是服务器、云服务的优缺点是什么、为什么要使用云服务器?
  16. 403 forbidden
  17. 制作web3d动态产品展示的优点
  18. python实现图像识别水果_使用Python实现基于图像识别的iOS自动化测试
  19. Recon-all命令实例
  20. 机器学习之泰坦尼克号预测生还案例的分析(逻辑回归)

热门文章

  1. TCP还是UDP,网络游戏应该用哪种协议
  2. PAT_A 1124. Raffle for Weibo Followers (20)
  3. 360浏览器 a标签跳转页面失效
  4. 数字后端基本概念介绍Utilization
  5. 查缺补漏系统学习 EF Core 6 - 软删除与编译查询
  6. vue 如何使用定时器?
  7. MCADEx开发 ProE二次开发 Creo二次开发 模型信息
  8. 婴儿0到1岁动作训练
  9. python的十万个为什么
  10. 严选3门大厂内训课程!让你年后面试超过身边95%的竞争者!