其他分享
首页 > 其他分享> > LWIP应用开发|以太网硬件设计二

LWIP应用开发|以太网硬件设计二

作者:互联网

以太网硬件介绍

1. STM32以太网外设简介

1.1 ETH逻辑框图

以太网外设包括带专用 DMA 控制器的 MAC 802.3(介质访问控制)。它支持介质独立接口(MII) 和简化介质独立接口 (RMII),并通过一个选择位在两个接口间进行切换(请参见SYSCFG_PMC 寄存器)

DMA 控制器通过 AHB 主从接口与内核和存储器相连。 AHB 主接口用于控制数据传输,而AHB 从接口则用于访问“控制和状态寄存器” (CSR) 的空间

在进行数据发送时,首先将数据由系统存储器以 DMA 的方式送至发送 FIFO (Tx FIFO) 进行缓冲,再通过 MAC 内核发送。同样,接收 FIFO (Rx FIFO) 则存储通过线路接收的以太网帧,直到这些帧通过 DMA 传送到系统存储器

以太网外设还包括用于与外部 PHY 通信的 SMI。通过一组配置寄存器,用户可以为 MAC 控制器和 DMA 控制器选择所需模式和功能
在这里插入图片描述
以太网外设由 4 个主要功能模块组成:

  • 控制和状态寄存器模块 (CSR),用于控制通过 AHB 32 位从接口进行的寄存器访问
  • 直接存储器访问接口 (DMA),此为逻辑 DMA 模块,具有 1 条用于接收的物理通道和 1 条用于发送的物理通道。该模块用于控制通过 AMBA AHB 32 位主接口在 MAC 和系统存储器之间进行的数据传输。
  • 介质访问控制模块 (MAC),负责实现以太网协议
  • MAC 事务层 (MTL),负责控制应用和 MAC 之间的数据流

此外,还增添了协议适配模块以支持 RMII PHY 介质独立接口
在这里插入图片描述

1.2 MAC 802.3

适用于局域网(LAN)的IEEE 802.3国际标准将CSMA/CD(带有冲突检测的载波侦听多路访问)用作访问方法。以太网外设包括一个带MII接口的MAC 802.3(介质访问控制)控制器和一个专用DMA控制器

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.3 FIFO

FIFO向MAC内核弹出数据有两种模式:

在这里插入图片描述

1.4 DMA

以太网外设中,DMA基于描述符的链表传输数据。应用程序在系统存储器(SRAM)中创建描述符。支持正常描述符和上下文描述符两种

以太网模块中的接收/发送FIFO和内存之间的以太网数据包传输时以太网DMA使用DMA描述符完成的。一共有两个描述符列表:一个用于接收、一个用于发送,两个列表的基地址分别写入DMACRDLAR寄存器和DMACTDLAR寄存器中

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2. LAN8720以太网芯片简介

LAN8720是低功耗的10/100M以太网PHY层芯片,I/O引脚电压符合IEEE802.3-2005标准。LAN8720支持通过RMII接口与以太网MAC层通信,内置10-BASE-T/100BASE-TX全双工传输模块,支持10Mbps和100Mbps。LAN8720可以通过自协商的方式与目的主机最佳的连接方式(速度和双工模式)。支持HP Auto-MDIX自动翻转功能,无需更换网线即可将连接更改为直连或交叉连接。

LAN8720功能框图如下图示
在这里插入图片描述
在这里插入图片描述
LAN8720的配置及使用详见LAN8720数据手册,下面简单介绍几种常用功能设置

3. RJ45网线插头简介

在这里插入图片描述
在这里插入图片描述

标签:DMA,LWIP,描述符,FIFO,硬件,MAC,LAN8720,以太网
来源: https://blog.csdn.net/Chuangke_Andy/article/details/112307368