以太网接口芯片W 与ENC J 对比

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

以太网接口芯片W5500与ENC28J60对比

目前较为成熟的单片机接入以太网方案:W5100和ENC28J60,都是被常常使用到的芯片,这两种方案也可以说是硬件协议栈和软件协议栈的典型代表,都经得住市场考验。除了在传统单片机的以太网接入中被广泛使用,也能看到他们在开源硬件的以太网扩展以及物联网应用等方面发挥的重要作用。W5500是WIZnet最新的以太网芯片,这里就拿W5500来做比较。表1为W5500与ENC28J60基本参数对比表。

表1 W5500于ENC28J60基本参数对比

1、硬件参数对比

(1)ENC28J60

芯片结构方面,结构比较简单,通过内置MAC+PHY芯片来实现简单的以太网物理层连接,用户需要自己创建或市场上的第三方库方能实现应用层的设计;PHY芯片方面,内置了一块10M BASE-T 芯片,基本可以满足目前通信需要;接口方面,采用最高10MHz的SPI接口;缓存方面,ENC28J60仅提供8KB内部收发缓存,在目前处理大量数据要求的背景下显得捉襟见肘。

(2)W5500

芯片结构方面,内部由TCP/IP协议栈+MAC+PHY构成,拥有非常完善的官方应用库,极大缩短开发周期,可以完美实现以太网接入要求;PHY芯片方面,10M/100M BASE-T自适应芯片让W5500表现更为出色;接口方面,W5500采用新的高效SPI协议支持80MHz速率;缓存方面,W5500内置32KB收发缓存,用户可以同时使用8个硬件Socket独立通信,且各个Socket之间互不影响。

2、TCP/IP协议栈

ENC28J60采用的是传统的软协议操作,需要主控MCU不断的响应中断,这在很大程度上占用了MCU的资源来跑软协议栈。经过测试发现,随着需要响应的事件增多,MCU的处理效率直线下降,会严重影响通信质量。

W5500采用的是最新的TOE(TCP卸载引擎)技术,不同于传统的软协议栈,通过内置TCP/IP硬件协议栈也就是硬件逻辑电路,在W5500芯片内完成TCP/IP握手请求,基本上不占用MCU内部资源,能够极大地提高MCU工作效率。测试结果显示,当同时开启多个Socket进行数据通信,MCU 处理能力基本不受影响,这对通信质量以及MCU的寿命都是关键性因素。

3、实际通信速率对比

下面是我采用野火STM32开发板分别对W5500和ENC28J60在ping命令和数据回环测试方面得出的有效对比结果。

3.1 测试环境

测试平台:野火IO-32min STM32开发板

主芯片:STM32F103VET6

SPI时钟速率:8M

3.2 对比项目一:ping返回速率

连接方式:直连。

图1a ENC28J60 ping返回速率测试

图1b W5500 ping返回速率测试

如图1a和1b显示的测试结果,ENC28J60平均延时为2ms,而W5500平均延时为0ms,基本可以忽略。

3.3 对比项目二:数据回环测试

测试方法:上位机调试软件发数据给下位机(ENC28J60和W5500),下位机收到数据后,将数据回复给上位机,上位机接收到回复的数据就发新的数据。

测试软件:AX1、Wireshark、Windows任务管理器。

图2a ENC28J60数据回环测试(AX1)

图2b ENC28J60数据回环测试(Wireshark)

图2c ENC28J60数据回环测试(Windows任务管理器),显示本地连接为10M

图3a W5500数据回环测试(AX1)

图3b W5500数据回环测试(Wireshark)

图3c W5500数据回环测试(Windows),显示本地连接为100M

如图2a、2b、2c所示,ENC28J60的单向回环速率约为0.18Mbps,最高总速率约为0.36Mbps,本地连接为10Mbps。

如图3a、3b、3c所示,W5500单向回环速率约为1.28Mbps,最高总速率约为3.3Mbps,本地连接为100Mbps。

4、代码量对比

代码量也是工程技术中需要考虑的一个重要因素,代码量的大小对单片机的FLASH大小及工作效率直接提出要求。这里以测试用的STM32f103VET6型号单片机为参考,其FLASH为512KB,代码库采用3.5版本。实测ENC28J60和W5500作为TCP Server同样使用Keil4编译环境下生成的HEX文件进行比对,前者的代码量将近190KB,而后者的代码量不到60KB,这点也体现出硬件协议栈采用硬件逻辑门电路实现TCP/IP协议的优势。

5、功耗对比

表2和表3分别是W5500和ENC28J60两款芯片在25℃下的功耗测试结果。

表2 W5500功耗表

状态工作电流/mA 工作电压/V 功率/mW 100M BASE-T 132 3.3 435.6

10M BASE-T 79 3.3 260.7

掉电模式下13 3.3 42.9

表3 ENC28J60功耗表

状态工作电流/mA 工作电压/V 功率/mW 10M BASE-T 250 3.45 862.5

从功耗表可以看出,在相同室温环境下,10M BASE-T模式下两者的功耗形成了显著的对比,ENC28J60功耗比W5500高出3倍多,即便是W5500工作在100M BASE-T状态下也只有ENC28J60功耗的一半左右。功耗大小同时也反应了芯片工作温度问题,温度过高将会导致芯片工作效率下降,影响芯片稳定性及使用寿命,这点也是我们在选用芯片时实际需要注意的地方。

6、开发周期对比

考虑到现代电子产品的开发周期在不断缩短,以保持产品在市场上的领先优势,下面从开发周期方面对这两款芯片加以对比。

首先,从理论层面上,TCP/IP协议是网络通信的核心内容,向下关联底层物理链路层,向上连接应用层,中间涉及握手协议建立和断开连接以及丢包率、重传机制等一系列复杂的理论基础,传统的软件协议栈需要工程师在单片机内嵌入TCP/IP协议,而且要掌握TCP/IP的实现过程,这样编写底层

相关文档
最新文档