CN102761488B - 一种高速全双工交换以太网控制器 - Google Patents
一种高速全双工交换以太网控制器 Download PDFInfo
- Publication number
- CN102761488B CN102761488B CN201210243059.4A CN201210243059A CN102761488B CN 102761488 B CN102761488 B CN 102761488B CN 201210243059 A CN201210243059 A CN 201210243059A CN 102761488 B CN102761488 B CN 102761488B
- Authority
- CN
- China
- Prior art keywords
- module
- data
- controller
- virtual link
- control
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
一种高速全双工交换以太网控制器,其特征在于:包括双口访问模块、接收传输控制模块、发送传输控制模块、接收冗余管理模块、完整性检查A模块、完整性检查B模块、整流器模块、调度器模块、发送冗余管理模块、媒介访问控制A模块、媒介访问控制B模块、处理器访问模块、控制状态寄存器模块、虚拟链路配置表模块、发送有效标识模块、在线调试/配置模块、串口控制器模块、PHY管理模块和中断管理模块。本发明中每个网络端口的实时性好、数据传输效率高、发送间隔和发送顺序可编程、使用灵活、并发处理能力强。
Description
技术领域:
本发明属于数据通信领域,具体涉及一种高速全双工交换以太网控制器。
背景技术:
交换以太网技术源于国外大型客机项目,协议控制器是终端系统的核心模块,用于完成数据链路层协议解析,除大型客机上使用的产品外,大部分为实验室仿真测试设备。此类设备在实际使用中存在如下问题:一是网络端口带宽固定为100Mbps,数据通信的实时性一般;二是协议处理通过软硬件协同实现,数据传输延迟较大。
航空电子全双工交换式以太网网卡及其集成化方法(中国专利CN101902504A)基于协议控制器构建交换式以太网网卡,用于处理传输层、网络层、链路层和物理层协议;一种带分层错误注入和错误分析的AFDX网络终端系统模拟器(中国专利CN102209000A)通过主动产生分层错误流量,模拟终端系统发生的错误,对AFDX网络通信进行错误分析和模拟;一种航空电子通信网络的终端系统(中国专利CN101547148)将网络接口电信号转换成光信号,构建基于光传输的交换式以太网终端系统;一种网络测试装置(中国专利CN102325057A)在AFDX网络测试设备中增加数据捕获功能,对各类系统端口数据进行测试和监控。
实验室仿真测试设备以及相关专利成果主要集中在终端系统集成和测试功能设计上,并没有对协议控制器性能进行提升,不能适应高速、高可靠系统需求。
发明内容:
针对上述缺陷或不足,本发明的目的在于提出一种高速、高效、配置灵活和并发处理能力强的全双工交换以太网控制器;用于全双工交换以太网数据链路层协议处理以及数据管理,并提供标准外部接口,便于构建终端系统。具体如下:
控制器具体功能包括:收/发数据缓冲区动态管理,访存空间2MB,支持128路虚拟链路全双工数据存储;支持数据帧编号控制;支持接收冗余管理;支持完整性检查;支持全双工1Gbps高速数据传输;支持带宽分配、流量整形调度与冗余发送间隔控制。
为实现上述功能,控制器主要由19个模块组成,具体包括:双口访问模块、接收传输控制模块、发送传输控制模块、接收冗余管理模块、完整性检查A模块、完整性检查B模块、整流器模块、调度器模块、发送冗余管理模块、媒介访问控制A模块、媒介访问控制B模块、处理器访问模块、控制状态寄存器模块、虚拟链路配置表模块、发送有效标识模块、在线调试/配置模块、串口控制器模块、PHY管理模块和中断管理模块。
双口访问模块主要用于实现对外部双口RAM进行数据存取。接收传输控制模块主要用于将经过协议处理的接收数据通过双口访问模块,存入外部双口RAM的相应缓冲区,数据传输完成后,置状态标志,并通过中断管理模块向上层协议处理器申请接收完成中断。发送传输控制模块主要用于通过双口访问模块读取外部双口RAM发送缓冲区的待发送数据。
接收冗余管理模块主要用于实现对网络A和B经过完整性检查的接收帧数据的冗余管理。完整性检查A和B模块根据相应的完整性检查通过原则,实现对接收的帧数据进行完整性检查。
整流器模块主要用于根据虚拟链路配置,对不同虚拟链路数据发送时机进行控制,从而将各虚拟链路的带宽控制在一定范围,避免线路冲突。调度器模块主要用于终端系统需要同时进行多虚拟链路数据发送时,协调各虚拟链路帧数据发送。发送冗余管理模块主要用于根据设置以及协议规范的最大间隔,控制发送帧数据在网络A和B上的发送间隔和先后顺序。
媒介访问控制A和B模块主要用于以太网MAC层协议控制,即将上层协议处理后的数据进行控制,产生符合协议规范的数据流。
处理器访问模块主要用于控制处理器对控制状态寄存器、MAC A/B寄存器、虚拟链路配置表和发送有效标识寄存器的访问。控制状态寄存器模块主要用于将用户设置信息输出给相应模块,控制数据收发和协议控制,同时将控制器的工作状态返回给上层。虚拟链路配置表主要用于存储网络的虚拟链路信息,包括虚拟链路编号、带宽分配间隔、最大发送间隔等。虚拟链路发送有效标识主要用于存储终端系统当前需要发送虚拟链路数据的标识。
在线调试/配置模块主要用于解析调试和配置指令,对控制状态寄存器和虚拟链路配置表等进行访问,并与串口控制器模块通信,从而通过串口实现在线对控制器进行调试和配置。串口控制器模块主要用于实现通用异步串行数据通信的协议控制,接收外部调试设备发送的调试配置指令和配置数据,或发送在线调试模块输出的调试信息。
PHY管理模块主要用于控制器初始化过程中,对外部PHY芯片进行功能配置。中断管理模块主要用于控制器中断产生与清除,并提供中断屏蔽及简单的优先级管理功能,支持的中断类型有发送完成、接收完成、接收错误等,当相应中断条件满足时,产生有效中断输出;中断撤销条件满足时,输出中断无效。
本发明的有益效果是:
(1)本发明中每个网络端口的数据传输率100/1000Mbps自适应,实时性比100Mbps网络更好;
(2)本发明中协议处理完全由硬件逻辑实现,发送/接收延迟分别约为6.5/2.5us,数据传输效率高;
(3)本发明中两个网络端口可以设置为冗余或非冗余模式,且发送间隔和发送顺序可编程,使用灵活;
(4)本发明中收/发数据缓存动态管理,能够进行128路虚拟链路全双工数据收发,并发处理能力强。
附图说明:
图1是本发明控制器的结构框图。
具体实施方式:
下面结合附图对本发明做详细描述。
根据本发明的内容,设计详细实现方案,控制器结构如图1所示,1为双口访问模块、2为接收传输控制模块、3为发送传输控制模块、4为接收冗余管理模块、5为完整性检查A模块、6为完整性检查B模块、7为整流器模块、8为调度器模块、9为发送冗余管理模块、10为媒介访问控制A模块、11为媒介访问控制B模块、12为处理器访问模块、13为控制状态寄存器模块、14为虚拟链路配置表模块、15为发送有效标识模块、16为在线调试/配置模块、17为串口控制器模块、18为PHY管理模块、19为中断管理模块。
控制器通过数据线20与外部双口RAM进行数据存取;双口访问模块1根据接收传输控制模块2和发送传输控制模块3输出的双口RAM访问控制信号,产生双口RAM访问时序;接收传输控制模块2将经过协议处理的接收数据通过双口访问模块1存入外部双口RAM的相应缓冲区,数据传输完成后,置状态标志,并通过中断管理模块19(图中未示出)向上层协议处理器申请接收完成中断;发送传输控制模块3通过双口访问模块1读取外部双口RAM发送缓冲区的待发数据,在各控制模块的协调下,对双口RAM中不同虚拟链路的数据进行分时访问。
接收冗余管理模块4对经过完整性检查A模块5和完整性检查B模块6完整性检查后的接收帧数据进行冗余管理,其遵循的原则是“先到有效帧胜出”,后到或无效的帧数据被丢弃,最终仅上传一份有效帧数据的拷贝到接收传输控制模块2;完整性检查A模块5和完整性检查B模块6根据完整性检查通过原则,解析当前帧的序号,并与前一帧序号进行比较,对不符合上述原则的帧数据进行丢弃,否则保留并传输给接收冗余管理模块4进行冗余管理;通过整流器模块7对由发送传输控制模块3传输的不同虚拟链路帧数据的发送时机进行控制,再经过调度器模块8的调度协调,将各虚拟链路帧数据发送到发送冗余管理模块9;发送冗余管理模块9根据设置以及协议规范的最大间隔,控制发送帧数据向媒介访问控制A模块10和媒介访问控制B模块11传输的发送间隔和先后顺序。
媒介访问控制A模块10和媒介访问控制B模块11对整流器模块7、调度器模块8、发送冗余管理模块9处理后的帧数据进行控制,产生符合以太网协议规范的数据流,并通过数据线21和22与外部PHY芯片进行数据交互。
处理器访问模块12通过数据线23与外部处理器连接,控制外部处理器对媒介访问控制A模块10和媒介访问控制B模块11的寄存器(图中未示出这种关系)、控制状态寄存器模块13、虚拟链路配置表模块14和发送有效标识模块15的访问。控制状态寄存器模块13将用户设置信息输出给相应模块,控制数据收发和协议控制,同时将控制器的工作状态经过根据完整性检查通过原则返回给外部处理器。虚拟链路配置表模块14主要用于存储虚拟链路信息,包括虚拟链路编号、带宽分配间隔、最大发送间隔等。发送有效标识模块15主要用于存储终端系统当前需要发送虚拟链路数据的标识。
在线调试/配置模块16主要用于解析调试和配置指令,对虚拟链路配置表模块14和发送有效标识模块15等进行访问,并与串口控制器模块17通信,从而通过串口控制器模块17实现在线对控制器进行调试和配置。串口控制器模块17主要用于实现通用异步串行数据通信的协议控制,通过数据线24接收外部调试设备发送的调试配置指令和配置数据,或发送在线调试模块输出的调试信息。
PHY管理模块18通过数据线25与外部PHY芯片连接,主要用于在控制器初始化过程中,12通过18对外部PHY芯片进行功能配置。中断管理模块19通过数据线26与外部通信,当13中相应中断条件满足时,产生有效中断输出;中断撤销条件满足时,对外输出中断无效。
根据上述方案,用Verilog HDL语言对控制器的逻辑设计进行描述,并完成逻辑综合与布局布线;同时,设计一款终端系统,将控制器设计映射到可编程逻辑器件中实现,并对控制器的功能进行测试。测试结果表明本发明具有很好的可实施性,且性能满足预期。
Claims (6)
1.一种高速全双工交换以太网控制器,其特征在于:包括双口访问模块、接收传输控制模块、发送传输控制模块、接收冗余管理模块、完整性检查A模块、完整性检查B模块、整流器模块、调度器模块、发送冗余管理模块、媒介访问控制A模块、媒介访问控制B模块、处理器访问模块、控制状态寄存器模块、虚拟链路配置表模块、发送有效标识模块、在线调试/配置模块、串口控制器模块、PHY管理模块和中断管理模块;
双口访问模块对外部双口RAM进行数据存取;接收传输控制模块将经过协议处理的接收数据通过双口访问模块存入外部双口RAM的相应缓冲区,数据传输完成后,置状态标志,并通过中断管理模块向上层协议处理器申请接收完成中断;发送传输控制模块通过双口访问模块读取外部双口RAM发送缓冲区的待发送数据,并存入媒介访问控制A模块和B模块的发送缓冲区;
接收冗余管理模块对外部网络A和B经过完整性检查A模块和完整性检查B模块检查后的数据进行冗余管理,保留先到的有效帧数据,备份数据自动丢弃;
整流器模块对不同虚拟链路数据发送时机进行控制、避免线路冲突;调度器模块协调各虚拟链路帧数据发送;发送冗余管理模块控制发送帧数据在外部网络A和B上的发送间隔和先后顺序;
媒介访问控制A模块和媒介访问控制B模块分别接收外部网络A和B的数据,并进行控制,产生符合协议规范的数据流;
处理器访问模块控制处理器对控制状态寄存器模块、虚拟链路配置表模块和发送有效标识模块的访问;
在线调试/配置模块解析调试和配置指令,对控制状态寄存器模块和虚拟链路配置表模块进行访问,并与串口控制器模块通信,通过串口实现在线对控制器进行调试和配置;PHY管理模块在控制器初始化过程中,完成对外部PHY芯片的功能配置。
2.根据权利要求1所述的控制器,其特征在于:控制状态寄存器模块将用户设置信息输出,控制数据收发和协议控制,同时将控制器的工作状态返回给上层。
3.根据权利要求1所述的控制器,其特征在于:虚拟链路配置表模块用于存储网络的虚拟链路信息,包括虚拟链路编号、带宽分配间隔、最大发送间隔。
4.根据权利要求1所述的控制器,其特征在于:发送有效标识模块用于存储终端系统当前需要发送虚拟链路数据的标识。
5.根据权利要求1所述的控制器,其特征在于:串口控制器模块用于实现通用异步串行数据通信的协议控制,接收外部调试设备发送的调试配置指令和配置数据,或发送在线调 试/配置模块输出的调试信息。
6.根据权利要求1所述的控制器,其特征在于:中断管理模块用于控制器中断产生与清除,并提供中断屏蔽及简单的优先级管理功能,支持的中断类型有发送完成、接收完成、接收错误,当相应中断条件满足时,产生有效中断输出;中断撤销条件满足时,输出中断无效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210243059.4A CN102761488B (zh) | 2012-07-13 | 2012-07-13 | 一种高速全双工交换以太网控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210243059.4A CN102761488B (zh) | 2012-07-13 | 2012-07-13 | 一种高速全双工交换以太网控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102761488A CN102761488A (zh) | 2012-10-31 |
CN102761488B true CN102761488B (zh) | 2015-06-17 |
Family
ID=47055814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210243059.4A Active CN102761488B (zh) | 2012-07-13 | 2012-07-13 | 一种高速全双工交换以太网控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102761488B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104767697A (zh) * | 2015-01-23 | 2015-07-08 | 珠海欧比特控制工程股份有限公司 | 一种航空全双工交换式以太网控制器及其控制方法 |
CN107370578B (zh) * | 2017-06-15 | 2020-11-06 | 西安微电子技术研究所 | 一种基于硬件快速自主切换的多冗余以太网控制器 |
CN107517156A (zh) * | 2017-09-30 | 2017-12-26 | 江西洪都航空工业集团有限责任公司 | 基于arinc664 part7的航电系统 |
CN109946955B (zh) * | 2019-03-15 | 2022-11-01 | 西安微电子技术研究所 | 一种双网冗余以太网控制器Linux网卡驱动控制器 |
CN110493147B (zh) * | 2019-08-12 | 2022-07-29 | 西安微电子技术研究所 | 一种并行冗余以太网通信控制器及其控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101902504A (zh) * | 2009-05-27 | 2010-12-01 | 北京神州飞航科技有限责任公司 | 航空电子全双工交换式以太网网卡及其集成化方法 |
CN102209000A (zh) * | 2011-07-05 | 2011-10-05 | 北京航空航天大学 | 一种带分层错误注入和错误分析的afdx网络终端系统模拟器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070280238A1 (en) * | 2006-05-30 | 2007-12-06 | Martin Lund | Method and system for passive loop detection and prevention in a packet network switch |
-
2012
- 2012-07-13 CN CN201210243059.4A patent/CN102761488B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101902504A (zh) * | 2009-05-27 | 2010-12-01 | 北京神州飞航科技有限责任公司 | 航空电子全双工交换式以太网网卡及其集成化方法 |
CN102209000A (zh) * | 2011-07-05 | 2011-10-05 | 北京航空航天大学 | 一种带分层错误注入和错误分析的afdx网络终端系统模拟器 |
Also Published As
Publication number | Publication date |
---|---|
CN102761488A (zh) | 2012-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102761488B (zh) | 一种高速全双工交换以太网控制器 | |
CN102495920B (zh) | 一种FPGA用基于PCIe的集成化逻辑分析模块 | |
CN101169771B (zh) | 一种axi内部总线的外部接口装置及其数据传输方法 | |
CN106612141A (zh) | 一种光纤通道协议通用仿真测试卡及其数据交互方法 | |
CN108259127B (zh) | Pcie双冗余万兆网ip核 | |
US20140129741A1 (en) | Pci-express device serving multiple hosts | |
CN101018179A (zh) | 数据总线桥接器及其工作方法 | |
CN101902504A (zh) | 航空电子全双工交换式以太网网卡及其集成化方法 | |
CN104866455B (zh) | 动态可重构高速串行总线中的多主仲裁方法 | |
CN102185833B (zh) | 一种基于fpga的fc i/o并行处理方法 | |
CN104394029A (zh) | 一种基于混合通道的afdx总线检测方法 | |
CN103530245B (zh) | 一种基于fpga的srio互联交换装置 | |
CN103558812B (zh) | 基于fpga和arm的mvb网络四类设备网卡 | |
CN103024042A (zh) | Afdx终端协议栈及其数据接收与发送方法 | |
CN106817249A (zh) | Fc‑ae‑1553仿真通信演示系统及数据发送方法 | |
CN203151539U (zh) | 一种afdx端系统虚拟链路层ip核 | |
CN107562672A (zh) | 一种提高矢量网络分析仪数据传输速率的系统及方法 | |
CN103036685A (zh) | 基于dp83849c的afdx接口转换器 | |
WO2008005793A3 (en) | Systems and methods for processing data packets using a multi-core abstraction layer (mcal) | |
CN203590251U (zh) | 基于串行RapidIO总线的FlexRay控制系统 | |
CN103036878A (zh) | 一种用于网络协议转换的设备及方法 | |
CN105681131B (zh) | 主备系统及其并行输出方法 | |
CN204256732U (zh) | 基于PCI-Express接口的高速数据传输装置 | |
CN109412897A (zh) | 基于多核处理器及fpga的共享mac实现系统及方法 | |
CN111800226A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |