[发明专利]一种用FPGA实现的以太网驱动器有效
申请号: | 201210595910.X | 申请日: | 2012-12-28 |
公开(公告)号: | CN103916336A | 公开(公告)日: | 2014-07-09 |
发明(设计)人: | 龚永鑫;周卓;包玉华 | 申请(专利权)人: | 北京中电华大电子设计有限责任公司 |
主分类号: | H04L25/02 | 分类号: | H04L25/02 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100102 北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 实现 以太网 驱动器 | ||
技术领域
本发明涉及FPGA设计领域,尤其涉及一种用FPGA实现以太网驱动器的方法。
背景技术
近年来,随着SOC/FPGA设计的规模越来越大,开发的周期就显得越来重要。在一个载波体制的高速视频显示无线传输系统(以下简称UWB无线传输系统)中,最终是要实现PC跟PC通过无线的UWB系统时进行数据的传输,可以高速实时传输数据,比如视频流。
实现最终UWB无线传输系统,采取的方案为通过以太网驱动器将PC下发的数据帧通过以太网驱动器进行数据接收和转发。
现在以太网驱动器通常是用通用的嵌入式的CPU上进行开发而实现,但对于开发整个UWB无线传输系统就需要冗余的连接设计。
发明内容
本发明可以通过直接的RTL编码在FPGA上实现,逻辑规模小,不需要借助嵌入式的CPU,可以直接作为以太网驱动器模块给其它系统使用,连接简单,剪裁方便,与UWB无线通信模块连接方便,与可以与类似的其它通信模块连接。
本发明提供一种FPGA实现以太网驱动器的方法,主要目的是通过此FPGA实现的以太网驱动器与其它RTL设计的模块相连接,FPGA实现的以太网驱动器可以直接作为参数化的标准模块给其它系统使用,剪裁方便。
图2是FPGA实现以太网驱动器的内部状态转移图。如附图2所示,采用状态机设计的方法,当芯片上电复位后,直接从IDLE状态进入到INITIAL状态进行初始化操作,通过localbus对芯片相关寄存器进行配置。当完成初始化操作后进入TRANS状态,TRANS状态主要完成接收、发送、异常、中断的调度,下一状态是进行发送、接收、异常还是中断,主控整个状态机的跳转。如当TRANS判断完成下一步进行发数据,那么跳转到TX状态,当一帧发送完毕跳回到TRANS状态。如当TRANS判断完成下一步进行收数据,那么跳转到RX状态,当一帧接收完毕跳回到TRANS状态。如当来中断时,跳入ISR_STATUS状态,在此状态进行读中断状态寄存器的值,清中断,最后返回,用寄存器锁存记录中断状态的值。如当出现异常时进入RECONFIG状态,处理与异常有关的相关寄存器的重新配置,执行完成后跳转到TRANS状态。
目前,异常处理一共可以处理4类异常,可以对应到芯片以太网MAC控制器的使用:
异常1:出现PHY中断;
异常2:RXOVERFLOW;
异常3:接收读接收帧长度;
异常4:发送无BUFFER可用。
在TRANS状态中可以设置调度的优先级,可以设置为接收优先抑或发送优先,也可以设置为轮询的优先级模式,轮询模式即上一帧为接收优先,那么下一帧为发送优先,上一帧为发送优先,那么下一帧为接收优先。
FPGA实现的以太网驱动器可以作为参数化的标准模块,借此实现UWB无线转输系统。附图3是利用FPGA实现的以太网驱动器实现UWB无线转输系统。如附图3所示,具体实现可在FPGA平台上实现,芯片上电复位后进行初始化操作,当初始化操作完成后,通过以太网驱动器模块实现发送、接收流程。UWB无线转输系统进入发送流程,完成数据从芯片通过local bus转递到发送BUFFER;进入接收流程,完成数据从接收BUFFER通过local bus转递到芯片。
该方法的优点:
不需要借助嵌入式的CPU进行软件开发实现,完成以太网驱动器的功能。
可以直接作为以太网驱动器模块给其它系统使用(例如UWB无线传输系统),连接简单,剪裁方便。
附图说明
图1是以太网驱动器实现框图。
图2是FPGA实现以太网驱动器的内部状态转移图。
图3是利用FPGA实现的以太网驱动器实现UWB无线转输系统。
具体实施方式
以下结合附图,具体说明本发明。
本发明提供一种FPGA实现以太网驱动器的方法,主要目的是通过此FPGA实现的以太网驱动器与其它RTL设计的模块相连接,FPGA实现的以太网驱动器可以直接作为参数化的标准模块给其它系统使用,方便修剪,加速项目进度。
以太网驱动器实现如附图1所示,采用模块化的设计方法,各部分功能说明如下:
SYS CTRL:系统控制单元,负责整个系统的控制,如状态机跳转等;
INITIAL:初始化单元,负责对以太网驱动器的初始化操作;
FLOW CTRL:流控制模块,负责与外部芯片Local bus接口的连接,将数据流转化符合Local bus接口定义。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中电华大电子设计有限责任公司,未经北京中电华大电子设计有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210595910.X/2.html,转载请声明来源钻瓜专利网。