88E1111 RGMII模式驱动及数据传输策略
下载需积分: 5 | DOC格式 | 132KB |
更新于2024-08-05
| 78 浏览量 | 举报
本文主要讨论了针对ALTERA DE2-115开发板上使用的千兆以太网芯片88E1111的RGMII模式驱动问题。88E1111是一款支持多种数据传输速率的以太网控制器,包括10Mb/s、100Mb/s和1000Mb/s。由于DE2-115的硬件限制,仅提供了4位数据端口,因此在1000Mb/s的全双工操作中,只能选择RGMII模式,而不是传统的MII模式。
作者在尝试使用官方提供的RGMII例程时遇到问题,原本预期需要通过Nios II来读取和配置芯片的寄存器以设置RGMII模式。然而,意外地发现当注释掉与配置相关的代码后,芯片仍然能正常运行。经过进一步观察,发现对硬复位引脚Reset_n施加一个10至20毫秒的复位就足以解决问题,这表明可能是在初始化过程中存在某种默认配置或者恢复机制。
关于数据传输,88E1111的Tx端有三个信号:Txd_RGM用于发送数据,Tx_ctrl在时钟上升沿控制发送En信号,在下降沿发送En和Er信号的异或值;Rx端则有Rxd_RGM接收数据,Rx_ctrl在时钟下降沿接收En信号,并且在上升沿接收En和Er信号的异或值。因为不能在一个always模块中同时处理上升沿和下降沿,作者考虑了使用DDIO模块来解决这个问题,但这里给出的示例并未实际采用DDIO,而是展示了如何设计DDR SDRAM接口,这部分设计可以作为参考。
总结来说,这篇文章介绍了在特定硬件环境下驱动88E1111芯片进入RGMII模式的过程,包括对复位和时钟信号的管理,以及数据传输逻辑的设计。对于嵌入式系统开发者特别是使用STM32、ARM单片机进行千兆以太网应用的工程师,理解并掌握这些技术细节至关重要。
相关推荐










fpga和matlab
- 粉丝: 18w+
最新资源
- 初学者入门必备!Visual C++开发的连连看小程序
- C#实现SqlServer分页存储过程示例分析
- 西门子工业网络通信例程解读与实践
- JavaScript实现表格变色与选中效果指南
- MVP与Retrofit2.0相结合的登录示例教程
- MFC实现透明泡泡效果与文件操作教程
- 探索Delphi ERP框架的核心功能与应用案例
- 爱尔兰COVID-19案例数据分析与可视化
- 提升效率的三维石头制作插件
- 人脸C++识别系统实现:源码与测试包
- MishMash Hackathon:Python编程马拉松盛事
- JavaScript Switch语句练习指南:简洁注释详解
- C语言实现的通讯录管理系统设计教程
- ASP.net实现用户登录注册功能模块详解
- 吉时利2000数据读取与分析教程
- 钻石画软件:从设计到生产的高效解决方案