一、当MCU自身没有以太网接口,同时又需要联网时,需要使用MAC和PHY,不外乎以下几种方式:1.MCU内置以太网MAC和PHY:MCU自带MAC和PHY,能够直接运行协议栈实现联网,这种方案硬件设计最为简单,重点在协议栈软件实现上。
2.MCU内置以太网MAC,外接PHY芯片:MCU内置MAC,但需要外接PHY芯片来实现以太网通信,这是目前最常见的方式,使用非常灵活。
3.资源较大的MCU,外接以太网控制器:当MCU无内置 MAC和PHY时,可通过外接以太网控制器来实现通信,MCU上运行协议栈,难度在协议栈这块,且此方式资源占用较大。
4.资源较小的普通MCU,外接硬件协议栈以太网芯片:对于资源有限的MCU,可以外接带有硬件协议栈的芯片,无需在MCU上运行协议栈从而节省资源,这种来说也非常简单。
二、W5500无疑是业内的“老面孔”:十多年老产品了,性能可靠,但一直原地踏步,没有升级。W5500相关原理图截图如下:值得注意的是EXRES1处的电阻一定要按照手册来配,不能随意更改,特别是精度。想要高清PDF文件(包含参考原理图和PCB布局走线建议以及芯片手册)的小伙伴,可以戳下面的链接获取:链接:https://pan.quark.cn/s/53a80ca4d3c2
三、技术迭代与市场需求从未停步,用户对网络性能、功耗、设计便捷性以及成本的要求不断提高,再加上工控设备元器件供应的多样化和国产化趋势盛行,推荐市场同款以太网协议栈芯片CH394Q:不仅涵盖了W5500的诸多优点,还在某些方面进行了优化和创新。从核心功能定位上看,CH394Q与W5500高度相似:都是面向无内置以太网接口MCU的、集成了10/100Mbps MAC+PHY和硬件TCP/IP协议栈的SPI接口芯片,个别技术特性存在差异:1.外围电路简化:CH394与W5500两者PCB引脚兼容,但部分外围元器件有区别。W5500的PHY接口采用电流驱动,应用时需在网络变压器的中心抽头连接电源,同时需外接50Ω匹配电阻。CH394采用电压驱动,PHY接口设计更为简洁,内置了所有电阻,网络变压器抽头不接电源,只需接电容,实测悬空也能用:明显减少了外围元件数量和PCB布局的复杂度。2.Auto-MDIX:CH394支持端口自动翻转(Auto MDI/MDIX),连接设备时,无需区分使用交叉线还是直连线,芯片能自动检测并调整线序,极大提高了连接的便利性和容错率。3.接口电压灵活性:CH394的SPI接口电压范围更宽(1.2-3.3V),可与低功耗MCU直连,无需额外的电平转换芯片。4.IPv6模式协议:CH394Q支持IPv4模式和IPv6模式,W5500仅支持IPv4模式。5.功耗表现:百兆通讯下CH394的功耗电流只有W5500的六成,发热量更小,对功耗敏感或散热受限的应用(如电池供电设备、小型密闭空间设备)是一个重要考量。6.内置MAC地址:CH394芯片出厂时已预烧录了全球唯一的MAC地址,省去了开发者额外存储、配置或购买带MAC型号的步骤,简化了生产流程。7.网络传输速度:CH394与W5500手册标称最高SPI主频分别是62MHz和80MHz,CH394实测网络传输速接近54Mbps(下附实测截图)。W5500官网标注信息为最高至50Mbps(网上流传为25Mbps)。CH394Q原理图如下:
对比下W5500的原理图:省去了50R的匹配电阻和晶振的负载电容。
用高速USB的MCU CH32V305+CH394Q做测试板:
结合例程来测一下速度,以下均为MCU主频120MHz,在60MHz SPI测试结果:
1. TCP单socket 8k收发
2. TCP单socket 8k单发
3.TCP单socket 8k单收
4.UDP单socket 8k单发
实测分析:虽然W5500标称SPI频率更高(80MHz),但其实际网络传输效率可能受内部架构(如协议栈处理、缓冲区管理、SPI等待周期)限制等待较多浪费了80MHz的SPI带宽。相比之下,CH394Q等待较少,数据包一个接着一个,在标称的62MHz SPI下,实测速率接近理论上限,这八成是得益于其常说的“自研PHY+自研MAC+自研协议栈,打通了上下垂直层次,内部衔接紧密,并行程度高”。