1.一种基于FPGA和W5100的以太网装置,其特征在于,包括FPGA,以及通过FPGA的IO接口与FPGA连接的若干W5100芯片,所述FPGA通过有限状态机控制W5100芯片的接口时序。
2.根据权利要求1所述的装置,其特征在于,W5100芯片的地址总线ADDR14~ADDR0分别与FPGA的IO接口的地址总线ADDR14~ADDR0连接,数据总线DATA7~DATA0分别与FPGA的IO接口的数据总线DATA7~DATA0连接,片选信号线CS与FPGA的IO接口的CS连接,WR、RD、INT信号线分别与FPGA的IO接口的WR、RD、INT信号线连接。
3.根据权利要求1所述的装置,其特征在于,所述FPGA控制W5100芯片的有限状态机包括W5100_IDLE、W5100_INIT、W5100_Sn_INIT、W5100_JUDGE、W5100_DAT_RECV、W5100_DAT_SEND、W5100_CLOSED。
4.一种应用权利要求1-3任一项所述以太网装置的控制方法,其特征在于,步骤为:
(1)W5100_IDLE:对W5100进行复位,复位时间要大于2us;
(2)W5100_INIT:对W5100基础寄存器进行初始化;
(3)W5100_Sn_INIT:对SOCK端口进行设置以及建立TCP连接;
(4)W5100_JUDGE:在这个状态检测是否有终止连接请求,是否有数据接收或者发送,FIFO是否有数据;
(5)W5100_DAT_RECV:用于读取接收的数据;
(6)W5100_DAT_SEND:用于把数据写到发送缓冲区;
(7)W5100_CLOSED:关闭TCP/IP连接。
5.根据权利要求4所述的方法,其特征在于,步骤(2)主要包括:
基础设置,包括模式寄存器,中断屏蔽寄存器,重发时间寄存器,重发次数寄存器;
网络信息设置,包括网管地址寄存器,本机物理地址寄存器,子网掩码寄存器,本机IP地址寄存器;
端口存储信息设置。
6.根据权利要求4所述的方法,其特征在于,步骤(3)主要工作流程为:
(301)端口初始化,设置端口n模式寄存器,本机端口n的端口号,端口n命令寄存器;
(302)侦听,设置命令寄存器为侦听模式;
(303)等待连接成功,当收到远程对端发来的连接请求,W5100将回复ACK数据包,并把状态改变成连接状态,需要读取状态寄存器,以获得连接状态。
7.根据权利要求4所述的方法,其特征在于,步骤(5)主要工作流程为:
(501)获取读地址信息;
(502)根据端口n接收缓冲区RX的基地址和RX屏蔽地址计算物理地址;
(503)根据物理地址读取接收的数据。
8.根据权利要求4所述的方法,其特征在于,步骤(6)主要工作流程为:
(601)读取端口n发送存储器剩余空间寄存器,以便确定发送数据的大小;
(602)读取写指针寄存器,并计算物理地址;
(603)根据物理地址把数据写到发送缓冲区。