CN103916336A - 一种用fpga实现的以太网驱动器 - Google Patents

一种用fpga实现的以太网驱动器 Download PDF

Info

Publication number
CN103916336A
CN103916336A CN201210595910.XA CN201210595910A CN103916336A CN 103916336 A CN103916336 A CN 103916336A CN 201210595910 A CN201210595910 A CN 201210595910A CN 103916336 A CN103916336 A CN 103916336A
Authority
CN
China
Prior art keywords
ethernet driver
state
ethernet
fpga
preferential
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201210595910.XA
Other languages
English (en)
Other versions
CN103916336B (zh
Inventor
龚永鑫
周卓
包玉华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing CEC Huada Electronic Design Co Ltd
Original Assignee
Beijing CEC Huada Electronic Design Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing CEC Huada Electronic Design Co Ltd filed Critical Beijing CEC Huada Electronic Design Co Ltd
Priority to CN201210595910.XA priority Critical patent/CN103916336B/zh
Publication of CN103916336A publication Critical patent/CN103916336A/zh
Application granted granted Critical
Publication of CN103916336B publication Critical patent/CN103916336B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供一种易于在用FPGA实现的以太网驱动器,在FPGA芯片上可以实现以太网驱动器实现以太网的初始化和数据收发,从而可以与其它系统实现对接。主要原理是用RTL设计出一个相应的以太网驱动器,完成初始化和以太网MAC帧数据的收发控制。本发明是基于集成以太网MAC控制器芯片和以太网PHY芯片模块进行的实现。

Description

一种用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无线转输系统进入发送流程,完成数据从芯片通过localbus转递到发送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接口定义。
与之连接的部分还有:
TXBUF:发送BUFFER;
RXBUF:接收BUFFER;
BUF CTRL:BUFFER控制单元,负责提供BUFFER状态信息;
内部系统设计如附图2所示,采用状态机设计的方法,当芯片上电复位后,直接从IDLE状态进入到INITIAL状态进行初始化操作,通过local bus对以太网MAC控制器芯片相关寄存器进行配置。当完成初始化操作后进入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无线转输系统进入发送流程,完成数据从以太网MAC控制器芯片通过local bus转递到发送BUFFER;进入接收流程,完成数据从接收BUFFER通过local bus转递到以太网MAC控制器芯片。

Claims (3)

1.一种用FPGA实现的以太网驱动器,其特征在于,通过FPGA实现以太网驱动器,而不需要借助嵌入式的CPU进行开发,包括系统控制单元、初始化单元、流控制模块和BUFFER控制单元;其中:
系统控制单元负责以太网驱动器的控制,如状态机跳转;
初始化单元负责对以太网驱动器的初始化操作;
流控制模块负责与外部Local bus接口的连接,将数据流转化符合Local bus的接口定义;
BUFFER控制单元负责提供BUFFER状态信息;
当芯片上电复位后,以太网驱动器直接从IDLE状态进入到INITIAL状态,初始化单元进行初始化操作,通过local bus对以太网驱动器相关寄存器进行配置;当完成初始化操作后进入TRANS状态,TRANS状态主要完成接收、发送、异常、中断的调度,执行完毕后重新跳转到TRANS状态。
2.根据权利要求1所述的以太网驱动器,其特征在于直接通过RTL的FPGA实现,易于其它系统模块例如RTL设计的UWB无线通信模块进行连接。
3.根据权利要求1所述的以太网驱动器,其特征在于在TRANS状态中可以设置调度的优先级,可以设置为接收优先抑或发送优先,也可以设置为轮询的优先级模式,轮询模式即上一帧为接收优先,那么下一帧为发送优先,上一帧为发送优先,那么下一帧为接收优先。
CN201210595910.XA 2012-12-28 2012-12-28 一种用fpga实现的以太网驱动器 Active CN103916336B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210595910.XA CN103916336B (zh) 2012-12-28 2012-12-28 一种用fpga实现的以太网驱动器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210595910.XA CN103916336B (zh) 2012-12-28 2012-12-28 一种用fpga实现的以太网驱动器

Publications (2)

Publication Number Publication Date
CN103916336A true CN103916336A (zh) 2014-07-09
CN103916336B CN103916336B (zh) 2017-05-17

Family

ID=51041745

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210595910.XA Active CN103916336B (zh) 2012-12-28 2012-12-28 一种用fpga实现的以太网驱动器

Country Status (1)

Country Link
CN (1) CN103916336B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020888A (zh) * 2016-05-24 2016-10-12 武汉虹信通信技术有限责任公司 一种快速驱动万兆以太网的方法及设备
CN108984451A (zh) * 2018-06-27 2018-12-11 新华三技术有限公司 信号驱动方法及通信设备
CN110109852A (zh) * 2019-04-03 2019-08-09 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 硬件实现tcp_ip协议的系统及方法
CN114124663A (zh) * 2021-11-16 2022-03-01 太原市华纳方盛科技有限公司 一种以太网芯片断网重连的方法、装置及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183948A (zh) * 2007-12-05 2008-05-21 中兴通讯股份有限公司 一种以太网串口驱动单元及窄带拨号时数据流的传输方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183948A (zh) * 2007-12-05 2008-05-21 中兴通讯股份有限公司 一种以太网串口驱动单元及窄带拨号时数据流的传输方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
丁世勇、等: "基于FPGA 的以太网MAC 控制器的设计与实现", 《电子设计工程》 *
李新明 等: "COSIX V2.0的以太网驱动", 《计算机应用与软件》 *
项伟 等: "VxWorks操作系统下FPGA设备驱动程序实现", 《长江工程职业技术学院学报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020888A (zh) * 2016-05-24 2016-10-12 武汉虹信通信技术有限责任公司 一种快速驱动万兆以太网的方法及设备
CN106020888B (zh) * 2016-05-24 2019-04-09 武汉虹信通信技术有限责任公司 一种快速驱动万兆以太网的方法及设备
CN108984451A (zh) * 2018-06-27 2018-12-11 新华三技术有限公司 信号驱动方法及通信设备
CN110109852A (zh) * 2019-04-03 2019-08-09 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 硬件实现tcp_ip协议的系统及方法
CN110109852B (zh) * 2019-04-03 2020-11-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 硬件实现tcp_ip协议的方法
CN114124663A (zh) * 2021-11-16 2022-03-01 太原市华纳方盛科技有限公司 一种以太网芯片断网重连的方法、装置及设备
CN114124663B (zh) * 2021-11-16 2023-12-01 太原市华纳方盛科技有限公司 一种以太网芯片断网重连的方法、装置及设备

Also Published As

Publication number Publication date
CN103916336B (zh) 2017-05-17

Similar Documents

Publication Publication Date Title
US10467154B2 (en) Multi-port multi-sideband-GPIO consolidation technique over a multi-drop serial bus
CN103200081B (zh) 一种面向异构网络环境的物联网网关开发平台
CN102347896B (zh) 一种基于以太网加载fpga和dsp的平台及其实现方法
EP3158698B1 (en) Systems and methods for providing power savings and interference mitigation on physical transmission media
US10521392B2 (en) Slave master-write/read datagram payload extension
EP3387796A1 (en) Optimal latency packetizer finite state machine for messaging and input/output transfer interfaces
KR20110046540A (ko) 유니버설 시리얼 버스 (usb) 원격 웨이크업
CN103916336A (zh) 一种用fpga实现的以太网驱动器
CN103827841A (zh) 可配置带宽的io连接器
CN103389958B (zh) 通用串行接口
WO2019203939A1 (en) General purpose input output triggered interface message
CN104219003A (zh) 通信装置、测试系统及其测试方法
CN103488598B (zh) 一种多模终端及其实现usb共用的方法
CN203167288U (zh) 一种面向异构网络环境的物联网网关开发平台
CN102445981B (zh) 数据传输系统以及数据传输方法
CN105573408A (zh) 集成电路以及低功率操作方法
CN204258793U (zh) 一种多功能车载扩展数据终端
CN106603113A (zh) 一种雷达信号处理机对外通信控制系统
CN108628793B (zh) Spi通信电路及方法
CN202310123U (zh) 车载gprs通信装置
CN103150952A (zh) 可重构的eda实验平台
CN103309826B (zh) 兼容以太网和pxi多串口数据管理方法
CN104899169A (zh) 串口服务器
CN102521005A (zh) 简便的嵌入式系统软件加载和调试方法
CN207339867U (zh) 一种时间信息同步系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 102209 Beijing, Beiqijia, the future of science and technology in the south area of China electronic network security and information technology industry base C building,

Applicant after: Beijing CEC Huada Electronic Design Co., Ltd.

Address before: 100102 Beijing City, Chaoyang District Lize two Road No. 2, Wangjing science and Technology Park A block five layer

Applicant before: Beijing CEC Huada Electronic Design Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant