CN113037604B - 一种基于两级描述符表征的以太网控制系统 - Google Patents
一种基于两级描述符表征的以太网控制系统 Download PDFInfo
- Publication number
- CN113037604B CN113037604B CN202110280813.0A CN202110280813A CN113037604B CN 113037604 B CN113037604 B CN 113037604B CN 202110280813 A CN202110280813 A CN 202110280813A CN 113037604 B CN113037604 B CN 113037604B
- Authority
- CN
- China
- Prior art keywords
- mac
- host
- engine
- data
- controller
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种基于两级描述符表征的以太网控制系统,PCIe控制器与主机BD引擎和MAC BD引擎形成的系统架构,主机BD引擎对通过PCIe控制器传输的主机BD以及数据的维护和管理,利用MAC BD引擎对MAC BD以及数据的维护和管理,完成MAC BD和数据分别在本地数据缓存与MAC控制器之间的传输,采用主机BD引擎和MAC BD引擎双引擎结构,避免数据在与MAC层进行交互才能实现收发的问题,可完全隔离控制器内部的数据平面与控制平面,采用MAC BD缓存和本地数据缓存分别进行数据缓存,具有较高的可扩展性和鲁棒性,可以很好的支撑未来产品对功能的扩展、更新以及性能的提升等需求,本发明可用于高带宽、高性能以太网控制器芯片中,能够支撑未来产品对功能的扩展、性能提升等需求。
Description
技术领域
本发明属于集成电路领域,涉及一种基于两级描述符表征的以太网控制系统。
背景技术
目前,在面向通用处理器的以太网控制器中,广泛采用描述符(以下简称BD,Buffer Descriptor)来对收发数据进行表征,以实现对内存中数据的高效管理和控制。简单来说,每个BD对应着主机内存中的一段存储区间,这些存储区间用来存放控制器收到的数据帧或者主机待发送的数据帧。对于接收来说,BD包含的信息指示了控制器应该将接收到的数据帧存储在内存的这些地址上;对于发送来说,BD包含的信息指示了控制器应该将这些内存地址上的数据帧发送到网络中。
无论是接收还是发送,每一个数据帧都至少对应一个BD。由于数据帧与BD一一对应,驱动程序通过对BD进行管理、更新,从而实现了对数据帧的管理。BD中所包含的信息除了一段主机内存地址外,还包含了所对应数据帧的一些状态信息。通过这些状态信息,以太网控制器会对数据帧进行相应的处理。
综上,对于以太网控制器,BD的存在解决了主机内存地址与控制器片内缓存的映射关系,从而驱动程序只需要对BD进行维护与更新,而控制器则根据BD中的信息完成相应数据帧在主机内存与控制器缓存间的传输。
然而,这种单级BD的方式只解决了主机内存与控制器缓存间的映射,实现了PCIe两侧数据流和控制流的独立,而并没有实现控制器内部以及以太网MAC两侧数据流与控制流的完全独立。事实上,控制器缓存中的数据,还需要与MAC层进行交互才能实现收发,而与MAC层的交互如果将数据流和控制流捆绑在一起进行,那么将会限制控制器的可扩展性和灵活性,同时降低了整体架构的鲁棒性。
发明内容
本发明的目的在于提供一种基于两级描述符表征的以太网控制系统,以克服现有技术的不足。
为达到上述目的,本发明采用如下技术方案:
一种基于两级描述符表征的以太网控制系统,包括PCIe控制器、主机BD引擎、主机BD缓存、MAC BD引擎、MAC BD缓存、MAC控制器、本地数据缓存、AHB矩阵单元、控制状态寄存器和物理层收发器;
PCIe控制器用于根据PCIe总线协议规范实现主机与MAC控制器之间的数据传输;
主机BD引擎用于对通过PCIe控制器传输的主机BD以及数据的维护和管理,完成主机BD、数据在MAC控制器与主机之间的传输,同时根据主机BD的使用状态向主机产生相应的中断;
主机BD缓存用于存储从主机获取到的主机BD,并供主机BD引擎访问;
MAC BD引擎用于对MAC BD以及数据的维护和管理,完成MAC BD和数据分别在本地数据缓存与MAC控制器之间的传输;
MAC BD缓存用于存储从MAC BD引擎所生成的MAC BD,并供MAC控制器访问;
MAC控制器用于处理介质访问的争用与冲突问题,实现收发数据以符合IEEE802.3协议规范的方式进行传输,同时根据MAC BD的描述完成数据在MAC控制器与本地数据缓存间的传输;
本地数据缓存用于存储主机内存中待发送的数据帧以及MAC控制器从网络中接收到的数据帧;
AHB矩阵单元用于为连接在该矩阵上的各个功能模块提供相互访问的路径,并在发生冲突或竞争时进行仲裁;
控制状态寄存器包括控制寄存器和状态寄存器,其中控制寄存器用来对各个模块的功能、工作模式进行配置,状态寄存器用来记录各个模块的工作状态;
物理层收发器用于实现IEEE 802.3协议中对物理层的要求,实现网络链路中模拟信号与控制器内部数字信号的转换及相应的编解码操作。
进一步的,PCIe控制器与主机之间采用串行差分信号进行信息传送;PCIe控制器与MAC控制器内部采用标准的AMBA AHB总线接口。
进一步的,PCIe控制器中包括两个独立的接收DMA和发送DMA,MAC BD引擎中包括两个独立的接收DMA和发送DMA,形成两级双向4DMA结构。
进一步的,主机BD引擎根据主机BD所提供的信息,通过PCIe控制器完成数据在主机内存与本地数据缓存之间的传输;主机BD包括主机接收BD和主机发送BD,主机接收BD供本地数据缓存中接收到的数据使用,主机发送BD则供主机内存中待发送的数据使用。
进一步的,主机BD缓存采用双端口RAM,其中一个端口与PCIe控制器连接,用来写入从主机获取的BD;另一个端口与主机BD引擎相连,用来读取主机BD缓存中的BD。
进一步的,对于接收过程,MAC BD引擎根据本地数据缓存中的空间生成相应的MAC接收BD,存放在MAC BD缓存中,生成相应的MAC接收BD供MAC控制器接收数据时使用,当MAC控制器使用完该BD且写回后,MAC BD引擎会对写回的BD进行分析,并向主机BD引擎发起通知,将该写回的BD的相关信息传输至主机BD引擎。
进一步的,对于发送过程,MAC BD引擎首先会对主机BD引擎传递的信息进行采样和分析,从而判断出所需要进行的操作;MAC BD引擎会根据主机BD引擎传递的信息生成相应的MAC发送BD。
进一步的,MAC BD引擎与主机BD引擎之间采用级间流水与预取的机制,级间流水为MAC BD引擎与主机BD引擎之间采用流水的方式来进行BD的处理;预取机制指当MAC BD引擎或主机BD引擎检测到当前BD未能完整的描述一个帧,在对该BD进行分析的同时,根据指针的信息预先获取下一个BD,直至获取到该数据帧所对应的最后一个BD。
进一步的,对于接收过程,当MAC控制器从物理层收发器获取到一帧数据后,首先会判断其是否符合IEEE 802.3协议要求,若符合,则从MAC BD缓存中获取MAC接收BD,并根据该BD的指示,将该数据帧传输到本地数据缓存中的指定地址;
对于发送过程,MAC控制器根据MAC BD引擎的指示,到MAC BD缓存中获取相应的MAC发送BD,并对该MAC发送BD进行解析,从而判断出待发送数据帧在本地数据缓存中的地址和长度信息;MAC控制器将数据从本地数据缓存传输到MAC控制器内部,并根据该BD的指示对数据帧进行相应的修改;然后根据IEEE 802.3协议的要求,将该数据帧发送到物理层收发器中;最后,将该数据帧的发送状态信息写入该BD,并将其返回至MAC BD缓存中进行更新。
进一步的,本地数据缓存包括两套数据读写接口,其中一套接口与PCIe控制器连接,另一套接口与MAC控制器连接。
与现有技术相比,本发明具有以下有益的技术效果:
本发明一种基于两级描述符表征的以太网控制系统,PCIe控制器与主机BD引擎和MAC BD引擎形成的系统架构,利用主机BD引擎对通过PCIe控制器传输的主机BD以及数据的维护和管理,利用MAC BD引擎对MAC BD以及数据的维护和管理,完成MAC BD和数据分别在本地数据缓存与MAC控制器之间的传输,采用主机BD引擎和MAC BD引擎双引擎结构,避免数据在与MAC层进行交互才能实现收发的问题,可完全隔离控制器内部的数据平面与控制平面,采用MAC BD缓存和本地数据缓存分别进行数据缓存,具有较高的可扩展性和鲁棒性,可以很好的支撑未来产品对功能的扩展、更新以及性能的提升等需求,本发明可用于高带宽、高性能以太网控制器芯片中,能够支撑未来产品对功能的扩展、性能提升等需求。
进一步的,MAC BD引擎中的两级DMA和PCIe控制器中的两级DMA分别在PCIe控制器和MAC BD引擎中实现,两级DMA之间通过本地数据缓存进行数据过渡和衔接,采用级间流水、BD预取、两级双向4DMA机制保证了数据转发处理的效率。
附图说明
图1为本发明实施例中控制系统框架图。
图2为本发明实施例中所采用的两级双向4DMA结构示意图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
如图1所示,一种基于两级描述符表征的以太网控制系统,包括PCIe控制器、主机BD引擎、主机BD缓存、MAC BD引擎、MAC BD缓存、MAC控制器、本地数据缓存、AHB矩阵单元、控制状态寄存器和物理层收发器;
PCIe控制器用于主机与MAC控制器之间的数据传输;
具体的,PCIe控制器根据PCIe总线协议规范,实现主机和MAC控制器之间的配置、BD传输、数据传输以及中断反馈。PCIe控制器与主机之间采用串行差分信号进行信息传送;PCIe控制器与MAC控制器内部采用标准的AMBA AHB总线接口。
为了提高数据传输的效率,PCIe控制器中包括两个独立的接收DMA和发送DMA,实现了数据在主机内存和本地数据缓存之间的快速传输。PCIe控制器中的接收DMA和发送DMA与MAC BD引擎中的DMA实现了两级DMA结构。
主机BD引擎用于对通过PCIe控制器传输的主机BD以及数据的维护和管理,完成主机BD、数据在MAC控制器与主机之间的传输,同时根据主机BD的使用状态向主机产生相应的中断。
主机BD引擎根据主机BD所提供的信息,通过PCIe控制器完成数据在主机内存与本地数据缓存之间的传输。其中,主机BD又分为主机接收BD和主机发送BD。主机接收BD供本地数据缓存中接收到的数据使用,而主机发送BD则供主机内存中待发送的数据使用。
具体来说,对于接收过程,主机BD引擎用于完成接收数据帧从MAC控制器中到主机内存的传输,即主机BD引擎会分别从本地数据缓存和主机BD缓存中获取接收到的数据帧及相应的主机BD信息,然后向PCIe控制器发起一个DMA请求,将本地数据缓存中的数据帧发送到该BD所描述的主机地址。
对于发送过程,主机BD引擎首先会从主机BD缓存中获取待发送的数据帧所对应的主机发送BD,然后向PCIe控制器发起一个DMA请求,将主机发送BD描述的主机地址上的数据帧传输到本地数据缓存;同时,主机BD引擎将该数据帧的相关信息及需要的操作传输至MACBD引擎,相关信息包括数据帧在本地数据缓存中的地址和长度;需要的操作包括是否进行TCP卸载、是否需要插入VLAN和是否需要增加1588时间戳。
主机BD引擎还需要根据主机BD的状态对中断进行管理:当主机BD缓存中的BD个数等于或少于控制状态寄存器设定的阈值,或主机接收、发送BD的使用量达到阈值时,主机BD引擎会向主机发起中断请求,并对主机BD缓存进行更新。
主机BD缓存用于存储从主机获取到的主机BD;具体包括主机接收BD和主机发送BD,并供主机BD引擎访问。主机BD缓存为一个双口RAM,其中一个端口与PCIe控制器连接,用来写入从主机获取的BD;另一个端口与主机BD引擎相连,用来读取主机BD缓存中的BD。
MAC BD引擎用于对MAC BD以及数据的维护和管理,完成MAC BD和数据分别在本地数据缓存与MAC控制器之间的传输;
对于接收过程,MAC BD引擎根据本地数据缓存中的空间生成相应的MAC接收BD,存放在MAC BD缓存中。生成相应的MAC接收BD供MAC控制器接收数据时使用。当MAC控制器使用完该BD且写回后,MAC BD引擎会对写回的BD进行分析,并向主机BD引擎发起通知,将该写回的BD的相关信息传输至主机BD引擎(即主机BD引擎接收数据的相关信息),相关信息包括数据在本地数据缓存中的地址,长度,类型以及是否需要进行特殊处理等。在此之后,MAC BD引擎会动态地对这些BD进行更新,以便MAC控制器在处理后续接收到的数据帧时使用。
对于发送过程,MAC BD引擎首先会对主机BD引擎传递的信息进行采样和分析,从而判断出所需要进行的操作;MAC BD引擎会根据主机BD引擎传递的信息生成相应的MAC发送BD,该MAC发送BD中包含待发送的数据帧的必要信息和需要进行的操作,包括数据在本地数据缓存中的地址,长度及是否需要进行数据帧的修改。待MAC控制器完成对该MAC发送BD的使用且写回后,MAC BD引擎会分析写回的BD,判断发送是否成功完成,并向主机BD引擎反馈相应的发送状态。
为了提高MAC BD引擎与主机BD引擎之间的交互及处理效率,采用了级间流水与预取的机制。级间流水是指MAC BD引擎与主机BD引擎之间采用流水的方式来进行BD的处理,即实现了两级的流水线。具体的,以接收为例,MAC BD引擎在处理完当前的MAC BD后,会开始继续处理下一个MAC BD,而主机BD引擎会同时开始处理与当前MAC BD所对应的主机BD。发送过程中的流水机制与之类似。
针对多个BD描述一个数据帧的情况,该架构中采用预取机制来提高处理效率,无论是MAC BD引擎还是主机BD引擎,当检测到当前BD未能完整的描述一个帧,即该数据帧有多个BD进行描述,那么在对该BD进行分析的同时,会根据指针的信息预先获取下一个BD,直至获取到该数据帧所对应的最后一个BD。这样一来,可以实现对BD的连续分析和处理,从而避免了获取BD的等待时间。
MAC BD引擎中包括两个独立的接收DMA和发送DMA,这样结合PCIe控制器中的两个独立的接收DMA和发送DMA,形成了两级双向4DMA的设计,即在数据传输路径中为每一级分配收发两个独立的DMA,从而保证了传输的效率和质量。两级双向4DMA的结构如图2所示。
MAC BD缓存用于存储从MAC BD引擎所生成的MAC BD,包括MAC接收BD和MAC发送BD,并供MAC控制器访问。MAC BD缓存为一个双口RAM,其中一个端口与MAC BD引擎连接,用来写入MAC BD引擎生成的BD;另一个端口与MAC控制器相连,用来读取缓存中的BD。
MAC控制器用于处理介质访问的争用与冲突问题,实现收发数据以符合IEEE802.3协议规范的方式进行传输,同时根据MAC BD的描述完成数据在MAC控制器与本地数据缓存间的传输。
对于接收过程,当MAC控制器从物理层收发器获取到一帧数据后,首先会判断其是否符合IEEE 802.3协议要求,若符合,则从MAC BD缓存中获取MAC接收BD,并根据该BD的指示,将该数据帧传输到本地数据缓存中的指定地址。其中,传输的过程采用专用的接收DMA进行,且在传输前会根据BD的指示对数据帧进行相应的修改。传输完成后,对该MAC BD进行写回,即将该数据帧的相关信息写入该MAC BD并将其返回至MAC BD缓存。
对于发送过程,MAC控制器会根据MAC BD引擎的指示,到MAC BD缓存中获取相应的MAC发送BD,并对该MAC发送BD进行解析,从而判断出待发送数据帧在本地数据缓存中的地址和长度信息;接着,MAC控制器会启动专用的发送DMA,将数据从本地数据缓存传输到MAC控制器内部,并根据该BD的指示对数据帧进行相应的修改;接下来,根据IEEE 802.3协议的要求,将该数据帧发送到物理层收发器中;最后,将该数据帧的发送状态信息写入该BD,并将其返回至MAC BD缓存中进行更新。
本地数据缓存用于存储主机内存中待发送的数据帧以及MAC控制器从网络中接收到的数据帧,本地数据缓存包括两套数据读写接口,其中一套接口与PCIe控制器连接,另一套接口与MAC控制器连接。
本地数据缓存内部包含两块缓存,分别为接收数据缓存和发送数据缓存;每一块缓存为一个双口RAM,对于接收数据缓存,其两个接口分别连接MAC控制器的主机接口和PCIe控制器的从机接口;对于发送数据缓存,其两个接口分别连接PCIe控制器的主机接口和MAC控制器的从机接口。
AHB矩阵单元用于为连接在该矩阵上的各个功能模块提供相互访问的路径,并在发生冲突或竞争时进行仲裁。AHB矩阵单元采用标准的AHB主机、从机接口,并在内部定义了各个主机、从机之间的访问关系及优先级。
控制状态寄存器包括控制寄存器和状态寄存器,其中控制寄存器用来对各个模块的功能、工作模式进行配置,而状态寄存器用来记录各个模块的工作状态。
物理层收发器用于实现IEEE 802.3协议中对物理层的要求,实现网络链路中模拟信号与控制器内部数字信号的转换及相应的编解码操作,支持的标准例如但不限于1000BASE-T,1000BASE-X。
本发明采用主机BD引擎和MAC BD引擎结构,MAC BD引擎中的两级DMA和PCIe控制器中的两级DMA分别在PCIe控制器和MAC BD引擎中实现,两级DMA之间通过本地数据缓存进行数据过渡和衔接,可完全隔离控制器内部的数据平面与控制平面,采用级间流水、BD预取、两级双向4DMA机制保证了数据转发处理的效率,同时具有较高的可扩展性和鲁棒性,可以很好的支撑未来产品对功能的扩展、更新以及性能的提升等需求。本发明可用于高带宽、高性能以太网控制器芯片中,能够支撑未来产品对功能的扩展、性能提升等需求。在具体的实施例中,选择自主研发的千兆以太网控制器LC82574为对象,将该发明的架构在设计中进行实现,并进行系统级、芯片级的验证。LC82574是一款面向通用处理器的单端口千兆以太网控制器,支持1000BASE-T,支持PCIe X1 Gen1.0/2.0,具有SPI接口和SMBus、NC-SI接口,支持TCP/UDP大段卸载、ARP协议卸载、IP/TCP/UDP校验和卸载、RSS接收端调控、SPH帧头分离、1588时钟同步、Wake_on_Lan局域网唤醒等扩展功能。
Claims (8)
1.一种基于两级描述符表征的以太网控制系统,其特征在于,包括PCIe控制器、主机BD引擎、主机BD缓存、MAC BD引擎、MAC BD缓存、MAC控制器、本地数据缓存、AHB矩阵单元、控制状态寄存器和物理层收发器;
PCIe控制器用于根据PCIe总线协议规范实现主机与MAC控制器之间的数据传输;
主机BD引擎用于对通过PCIe控制器传输的主机BD以及数据的维护和管理,完成主机BD、数据在MAC控制器与主机之间的传输,同时根据主机BD的使用状态向主机产生相应的中断;
主机BD缓存用于存储从主机获取到的主机BD,并供主机BD引擎访问;
MAC BD引擎用于对MAC BD以及数据的维护和管理,完成MAC BD和数据分别在本地数据缓存与MAC控制器之间的传输;
MAC BD缓存用于存储从MAC BD引擎所生成的MAC BD,并供MAC控制器访问;
MAC控制器用于处理介质访问的争用与冲突问题,实现收发数据以符合IEEE 802.3协议规范的方式进行传输,同时根据MAC BD的描述完成数据在MAC控制器与本地数据缓存间的传输;
本地数据缓存用于存储主机内存中待发送的数据帧以及MAC控制器从网络中接收到的数据帧;
AHB矩阵单元用于为连接在该矩阵上的各个功能模块提供相互访问的路径,并在发生冲突或竞争时进行仲裁;
控制状态寄存器包括控制寄存器和状态寄存器,其中控制寄存器用来对各个模块的功能、工作模式进行配置,状态寄存器用来记录各个模块的工作状态;
物理层收发器用于实现IEEE 802.3协议中对物理层的要求,实现网络链路中模拟信号与控制器内部数字信号的转换及相应的编解码操作;PCIe控制器与主机之间采用串行差分信号进行信息传送;PCIe控制器与MAC控制器内部采用标准的AMBA AHB总线接口;PCIe控制器中包括两个独立的接收DMA和发送DMA,MAC BD引擎中包括两个独立的接收DMA和发送DMA,形成两级双向4DMA结构。
2.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,主机BD引擎根据主机BD所提供的信息,通过PCIe控制器完成数据在主机内存与本地数据缓存之间的传输;主机BD包括主机接收BD和主机发送BD,主机接收BD供本地数据缓存中接收到的数据使用,主机发送BD则供主机内存中待发送的数据使用。
3.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,主机BD缓存采用双端口RAM,其中一个端口与PCIe控制器连接,用来写入从主机获取的BD;另一个端口与主机BD引擎相连,用来读取主机BD缓存中的BD。
4.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,对于接收过程,MAC BD引擎根据本地数据缓存中的空间生成相应的MAC接收BD,存放在MAC BD缓存中,生成相应的MAC接收BD供MAC控制器接收数据时使用,当MAC控制器使用完该BD且写回后,MAC BD引擎会对写回的BD进行分析,并向主机BD引擎发起通知,将该写回的BD的相关信息传输至主机BD引擎。
5.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,对于发送过程,MAC BD引擎首先会对主机BD引擎传递的信息进行采样和分析,从而判断出所需要进行的操作;MAC BD引擎会根据主机BD引擎传递的信息生成相应的MAC发送BD。
6.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,MAC BD引擎与主机BD引擎之间采用级间流水与预取的机制,级间流水为MAC BD引擎与主机BD引擎之间采用流水的方式来进行BD的处理;预取机制指当MAC BD引擎或主机BD引擎检测到当前BD未能完整的描述一个帧,在对该BD进行分析的同时,根据指针的信息预先获取下一个BD,直至获取到该数据帧所对应的最后一个BD。
7.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,对于接收过程,当MAC控制器从物理层收发器获取到一帧数据后,首先会判断其是否符合IEEE802.3协议要求,若符合,则从MAC BD缓存中获取MAC接收BD,并根据该BD的指示,将该数据帧传输到本地数据缓存中的指定地址;
对于发送过程,MAC控制器根据MAC BD引擎的指示,到MAC BD缓存中获取相应的MAC发送BD,并对该MAC发送BD进行解析,从而判断出待发送数据帧在本地数据缓存中的地址和长度信息;MAC控制器将数据从本地数据缓存传输到MAC控制器内部,并根据该BD的指示对数据帧进行相应的修改;然后根据IEEE 802.3协议的要求,将该数据帧发送到物理层收发器中;最后,将该数据帧的发送状态信息写入该BD,并将其返回至MAC BD缓存中进行更新。
8.根据权利要求1所述的一种基于两级描述符表征的以太网控制系统,其特征在于,本地数据缓存包括两套数据读写接口,其中一套接口与PCIe控制器连接,另一套接口与MAC控制器连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110280813.0A CN113037604B (zh) | 2021-03-16 | 2021-03-16 | 一种基于两级描述符表征的以太网控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110280813.0A CN113037604B (zh) | 2021-03-16 | 2021-03-16 | 一种基于两级描述符表征的以太网控制系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113037604A CN113037604A (zh) | 2021-06-25 |
CN113037604B true CN113037604B (zh) | 2022-09-13 |
Family
ID=76470784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110280813.0A Active CN113037604B (zh) | 2021-03-16 | 2021-03-16 | 一种基于两级描述符表征的以太网控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113037604B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255597A (zh) * | 2016-12-28 | 2018-07-06 | 华耀(中国)科技有限公司 | 基于物理功能的mac地址分配虚拟功能的mac地址方法 |
CN108664444A (zh) * | 2017-03-31 | 2018-10-16 | 北京大学 | 基于fpga上微处理器的可重构无线mac层结构 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100579125C (zh) * | 2007-06-22 | 2010-01-06 | 中兴通讯股份有限公司 | 一种pci以太网媒体访问控制器传输数据的方法 |
US7936772B2 (en) * | 2007-07-13 | 2011-05-03 | International Business Machines Corporation | Enhancement of end-to-end network QoS |
US9730075B1 (en) * | 2015-02-09 | 2017-08-08 | Symantec Corporation | Systems and methods for detecting illegitimate devices on wireless networks |
CN107231319A (zh) * | 2017-07-17 | 2017-10-03 | 西安微电子技术研究所 | 一种基于amba‑ahb总线的千兆网络控制电路 |
CN108920252A (zh) * | 2018-06-15 | 2018-11-30 | 西安微电子技术研究所 | 一种基于多队列千兆以太网控制器的io虚拟化装置 |
CN109471816B (zh) * | 2018-11-06 | 2021-07-06 | 西安微电子技术研究所 | 一种基于描述符的pcie总线dma控制器及数据传输控制方法 |
CN112306928B (zh) * | 2020-11-19 | 2023-02-28 | 山东云海国创云计算装备产业创新中心有限公司 | 一种面向流传输的直接内存访问方法以及dma控制器 |
-
2021
- 2021-03-16 CN CN202110280813.0A patent/CN113037604B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255597A (zh) * | 2016-12-28 | 2018-07-06 | 华耀(中国)科技有限公司 | 基于物理功能的mac地址分配虚拟功能的mac地址方法 |
CN108664444A (zh) * | 2017-03-31 | 2018-10-16 | 北京大学 | 基于fpga上微处理器的可重构无线mac层结构 |
Non-Patent Citations (1)
Title |
---|
MAC protection of the OpenNebula Cloud environment;Z.Afoulki,A.Bousquet,J.Briffaut,J.Rouzaud-Cornabas,C.Toinard;《2012 International Conference on High Performance Computing & Simulation (HPCS)》;20120816;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113037604A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9996491B2 (en) | Network interface controller with direct connection to host memory | |
EP1709543B1 (en) | A multiple address two channel bus structure | |
KR101077900B1 (ko) | 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치 | |
US7596641B2 (en) | System and method for transmitting data packets in a computer system having a memory hub architecture | |
CN100414908C (zh) | 一种支持虚拟接口的存储网络适配器 | |
US7739425B2 (en) | Two channel computer bus architecture | |
CN109981431B (zh) | 一种can总线控制器数据存储电路及数据存储方法 | |
CN109800193B (zh) | 一种ahb总线访问片上sram的桥接装置 | |
CN111338996B (zh) | 一种支持多协议的复合总线控制器 | |
US20070204091A1 (en) | Single Bus Command for Transferring Data in a Processing System | |
CN113961494B (zh) | 一种pcie总线与axi总线的桥接系统 | |
US6516371B1 (en) | Network interface device for accessing data stored in buffer memory locations defined by programmable read pointer information | |
JP2003296267A (ja) | バスシステム及びバスシステムを含む情報処理システム | |
US6754780B1 (en) | Providing data in response to a read command that maintains cache line alignment | |
CN117093157B (zh) | 一种用于单向光传输的ddr高速读写方法及系统 | |
CN113037604B (zh) | 一种基于两级描述符表征的以太网控制系统 | |
JP3578075B2 (ja) | ディスクアレイ制御装置及びディスクアレイ制御方法 | |
CN109840233A (zh) | 基于fpga的60x总线桥接系统、方法及介质 | |
CN109522251A (zh) | 一种基于PXIe总线的高速同步串口卡及其工作方法 | |
CN110765046A (zh) | 一种动态可重构高速串行总线的dma传输装置与方法 | |
US20030196004A1 (en) | Buffering and presenting chunks | |
US11789884B2 (en) | Bus system and method for operating a bus system | |
JP2003308288A (ja) | マイクロコンピュータシステム | |
US20080005366A1 (en) | Apparatus and methods for handling requests over an interface | |
US6915356B1 (en) | Register addresses optimum access |
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 |