CN111158588A - 一种双倍速率控制方法及系统 - Google Patents

一种双倍速率控制方法及系统 Download PDF

Info

Publication number
CN111158588A
CN111158588A CN201911277953.1A CN201911277953A CN111158588A CN 111158588 A CN111158588 A CN 111158588A CN 201911277953 A CN201911277953 A CN 201911277953A CN 111158588 A CN111158588 A CN 111158588A
Authority
CN
China
Prior art keywords
data
packet
rate control
address
control method
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
CN201911277953.1A
Other languages
English (en)
Other versions
CN111158588B (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 University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201911277953.1A priority Critical patent/CN111158588B/zh
Publication of CN111158588A publication Critical patent/CN111158588A/zh
Application granted granted Critical
Publication of CN111158588B publication Critical patent/CN111158588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种双倍速率控制方法及系统,其中,所述双倍速率控制方法包括:S1:通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;S2:若所述数据段属于MAC帧,设定帧区地址位;S3:将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行步骤S2直至数据存放完毕;S4:通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。

Description

一种双倍速率控制方法及系统
技术领域
本发明涉及网络领域,特别涉及一种双倍速率控制方法及系统。
背景技术
随着高性能计算和人工智能技术的快速发展以及大数据的爆发式增长,具有可编程性的FPGA,以其集成度高、处理速度快、执行效率高等优点广泛的应用于加速计算、压缩、解压缩、人工智能等领域。DDR SDRAM(双倍速率同步动态随机存储器),是当下常用的存储装置。现有的DDR系统结构仅包括简单的DDR控制器接口与DDR存储器(双倍速率存储器)。系统结构单一,效率低下,无法满足系统多样性和高效性的要求。
(1)DDR控制器一般结构
如图1所示,DDR系统通常包括一个DDR控制器(DDR controller)和一个DDR存储器(DDR memory),DDR控制器根据DDR规范中定义的时序,向DDR存储器发出初始化、读、写操作等命令,DDR存储器根据DDR规范的定义正确地响应接收到的命令,接收或者发送DDR控制器命令的数据。
DDR控制器的核心是内存接口生成器(Memory Interface Generator,MIG)。DDR3芯片包含64位ddr3_dq、14位ddr3_addr、3位ddr3_ba等外设接口,MIG的存在可以更方便地通过总线,让FPGA对其进行控制。但一般的DDR控制器仅能保证基本的数据写入、读出,数据没有任何分辨能力,属于非智能控制器。同时,由于ddr3_dq是读写共用数据线,一般的DDR控制器无法保证数据的可靠性;部分开发者通过读写等待的方式保证可靠性,但效率依然低下。
(2)网络节点的MAC帧压缩和IP包分类汇聚
通信网络是指将各个孤立的设备进行物理连接,实现人与人,人与计算机,计算机与计算机之间进行信息交换的链路,从而达到资源共享和通信的目的。网络节点是指一台计算机或其他设备与一个有独立地址和具有传送或接收数据功能的网络相连。节点可以是工作站、客户、网络用户或个人计算机,还可以是服务器、打印机和其他网络连接的设备。每一个工作站﹑服务器、终端设备、网络设备,即拥有自己唯一网络地址的设备都是网络节点。
网络节点在通信的过程中,可以分别作为源节点、核心节点(中间节点)、目的节点。每一次通信都是源节点产生数据,经过核心节点(两点通信时不经过),发送给目的节点的过程。通信链路中的数据一般都是以数据包的形式传输,但源节点处的有用数据可能是以MAC帧或IP包的形式出现,这就需要MAC帧压缩和IP包分类汇聚,如图2所示。
而压缩和汇聚过程是需要对数据进行缓存的,这就是需要DDR存储器以及与功能配套的DDR控制器的辅助。
为解决现用技术问题的上述缺陷,有必要提出一种新的双倍速率控制方法及系统,以替代现有的控制方法。
发明内容
有鉴于此,本发明的目的是提出一种基于FPGA的集成了MAC帧压缩和IP包分类汇聚的DDR控制方法。通过在控制器平面加入集成控制机制,充分协调MAC帧压缩存储和IP包分类存储任务,从而合理充分地利用DDR的存储资源。同时通过读写控制办法,保证单压缩多汇聚过程以及数据读出过程同步高效进行,在不增加硬件设备的前提下,保障存取数据的高效有序。
为实现上述目的,本发明提出了一种双倍速率控制方法,其中,所述双倍速率控制方法包括:
S1:通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;
S2:若所述数据段属于MAC帧,设定帧区地址位;
S3:将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行步骤S2直至数据存放完毕;
S4:通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。
如上所述的双倍速率控制方法,其中,在步骤S1中,通过对数据中特定字段的识别,确定所述数据段是否属于IP包。
如上所述的双倍速率控制方法,其中,若所述数据段属于IP包,则执行:
捕获IP包的关键分类信息;
设定包区地址位;
将所述IP包存放在当前包区地址位下,并将地址位改为接下来的地址。
如上所述的双倍速率控制方法,其中,所述关键分类信息包括IP地址。
如上所述的双倍速率控制方法,其中,在步骤S3中,在将地址位改为接下来的地址和重复执行步骤S2直至数据存储完毕之间还包括:
判定所述接下来的地址所对应的数据属于IP包还是属于MAC帧。
如上所述的双倍速率控制方法,其中,步骤S4包括:
响应于判定写使能信号和读使能均升高,则判定当前状态有无读写;
若当前状态无读写,进入写数据/读数据状态并开始写/读;若当前状态有读写,则等待写/读的结束信号直至所述使能信号和读使能不同时升高。
本发明还提出了一种双倍速率控制系统,其中,所述双倍速率控制系统包括:
识别模块,用于通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;
设定模块:若所述数据段属于MAC帧,用于设定帧区地址位;
执行模块,用于将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行设定帧区地址位直至数据存放完毕;
集成模块,用于通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。
如上所述的双倍速率控制系统系统,其中,所述识别模块还确定所述数据段是否属于IP包,若所述数据段属于IP包,所述执行模块执行:
捕获IP包的关键分类信息;
设定包区地址位;
将所述IP包存放在当前包区地址位下,并将地址位改为接下来的地址。
本发明还提出了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述的双倍速率控制方法的步骤。
本发明还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述的双倍速率控制方法的步骤。
附图说明
图1为现有技术的DDR控制器一般结构的示意图;
图2为现有技术的MAC帧压缩和IP包分类汇聚示意图;
图3为本发明的双倍速率控制方法的流程图;
图4为本发明的MAC帧和IP包在写FIFO中存储的示意结构图;
图5为本发明的伪同步读写方案的具体实现流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
下面结合附图详细说明本发明实施例的技术方案。
如图3所示,本发明提出了一种双倍速率(DDR)控制方法,其中,所述双倍速率控制方法包括:
S1:通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;
S2:若所述数据段属于MAC帧,设定帧区地址位;
S3:将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行步骤S2直至数据存放完毕;
S4:通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。
现结合图4和图5对本发明的双倍速率控制方法进行详细的说明,以使本发明清楚,其并非旨于对本发明的限制。
具体地,本发明着眼于DDR在通信网络节点处的需求与使用,抓住通信网络源节点MAC帧压缩和IP包分类汇聚的需求,解决现有DDR控制器低效不可靠的问题。同时,本发明通过对DDR控制器的探索,提供了DDR控制器多样性开发的接口,使其适应多种系统。
本发明的双倍速率控制方法主要包括以下步骤。
1.MAC帧压缩和IP包分类汇聚的集成
图4给出了MAC帧和IP包在写FIFO(先进先出,功能是数据集中起来进行进机和存储)中存储的示意结构,即交叉无IDLE乱序存储。当FIFO符合写入DDR的条件时,通过对数据中特定字段的识别,确定该数据段是属于MAC帧还是IP包。
1)对于MAC帧的情况
步骤1:设定帧区地址位——从DDR的存储空间中开辟出两块空间,分别称为帧区和包区,帧区空间为一个整体,顺次存放MAC帧;包区空间被进一步划分为多个部分,每个部分代表一个类型。
步骤2:将该MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址。
步骤3:判定后面的数据情况——如果没有数据,则结束流程;如果后面的数据是IP包,则改为开始执行IP包的分支情况;如果仍为MAC帧,进入步骤4。
步骤4:向当前地址位存放定长的IDLE——长度一般为位宽乘2或乘3,保证MAC帧之间的独立性,也避免MAC帧之间的大间隔。该步骤执行过后,即进入针对下一个MAC帧的步骤2。
2)对于IP包的情况
步骤1:捕获IP包的关键分类信息——由于源节点分类的目的一般是将目的节点不同的IP包分开,因此分类信息一般提取目的节点的IP地址。(此处可以扩展为多种不同的分类方式,本发明都是兼容的)
步骤2:设定包区地址位——包区空间进一步划分的依据同样是目的节点的IP地址。因此设定的是具体的空间地址。
步骤3:将该IP包存放在当前包区地址位下,并将地址位改为接下来的地址。
2.读写控制方法
由于本发明集成了MAC帧压缩和IP包分类汇聚,读写过程也较一般的DDR系统复杂许多,因此一般的DDR控制器无法完成读写的协调控制。同时,由于存在多种读写情况,读写等待方案在集成的方案下效率会更加低下,甚至会出现资源溢出等引起的系统崩溃。
如图5所示,本发明通过伪同步的方案,将DDR的物理接口最大化的利用,从而一方面满足了MAC帧压缩和IP包分类汇聚的集成,另一方面提高读写效率,可以满足更高速的读取需求。
步骤1:判断读写状态——wr_en(写使能)、rd_en(读使能)两个信号指示读写任务的状态,当写/读操作需要进行时,wr_en/rd_en信号将被拉高。当二者其一拉高时,完成单一写/读操作即可;当二者同时拉高时,进入步骤2。
步骤2:判断当前状态——分为IDLE(无读写)、WR_DATA(写数据)、RD_DATA(读数据)三个状态。若为IDLE状态,进入步骤3;若非IDLE状态,进入步骤4。
步骤3:强制进入WR_DATA/RD_DATA状态,并开始写/读——此处属于读写平权的状态,因此可以根据需要决定首先开始进行写操作还是读操作。但由于初始化状态一般是DDR为空,所以一般此处强制进入WR_DATA。
步骤4:等待write_cmptd/read_cmptd信号——write_cmptd/read_cmptd是写/读的结束信号,代表一次的写/读完成,在WR_DATA/RD_DATA即将跳转到其他状态时拉高。当write_cmptd/read_cmptd拉高时,若此时wr_en和rd_en依然同时拉高,则交换读写状态——即WR_DATA转为RD_DATA、RD_DATA转为WR_DATA。步骤4经过多次执行,直到wr_en和rd_en不同时拉高。
本发明还提出了一种双倍速率控制系统,其中,所述双倍速率控制系统包括:识别模块,用于通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧(即用于上述步骤S1);
设定模块:若所述数据段属于MAC帧,用于设定帧区地址位(即用于上述步骤S2);
执行模块,用于将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行设定帧区地址位(即步骤S2)直至数据存放完毕(即用于上述步骤S3);
集成模块,用于通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成(即用于上述步骤S4)。
本发明提出了一种基于FPGA的单压缩多汇聚集成DDR控制方案,具体涉及了MAC帧压缩和IP包分类汇聚的集成,以及与之配套并能提高读写效率的伪同步读写方案。利用数据特定字段的识别,简单有效地将MAC帧和IP包加以区分;对于区分的MAC帧和IP包,利用从DDR中开辟的帧区和包区,采取不同策略,分别对其进行存储,保证可靠性。同时,提出了与集成方案相配的伪同步读写方案,一方面使集成方案的可靠性得以实现,另一方面也提高了DDR的读写效率,可以满足更高速的读取需求。
本发明从对DDR控制方案进行了跨越性的改进和深度的优化,使DDR可以满足多样性集成性的需求,同时优化了读写方案,既满足了多样性控制器的可靠性,又使得DDR的高速性得以体现。
本发明一实施例提供的了一种终端设备。该实施例的终端设备包括:处理器、存储器以及存储在存储器中并可在处理器上运行的计算机程序,例如一种数据帧汇聚和组装程序。处理器执行计算机程序时实现上述数据帧汇聚和组装方法的实施例中的各个步骤。或者,处理器执行计算机程序时实现上述各数据帧汇聚和组装系统的实施例中各模块/单元的功能,例如上述系统的各个模块的功能。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器中,并由处理器执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在终端设备中的执行过程。
终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,其仅仅为终端设备的示例,并不构成对终端设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可以是终端设备的内部存储单元,例如终端设备的硬盘或内存。存储器也可以是终端设备的外部存储设备,例如终端设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器还可以既包括终端设备的内部存储单元也包括外部存储设备。存储器用于存储计算机程序以及终端设备所需的其它程序和数据。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种双倍速率控制方法,其特征在于,所述双倍速率控制方法包括:
S1:通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;
S2:若所述数据段属于MAC帧,设定帧区地址位;
S3:将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行步骤S2直至数据存放完毕;
S4:通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。
2.如权利要求1所述的双倍速率控制方法,其特征在于,在步骤S1中,通过对数据中特定字段的识别,确定所述数据段是否属于IP包。
3.如权利要求2所述的双倍速率控制方法,其特征在于,若所述数据段属于IP包,则执行:
捕获IP包的关键分类信息;
设定包区地址位;
将所述IP包存放在当前包区地址位下,并将地址位改为接下来的地址。
4.如权利要求3所述的双倍速率控制方法,其特征在于,所述关键分类信息包括IP地址。
5.如权利要求3所述的双倍速率控制方法,其特征在于,在步骤S3中,在将地址位改为接下来的地址和重复执行步骤S2直至数据存储完毕之间还包括:
判定所述接下来的地址所对应的数据属于IP包还是属于MAC帧。
6.如权利要求1所述的双倍速率控制方法,其特征在于,步骤S4包括:
响应于判定写使能信号和读使能均升高,则判定当前状态有无读写;
若当前状态无读写,进入写数据/读数据状态并开始写/读;若当前状态有读写,则等待写/读的结束信号直至所述使能信号和读使能不同时升高。
7.一种双倍速率控制系统,其特征在于,所述双倍速率控制系统包括:
识别模块,用于通过对数据中特定字段的识别,确定所述数据段是否属于MAC帧;
设定模块:若所述数据段属于MAC帧,用于设定帧区地址位;
执行模块,用于将所述MAC帧存放在当前帧区地址位下,并将地址位改为接下来的地址,重复执行设定帧区地址位直至数据存放完毕;
集成模块,用于通过伪读写将MAC帧压缩和IP包进行分类汇聚的集成。
8.如权利要求7所述的双倍速率控制系统系统,其特征在于,所述识别模块还确定所述数据段是否属于IP包,若所述数据段属于IP包,所述执行模块执行:
捕获IP包的关键分类信息;
设定包区地址位;
将所述IP包存放在当前包区地址位下,并将地址位改为接下来的地址。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的双倍速率控制方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的双倍速率控制方法的步骤。
CN201911277953.1A 2019-12-12 2019-12-12 一种双倍速率控制方法及系统 Active CN111158588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911277953.1A CN111158588B (zh) 2019-12-12 2019-12-12 一种双倍速率控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911277953.1A CN111158588B (zh) 2019-12-12 2019-12-12 一种双倍速率控制方法及系统

Publications (2)

Publication Number Publication Date
CN111158588A true CN111158588A (zh) 2020-05-15
CN111158588B CN111158588B (zh) 2021-04-06

Family

ID=70557227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911277953.1A Active CN111158588B (zh) 2019-12-12 2019-12-12 一种双倍速率控制方法及系统

Country Status (1)

Country Link
CN (1) CN111158588B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783332A (zh) * 2004-11-29 2006-06-07 中兴通讯股份有限公司 双倍速动态随机存取存储器的读写方法
CN1812314A (zh) * 2005-01-24 2006-08-02 中兴通讯股份有限公司 不同速率数据的分组帧传输方法及装置
CN102014112A (zh) * 2010-01-29 2011-04-13 柳州市达迪通信设备有限公司 一种基于mac/ip地址分类统计的硬件实现方法
US20140040440A1 (en) * 2012-08-06 2014-02-06 American Megatrends, Inc. System and method of mac address assignment using dynamic mac address protocol

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783332A (zh) * 2004-11-29 2006-06-07 中兴通讯股份有限公司 双倍速动态随机存取存储器的读写方法
CN100511470C (zh) * 2004-11-29 2009-07-08 中兴通讯股份有限公司 双倍速动态随机存取存储器的读写方法
CN1812314A (zh) * 2005-01-24 2006-08-02 中兴通讯股份有限公司 不同速率数据的分组帧传输方法及装置
CN102014112A (zh) * 2010-01-29 2011-04-13 柳州市达迪通信设备有限公司 一种基于mac/ip地址分类统计的硬件实现方法
US20140040440A1 (en) * 2012-08-06 2014-02-06 American Megatrends, Inc. System and method of mac address assignment using dynamic mac address protocol

Also Published As

Publication number Publication date
CN111158588B (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
US10762003B2 (en) State change in systems having devices coupled in a chained configuration
CN114048164B (zh) 芯片互联方法、系统、设备及可读存储介质
US9489328B2 (en) System on chip and method for accessing device on bus
EP2985699B1 (en) Memory access method and memory system
CN107145311B (zh) 一种io数据处理方法及系统
CN104956440A (zh) 用于确定存储器的参考电压的装置、方法和系统
WO2016095435A1 (zh) 一种多芯片级联的方法、芯片和装置、存储介质
US20220137848A1 (en) Storage device and operating method of storage device
US12008270B2 (en) System, device, and method for memory interface including reconfigurable channel
CN104850516B (zh) 一种ddr变频设计方法和装置
CN109564562B (zh) 大数据运算加速系统和芯片
CN111158588B (zh) 一种双倍速率控制方法及系统
CN103514140A (zh) 用于实现可重构系统中配置信息多发射的重构控制器
CN209784995U (zh) 大数据运算加速系统和芯片
CN103838694A (zh) 一种fpga高速读取usb接口数据的方法
US11775225B1 (en) Selective message processing by external processors for network data storage devices
US20120191943A1 (en) Dynamic protocol for communicating command and address information
CN113821465A (zh) 基于sram的axi接口控制方法、装置及计算机设备
CN114238156A (zh) 处理系统以及操作处理系统的方法
CN108628776B (zh) 一种数据读写访问控制方法及装置
CN112740193B (zh) 大数据运算加速系统执行运算的方法
CN111444127A (zh) 一种数据外存扩展接口
US20120124272A1 (en) Flash memory apparatus
CN112380158B (zh) 一种面向深度学习的计算平台
CN115328827B (zh) 基于pcie的存储系统、方法及电子设备

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