飞泉

【红色飓风Nano二代测评】 网络模块设计

0
阅读(1511)

  网络模块包括:MII管理模块,数据发送模块,数据接收模块,控制模块。

 MII 管理模块:

1.时钟产生模块:产生MII 接口的时钟信号,这个时钟信号需要满足外部PHY 芯片对时钟
的要求。
2. 输出控制模块:因为MII 连接到外部PHY 的数据线实际只有一根线,输出控制模块需要
将输出、输入和使能信号联合形成一个信号。
3. 移位寄存器模块:将需要传输到外部PHY 芯片的数据串行化,同时将从外部PHY 芯片接
收的串行数据并行保存到寄存器中。
4. 控制逻辑:实现读、写和查找等请求信号的同步,提供输入数据的锁存信号,提供移位
输出数据的字节选择信号,提供MII 的计数器,提供更新相关寄存器的信号。

数据发送模块:

• 数据发送状态机:完成数据发送的整体控制。
• 计数器模块:包括数据发送中所有需要的计数器。
• CRC 校验模块:产生32 位的CRC 校验序列,添加在发送数据的后面。
• 错误处理模块:当发送数据冲突后,在重新发送数据前产生一个随机的延迟,从而减少
发送数据冲突的次数。
数据接收模块:

数据发送的整个过程由一个状态机控制完成。数据发送过程主要包括以下状态。
• StateIdle:系统复位后的状态。
• StatePreamble:添加报头。
• StateData0:通知主机接口提供下一个要传输的数据。
• StateData1:发送数据。
• StateFCS:根据要发送的数据产生校验序列。
• StateDefer:延迟。
• StateIPG:帧间隔。
• StatePAD:当发送数据比数据帧最小值(46 字节)小时,补充“0”直到满足帧数据格
式的要求。

控制模块:

1.数据传输控制

2.数据接收控制