以太网MAC和PHY的使用

发布时间 2023-07-25 17:49:21作者: ZaiLi

MCU在与以太网设备进行通信的时候,需要用到MACPHY在硬件电路设计上,一般有以下几种组合方式:

1、MCU内置以太网MAC+PHY,运行协议栈,MCU直接联网,该方式应用最简单;
2MCU内置以太网MAC,需外接一个PHY芯片进行以太网通信,该方式应用最普遍;
3、通用MCU资源比较大,无MACPHY类网络资源,需外接一个以太网控制器进行以太网通信,MCU端运行以太网协议栈,该方式资源占用大,适用于大容量通用MCU;
4、通用MCU资源比较小,无MACPHY类网络资源,需外加以太网协议栈芯片(协议栈芯片W5500,CH395),无需MCU端运行以太网协议栈,该方式资源占用小,适用于小容量通用MCU。

 

以下是4种组合的实现方式:

1、MCU(内置以太网MAC+PHY

该类实现方式所用MCU一般为高性能的互联型MCU,该类MCU内置以太网MACPHY,如CH32V307CH32F207等,可运行协议栈,MCU直接联网。该类实现方式接口电路简单,无需外接,可减小电路板的面积,避免一些干扰,具体结构框图如下:

MCU+网口

2、MCU(内置以太网MAC+外接PHY

该类实现方式所用MCU一般为高性能或互联型MCU,该类MCU一般会内置MAC控制

器,如STM32F205/207系列,此时仅需外接以太网PHY(如RTL8201LAN8720CH182)即可实现MCU的以太网通信,具体实现结构框图如下:

MCU+以太网PHY+网口 

3MCU(无内置以太网MAC+PHY+以太网控制器

该类实现方式所用MCU一般为通用型MCU,且MCU资源较大(如FLASHRAM够大),该类MCU无内置MACPHY,如STM32F103大容量系列等,需要外接以太网MAC控制器和PHY进行以太网通信,MCU端需要运行以太网协议栈。此时一般配合外接一个以太网控制器即可实现以太网通信。以太网控制器集MACPHY于一体,如DM9000CH390等。目前该类实现方式是使用最多的一种连接方式,适用性广,仅需通过SPI接口或者并口等就可连接控制以太网控制器进行以太网通信,使用简单且便于产品的升级,具体结构框图如下:

MCU+以太网控制器+网口 

4MCU(无内置以太网MAC+PHY+以太网协议栈芯片

该类实现方式所用MCU一般为通用型MCU,且MCU资源较小(如FLASH、RAM不够用),无法在MCU端运行以太网协议栈,如STM32F103小容量系列等,需要外接以太网协议栈芯片实现以太网通信。以太网协议栈芯片可以理解是集成硬件协议栈的以太网控制器,无需在MCU端运行以太网协议栈,经常用于小资源的MCU。常见的以太网协议栈芯片如W5500、CH395等。目前该类实现方式常用于MCU资源小但又有以太网通信需求的应用场合上,具体结构框图如下:

 

MCU+以太网协议栈芯片+网口