一种数据的转发方法及装置制造方法及图纸

技术编号:17366079 阅读:38 留言:0更新日期:2018-02-28 17:56
本发明专利技术提供一种数据的转发方法及装置,方法包括:若第一存储模块需要转发数据,则通过第一存储模块向控制模块发送请求指令;若控制模块接收到请求指令,则通过控制模块为第一存储模块对应的第一入端口确定第一出端口及第一索引值;通过控制模块向第一存储模块发送携带第一索引值的响应指令;若第一存储模块接收到响应指令,则通过第一存储模块向控制模块发送需要转发的数据及第一索引值;通过控制模块基于第一索引值确定第一出端口;通过控制模块向第一出端口对应的第二存储模块转发数据。应用本发明专利技术实施例,多个数据转发的处理过程可以通过控制模块实现并行处理,大大提高了FPGA芯片的整体处理性能,处理效率高。

A method and device for data forwarding

The invention provides a method and device for forwarding data, a method includes: if the first storage module needs to transmit data through the first memory module to the control module to send request instruction; if the control module receives the request instruction through the control module for the first storage module corresponding to the first input port to determine the first port and the first index value in response to the instruction; carrying the first index value is sent to the first storage module through the control module; if the first memory module receives the response instruction through the first memory module to the control module sends the required forwarding data and the first index value; the control module based on the first index to determine the first port; transmit data to the first port corresponding the second storage module through the control module. By applying the embodiment of the invention, the processing process of multiple data forwarding can be realized by parallel processing of the control module, which greatly improves the overall processing performance of the FPGA chip and has high processing efficiency.

【技术实现步骤摘要】
一种数据的转发方法及装置
本专利技术涉及网络通信
,尤其涉及一种数据的转发方法及装置。
技术介绍
通常,FPGA芯片中包括多个存储模块,数据需要在不同存储模块间进行转发。由于存储模块的数量较大,如何高效地将数据在不同存储模块间进行转发成为至关重要的问题。现有技术中,多个存储模块中存储的需要转发的数据,被依次存储到一个过渡模块中,过渡模块依次将需要转发的数据转发到对应的存储模块。FPGA芯片的转发速度取决于过渡模块的处理速度。由于过渡模块处理速度的限制,大大降低了FPGA芯片的整体处理性能,处理效率低。
技术实现思路
有鉴于此,本专利技术提供一种数据的转发方法及装置,通过控制模块为第一入端口确定第一出端口,多个数据转发的处理过程可以通过控制模块实现并行处理,以解决FPGA芯片的整体处理性能,处理效率低的问题。为实现上述目的,本专利技术提供技术方案如下:根据本专利技术的第一方面,提出了一种数据的转发方法,所述方法包括:若第一存储模块需要转发数据,则通过所述第一存储模块向所述控制模块发送请求指令,所述第一存储模块为所述多个存储模块中的其中一个存储模块;若所述控制模块接收到所述请求指令,则通过所述控制模块为所述第一存储模块对应的第一入端口确定第一出端口及第一索引值;通过所述控制模块向所述第一存储模块发送携带所述第一索引值的响应指令;若所述第一存储模块接收到所述响应指令,则通过所述第一存储模块向所述控制模块发送需要转发的数据及所述第一索引值;通过所述控制模块基于所述第一索引值确定所述第一出端口;通过所述控制模块向所述第一出端口对应的第二存储模块转发所述数据,所述第二存储模块为所述多个存储模块中的其中一个模块。根据本专利技术的第二方面,提出了一种数据的转发装置,包括:控制模块、多个存储模块;其中,第一存储模块,被配置为若第一存储模块需要转发数据,则向所述控制模块发送请求指令,所述第一存储模块为所述多个存储模块中的其中一个存储模块;所述控制模块,被配置为若接收到所述请求指令,则为所述第一存储模块对应的第一入端口确定第一出端口及第一索引值,向所述第一存储模块发送携带所述第一索引值的响应指令;所述第一存储模块,还被配置为若接收到所述响应指令,则向所述控制模块发送需要转发的数据及所述第一索引值;所述控制模块,还被配置为基于所述第一索引值确定所述第一出端口,向所述第一出端口对应的第二存储模块转发所述数据,所述第二存储模块为所述多个存储模块中的其中一个模块。由以上技术方案可见,FPGA芯片通过控制模块为第一入端口确定对应的第一出端口及第一索引值,FPGA芯片通过控制模块向第一入端口对应的第一存储模块发送第一索引值,以触发第一存储模块开始向控制模块发送数据,控制模块接收到数据时,FPGA芯片基于第一索引值,通过控制模块找到第一出端口,FPGA芯片通过控制模块向第一出端口对应的第二存储模块发送数据。控制模块为第一入端口确定第一出端口,多个数据转发的处理过程可以通过控制模块实现并行处理,大大提高了FPGA芯片的整体处理性能,处理效率高。附图说明图1A是本专利技术提供的一个数据的转发方法的实施例流程图;图1B是图1A所示实施例的示例性场景图;图2是本专利技术提供的另一个数据的转发方法的实施例流程图;图3是本专利技术提供的再一个数据的转发方法的实施例流程图;图4是本专利技术提供的一种FPGA芯片的硬件结构图;图5是本专利技术提供的一个数据的转发装置的实施例框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。在本专利技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本专利技术。在本专利技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本专利技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本专利技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。图1A是本专利技术提供的一个数据的转发方法的实施例流程图;图1B是图1A所示实施例的示例性场景图。该数据的转发方法可以应用在FPGA芯片中,FPGA芯片包括:控制模块、多个存储模块。其中控制模块可以为FPGA芯片中具有控制功能的模块,存储模块可以为FIFO存储器,如图1A所示,包括如下步骤:步骤101:若第一存储模块需要转发数据,则通过第一存储模块向控制模块发送请求指令,第一存储模块为多个存储模块中的其中一个存储模块。步骤102:若控制模块接收到请求指令,则通过控制模块为第一存储模块对应的第一入端口确定第一出端口及第一索引值。步骤103:通过控制模块向第一存储模块发送携带第一索引值的响应指令。步骤104:若第一存储模块接收到响应指令,则通过第一存储模块向控制模块发送需要转发的数据及第一索引值。步骤105:通过控制模块基于第一索引值确定第一出端口。步骤106:通过控制模块向第一出端口对应的第二存储模块转发数据,第二存储模块为多个存储模块中的其中一个模块。在步骤101中,在一实施例中,本领域技术人员可以理解的是,存储模块与存储模块中存储的数据需要互相转发。若多个存储模块中的其中一个存储模块需要转发数据,则该多个存储模块中的其中一个存储模块即为第一存储模块。FPGA芯片通过第一存储模块向控制模块发送用于转发数据的请求指令。在步骤102中,在一实施例中,若控制模块接收到请求指令,则FPGA芯片通过控制模块为第一存储模块对应的第一入端口确定第一出端口,第一出端口用于后续转发第一存储模块中需要转发的数据,第一入端口例如为00,第一出端口例如为55;FPGA芯片通过控制模块为第一存储模块确定对应的第一索引值,第一索引值用于对应第一入端口及第一出端口,第一索引值例如为2。具体的,FPGA芯片通过控制模块为第一存储模块对应的第一入端口确定第一出端口及第一索引值的步骤参见下述步骤201-步骤202的相关描述,此处先不作赘述。需要说明的是,当第一索引值确定了与第一入端口及第一出端口的对应关系,控制模块停止接收来自第一入端口的请求指令,避免多个存储模块同时通过第一入端口向控制模块发送请求指令而产生冲突。在步骤103中,在一实施例中,FPGA芯片通过控制模块向第一存储模块发送携带第一索引值的响应指令,表示FPGA芯片通过控制模块已经建立好了与第一索引值对应的第一入端口和第一出端口。在步骤104中,在一实施例中,若第一存储模块接收到响应指令,表示FPGA芯片通过控制模块已经为第一存储模块对应的第一入端口确定好了第一出端口,可以进行数据转发了,则FPGA芯片通过第一存储模块向控制模块发送需要转发的数据及第一索引值。在步骤105本文档来自技高网...
一种数据的转发方法及装置

【技术保护点】
一种数据的转发方法,应用在FPGA芯片,所述FPGA芯片包括:控制模块、多个存储模块,其特征在于,所述方法包括:若第一存储模块需要转发数据,则通过所述第一存储模块向所述控制模块发送请求指令,所述第一存储模块为所述多个存储模块中的其中一个存储模块;若所述控制模块接收到所述请求指令,则通过所述控制模块为所述第一存储模块对应的第一入端口确定第一出端口及第一索引值;通过所述控制模块向所述第一存储模块发送携带所述第一索引值的响应指令;若所述第一存储模块接收到所述响应指令,则通过所述第一存储模块向所述控制模块发送需要转发的数据及所述第一索引值;通过所述控制模块基于所述第一索引值确定所述第一出端口;通过所述控制模块向所述第一出端口对应的第二存储模块转发所述数据,所述第二存储模块为所述多个存储模块中的其中一个模块。

【技术特征摘要】
1.一种数据的转发方法,应用在FPGA芯片,所述FPGA芯片包括:控制模块、多个存储模块,其特征在于,所述方法包括:若第一存储模块需要转发数据,则通过所述第一存储模块向所述控制模块发送请求指令,所述第一存储模块为所述多个存储模块中的其中一个存储模块;若所述控制模块接收到所述请求指令,则通过所述控制模块为所述第一存储模块对应的第一入端口确定第一出端口及第一索引值;通过所述控制模块向所述第一存储模块发送携带所述第一索引值的响应指令;若所述第一存储模块接收到所述响应指令,则通过所述第一存储模块向所述控制模块发送需要转发的数据及所述第一索引值;通过所述控制模块基于所述第一索引值确定所述第一出端口;通过所述控制模块向所述第一出端口对应的第二存储模块转发所述数据,所述第二存储模块为所述多个存储模块中的其中一个模块。2.根据权利要求1所述的方法,其特征在于,所述通过所述控制模块为所述第一存储模块对应的第一入端口确定第一出端口及第一索引值,包括:通过所述控制模块基于第一预设规则,从第一预设列表中记录的至少一个第二索引值中确定第一索引值;通过所述控制模块基于第二预设规则,从第二预设列表中记录的至少一个第二出端口中确定第一出端口。3.根据权利要求1或者权利要求2所述的方法,其特征在于,所述通过所述控制模块基于所述第一索引值确定所述第一出端口的步骤之前,所述方法还包括:通过所述控制模块建立所述第一入端口、所述第一出端口及所述第一索引值之间的对应关系。4.根据权利要求3所述的方法,其特征在于,所述通过所述控制模块向所述第一出端口对应的第二存储模块转发所述数据的步骤之后,所述方法还包括:通过所述第二存储模块检测所述数据中是否携带用于标记数据结束的结束标识;当通过所述第二存储模块检测到所述数据中携带有所述结束标识时,结束存储所述数据;通过所述第二存储模块向所述控制模块发送用于结束转发的结束指令;若所述控制模块接收到所述结束指令,则通过所述控制模块解除所述第一入端口、所述第一出端口及所述第一索引值之间的对应关系。5.根据权利要求4所述的方法,其特征在于,所述通过所述控制模块解除所述第一入端口、所述第一出端口及所述第一索引值之间的对应关系的步骤之后,还包括:通过所述控制模块判断所述第二存储模...

【专利技术属性】
技术研发人员:张代生吴刚
申请(专利权)人:杭州迪普科技股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1