技术聚焦
您当前的位置是:服务支持 > 技术聚焦

FPGA 快捷拓展以太网

 

        随着嵌入式行业的飞速发展,集成电路越来越向着高集成,低成本方向发展。ARM来势汹汹,几年的时间,凭借着强大的资源,灵活的开发环境以及越来越低的价格逐渐侵蚀着传统8/16/32位单片机市场。与此同时,FPGA的成本也大大降低,从原来的高高在上,遥不可及逐渐步入了大众视野。而且凭借其高集成,高性能,低功耗,以及开放的开发环境稳稳地与ARM分割嵌入式的天下。

        说到FPGA,相信很多朋友并不是很熟悉。对于我们这些习惯使用软件描述语言在单片机上工作的人来说,这种工作在硬件语言描述语言的底层器件,就显得有些困难艰涩。

        FPGA取自Field Programmable Gate Array的首个字母,代表现场(Field)可编程(Programmable)逻辑阵列(Gate Array)。从字面上我们不难看出,FPGA其实就是无数个门电路的集合,但是与我们传统逻辑器件不同的是,FPGA支持用户对门电路的重新编译。

        打一个比方来说:如果说我们用单片机编程,像是用固定模型的积木,去设计产品。那么FPGA就是我们从‘0’开始,先要把我们需要的积木自定义建模生产好,再拿来组建产品。

        这就意味着很多协议及功能,在FPGA里都需要我们工程师自己去独立的实现。对于PC平台用户来说TCP/IP协议,已经不是什么‘菜’了。 对于单片机平台用户来说,‘瘦身’TCP/IP也已经司空见惯了,但是对于FPGA用户来说,重新搭建一个TCP/IP协议无疑还是让人头痛的。

        而WIZnet的硬件TCP/IP协议栈,专为FPGA用户提供了一种高效快捷的以太网拓展方案。FPGA用户直接配置硬件TCP/IP协议栈芯片特殊寄存器,然后使用总线往里面的RAM丢数即可。操作外部RAM这个对于FPGA工程师可是简单,也是拿手的了。

        当然,好马配好鞍,对于FPGA用户,我们推荐使用W5300这款高速以太网芯片,内部配有128K RAM,支持8/16 bit BUS通讯及DMA,实际吞吐量可达80Mbps。

硬件连接

        W5300具有8位数据线和16位数据线两种通讯方式,通常为达到更高的通讯速率,我们选择16位数据线来进行通讯。此时地址A0可不连,使用A1到A9作为地址线。

 

 

软件设计

建立W5300工程,如下:

 

 

        首先进行寄存器读写部分编写,w5300timing文件实现W5300寄存器读写时序控制,根据W5300的读写时序要求及FPGA时钟周期对寄存器读写时数据写入,读出及延时情况进行控制;

        其次对W5300进行初始化,w5300_init文件完成W5300初始化流程,调用此模块会对W5300进行软复位,MAC地址、IP地址、网关、子网掩码、缓存区等进行配置;

        对W5300初始化完成后便可以连接电脑进行PING操作看配置是否正确,后面几个文件可以根据手册及自己需要进行编写了。

Copyright © 2006 - 2021 北京博讯科技有限公司 版权所有 京公网安备 11010802037363号 京ICP备2020040966号
地址:北京市海淀区中关村南大街甲6号铸诚大厦B座三层 电话:010-51663110 传真:010-51581150 E-mail:inquiry@bocon.com.cn