打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
硬件协议栈芯片W3100A
   摘要:W3100是WIZnet公司专门为以太网互联和嵌入式设备推出的硬件TCP/IP协议栈芯片,其硬件TCP/IP协议栈包含了TCP、UDP、IP、ARP和ICMP协议。文中介绍了W3100A的主要特点、引脚功能和基本结构,分析了W3100的软硬件设计应用方法。

    关键词:TCP/IP协议栈;W3100A;Socket API;以太网

1 W3100A简介

近年来,随着技术的飞速进步,电子产品正朝着小型化、智能化和网络化的方向发展。在小型嵌入式设备中实现以太网互联正在成为研究和应用的热点。在这种潮流的推动下,研究人员提出了许多解决方案。传统的做法是在嵌入式设备中植入TCP/IP协议栈,或者移植一个具有TCP/IP协议栈的嵌入式操作系统。虽然上述做法在很多应用中取得了不错的效果,但都是以牺牲大量资源为代价的。而本文介绍的W3100A硬件协议栈则可以在占用极低系统资源的条件下快速完成网络通讯。


    W3100A的主要性能特点如下:

●硬件协议栈包括TCP、 IP Ver.4、 UDP、 ICMP、 ARP;

●支持硬件以太网协议DLC和MAC;

●同时支持四路独立的网络连接;

●支持Ping命令;

●协议处理速度达到全双工4~5Mbps;

●支持Intel/Motorola MCU总线接口;

●支持I2C接口;

●带有标准的MII接口,可连接底层以太网接口芯片;

●可提供Socket API加速应用程序开发;

●支持全双工模式;

●其内建16KB双口RAM可作为数据缓冲区;

●采用0.35μm CMOS制造工艺。


2 W3100A的引脚功能

W3100A采用64脚LQFP封装,其引脚分布如图1所示。各引脚功能描述如下:

TXD[0]~TXD[3]:在TXD_CLK上升沿发送数据。串行模式时,TXD[0]用作串行数据发送引脚,TXD[1]~TXD[3]无效。

TXE:发送使能端。

TXD_CLK:数据发送时钟,时钟由以太网接口芯片提供。

RXD[0]~RXD[3]:在TXD_CLK下降沿接收数据。串行模式时,RXD[0]作为串行数据接收引脚,RXD[1]~RXD[3]无效。

RXDV/CRS:载波监测。高电平有效。

RXD_CLK:数据接收时钟,时钟由以太网接口芯片提供。

COL:冲突探测引脚。在半双工模式发生冲突时有效。

A[14~8]/DA[6~0]:在MCU总线接口模式下作为14~8位地址。在I2C模式下作为I2C接口6~0位设备地址。

A[7~0]:7~0位地址线。

D[7~0]:8位数据线。

INT:接收发送中断请求。低电平有效。

CS:片选信号。低电平有效。

WR:写信号。低电平有效。

RD:读信号。低电平有效。

RESET:复位信号。

CLOCK:工作时钟。通常由以太网接口芯片提供,推荐频率为25MHz。

EXT_CLK:外部时钟输入信号。

    LINK:表示是否已连接到以太网。低电平表示连接有效,高电平表示TCP超时或连接关闭。

SERIAL:10BASE-T SERIAL或NIBBLE选择。

FDPLX:全双工/半双工选择。0为全双工,1为半双工。

MODE[2~0]:用于选择W3100A工作模式。000为时钟模式;001为外部时钟模式;010为无时钟模式;011为I2C模式;1xx为测试模式。3 W3100A的内部结构

系统设计人员利用W3100A可以方便快捷地为产品添加网络功能。W3100A的硬件TCP/IP协议栈包含了TCP、UDP、IP、ARP和ICMP协议。并支持一套与Windows系统相同的socket API。W3100的内部结构框图如图2所示。

W3100A共有32kB的内部存储器空间。其中位于存储器顶部地址为0x0000~0x01FF的1kB空间分配给了控制寄存器组,0x2000~0x3FFF则作为保留空间供给其它设备使用,而0x4000~0x5FFF为发送缓冲区,0x6000~0x7FFF为数据接收缓冲区。由于W3100A可以为用户提供4路独立的连接通路,所以相对应的8kB发送缓冲区和 8kB接收缓冲区可以通过寄存器TMSR和RMSR进行配置。配置方法如图3所示。

4 应用设计

4.1 硬件设计

W3100A有3种不同的工作模式,分别为Direct Bus I/F模式、Indirect Bus I/F模式和I2C Bus I/F模式。用户可根据自己的实际情况进行选择。下面就常用的Direct Bus I/F模式和I2C Bus I/F模式作以简单介绍。

图4是Direct Bus I/F模式的硬件结构框图。

由图可见,该模式下,W3100A共用了15条地址线、8位数据线、片选CS,及读写控制信号WR和RD。不难看出,该模式下硬件电路设计相对简单,但要占用较多的MCU资源。同时还应该注意,在Direct Bus I/F模式下,W3100A的工作时钟也有3种不同的模式,在大多数情况下,系统推荐使用Clocked 模式,因为该模式下系统可以稳定的工作。但是如果系统中MCU的访问速度小于100ns,则应为W3100A单独外接时钟并选择External Clock模式。而当MCU的CS、RD、WD信号时序满足W3100A的要求时,也可以不要时钟。


    图5是I2C Bus I/F模式下,MCU与W3100A的连接示意图。

I2C Bus I/F模式下,可使用SCL和SDA在MCU和W3100A之间串行传输数据,时钟信号线SCL由MCU提供,SDA则用来在MCU和W3100A之间传送地址和数据。只要系统中的MCU支持I2C总线即可使用该模式。可以看出,使用该模式可以大量减少MCU与W3100A的连接线,从而节省MCU的资源。

4.2 软件设计

此外,通过WIZnet公司为W3100A专门提供的Socket API软件,可使网络通讯的软件设计更加方便。利用该软件进行设计时,应首先初始化W3100A的网络设置,即在相应的寄存器中设置默认网关、子网掩码、本机物理地址和IP地址,然后建立Socket连接以实现通讯。整个过程与Windows Socket编程十分类似,此处不再赘述。

5 结论

W3100A具有传输速度快、工作稳定可靠、系统开销小等优点,可以为小型嵌入式设备提供很好的网络解决方案。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
RS-485通讯协议
嵌入式软件面试总结
spi协议
OV9650 的配置 ---附带本人原创调试总结 - ARM开源共享 - 61IC代码工厂 - 开阔思路,放飞想象,步入顶尖电子开发工程师的成长通道!
【STM32】串口通信基本原理(超基础、详细版)
以太网与串行接口转换电路设计
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服