CN116668376B - 一种以太网控制器 - Google Patents
一种以太网控制器 Download PDFInfo
- Publication number
- CN116668376B CN116668376B CN202310892065.0A CN202310892065A CN116668376B CN 116668376 B CN116668376 B CN 116668376B CN 202310892065 A CN202310892065 A CN 202310892065A CN 116668376 B CN116668376 B CN 116668376B
- Authority
- CN
- China
- Prior art keywords
- data stream
- module
- ethernet message
- ethernet
- receiving
- 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
- 230000005540 biological transmission Effects 0.000 claims abstract description 87
- 125000004122 cyclic group Chemical group 0.000 claims description 18
- 238000000034 method Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种以太网控制器,通过快速媒体访问控制模块为快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流;可抢占媒体访问模块为可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流;传输调度程序模块接收可被抢占数据流对应的状态信息以及快速数据流的状态信息,根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流;以太网报文接收模块接收物理编码子层发送的以太网报文,根据以太网报文的类型,确定以太网报文的优先级,根据优先级发送以太网报文。本申请中减少了冗余通道,降低了成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种以太网控制器。
背景技术
以太网控制器,也称做以太网适配器,是用来保证计算机联网性能的重要部件。以太网控制器的出现极大地改变了网络连接的方式和网络控制方式,使得计算机的联网功能易于管理。
现有技术中的以太网控制器中用于处理可被抢占数据流的可被抢占的媒体访问控制(preemptable Media Access Control,pMac)和用于处理快速数据流的快速媒体访问控制(express Media Access Control,eMac)为两个并行的部分,可被抢占数据流和快速数据流的处理通道在接收和发送方向均为并行的通道。由此,使得以太网报文的传输过程中存在冗余通道,导致实现成本较高。
发明内容
本申请提供的一种以太网控制器,目的在于降低以太网控制器的实现成本。
为达到上述目的,本申请采用如下技术方案:
本申请提供一种以太网控制器,包括:
快速媒体访问控制模块,可抢占媒体访问控制模块,以太网报文接收模块,以及传输调度程序模块;传输调度程序模块与快速媒体访问控制模块,可抢占媒体访问控制模块,以及以太网报文接收模块连接;
快速媒体访问控制模块,用于接收快速数据流;为快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流;
可抢占媒体访问模块,用于接收可被抢占数据流;为可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流;
传输调度程序模块,用于接收可被抢占数据流对应的状态信息以及快速数据流的状态信息;根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流;
以太网报文接收模块,用于接收物理编码子层发送的以太网报文;根据以太网报文的类型,确定以太网报文的优先级;根据优先级发送以太网报文。
在一种可能的实现方式中,快速媒体访问控制模块包括:
第一传输总线接口模块,第一传输帧控制器模块,第一传输协议引擎模块;
第一传输总线接口模块,用于接收快速数据流;对快速数据流进行反压处理,获得反压处理后的快速数据流;向第一传输帧控制器模块发送反压处理后的快速数据流;
第一传输帧控制器模块,用于根据第一预设字节长度,对反压处理后的快速数据流的字节长度进行处理,获得处理后的快速数据流;向第一传输协议引擎模块发送处理后的快速数据流;
第一传输协议引擎模块,用于为处理后的快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流。
在一种可能的实现方式中,快速媒体访问控制模块还包括:第一传输流量控制模块;
第一传输流量控制模块,用于生成流控帧;向第一传输帧控制器模块发送流控帧;
第一传输帧控制器模块,还用于:
根据第一预设字节长度,对流控帧的字节长度进行处理,获得处理后的流控帧;根据处理后的快速数据流和处理后的流控帧的优先级,向第一传输协议引擎模块发送处理后的快速数据流和处理后的流控帧。
在一种可能的实现方式中,快速媒体访问控制模块还包括:第一循环冗余校验模块;
第一循环冗余校验模块,用于对添加后的快速数据流进行校验。
在一种可能的实现方式中,可抢占媒体访问控制模块包括:
第二传输总线接口模块,第二传输帧控制器模块,以及第二传输协议引擎模块;
第二传输总线接口模块,用于接收可被抢占数据流;对可被抢占数据流进行反压处理,获得反压处理后的可被抢占数据流;向第一传输帧控制器模块发送反压处理后的可被抢占数据流;
第二传输帧控制器模块,用于根据第二预设字节长度,对反压处理后的可被抢占数据流进行处理,获得处理后的可被抢占数据流;向第二传输协议引擎模块发送处理后的可被抢占数据流;
第二传输协议引擎模块,用于为处理后的可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流。
在一种可能的实现方式中,可抢占媒体访问控制模块还包括:第二循环冗余校验模块;
第二循环冗余校验模块,用于对添加后的可被抢占数据流进行校验。
在一种可能的实现方式中,传输调度程序模块,具体用于:
接收可被抢占数据流对应的状态信息、快速数据流的状态信息,以及时间敏感调度模块发送的状态指令,状态指令包括保持或释放;
当状态指令为释放,快速数据流的状态信息为非空状态,以及可被抢占数据流对应的状态信息为存在可被抢占数据流时,按照以太网帧间隙,获取可抢占媒体访问控制模块发送的可被抢占数据流;
向物理编码子层发送可被抢占数据流。
在一种可能的实现方式中,以太网报文接收模块包括:
接收协议引擎模块,接收帧控制器模块以及接收总线接口模块;
接收协议引擎模块,用于接收物理编码子层发送的以太网报文;将对以太网报文进行搜索得到的目标字段,从以太网报文中剥离,获得剥离后的以太网报文;对剥离后的以太网报文进行解码,获得解码后的以太网报文;向接收帧控制器模块发送解码后的以太网报文和目标字段;
接收帧控制器模块,用于根据目标字段,确定解码后的以太网报文的类型;根据以太网报文的类型,确定以太网报文的优先级;根据优先级向接收总线接口模块发送以太网报文。
在一种可能的实现方式中,以太网报文接收模块还包括:
第三循环冗余校验模块,用于对接收的以太网报文进行校验。
在一种可能的实现方式中,接收帧控制器模块包括:
写入模块,快速数据流缓存模块,可被抢占数据流缓存模块以及读取模块;
写入模块,用于接收接收协议引擎模块发送的解码后的以太网报文和目标字段;根据目标字段,将以太网报文发送至与以太网报文的类型对应的缓存模块,以太网报文的类型包括快速数据流和可被抢占数据流,目标字段与以太网报文的类型对应,快速数据流对应的缓存模块为快速数据流缓存模块,可被抢占数据流对应的缓存模块为可被抢占数据流缓存模块;
快速数据流缓存模块,用于缓存写入模块发送的快速数据流;
可被抢占数据流缓存模块,用于缓存写入模块发送的可被抢占数据流;
读取模块,用于根据快速数据流和可被抢占数据流的优先级,向接收总线接口模块发送快速数据流和可被抢占数据流。
相较于现有技术,本申请具有以下有益效果:
本申请中提供的以太网控制器,由快速媒体访问控制模块接收快速数据流,为快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流;可抢占媒体访问模块接收可被抢占数据流,为可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流;传输调度程序模块接收可被抢占数据流对应的状态信息以及快速数据流的状态信息,根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流;以太网报文接收模块接收物理编码子层发送的以太网报文,根据以太网报文的类型,确定以太网报文的优先级,根据优先级发送以太网报文。本申请中的以太网控制器在发送方向上可以根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流,保障两个处理通路的切换效率,在接收方向上,对可被抢占数据流和快速数据流的接收通路进行了合并处理,采用一个通道对不同类型的以太网报文进行处理,降低了实现成本。
附图说明
图1为本申请实施例提供的一种分布式快速流结构示意图;
图2为本申请实施例提供的一种以太网控制器的实现逻辑框图;
图3为本申请实施例提供的一种标准以太网报文格式;
图4为本申请实施例提供的一种媒体访问控制合并数据包的报文结构示意图;
图5为本申请实施例提供的另一种媒体访问控制合并数据包的报文结构示意图;
图6为本申请实施例提供的一种接收帧控制器模块的结构示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
IEEE802.3br标准,全称为分布式快速流(Interspersing Express Traffic,IET)。其将以太网报文分为对时间敏感的快速数据流(Express Traffic)以及对时间不敏感的可被抢占数据流(Preemptable Traffic)两种。同时,分别有两种不同的媒体访问控制模块(Media Access Control,MAC)来处理两种不同类型的以太网报文,即快速媒体访问控制模块(express Media Access Control,eMAC)用来处理快速数据流,可抢占媒体访问控制模块(preemptable Media Access Control,pMAC),用来处理可被抢占数据流。
IEEE802.1Qbu标准,为帧抢占策略标准,基于IEEE802.1Qbu标准实现的时间敏感调度在进行队列门控时,可以同步产生可被抢占数据流的保持或者释放(Hold/Release)请求至合并(Merge)层,以使Merge层在收到Hold请求或者快速数据流时进行抢断。
如图1所示,该图为本申请实施例提供的一种分布式快速流结构示意图。排队帧(Queuing frames)将以太网报文通过先进先出(FIFO)存储器发送至传输选择模块(Transmission selection)。传输选择模块可以区分快速数据流和可被抢占数据流,并将这两类以太网报文分发到各自对应的二层控制通路上去,即将快速数据流发送至eMAC,将可被抢占数据流发送至pMAC。在媒体访问控制合并层(MAC Merge Layer)进行控制转发至物理层(PHY)。
现有技术中的以太网控制器中用于处理可被抢占数据流的可被抢占的媒体访问控制和用于处理快速数据流的快速媒体访问控制为两个并行的部分,可被抢占数据流和快速数据流的处理通道在接收和发送方向均为并行的通道。由此,使得以太网报文的传输过程中存在冗余通道,导致实现成本较高。
基于此,本申请中的以太网控制器在发送方向上可以根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流,保障两个处理通路的切换效率,在接收方向上,采用一个通路对不同类型的以太网报文进行处理,对可被抢占数据流和快速数据流的接收通路进行了合并处理,降低了实现成本。
如图2所示,该图为本申请实施例提供的一种以太网控制器的实现逻辑框图,下面结合图2,对本申请实施例进行详细的介绍。
本申请提供一种以太网控制器中,包括快速媒体访问控制模块,可抢占媒体访问控制模块,以太网报文接收模块,以及传输调度程序模块。其中传输调度程序模块与快速媒体访问控制模块,可抢占媒体访问控制模块,以及以太网报文接收模块连接。
在以太网控制器的发送方向上,由于要在帧抢占功能中实现两种数据流的快速切换,需要两个独立的处理模块分别来处理快速数据流和可被抢占数据流。
具体地,发生帧抢占的以太网报文格式与未发生帧抢占的以太网报文格式存在区别,如图3所示,该图为本申请实施例提供的一种标准以太网报文格式。以太网报文的起始部分是 7 字节的前导码(Preamble),1字节的帧开始符(SFD),接着是媒体访问控制报头(MAC Header)和网际互连协议报头(IP header),报文尾部是 4字节的冗余校验码(FCS)以及12 字节的帧间距(IFG)。
如图4所示,该图为本申请实施例提供的一种媒体访问控制合并数据包的报文结构示意图。媒体访问控制合并数据包(MAC Merge Packet,mPacket) 的报文结构由IEEE802.3br 定义,也可以称为时间敏感网络(Time Sensitive Network,TSN)报文。其有7octets的前导码,1 octet的起始分解符,初始数据包,以及4 octets的循环冗余校核字段构成。其中 SMD(Start mPacket Delimiter)代表mPacket起始分解符,其不同的值具有不同的含义,进而基于SMD的值可以标识该报文类型,即根据SMD可以确定该报文的类型,即区分该报文是快速数据流还是可被抢占数据流等。示例性的,当报文类型是快速数据流时,SMD-E的字段与图3中标准以太网报文中的SFD字段数值相同。mData为来自MAC的初始数据包,从SFD到FCS之间的数据都会填充在mData区域,最小的mData长度为60字节。循环冗余校核(Cyclic Redundancy Check,CRC)字段,用于检查报文在传输过程中完整性。
对于一个mPacket,其中可能包含一个完整的快速数据流、一个完整的可被抢占数据流、可被抢占数据流的初始切片和/或可被抢占数据流的剩余切片。对于包含一个完整的快速数据流、一个完整的可被抢占数据流或可被抢占数据流的初始切片的情况,mPacket的格式如上述图4所示,对于包含可被抢占数据流的剩余切片的情况,mPacket的格式如图5所示,图5为本申请实施例提供的另一种媒体访问控制合并数据包的报文结构示意图。与图4中的mPacket的格式不同的是,该mPacket的格式中SFD由SMD-Cx代替,同时其后跟随额外的切片计数字段frag_count。其中,frag_count字段是一个模4的计数器,用来避免3个以内的切片丢失导致的重组错误。
本申请实施例中,快速媒体访问控制模块,用于接收快速数据流;为快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流。可抢占媒体访问模块,用于接收可被抢占数据流;为可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流。
在一种可能的实现方式中,快速媒体访问控制模块由第一传输总线接口模块,第一传输帧控制器模块,第一传输协议引擎模块构成。
第一传输总线接口模块(Transmit Bus Interface Module,TBU),用于接收快速数据流;对快速数据流进行反压处理,获得反压处理后的快速数据流;向第一传输帧控制器模块发送反压处理后的快速数据流。
具体地,快速媒体访问控制模块中的第一传输总线接口模块与发送处理通路接口,接收处理完毕的待发送到链路上的快速数据流,同时会接收到随路并行携带的状态信息,如时间戳,报文修改指示等。
第一传输帧控制器模块,用于根据第一预设字节长度,对反压处理后的快速数据流的字节长度进行处理,获得处理后的快速数据流;向第一传输协议引擎模块发送处理后的快速数据流。
具体地,第一传输帧控制器模块(Transmit Frame Controller Module,TFC)根据第一预设字节长度,对反压处理后的快速数据流的字节长度进行处理,获得处理后的快速数据流。示例性的,第一传输帧控制器模块可以根据第一预设字节长度,将快速数据流进行截断处理,同时根据以太网协议,当快速数据流不足60bytes时,自动增加填充(Padding)。
在一种可能的实现方式中,快速媒体访问控制模块还包括:第一传输流量控制模块,第一传输流量控制模块与第一传输帧控制器模块连接。第一传输流量控制模块,用于生成流控帧;向第一传输帧控制器模块发送流控帧。
在此情况下,第一传输帧控制器模块会接收来自第一传输总线接口模块的快速数据流以及第一传输帧控制器模块发送流控帧。第一传输帧控制器模块,可以根据第一预设字节长度,对流控帧的字节长度进行处理,获得处理后的流控帧;根据处理后的快速数据流和处理后的流控帧的优先级,向第一传输协议引擎模块发送处理后的快速数据流和处理后的流控帧。
具体地,第一传输帧控制器模块主要功能是对接收到的快速数据流和流控帧进行调节。示例性的,第一传输帧控制器模块以流控帧为高优先级,以帧为单位进行发送,即当处理后的快速数据流和处理后的流控帧同时需要发送时,先发送处理后的流控帧,再发送处理后的快速数据流。
其中,第一传输流量控制模块(Transmit Flow Control Module,FTX)主要负责产生流控帧,并将流控帧发送给传输帧控制器模块;流控产生的来源包括应用侧的接收缓存,当缓存达到一定的水位时,触发第一传输流量控制模块发送流控帧。示例性的,存储的水位的设定值为0.8MB,当接收缓存为1MB时,触发第一传输流量控制模块发送流控帧。流控帧的暂停时间(Pause Time)字段以及发送的周期间隔(Slot Time)字段由寄存器配置, FTX模块收到流控帧后,按照周期间隔,发送Pause Time为寄存器值的流控帧,当流控帧发送指示释放时,则立即发送一个Pause Time为0的流控帧,通知对方本地接收缓存已经准备好接收数据。该模块仅存在于eMAC中。
第一传输协议引擎模块,在收到处理后的快速数据流后,为处理后的快速数据流添加前导码(Preamble)和帧开始界定符(SFD),获得添加后的快速数据流。
在一种可能的实现方式中,快速媒体访问控制模块还包括第一循环冗余校验模块。第一循环冗余校验模块,可以对添加后的快速数据流进行校验。
可抢占媒体访问模块,用于接收可被抢占数据流;为可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流。
具体地,在一种可能的实现方式中,可抢占媒体访问控制模块由第二传输总线接口模块,第二传输帧控制器模块,以及第二传输协议引擎模块构成。
第二传输总线接口模块可以接收可被抢占数据流;对可被抢占数据流进行反压处理,获得反压处理后的可被抢占数据流;向第二传输帧控制器模块发送反压处理后的可被抢占数据流。
第二传输帧控制器模块在接收到第二传输帧控制器模块发送的反压处理后的可被抢占数据流后,根据第二预设字节长度,对反压处理后的可被抢占数据流进行处理,获得处理后的可被抢占数据流;向第二传输协议引擎模块发送处理后的可被抢占数据流。
示例性的,第二传输帧控制器模块可以根据第二预设字节长度,将反压处理后的可被抢占数据流进行截断处理,同时根据以太网协议,当反压处理后的可被抢占数据流不足60bytes时,自动增加填充(Padding)。
第二传输协议引擎模块收到处理后的可被抢占数据流后,为处理后的可被抢占数据流添加前导码(Preamble)、帧开始界定符(SMD)以及切片计数字段(Frag_count),获得添加后的可被抢占数据流。
传输调度程序模块,用于接收可被抢占数据流对应的状态信息以及快速数据流的状态信息;根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流。
在一种可能的实现方式中,传输调度程序模块(Transmit Scheduler Module,STX),可以接收可被抢占数据流对应的状态信息、快速数据流的状态信息,以及时间敏感调度模块发送的状态指令,状态指令包括保持或释放。当状态指令为释放,快速数据流的状态信息为非空状态,以及可被抢占数据流对应的状态信息为存在可被抢占数据流时,按照以太网帧间隙,获取可抢占媒体访问控制模块发送的可被抢占数据流。向物理编码子层发送可被抢占数据流。
具体地,传输调度程序模块主要负责对快速数据流和可被抢占数据流的发送进行调度,维护发送的两个类型的以太网报文之间的最小帧间隔,即按照最小帧间隔发送以太网报文。
传输调度程序模块,接收IEEE802.1Qbv时间敏感调度模块(Time-awareschedule,TAS)发送的状态指令,状态指令包括保持请求或释放请求(Hold/Release),可被抢占数据流对应的状态信息以及快速数据流的状态信息。在满足IFG条件,可被抢占数据流对应的状态信息为存在可被抢占数据流,即保持请求未置起,以及快速数据流的状态信息为非空状态时,传输调度程序模块会给第二传输协议引擎模块发送使能指令,由此传输调度程序模块可以获取可抢占媒体访问控制模块发送的可被抢占数据流,并向物理编码子层发送可被抢占数据流。同时,传输调度程序模块会在保持请求置起时,向第二传输协议引擎模块发送抢占指示。
在一种可能的实现方式中,可抢占媒体访问控制模块还包括:第二循环冗余校验模块。第二循环冗余校验模块,可以对添加后的可被抢占数据流进行校验。
在以太网控制器的接收方向上,以太网报文接收模块,可以接收物理编码子层发送的以太网报文;根据以太网报文的类型,确定以太网报文的优先级;根据优先级发送以太网报文。
在一种可能的实现方式中,以太网报文接收模块由接收协议引擎模块,接收帧控制器模块以及接收总线接口模块构成。
接收协议引擎模块(Receive Protocol Engine Module,RPE),用于接收物理编码子层发送的以太网报文;将对以太网报文进行搜索得到的目标字段,从以太网报文中剥离,获得剥离后的以太网报文;对剥离后的以太网报文进行解码,获得解码后的以太网报文;向接收帧控制器模块发送解码后的以太网报文和目标字段。
具体地,目标字段包括前导码、SFD、SMD以及frag_count字段。示例性的,接收协议引擎模块可以对接收到的以太网报文进行搜索,搜索其中的前导码、SFD、SMD以及frag_count字段。当搜索到前导码、SFD、SMD以及frag_count字段,接将其从以太网报文数据中剥离。
获得剥离后的以太网报文后,接收协议引擎模块对剥离后的以太网报文的Length/Type字段进行解码,获得解码后的以太网报文。示例性的,如果Length/Type字段小于0x600,则接收协议引擎模块根据Length/Type字段中预设的字节长度计数,对数据帧的有效载荷(Payload)进行计数,将padding字段和CRC字段进行剥离;如果长度/类型字段大于或等于0x600,接收协议引擎模块会发送所有接收到的以太网报文发送至到接收帧控制器模块。
在一种可能的实现方式中,接收协议引擎模块可以对超长包进行截断处理,即对超过预设长度的以太网报文进行截断处理,并输出对应的错误状态。接收协议引擎模块还用于将SMD以及frag_count字段作为随路数据向后传输,以便于后续进行丢帧判断和帧恢复。
接收帧控制器模块接收到解码后的以太网报文和目标字段后,可以根据目标字段,确定解码后的以太网报文的类型;根据以太网报文的类型,确定以太网报文的优先级;根据优先级向接收总线接口模块发送以太网报文。
具体地,在一种可能的实现方式中,如图6所示,该图为本申请实施例提供的一种接收帧控制器模块的结构示意图,接收帧控制器模块包括写入模块,快速数据流缓存模块,可被抢占数据流缓存模块以及读取模块;
写入模块,用于接收接收协议引擎模块发送的解码后的以太网报文和目标字段;根据目标字段,将以太网报文发送至与以太网报文的类型对应的缓存模块,目标字段与以太网报文的类型对应,以太网报文的类型包括快速数据流和可被抢占数据流,快速数据流对应的缓存模块为快速数据流缓存模块,可被抢占数据流对应的缓存模块为可被抢占数据流缓存模块。
具体地,根据目标字段可以确定以太网报文的类型,若确定出该以太网报文为快速数据流,则将该以太网报文发送至快速数据流缓存模块,若确定出该以太网报文为可被抢占数据流,则将该以太网报文发送至可被抢占数据流存模块。
对于可被抢占数据流,其存在发生了切片的情况,进而根据目标字段确定以太网报文为可被抢占数据流时,接收帧控制器模块需要判断其是否发生了切片,在发生了切片的情况下,需要对可被抢占数据流进行拼包操作。其中,该拼包操作可以基于接收协议引擎模块发送的目标字段完成。
快速数据流缓存模块,用于缓存写入模块发送的快速数据流;可被抢占数据流缓存模块,用于缓存写入模块发送的可被抢占数据流。
读取模块,用于根据快速数据流和可被抢占数据流的优先级,向接收总线接口模块发送快速数据流和可被抢占数据流。
具体的,当快速数据流缓存模块和可被抢占数据流缓存模块分别缓存了对应的以太网报文后,可以以以快速数据流的优先级高于可被抢占数据流的优先级的策略,从对应的缓存模块中读取完整的以太网报文,并向后级传输。
接收流量控制模块(Receive Flow Control Module,FRX)可以检测接收到的暂停帧,并在接收到的暂停帧指定的延迟时间内暂停发送方向的帧发送。
在一种可能的实现方式中,以太网报文接收模块还包括:第三循环冗余校验模块,用于对接收的以太网报文进行校验。
综上,本申请中的以太网控制器在发送方向上可以根据可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送添加后的快速数据流和/或添加后的可被抢占数据流,保障两个处理通路的切换效率,在接收方向上,进采用一个通路对不同类型的以太网报文进行处理,对可被抢占数据流和快速数据流的接收通路进行了合并处理,降低了实现成本。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (9)
1.一种以太网控制器,其特征在于,包括:
快速媒体访问控制模块,可抢占媒体访问控制模块,以太网报文接收模块,以及传输调度程序模块;所述传输调度程序模块与所述快速媒体访问控制模块,所述可抢占媒体访问控制模块,以及所述以太网报文接收模块连接;
所述快速媒体访问控制模块,用于接收快速数据流;为所述快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流;
所述可抢占媒体访问控制模块,用于接收可被抢占数据流;为所述可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流;
所述传输调度程序模块,用于接收可被抢占数据流对应的状态信息以及快速数据流的状态信息;根据所述可被抢占数据流对应的状态信息以及快速数据流的状态信息,向物理编码子层发送所述添加后的快速数据流和/或所述添加后的可被抢占数据流;
所述以太网报文接收模块,用于接收物理编码子层发送的以太网报文;根据所述以太网报文的类型,确定以太网报文的优先级;根据所述优先级发送以太网报文;
所述传输调度程序模块,具体用于:
接收可被抢占数据流对应的状态信息、快速数据流的状态信息,以及时间敏感调度模块发送的状态指令,所述状态指令包括保持或释放;
当所述状态指令为释放,快速数据流的状态信息为非空状态,以及可被抢占数据流对应的状态信息为存在可被抢占数据流时,按照以太网帧间隙,获取所述可抢占媒体访问控制模块发送的可被抢占数据流;
向物理编码子层发送所述可被抢占数据流。
2.根据权利要求1所述的以太网控制器,其特征在于,所述快速媒体访问控制模块包括:
第一传输总线接口模块,第一传输帧控制器模块,第一传输协议引擎模块;
所述第一传输总线接口模块,用于接收快速数据流;对所述快速数据流进行反压处理,获得反压处理后的快速数据流;向所述第一传输帧控制器模块发送所述反压处理后的快速数据流;
所述第一传输帧控制器模块,用于根据第一预设字节长度,对反压处理后的快速数据流的字节长度进行处理,获得处理后的快速数据流;向所述第一传输协议引擎模块发送处理后的快速数据流;
所述第一传输协议引擎模块,用于为所述处理后的快速数据流添加前导码和帧开始界定符,获得添加后的快速数据流。
3.根据权利要求2所述的以太网控制器,其特征在于,所述快速媒体访问控制模块还包括:第一传输流量控制模块;
所述第一传输流量控制模块,用于生成流控帧;向所述第一传输帧控制器模块发送所述流控帧;
所述第一传输帧控制器模块,还用于:
根据所述第一预设字节长度,对流控帧的字节长度进行处理,获得处理后的流控帧;根据所述处理后的快速数据流和所述处理后的流控帧的优先级,向所述第一传输协议引擎模块发送所述处理后的快速数据流和所述处理后的流控帧。
4.根据权利要求2所述的以太网控制器,其特征在于,所述快速媒体访问控制模块还包括:第一循环冗余校验模块;
所述第一循环冗余校验模块,用于对添加后的快速数据流进行校验。
5.根据权利要求1所述的以太网控制器,其特征在于,所述可抢占媒体访问控制模块包括:
第二传输总线接口模块,第二传输帧控制器模块,以及第二传输协议引擎模块;
所述第二传输总线接口模块,用于接收可被抢占数据流;对所述可被抢占数据流进行反压处理,获得反压处理后的可被抢占数据流;向所述第二传输帧控制器模块发送所述反压处理后的可被抢占数据流;
所述第二传输帧控制器模块,用于根据第二预设字节长度,对反压处理后的可被抢占数据流进行处理,获得处理后的可被抢占数据流;向所述第二传输协议引擎模块发送处理后的可被抢占数据流;
所述第二传输协议引擎模块,用于为所述处理后的可被抢占数据流添加前导码、帧开始界定符以及切片计数字段,获得添加后的可被抢占数据流。
6.根据权利要求5所述的以太网控制器,其特征在于,所述可抢占媒体访问控制模块还包括:第二循环冗余校验模块;
所述第二循环冗余校验模块,用于对添加后的可被抢占数据流进行校验。
7.根据权利要求1所述的以太网控制器,其特征在于,所述以太网报文接收模块包括:
接收协议引擎模块,接收帧控制器模块以及接收总线接口模块;
所述接收协议引擎模块,用于接收物理编码子层发送的以太网报文;将对所述以太网报文进行搜索得到的目标字段,从所述以太网报文中剥离,获得剥离后的以太网报文;对所述剥离后的以太网报文进行解码,获得解码后的以太网报文;向所述接收帧控制器模块发送解码后的以太网报文和所述目标字段;
所述接收帧控制器模块,用于根据所述目标字段,确定所述解码后的以太网报文的类型;根据所述以太网报文的类型,确定以太网报文的优先级;根据所述优先级向所述接收总线接口模块发送以太网报文。
8.根据权利要求7所述的以太网控制器,其特征在于,所述以太网报文接收模块还包括:
第三循环冗余校验模块,用于对接收的以太网报文进行校验。
9.根据权利要求7所述的以太网控制器,其特征在于,所述接收帧控制器模块包括:
写入模块,快速数据流缓存模块,可被抢占数据流缓存模块以及读取模块;
所述写入模块,用于接收所述接收协议引擎模块发送的解码后的以太网报文和所述目标字段;根据所述目标字段,将以太网报文发送至与所述以太网报文的类型对应的缓存模块,所述以太网报文的类型包括快速数据流和可被抢占数据流,所述目标字段与所述以太网报文的类型对应,所述快速数据流对应的缓存模块为快速数据流缓存模块,所述可被抢占数据流对应的缓存模块为可被抢占数据流缓存模块;
所述快速数据流缓存模块,用于缓存所述写入模块发送的快速数据流;
所述可被抢占数据流缓存模块,用于缓存所述写入模块发送的可被抢占数据流;
所述读取模块,用于根据所述快速数据流和所述可被抢占数据流的优先级,向所述接收总线接口模块发送所述快速数据流和所述可被抢占数据流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310892065.0A CN116668376B (zh) | 2023-07-19 | 2023-07-19 | 一种以太网控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310892065.0A CN116668376B (zh) | 2023-07-19 | 2023-07-19 | 一种以太网控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116668376A CN116668376A (zh) | 2023-08-29 |
CN116668376B true CN116668376B (zh) | 2024-02-13 |
Family
ID=87719310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310892065.0A Active CN116668376B (zh) | 2023-07-19 | 2023-07-19 | 一种以太网控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116668376B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1850534A1 (en) * | 2006-04-28 | 2007-10-31 | Alcatel Lucent | A method of performing a handover |
CN111193635A (zh) * | 2018-11-14 | 2020-05-22 | 是德科技股份有限公司 | 测量递送等待时间的方法、系统和计算机可读介质 |
CN112105080A (zh) * | 2020-11-18 | 2020-12-18 | 之江实验室 | 一种时间敏感网络数据传输系统及传输方法 |
CN113890859A (zh) * | 2021-11-16 | 2022-01-04 | 腾讯科技(深圳)有限公司 | 数据传输方法、设备、介质及产品 |
CN114465961A (zh) * | 2022-04-13 | 2022-05-10 | 之江实验室 | 一种兼容性网络高实时数据传输装置及方法 |
CN115378874A (zh) * | 2022-10-20 | 2022-11-22 | 北京智芯微电子科技有限公司 | 数据发送、接收方法、装置、电子设备、芯片及存储介质 |
CN115883484A (zh) * | 2021-09-24 | 2023-03-31 | 苏州盛科通信股份有限公司 | 报文转发方法、装置、设备和存储介质 |
CN115914134A (zh) * | 2022-11-14 | 2023-04-04 | 中国第一汽车股份有限公司 | 一种基于tsn帧抢占机制的车载以太网数据传输方法及装置 |
CN116032846A (zh) * | 2022-11-17 | 2023-04-28 | 中国第一汽车股份有限公司 | 支持帧抢占的mac ip核装置、支持帧抢占的数据帧发送方法和接收方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101984515B1 (ko) * | 2016-09-28 | 2019-05-31 | 엘지전자 주식회사 | 냉장고 및 이를 포함하는 홈 오토메이션 시스템 |
-
2023
- 2023-07-19 CN CN202310892065.0A patent/CN116668376B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1850534A1 (en) * | 2006-04-28 | 2007-10-31 | Alcatel Lucent | A method of performing a handover |
CN111193635A (zh) * | 2018-11-14 | 2020-05-22 | 是德科技股份有限公司 | 测量递送等待时间的方法、系统和计算机可读介质 |
CN112105080A (zh) * | 2020-11-18 | 2020-12-18 | 之江实验室 | 一种时间敏感网络数据传输系统及传输方法 |
CN115883484A (zh) * | 2021-09-24 | 2023-03-31 | 苏州盛科通信股份有限公司 | 报文转发方法、装置、设备和存储介质 |
CN113890859A (zh) * | 2021-11-16 | 2022-01-04 | 腾讯科技(深圳)有限公司 | 数据传输方法、设备、介质及产品 |
CN114465961A (zh) * | 2022-04-13 | 2022-05-10 | 之江实验室 | 一种兼容性网络高实时数据传输装置及方法 |
CN115378874A (zh) * | 2022-10-20 | 2022-11-22 | 北京智芯微电子科技有限公司 | 数据发送、接收方法、装置、电子设备、芯片及存储介质 |
CN115914134A (zh) * | 2022-11-14 | 2023-04-04 | 中国第一汽车股份有限公司 | 一种基于tsn帧抢占机制的车载以太网数据传输方法及装置 |
CN116032846A (zh) * | 2022-11-17 | 2023-04-28 | 中国第一汽车股份有限公司 | 支持帧抢占的mac ip核装置、支持帧抢占的数据帧发送方法和接收方法 |
Non-Patent Citations (1)
Title |
---|
基于IEC61850标准的前置数据采集单元的研究;方善忠;中国优秀硕士学位论文全文数据库 信息科技辑;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116668376A (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110798415B (zh) | 一种业务传输的方法、设备及计算机存储介质 | |
EP3573297B1 (en) | Packet processing method and apparatus | |
US7570654B2 (en) | Switching device utilizing requests indicating cumulative amount of data | |
US8254248B2 (en) | Method and system for implementing redundancy for streaming data in audio video bridging networks | |
US7697529B2 (en) | Fabric channel control apparatus and method | |
US20110261814A1 (en) | Packet preemption for low latency | |
US7602809B2 (en) | Reducing transmission time for data packets controlled by a link layer protocol comprising a fragmenting/defragmenting capability | |
US20130016724A1 (en) | Link layer preemption | |
CN110875796B (zh) | 物理层端口通道化的方法和装置 | |
EP3968586B1 (en) | Packet processing method and related apparatus | |
WO2023197620A1 (zh) | 兼容性网络的确定性数据传输装置及方法 | |
CN115378874B (zh) | 数据发送、接收方法、装置、电子设备、芯片及存储介质 | |
CN103795655A (zh) | 数据传输方法及装置 | |
WO2022068633A1 (zh) | 一种切片帧的发送方法及装置 | |
CN116668376B (zh) | 一种以太网控制器 | |
US20200177305A1 (en) | Service multiplexing method, service demultiplexing method, and related device | |
CN112565105A (zh) | 一种降低时间敏感帧转发时延的方法、装置及设备 | |
CN111865813A (zh) | 一种基于反ecn标记的数据中心网络传输控制方法、系统及可读存储介质 | |
WO2020087250A1 (zh) | 一种数据发送方法、装置及FlexE交换系统 | |
CN116346720A (zh) | 一种传输信息的装置和方法 | |
CN114500692A (zh) | 一种时间敏感网络帧抢占优化方法 | |
Rütsche et al. | Architectures of Multimedia Communication Subsystems. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |