CN118113130A - 芯片功耗的管理方法、装置、系统及计算机可读存储介质 - Google Patents
芯片功耗的管理方法、装置、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN118113130A CN118113130A CN202211518601.2A CN202211518601A CN118113130A CN 118113130 A CN118113130 A CN 118113130A CN 202211518601 A CN202211518601 A CN 202211518601A CN 118113130 A CN118113130 A CN 118113130A
- Authority
- CN
- China
- Prior art keywords
- message
- processing
- bus
- domain segments
- processing module
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 238000012545 processing Methods 0.000 claims abstract description 382
- 238000004458 analytical method Methods 0.000 claims abstract description 66
- 238000004891 communication Methods 0.000 claims abstract description 32
- 230000015654 memory Effects 0.000 claims description 59
- 238000004590 computer program Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000003068 static effect Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 235000019800 disodium phosphate Nutrition 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004549 pulsed laser deposition Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Abstract
本申请公开了一种芯片功耗的管理方法、装置、系统及计算机可读存储介质,涉及通信技术领域。该方法应用于解析模块,解析模块应用于芯片,芯片还包括处理模块,解析模块与处理模块通过总线通信连接。方法包括:解析模块根据第一报文对应的PS占用总线的部分PS域段,被占用的PS域段的值指示第一报文对应的PS;向处理模块传输第一标签和总线的各个PS域段的值,使得处理模块可以根据第一标签确定被占用的PS域段,根据被占用的PS域段的值获取第一报文对应的PS。解析模块无需调整总线中除被占用的PS域段以外的其他PS域段的占用情况,由于调整占用情况的PS域段的数量较少,芯片的功耗较低。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种芯片功耗的管理方法、装置、系统及计算机可读存储介质。
背景技术
随着通信网络的不断演进,转发芯片的报文处理效率不断提高,随之而来的,转发芯片的功耗也在不断升高。因此,需要一种芯片功耗的管理方法,通过降低转发芯片的功耗,降低运行转发芯片需要的能源消耗。
发明内容
本申请提出一种芯片功耗的管理方法、装置、系统及计算机可读存储介质,用于降低芯片的功耗。
第一方面,提供了一种芯片功耗的管理方法,该方法应用于解析模块,解析模块应用于第一芯片,第一芯片还包括处理模块,解析模块与处理模块通过总线通信连接。该方法包括:解析模块根据第一报文对应的上下文信息(program status,PS)占用总线中第一数量个PS域段,其中,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,并且第一数量小于总线包括的PS域段的数量;然后,解析模块通过总线向处理模块传输第一标签和总线包括的各个PS域段的值,第一标签用于处理模块从总线包括的多个PS域段中确定第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
该方法中,解析模块根据第一报文对应的PS占用总线中第一数量个PS域段,向处理模块传输第一标签和总线包括的各个PS域段的值,使得处理模块可以直接根据第一标签确定第一数量个PS域段,再根据第一数量个PS域段的值获取第一报文对应的PS。该方法中无需调整总线中除第一数量个PS域段以外的其他PS域段的占用情况,在第一数量小于总线包括的PS域段的数量的情况下,调整占用情况的PS域段的数量较少,总线的功耗较低,使得第一芯片的功耗较低。
在一种可能的实现方式中,解析模块根据第一报文对应的PS占用总线中第一数量个PS域段之前,还包括:解析模块根据第一报文的类型,确定第一数量个PS域段。
在一种可能的实现方式中,解析模块根据第一报文的类型,确定第一数量个PS域段,包括:解析模块根据第一报文的类型,查找报文类型与PS域段的对应关系,确定第一数量个PS域段。通过查找报文类型与PS域段的对应关系,解析模块确定第一数量个PS域段的效率较高。
在一种可能的实现方式中,报文类型与PS域段的对应关系是根据多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少一种获取的。报文类型与PS域段的对应关系的获取方式较为灵活,再有,在该对应关系基于多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少两种获取的情况下,获取报文类型对应的PS域段时考虑的因素较为全面,报文类型与PS域段对应的准确性较高。
在一种可能的实现方式中,解析模块还用于向处理模块传输第一报文;解析模块根据第一报文对应的PS占用总线中第一数量个PS域段之前,还包括:解析模块根据第一报文的报文头数据,得到报文头数据中的关键数据,关键数据用于处理模块对第一报文执行至少一次报文处理;解析模块将关键数据作为第一报文对应的PS。由于第一报文的报文头数据中可能存在与处理模块所要执行的至少一次报文处理无关的部分数据,解析模块在获取第一报文对应的PS时可以不将这部分数据作为第一报文对应的PS,从而解析模块无需向处理模块传输这部分数据,使得第一芯片的功耗较低。
在一种可能的实现方式中,用于得到关键数据的第一报文的报文头数据通过复制第一报文的报文头数据得到。从而在将复制得到的报文头向解析模块传输的情况下,第一报文的报文头数据可以保留在复制得到该报文头数据的模块中,在需要对第一报文的完整的报文头数据进行处理时,能够从该模块中获取到完整的报文头数据。
在一种可能的实现方式中,该方法还包括:解析模块为总线添加第一标签。
在一种可能的实现方式中,解析模块为总线添加第一标签,包括:解析模块为第一数量个PS域段添加第一标签,或者解析模块为总线中除第一数量个PS域段以外的其他PS域段添加第一标签。解析模块添加第一标签的方式较为灵活。
在一种可能的实现方式中,第一标签包括指示第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,第一芯片为转发芯片。
第二方面,提供了一种芯片功耗的管理方法,该方法应用于处理模块,处理模块应用于第一芯片,第一芯片还包括解析模块,处理模块与解析模块通过总线通信连接,该方法包括:处理模块接收由解析模块通过总线传输的第一标签和总线包括的各个PS域段的值,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量;然后,处理模块基于第一标签,从总线包括的多个PS域段中确定被占用的第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
该方法中,通过根据第一标签读取第一报文对应的PS占用的第一数量个PS域段的值,处理模块仅需读取第一数量个PS域段的值即可获取第一报文对应的PS,处理模块获取第一报文对应的PS的功耗较低,从而第一芯片的功耗较低。
在一种可能的实现方式中,第一标签包括指示被占用的第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,该方法还包括:处理模块接收由解析模块发送的第一报文;处理模块将第一报文对应的PS写入处理模块中的第一存储区域,基于第一报文对应的PS进行查表,得到处理模块对第一报文执行的第一报文处理的类型;处理模块从第一存储区域读取第一报文对应的PS,根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理。由于第一报文对应的PS是基于第一标签读取第一数量个PS域段的值得到的,第一报文对应的PS的数据量较小,从而将第一报文对应的PS写入第一存储区域时处理模块的功耗较低,使得第一芯片的功耗较低。
在一种可能的实现方式中,处理模块将第一报文对应的PS写入处理模块中的第一存储区域之后,还包括:处理模块为处理模块包括的多个存储区域添加第二标签,第二标签用于指示第一存储区域在多个存储区域中的位置;处理模块从第一存储区域读取第一报文对应的PS之前,还包括:处理模块根据第二标签,从多个存储区域中确定第一存储区域。由于无需读取处理模块的所有存储区域存储的内容,获取第一报文对应的PS所需的功耗较低且效率较高。
在一种可能的实现方式中,处理模块为处理模块包括的多个存储区域添加第二标签,包括:处理模块为第一存储区域添加第二标签,或者处理模块为多个存储区域中除第一存储区域以外的其他存储区域添加第二标签。处理模块添加第二标签的方式较为灵活。
在一种可能的实现方式中,处理模块根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理之后,还包括:处理模块更新第一报文对应的PS;处理模块根据第一报文对应的更新后的PS,对执行第一报文处理后的第一报文执行第二报文处理。由于处理模块在执行第一报文处理之后可能会生成第二报文处理所需的数据,或者第二报文处理中不再需要第一报文对应的PS中的某些数据,处理模块通过对第一报文对应的PS进行更新,第一报文对应的更新后的PS与第二报文处理的适配度较高。
在一种可能的实现方式中,第一报文对应的PS包括关键数据,关键数据为第一报文的报文头数据中用于处理模块对第一报文执行至少一次报文处理的数据;处理模块更新第一报文对应的PS,包括:处理模块根据执行第一报文处理后的第一报文,获取第二报文处理的类型;处理模块根据第二报文处理的类型,将关键数据中与第二报文处理无关的数据删除。通过删除与第二报文处理无关的数据,处理模块无需根据与第二报文处理无关的数据占用总线的PS域段,节约第一芯片的功耗。
在一种可能的实现方式中,处理模块更新第一报文对应的PS,包括:处理模块将通过执行第一报文处理生成的第一数据添加至第一报文对应的PS,第一数据用于处理模块对执行第一报文处理后的第一报文执行第二报文处理。通过将第一数据添加在第一报文对应的PS,第一报文对应的更新后的PS与第二报文处理的适配度较高,基于第一报文对应的PS执行第二报文处理的准确性较高。
在一种可能的实现方式中,第一芯片为转发芯片。
第三方面,提供了一种芯片功耗的管理装置,该装置应用于解析模块,解析模块应用于第一芯片,第一芯片还包括处理模块,解析模块与处理模块通过总线通信连接,该装置包括:
占用单元,用于根据第一报文对应的PS占用总线中第一数量个PS域段,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量;
传输单元,用于通过总线向处理模块传输第一标签和总线包括的各个PS域段的值,第一标签用于处理模块从总线包括的多个PS域段中确定第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
在一种可能的实现方式中,占用单元,还用于根据第一报文的类型,确定第一数量个PS域段。
在一种可能的实现方式中,占用单元,用于根据第一报文的类型,查找报文类型与PS域段的对应关系,得到第一数量个PS域段。
在一种可能的实现方式中,报文类型与PS域段的对应关系是根据多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少一种获取的。
在一种可能的实现方式中,传输单元还用于向处理模块传输第一报文;该装置还包括:获取单元,用于根据第一报文的报文头数据,得到报文头数据中的关键数据,关键数据用于处理模块对第一报文执行至少一次报文处理;将关键数据作为第一报文对应的PS。
在一种可能的实现方式中,用于得到关键数据的第一报文的报文头数据通过复制第一报文的报文头数据得到。
在一种可能的实现方式中,该装置还包括:添加单元,用于为总线添加第一标签。
在一种可能的实现方式中,添加单元,用于为第一数量个PS域段添加第一标签,或者添加单元,用于为总线中除第一数量个PS域段以外的其他PS域段添加第一标签。
在一种可能的实现方式中,第一标签包括指示第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,第一芯片为转发芯片。
第四方面,提供了一种芯片功耗的管理装置,该装置应用于处理模块,处理模块应用于第一芯片,第一芯片还包括解析模块,处理模块与解析模块通过总线通信连接,该装置包括:
获取单元,用于接收由解析模块通过总线传输的第一标签和总线包括的各个PS域段的值,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量;
获取单元,还用于基于第一标签,从总线包括的多个PS域段中确定被占用的第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
在一种可能的实现方式中,第一标签包括指示被占用的第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,获取单元,还用于接收由解析模块发送的第一报文;装置还包括:查表单元和处理单元,查表单元用于将第一报文对应的PS写入查表单元中的第一存储区域,基于第一报文对应的PS进行查表,得到处理单元对第一报文执行的第一报文处理的类型;处理单元用于从第一存储区域读取第一报文对应的PS,根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理。
在一种可能的实现方式中,查表单元,还用于为查表单元包括的多个存储区域添加第二标签,第二标签用于指示第一存储区域在多个存储区域中的位置;查表单元,还用于根据第二标签,从多个存储区域中确定第一存储区域。
在一种可能的实现方式中,查表单元,用于为第一存储区域添加第二标签,或者查表单元,用于为多个存储区域中除第一存储区域以外的其他存储区域添加第二标签。
在一种可能的实现方式中,处理单元,还用于更新第一报文对应的PS;根据第一报文对应的更新后的PS,对执行第一报文处理后的第一报文执行第二报文处理。
在一种可能的实现方式中,第一报文对应的PS包括关键数据,关键数据为第一报文的报文头数据中用于处理单元对第一报文执行至少一次报文处理的数据;处理单元,用于根据执行第一报文处理后的第一报文,获取第二报文处理的类型;根据第二报文处理的类型,将关键数据中与第二报文处理无关的数据删除。
在一种可能的实现方式中,处理单元,用于将通过执行第一报文处理生成的第一数据添加至第一报文对应的PS,第一数据用于处理单元对执行第一报文处理后的第一报文执行第二报文处理。
在一种可能的实现方式中,第一芯片为转发芯片。
第五方面,提供了一种计算机系统,该计算机系统包括处理器,处理器包括解析模块和处理模块,当处理器执行程序指令或代码时,该计算机系统实现第一方面或第二方面中任一的芯片功耗的管理方法。示例性地,该计算机系统还包括存储器,该存储器用于存储该程序指令或代码。
第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序指令或代码,该程序指令或代码由计算机执行,计算机包括解析模块和处理模块,所述程序指令或代码用于使计算机实现第一方面或第二方面中任一的芯片功耗的管理方法。
第七方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,收发器、存储器和处理器通过内部连接通路互相通信,存储器用于存储指令,处理器用于执行存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,处理器包括解析模块和处理模块,当处理器执行存储器存储的指令时,处理器执行第一方面或第二方面中任一的芯片功耗的管理方法。
示例性地,处理器为一个或多个,存储器为一个或多个。
示例性地,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型以及存储器与处理器的设置方式不做限定。
第八方面,提供了一种计算机程序产品,该计算机程序产品包括:计算机程序指令或代码,该计算机程序指令或代码由计算机运行,计算机包括解析模块和处理模块,计算机程序指令或代码用于使得计算机执行第一方面或第二方面中任一的芯片功耗的管理方法。
第九方面,提供了一种芯片,芯片包括解析模块和处理模块,解析模块用于执行第一方面中任一的芯片功耗的管理方法,处理模块用于执行第二方面中任一的芯片功耗的管理方法。
第十方面,提供了一种芯片,芯片包括处理器,处理器包括解析模块和处理模块,处理器用于运行程序指令或代码,使得包含芯片的设备执行第一方面或第二方面中任一的芯片功耗的管理方法。
示例性地,该芯片还包括:输入接口、输出接口和存储器,该输入接口、该输出接口、该处理器以及该存储器之间通过内部连接通路相连,该存储器用于存储该程序指令或代码。
应当理解的是,本申请的第三方面至第十方面的技术方案及其对应的可能的实现方式所取得的有益效果可参见上述第一方面和第二方面及其对应的可能的实现方式的技术效果,此处不再赘述。
附图说明
图1是本申请实施例提供的一种转发芯片的结构示意图;
图2是本申请实施例提供的一种实施场景的示意图;
图3是本申请实施例提供的一种芯片功耗的管理方法的流程图;
图4是本申请实施例提供的一种对报文头数据进行处理的过程示意图;
图5是本申请实施例提供的一种报文头数据的结构示意图;
图6是本申请实施例提供的另一种报文头数据的结构示意图;
图7是本申请实施例提供的一种总线的PS域段的划分示意图;
图8是本申请实施例提供的另一种总线的PS域段的划分示意图;
图9是本申请实施例提供的一种PS域段的值的示意图;
图10是本申请实施例提供的一种为总线添加第一标签的示意图;
图11是本申请实施例提供的一种执行查表和第一报文处理的过程示意图;
图12是本申请实施例提供的一种芯片功耗的管理装置的结构示意图;
图13是本申请实施例提供的另一种芯片功耗的管理装置的结构示意图;
图14是本申请实施例提供的一种计算机系统的结构示意图;
图15是本申请实施例提供的另一种计算机系统的结构示意图。
具体实施方式
本申请的实施方式部分使用的术语仅用于对本申请的实施例进行解释,而非旨在限定本申请。下面结合附图,对本申请的实施例进行描述。
随着通信网络的不断演进,对转发芯片的报文处理效率的要求不断提高,在转发芯片中应用流水线(pipeline)架构成为一种提高转发芯片的报文处理效率的方式。在应用pipeline架构的转发芯片中,报文处理过程被分为多个处理阶段,一个处理阶段由转发芯片的一个模块执行,从而,转发芯片的多个模块可以在同一时间执行对多个报文的处理,报文处理效率较高。图1是本申请实施例提供的一种转发芯片的结构示意图,如图1所示,转发芯片包括解析模块(parser)和多个匹配-执行(match-action,MA)模块,各个模块之间通过总线传递数据。在总线用于传输PS的情况下,总线可以称为PS总线。总线的位宽根据所要传输的多个报文对应的PS的最大集合定义,在此情况下,总线的位宽被分为多个PS域段,一个PS域段用于传输一部分PS。示例性地,各个PS域段传输的PS根据报文的特性进行划分,一个PS域段用于传输实现报文的一个特性的PS。在本申请实施例中,报文的特性包括但不限于报文对应的协议和报文对应的处理完成时长。
由于各个报文对应的PS通常为上述最大集合中的一部分,如果按照每个报文对应的PS确定总线的各个PS域段的值以指示各个PS域段是否被占用,在处理顺序连续的多个报文对应的PS差别较大的情况下,各个PS域段的值的变化将较为频繁,导致总线的功耗较高,从而使得转发芯片的功耗较高。
再有,请继续参见图1,MA模块内部可以分为查表单元和处理单元两部分。以所要处理的报文为参考报文为例,查表单元用于将参考报文对应的PS写入查表单元的存储子单元,基于参考报文对应的PS进行查表,得到处理单元所要执行的报文处理的类型,从存储子单元中读取存储的PS,向处理单元传输报文处理的类型和参考报文对应的PS。处理单元用于根据参考报文对应的PS对参考报文执行该类型对应的报文处理。由于存储子单元用于存储PS,存储子单元可称为PS缓存(PS buffer)。结合上述内容,总线的位宽根据所要传输多个报文对应的PS的最大集合定义,各个报文对应的PS为最大集合中的一部分,在此情况下,如果按照总线的位宽执行将参考报文对应的PS写入存储子单元以及从存储子单元读取存储的PS,将不属于参考报文对应的PS的内容写入存储单元中、以及从存储单元中读取不属于参考报文对应的PS的内容的过程将造成转发芯片的功耗浪费,使得转发芯片的功耗较高。
本申请实施例提供了一种芯片功耗的管理方法,用于降低转发芯片的功耗。该方法的实施场景如图2所示,该实施场景可以应用于第一芯片,第一芯片设置于终端、网络设备或者服务器等设备,第一芯片可以为转发芯片。如图2所示,实施场景包括解析模块201和处理模块202,解析模块201和处理模块202通过总线通信连接。图2示出的实施场景可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此不加以限定。
本申请实施例提供的芯片功耗的管理方法可如图3所示,接下来,结合图2示出的实施场景,对该方法进行说明。如图3所示,该方法包括但不限于S301和S302。
S301,解析模块根据第一报文对应的PS占用总线中第一数量个PS域段,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量。
在本申请实施例中,解析模块应用于第一芯片,第一芯片还包括处理模块,解析模块与处理模块通信连接,第一芯片可以为转发芯片。示例性地,解析模块在根据第一报文对应的PS占用总线中第一数量个PS域段之前,先获取第一报文对应的PS。例如,解析模块按照参考报文头长度读取第一报文的报文头数据,将读取到的报文头数据和第一芯片的内部状态数据作为第一报文对应的PS。参考报文头长度可以根据经验或实际需求进行设置,本申请实施例对此不加以限定,再有,内部状态数据的类型可以根据经验或实际需求进行设置,本申请实施例对此也不加以限定。
在一些实施例中,解析模块还用于向处理模块发送第一报文,处理模块用于对第一报文执行至少一次报文处理,本申请实施例不对解析模块向处理模块发送第一报文的方式进行限定。由于第一报文的报文头数据中可能存在与处理模块所要执行的至少一次报文处理无关的部分数据,解析模块在获取第一报文对应的PS时可以不将这部分数据作为第一报文对应的PS,从而解析模块无需向处理模块传输这部分数据,使得第一芯片的功耗较低。例如,解析模块根据第一报文的报文头数据,得到该报文头数据中与处理模块执行至少一次报文处理相关的关键数据,将关键数据作为第一报文对应的PS。
示例性地,用于得到关键数据的第一报文的报文头数据是通过复制第一报文的报文头数据得到的。例如,复制模块复制第一报文的报文头数据,向解析模块传输复制得到的第一报文的报文头数据。复制模块可以为第一芯片内部的模块也可以为第一芯片外部的模块,本申请对此不加以限定。从而第一报文的报文头数据可以保留在复制模块中,在第一芯片的某些模块需要对第一报文的完整的报文头数据进行处理时,能够从复制模块中获取到完整的报文头数据。关于解析模块根据报文头数据得到报文头数据中的关键数据的方式,本申请实施例对此不加以限定。例如,解析模块对报文头数据进行解析,得到报文头数据中的关键数据,本申请实施例不对解析报文头数据的方式进行限定。
在一种可能的实现方式中,解析模块获取报文头数据中的各个部分的数据类型,将各个部分的数据类型与至少一次报文处理所需的多个目标数据类型进行匹配,将数据类型匹配成功的部分作为关键数据。对于各个部分中的任一个部分,如果该任一个部分的数据类型与至少一次报文处理所需的多个目标数据类型中的一个目标数据类型相同,则该任一个部分的数据类型与这个目标数据类型匹配成功;如果该任一个部分的数据类型与至少一次报文处理所需的多个目标数据类型中的另一个目标数据类型不同,则该任一个部分的数据类型与这个目标数据类型匹配失败。
示例性地,第一报文为第4版互联网协议(internet protocol version 4,IPv4)报文或第6版互联网协议(internet protocol version 6,IPv6)报文中的任一种。图4是本申请实施例提供的一种对报文头数据进行处理的过程示意图。如图4所示,第一芯片包括解析模块和处理模块。第一芯片接收到的报文包括报文1至报文4,图4中以头(header,H)1表示报文1的报文头数据,以H2表示报文2的报文头数据,以H3表示报文3的报文头数据,以H4表示报文4的报文头数据,则解析模块分别将报文1至报文4作为第一报文,将报文1至报文4的报文头数据分别作为第一报文的报文头数据,进而执行对第一报文的报文头数据的处理。
在报文1和报文2为IPv4报文的情况下,报文1和报文2的报文头数据的结构可如图5所示,其中,T1表示以太网帧头,T2表示IP头,T3表示UDP头或者TCP头,T4表示负载(payload)。本申请实施例不对各部分的长度进行限定,例如T1为18字节(byte,B),T2为20B,T3为8B,T4为94B。解析模块解析报文1的报文头数据后,确定该报文头数据中的关键数据包括T1至T3,则将T1至T3作为报文1对应的PS。同理,解析模块解析报文2的报文头数据后,确定该报文头数据中的关键数据包括T1至T3,将T1至T3作为报文2对应的PS。解析模块确定的报文1和报文2对应的PS可参见图4。
在报文3和报文4为IPv6报文的情况下,报文3和报文4的报文头数据的结构可如图6所示,其中,R1表示外层以太网帧头,R2表示外层IP头,R3表示外层UDP头或者外层TCP头,R4表示虚拟扩展局域网(virtual extensible local area network,Vxlan)隧道头,R5表示内层以太网帧头,R6表示内层IP头,R7表示内层UDP头或者内层TCP头,R8表示负载。本申请实施例不对各部分的长度进行限定,例如R1为18B,R2为40B,R3为8B,R4为8B,R5为14B,R6为40B,R7为8B,R8为8B。解析模块解析报文3的报文头数据后,确定该报文头数据中的关键数据包括R1至R7,则将R1至R7作为报文3对应的PS。同理,解析模块解析报文4的报文头数据后,确定该报文头数据中的关键数据包括R1至R7,将R1至R7作为报文4对应的PS。解析模块确定的报文3和报文4对应的PS可参见图4。
示例性地,解析模块确定报文头数据中的关键数据之后,对报文头数据进行标记以区分报文头数据中的关键数据和除关键数据以外的其他数据。例如,解析模块将报文头数据中除关键数据以外的其他数据标记为无效数据,从而在无效数据较少的情况下,解析模块可以根据哪些数据被标记为无效数据实现快速排除报文头数据中的无效数据,确定报文头数据中的关键数据。当然,解析模块也可以标记报文头数据中的关键数据为有效数据,在关键数据较少的情况下,解析模块能够快速确定报文头数据中的关键数据。在解析模块获取到第一芯片的内部状态数据的情况下,解析模块也可以将内部状态数据和关键数据共同作为第一报文对应的PS,本申请实施例对此不加以限定。
在一种可能的实现方式中,解析模块在根据第一报文对应的PS占用总线的第一数量个PS域段之前,先根据第一报文的类型,确定总线中的第一数量个域段。例如,解析模块根据第一报文的类型,查找报文类型与PS域段的对应关系,确定第一数量个PS域段。其中,报文类型与PS域段的对应关系可以是根据多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少一种获取的。
在本申请实施例中,总线的多个PS域段可以根据报文类型的获取频率进行区间划分,获取频率较高的报文类型对应的PS域段为总线的第一区间包括的PS域段,获取频率较低的报文类型对应的PS域段为总线的第二区间包括的PS域段,第一区间包括的PS域段的数量可以小于第二区间包括的PS域段的数量。由于对于获取频率较高的报文类型的多个报文,多个报文对应的PS均仅占用第一区间包括的PS域段,总线包括的多个PS域段中值被调整以指示PS域段被占用的PS域段的数量较小,使得总线的功耗较低。其中,获取频率的高低可以根据经验或实际需求进行确定,例如,在参考时间段内,获取到的报文数量大于等于参考数量的报文类型为获取频率较高的报文类型,获取到的报文数量小于参考数量的报文类型为获取频率较低的报文类型。
报文类型与PS域段的对应关系也可以是根据多种类型的报文对应的PS类型确定的。例如,根据各个类型的报文对应的PS类型划分总线的多个PS域段,一个PS域段对应一个PS类型。在本申请实施例中,PS类型可以根据报文的特性确定,例如报文的一个特性对应一个PS类型,用于实现该特性的PS为该特性对应的PS类型的PS。报文的特性包括但不限于报文对应的协议和报文对应的处理完成时长。通过根据PS类型划分总线的多个PS域段,对总线的多个PS域段的划分粒度较细,从而能够实现对各个PS域段的占用的精确控制。
再有,在一些实施例中,如果在多个类型的报文对应的PS中均存在某些PS类型,这些PS类型对应的多个PS域段被划分至总线中的公共区间,从而用于指示总线的PS域段的划分的开销较低。图7是本申请实施例提供的一种总线的PS域段的划分示意图,如图7所示,总线中的PS域段1和PS域段2被划分至公共区间,公共区间对应第一PS类型和第二PS类型,PS域段3和PS域段4被划分至特性区间1,特性区间1对应第三PS类型,PS域段5和PS域段6被划分至特性区间2,特性区间2对应第四PS类型。图7中其余PS域段和PS类型的对应关系原理相同,此处不再赘述。以第一报文对应的PS包括第一PS类型、第二PS类型S和第四PS类型为例,第一数量个PS域段包括PS域段1、PS域段2、PS域段5和PS域段6。图7中示出的PS域段的数量和划分方式仅用于举例说明,并不用于对总线包括的PS域段的数量和划分方式进行限定。
在本申请实施例中,多种类型的报文对应的PS大小也可以用于获取报文类型与PS域段的对应关系。例如,总线的多个PS域段根据报文对应的PS大小进行区间划分,对于PS大小小于等于参考比特数量的报文类型,该报文类型对应的PS域段为总线的第三区间包括的PS域段,对于PS大小大于参考比特数量的报文类型,该报文类型对应的PS域段为总线的第四区间包括的PS域段,第三区间包括的PS域段的数量小于第四区间包括的PS域段的数量。从而,对于PS大小较小的报文类型的多个报文,多个报文对应的PS均仅占用第三区间包括的PS域段,总线包括的多个PS域段中值被调整以指示PS域段被占用的PS域段的数量较小,使得总线的功耗较低。
当然,报文类型与PS域段的对应关系也可以是综合考虑多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少两种得到的。例如,根据第一芯片的使用场景,为各个使用场景配置对应的PS域段,其中,对于任一个使用场景,为该任一个使用场景配置该任一个使用场景对应的PS域段时,综合考虑该任一个使用场景下报文的获取频率、报文对应的PS类型以及报文对应的PS大小。从而通过根据报文的类型确定报文所属的使用场景,即可确定报文对应的PS域段。
第一芯片的使用场景包括但不限于典型场景、扩展场景和慢速场景。其中,对于典型场景,典型场景下的报文的获取频率大于等于第一频率阈值,报文对应的PS类型的数量小于等于第一数量阈值、且PS大小小于等于第一比特阈值。对于扩展场景,扩展场景下的报文的获取频率小于第一频率阈值且大于等于第二频率阈值,第一频率阈值大于第二频率阈值;报文对应的PS类型的数量大于第一数量阈值且不包括慢速特性对应的PS类型,慢速特性是指报文对应的处理完成时长大于等于参考处理时长;报文对应的PS大小大于第一比特阈值小于等于第二比特阈值,第一比特阈值小于第二比特阈值。对于慢速场景,慢速场景下的报文的获取频率小于第二频率阈值,报文对应的PS类型的数量大于第一数量阈值且包括慢速特性对应的PS类型,报文对应的PS大小大于第二比特阈值。在本申请实施例中,第一频率阈值、第二频率阈值、第一数量阈值、第二数量阈值、第一比特阈值、第二比特阈值和参考处理时长可以根据经验或实际需求进行设置,本申请实施例对此不加以限定。
各个使用场景对应的PS域段可如图8所示,参见图8,典型场景对应的PS域段的数量小于扩展场景对应的PS域段的数量,扩展场景对应的PS域段的数量小于慢速场景对应的PS域段的数量,慢速场景对应的PS域段为总线包括的所有PS域段。则在第一报文为典型场景下的报文时,可以仅占用典型场景对应的PS域段,不占用总线中除典型场景对应的PS域段以外的其余PS域段,从而被占用的PS域段的数量较少,总线的功耗较低。第一报文为扩展场景下的报文的情况同理,此处不再赘述。通过按照三种使用场景划分总线的PS域段,各个使用场景对应的PS域段可以通过2比特的控制数据进行指示,指示各个使用场景对应的PS域段所需的开销较低。
示例性地,对于第一数量个PS域段,解析模块将第一数量个PS域段的值调整为参考值,总线包括的多个PS域段中除第一数量个PS域段以外的其他PS域段的值保持不变。也就是说,对于总线中除第一数量个PS域段以外的其他PS域段,如果其他PS域段中的某一个或某几个PS域段被接收顺序在第一报文之前且与第一报文的接收顺序相邻的第二报文对应的PS占用,则这一个或这几个PS域段在执行第一报文对应的PS占用第一数量个PS之后,值可以保持不变,在此情况下,这一个或这几个PS域段的值称为继承自上一个报文对应的PS。
图9为本申请实施例提供的一种PS域段的值的示意图。如图9的左侧所示,PS1至PS4分别表示报文1至报文4对应的PS需要占用的PS域段的情况,在报文1至报文4的接收顺序连续且报文1为接收到的第一个报文的情况下,总线包括的各个PS域段的值如图9的右侧所示。以PS2占用3个PS域段为例,被占用的3个PS域段的值按照PS2调整,未被占用的7个PS域段的值中,有5个PS域段的值与PS1占用的PS域段的值相同,PS1和PS2均不需要占用这7个PS域段中的其余2个PS域段。PS3和PS4占用PS域段之后,各个PS域段的值原理相同,此处不再赘述。
S302,解析模块通过总线向处理模块传输第一标签和总线包括的各个PS域段的值,第一标签用于处理模块从总线包括的多个PS域段中确定第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
示例性地,该方法还包括:解析模块为总线添加第一标签。第一标签可以包括指示第一数量个PS域段在总线包括的多个PS域段中的位置的信息。第一标签包括第一数量个PS域段在总线包括的多个PS域段中的位置的信息的方式可以根据经验或者实际需求进行设置,本申请实施例对此不加以限定。再有,第一标签的添加位置较为多样,解析模块可以为第一数量个PS域段添加第一标签,解析模块还可以为总线中除第一数量个PS域段以外的其他PS域段添加第一标签。关于解析模块为第一数量个PS域段添加第一标签,或者为总线中除第一数量个PS域段以外的其他PS域段添加第一标签的方式,本申请实施例对此不加以限定,添加第一标签的方式较为灵活。以解析模块为第一数量个PS域段添加第一标签为例,解析模块可以为第一数量个PS域段统一添加一个第一标签,解析模块还可以为第一数量个PS域段中的各个PS域段添加第一标签。
图10为本申请实施例提供的一种为第一数量个PS域段添加第一标签的示意图。参见图10的左侧,解析模块获取到的四个报文对应的PS,其中,PS1表示报文1对应的PS,PS2表示报文2对应的PS,PS3表示报文3对应的PS,PS4表示报文4对应的PS。报文1至报文4分别作为第一报文,PS1至PS4对应的第一数量个PS域段如图10的左侧所示。则在按照报文1至报文4的顺序,将报文1至报文4分别作为第一报文的情况下,为第一数量个PS域段添加第一标签之后,总线的各个PS域段的值以及第一标签如图10的右侧所示。解析模块为总线中除第一数量个PS域段以外的其他PS域段添加第一标签的方式原理相同,此处不再赘述。
在一种可能的实现方式中,解析模块按照总线的位宽向处理模块传输总线的各个PS域段的值,其中,第一报文对应的PS由总线的第一数量个PS域段传输,第一标签可以随第一数量个PS域段的值一起传输,或者由总线中的标签传输域段单独传输。从而,处理模块可以通过识别第一标签,确定第一数量个PS域段;根据第一数量个PS域段的值,得到第一报文对应的PS。
本申请实施例提供的方法中,解析模块通过根据第一报文对应的PS占用总线中第一数量个PS域段,向处理模块传输第一标签和总线包括的各个PS域段的值,使得处理模块可以直接根据第一标签确定第一数量个PS域段,再根据第一数量个PS域段的值获取第一报文对应的PS。该方法中无需调整总线中除第一数量个PS域段以外的其他PS域段的占用情况,在第一数量小于总线包括的PS域段的数量的情况下,调整占用情况的PS域段的数量较少,总线的功耗较低,使得第一芯片的功耗较低。
再有,第一芯片可以采用pipeline架构,也就是说,解析模块执行上述S301和S302之后,无需等待处理模块执行S303,即可获取下一个报文,根据下一个报文的PS执行S301和S302,从而保证对报文的处理效率。
以上以解析模块侧为例,对本申请实施例提供的芯片功耗的管理方法进行了说明,接下来,以处理模块侧为例,对该芯片功耗的管理方法进行说明。如图3所示,该芯片功耗的管理方法包括但不限于S303和S304。
S303,处理模块接收由解析模块通过总线传输的第一标签和总线包括的各个PS域段的值。
其中,第一标签可以包括指示被占用的第一数量个PS域段在总线包括的多个PS域段中的位置的信息,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量。结合上述S302的内容,处理模块接收总线的各个PS域段的值,在第一标签随第一数量个PS域段的值一起传输的情况下,处理模块在读取第一数量个PS域段的值的同时,也能获取到第一数量个PS域段传输的第一标签。在第一标签由总线中的标签传输域段单独传输的情况下,处理模块通过读取标签传输域段的值获取第一标签。
S304,处理模块基于第一标签,从总线包括的多个PS域段中确定被占用的第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
本申请实施例中,处理模块得到第一标签之后即可从总线的多个PS域段中确定第一数量个PS域段的位置,从而通过读取第一数量个PS域段的值得到第一报文对应的PS。
在一种可能的实现方式中,处理模块还接收解析模块发送的第一报文,对第一报文执行至少一次报文处理。例如,该方法还包括下述S1至S3。
S1,处理模块接收由解析模块发送的第一报文。
本申请实施例不对处理模块接收解析模块发送第一报文的方式进行限定,与解析模块向处理模块发送第一报文的方式对应即可。
S2,处理模块将第一报文对应的PS写入处理模块中的第一存储区域,基于第一报文对应的PS进行查表,得到处理模块对第一报文执行的第一报文处理的类型。
由于本申请实施例中第一报文对应的PS是基于第一标签读取第一数量个PS域段的值得到的,第一报文对应的PS的数据量较小,从而将第一报文对应的PS写入第一存储区域时产生的功耗较低。示例性地,处理模块包括至少一个MA模块,任一个MA模块包括查表单元和处理单元,则该S2可以由至少一个MA模块中与解析模块通信连接的MA模块中的查表单元执行,第一存储区域可以为该查表单元的存储子单元,对第一报文执行的第一报文处理可以由该MA模块中的处理单元执行。将第一报文对应的PS写入存储子单元、以及查表得到第一报文处理的类型的过程可如图11所示。再有,本申请实施例不对基于第一报文对应的PS进行查表的方式进行限定。
在一些实施例中,处理模块将第一报文对应的PS写入处理模块的第一存储区域之后,还为处理模块包括的多个存储区域添加第二标签,第二标签用于指示第一存储区域在多个存储区域中的位置。本申请实施例不对添加第二标签的方式进行限定,处理模块可以为第一存储区域添加第二标签,处理模块还可以为多个存储区域中除第一存储区域以外的其他存储区域添加第二标签。处理模块添加第二标签的方式较为灵活。
S3,处理模块从第一存储区域读取第一报文对应的PS,根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理。
示例性地,在为处理模块中的多个存储区域添加第二标签的情况下,处理模块在从第一存储区域读取第一报文对应的PS之前,先根据第二标签,从多个存储区域中确定第一存储区域。从而在确定第一存储区域之后能够从第一存储区域读取第一报文对应的PS。由于无需读取处理模块的所有存储区域存储的内容,获取第一报文对应的PS所需的功耗较低且效率较高。
结合上述S2的内容,查表单元得到第一报文处理的类型之后,可以从存储子单元中读取第一报文对应的PS,向处理单元传输第一报文对应的PS和第一报文处理的类型,由处理单元执行根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理。上述向处理单元传输第一报文处理的类型和第一报文对应的PS的过程可如图11所示。本申请实施例不对根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理的具体实现方式进行限定。
由于处理模块在执行第一报文处理之后可能会生成后续执行的报文处理所需的数据,或者后续执行的报文处理中不再需要第一报文对应的PS中的某些数据,处理模块在执行第一报文处理后可以对第一报文对应的PS进行更新,根据第一报文对应的更新后的PS,对执行第一报文处理后的第一报文执行后续的报文处理。
在一种可能的实现方式中,处理模块更新第一报文对应的PS,包括:处理模块将通过执行第一报文处理生成的第一数据添加至第一报文对应的PS,其中,第一数据用于处理模块对执行第一报文处理后的第一报文执行第二报文处理。本申请实施例不对第一数据的具体数据类型进行限定。
在另一种可能的实现方式中,在第一报文对应的PS包括关键数据的情况下,处理模块更新第一报文对应的PS,包括:处理模块根据执行第一报文处理后的第一报文,获取第二报文处理的类型;处理模块根据第二报文处理的类型,将关键数据中与第二报文处理无关的数据删除。从而处理模块无需根据与第二报文处理无关的数据占用总线的PS域段,节约第一芯片的功耗。在处理模块包括多个MA模块的情况下,多个MA模块中的第一个MA模块可以与解析模块通信连接,第一个MA模块用于对第一报文执行第一报文处理,多个MA模块中与第一个MA模块通信连接的第二MA模块可以用于根据第一报文对应的更新后的PS,对执行第一报文处理后的第一报文执行第二报文处理。在删除关键数据中与第二报文处理无关的数据的情况下,第一MA模块无需向第二MA模块传输该与第二处理无关的数据,从而第一报文对应的PS的数据量较小,传输第一报文对应的PS的功耗较低。
请继续参见图4,如果处理模块中的第一MA模块是隧道终结节点,则第一MA模块将执行Vxlan隧道的终结处理,使得报文3和报文4中的Vxlan隧道头终结。如果第一MA模块根据终结处理后的第一报文确定第二报文处理的类型无需外层头数据,如图4所示,第一MA模块从关键数据中删除R1至R4,从而更新后的报文3对应的PS和报文4对应的PS包括R5至R7,而不再包括R1至R4。如果第一MA模块根据终结处理后的第一报文确定第二报文处理的类型无需内部头数据,则第一MA模块从关键数据中删除R4至R7,更新后的报文3对应的PS和报文4对应的PS包括R1至R3,而不再包括R4至R7。
本申请实施例提供的方法中,通过根据第一标签读取第一报文对应的PS占用的第一数量个PS域段,处理模块仅需读取第一数量个PS域段的值即可获取第一报文对应的PS,获取第一报文对应的PS的功耗较低。
本申请实施例还提供了一种芯片功耗的管理装置。图12是本申请实施例提供的一种芯片功耗的管理装置的结构示意图,该装置应用于解析模块,解析模块应用于第一芯片,第一芯片还包括处理模块,解析模块与处理模块通过总线通信连接。基于图12所示的多个单元,图12所示的芯片功耗的管理装置能够执行上述方法实施例中解析模块执行的全部或部分操作。应理解到,该装置可以包括比所示单元更多的附加单元或者省略其中所示的一部分单元,本申请实施例对此并不进行限制。如图12所示,该装置包括:
占用单元1201,用于根据第一报文对应的PS占用总线中第一数量个PS域段,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量;
传输单元1202,用于通过总线向处理模块传输第一标签和总线包括的各个PS域段的值,第一标签用于处理模块从总线包括的多个PS域段中确定第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
在一种可能的实现方式中,占用单元1201,还用于根据第一报文的类型,确定第一数量个PS域段。
在一种可能的实现方式中,占用单元1201,用于根据第一报文的类型,查找报文类型与PS域段的对应关系,得到第一数量个PS域段。示例性地,报文类型与PS域段的对应关系是根据多种类型的报文的获取频率、多种类型的报文对应的PS类型、或者多种类型的报文对应的PS大小中的至少一种获取的。
在一种可能的实现方式中,传输单元1202还用于向处理模块传输第一报文;该装置还包括:获取单元1203,用于根据第一报文的报文头数据,得到报文头数据中的关键数据,关键数据用于处理模块对第一报文执行至少一次报文处理;将关键数据作为第一报文对应的PS。
在一种可能的实现方式中,用于得到关键数据的第一报文的报文头数据通过复制第一报文的报文头数据得到。
在一种可能的实现方式中,该装置还包括:添加单元1204,用于为总线添加第一标签。
在一种可能的实现方式中,添加单元1204,用于为第一数量个PS域段添加第一标签,或者添加单元1204,用于为总线中除第一数量个PS域段以外的其他PS域段添加第一标签。
在一种可能的实现方式中,第一标签包括指示第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,第一芯片为转发芯片。
该装置通过根据第一报文对应的PS占用总线中第一数量个PS域段,向处理模块传输第一标签和总线包括的各个PS域段的值,使得处理模块可以直接根据第一标签确定第一数量个PS域段,再根据第一数量个PS域段的值获取第一报文对应的PS。该装置无需调整总线中除第一数量个PS域段以外的其他PS域段的占用情况,在第一数量小于总线包括的PS域段的数量的情况下,调整占用情况的PS域段的数量较少,总线的功耗较低,使得第一芯片的功耗较低。
本申请实施例还提供了另一种芯片功耗的管理装置。图13是本申请实施例提供的另一种芯片功耗的管理装置的结构示意图,该装置应用于处理模块,处理模块应用于第一芯片,第一芯片还包括解析模块,处理模块与解析模块通过总线通信连接。基于图13所示的单元,图13所示的芯片功耗的管理装置能够执行上述方法实施例中处理模块执行的全部或部分操作。应理解到,该装置可以包括比所示单元更多的附加单元或者省略其中所示的一部分单元,本申请实施例对此并不进行限制。如图13所示,该装置包括:
获取单元1301,用于接收由解析模块通过总线传输的第一标签和总线包括的各个PS域段的值,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,第一数量小于总线包括的PS域段的数量;
获取单元1301,还用于基于第一标签,从总线包括的多个PS域段中确定被占用的第一数量个PS域段,根据第一数量个PS域段的值获取第一报文对应的PS。
在一种可能的实现方式中,第一标签包括指示被占用的第一数量个PS域段在总线包括的多个PS域段中的位置的信息。
在一种可能的实现方式中,获取单元1301,还用于接收由解析模块发送的第一报文;装置还包括:查表单元1302和处理单元1303,查表单元1302用于将第一报文对应的PS写入查表单元中的第一存储区域,基于第一报文对应的PS进行查表,得到处理单元1303对第一报文执行的第一报文处理的类型;处理单元1303用于从第一存储区域读取第一报文对应的PS,根据第一报文对应的PS和第一报文处理的类型对第一报文执行第一报文处理。
在一种可能的实现方式中,查表单元1302,还用于为查表单元1302包括的多个存储区域添加第二标签,第二标签用于指示第一存储区域在多个存储区域中的位置;查表单元1302,还用于根据第二标签,从多个存储区域中确定第一存储区域。
在一种可能的实现方式中,查表单元1302,用于为第一存储区域添加第二标签,或者查表单元1302,用于为多个存储区域中除第一存储区域以外的其他存储区域添加第二标签。
在一种可能的实现方式中,处理单元1303,还用于更新第一报文对应的PS;根据第一报文对应的更新后的PS,对执行第一报文处理后的第一报文执行第二报文处理。
在一种可能的实现方式中,第一报文对应的PS包括关键数据,关键数据为第一报文的报文头数据中用于处理单元对第一报文执行至少一次报文处理的数据;处理单元1302,用于根据执行第一报文处理后的第一报文,获取第二报文处理的类型;根据第二报文处理的类型,将关键数据中与第二报文处理无关的数据删除。
在一种可能的实现方式中,处理单元1302,用于将通过执行第一报文处理生成的第一数据添加至第一报文对应的PS,第一数据用于处理单元对执行第一报文处理后的第一报文执行第二报文处理。
在一种可能的实现方式中,第一芯片为转发芯片。
该装置通过根据第一标签读取第一报文对应的PS占用的第一数量个PS域段,该装置仅需读取第一数量个PS域段的值即可获取第一报文对应的PS,获取第一报文对应的PS的功耗较低。
应理解的是,上述图12-13提供的装置在实现其功能时,仅以上述各功能单元的划分进行举例说明,实际应用中可以根据需要而将上述功能分配由不同的功能单元完成,即将设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图14,图14为本申请实施例提供的一种计算机系统的结构示意图。示例性地,如图14所示,该计算机系统为网络设备2000。图14所示的网络设备2000用于执行上述图3所示的芯片功耗的管理方法中解析模块所涉及的操作或者处理模块所涉及的操作。该网络设备2000例如是服务器等,该网络设备2000可以由一般性的总线体系结构来实现。
如图14所示,网络设备2000包括至少一个处理器2001、存储器2003以及至少一个通信接口2004。
处理器2001例如是中央处理器(central processing unit,CPU)、数字信号处理器(digital signal processor,DSP)、网络处理器(network processer,NP)、图形处理器(graphics processing unit,GPU)、神经网络处理器(neural-network processingunits,NPU)、数据处理单元(data processing unit,DPU)、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器2001包括专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。PLD例如是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种逻辑方框、模块和电路。处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,DSP和微处理器的组合等等。
可选的,网络设备2000还包括总线。总线用于在网络设备2000的各组件之间传送信息。总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003例如是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器2003例如是独立存在,并通过总线与处理器2001相连接。存储器2003也可以和处理器2001集成在一起。
通信接口2004使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(radio access network,RAN)或无线局域网(wirelesslocal area networks,WLAN)等。通信接口2004可以包括有线通信接口,还可以包括无线通信接口。具体的,通信接口2004可以为以太(Ethernet)接口、快速以太(fast Ethernet,FE)接口、千兆以太(gigabit Ethernet,GE)接口,异步传输模式(asynchronous transfermode,ATM)接口,WLAN接口,蜂窝网络通信接口或其组合。以太网接口可以是光接口,电接口或其组合。在本申请实施例中,通信接口2004可以用于网络设备2000与其他设备进行通信。
在具体实现中,作为一种实施例,处理器2001可以包括一个或多个CPU,如图14中所示的CPU0和CPU1。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000可以包括多个处理器,如图14中所示的处理器2001和处理器2005。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000还可以包括输出设备和输入设备。输出设备和处理器2001通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备和处理器2001通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器2003用于存储执行本申请方案的程序代码2010,处理器2001可以执行存储器2003中存储的程序代码2010。程序代码2010中可以包括一个或多个软件模块。可选地,处理器2001自身也可以存储执行本申请方案的程序代码或指令。
在具体实施例中,本申请实施例的网络设备2000可包括上述各个方法实施例中的解析模块,网络设备2000中的处理器2001读取存储器2003中的程序代码2010或处理器2001自身存储的程序代码或指令,使图14所示的网络设备2000能够执行解析模块所执行的全部或部分操作。
在具体实施例中,本申请实施例的网络设备2000可包括上述各个方法实施例中的处理模块,网络设备2000中的处理器2001读取存储器2003中的程序代码2010或处理器2001自身存储的程序代码或指令,使图14所示的网络设备2000能够执行处理模块所执行的全部或部分操作。
该网络设备2000还可以对应于上述图12、13所示的装置,图12、13所示的装置中的每个功能单元采用网络设备2000的软件实现。换句话说,图12、13所示的装置包括的功能单元为网络设备2000的处理器2001读取存储器2003中存储的程序代码2010后生成的。
其中,图3所示的芯片功耗的管理方法的各步骤通过网络设备2000的处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤,为避免重复,这里不再详细描述。
图15是本申请实施例提供的另一种计算机系统的结构示意图,该计算机系统用于执行上述图3所示的芯片功耗的管理方法中解析模块所涉及的操作或者处理模块所涉及的操作。示例性地,该计算机系统为服务器,服务器可因配置或性能不同而产生比较大的差异。该计算机系统可以包括一个或多个处理器1501和一个或多个存储器1502,其中,该一个或多个存储器1502中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器1501加载并执行。示例性地,该处理器1501为CPU。当然,该计算机系统还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该计算机系统还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机系统,该计算机系统包括处理器,处理器包括解析模块和处理模块,处理器用于从存储器中调用并运行存储器中存储的指令,以使计算机系统实现如上任一的芯片功耗的管理方法。
在一种可能的实现方式中,该计算机系统还包括:输入接口、输出接口和该存储器,该输入接口、该输出接口、该处理器以及该存储器之间通过内部连接通路相连。
本申请实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,处理器包括解析模块和处理模块,当该处理器执行该存储器存储的指令时,处理器执行芯片功耗的管理方法。
应理解的是,上述处理器可以是CPU,还可以是其他通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,在一种可选的实施例中,上述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是ROM、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是RAM,其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(staticRAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(doubledata date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有至少一条程序指令或代码,程序指令或代码由计算机执行,计算机包括解析模块和处理模块,程序指令或代码用于使计算机实现如上任一的芯片功耗的管理方法。
本申请实施例还提供了一种计算机程序产品,计算机程序产品包括:计算机程序指令或代码,该计算机程序指令或代码由计算机运行,计算机包括解析模块和处理模块,计算机程序指令或代码用于使得计算机执行上述方法实施例中对应的各个步骤和/或流程。
本申请实施例还提供了一种芯片,芯片包括解析模块和处理模块,解析模块用于执行图3所示的解析模块所执行的方法,处理模块用于执行图3所示的处理模块所执行的方法。芯片中的第一模块和第二数据模块各自的功能可参考上述图3所示的相关描述,此处不再赘述。
本申请实施例还提供了一种芯片,包括处理器,处理器包括解析模块和处理模块,处理器用于运行程序指令或代码,使得包含该芯片的设备执行如上述任一的芯片功耗的管理方法。
示例性地,该芯片还包括:输入接口、输出接口和存储器,该输入接口、该输出接口、该处理器以及该存储器之间通过内部连接通路相连,该存储器包含程序指令或代码。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
用于实现本申请实施例的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的芯片功耗的管理装置的处理器,使得程序代码在被计算机或其他可编程的芯片功耗的管理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本申请实施例的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质等等。信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、设备和模块的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、设备或模块的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
该作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本申请中术语“第一”、“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种示例的范围的情况下,第一标签可以被称为第二标签,并且类似地,第二标签可以被称为第一标签。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个码块是指两个或两个以上的码块。本文中术语“系统”和“网络”经常可互换使用。
应理解,在本文中对各种示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,根据上下文,短语“若确定...”或“若检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
Claims (45)
1.一种芯片功耗的管理方法,其特征在于,所述方法应用于解析模块,所述解析模块应用于第一芯片,所述第一芯片还包括处理模块,所述解析模块与所述处理模块通过总线通信连接,所述方法包括:
所述解析模块根据第一报文对应的上下文信息PS占用所述总线中第一数量个PS域段,被占用的所述第一数量个PS域段的值用于指示所述第一报文对应的PS,所述第一数量小于所述总线包括的PS域段的数量;
所述解析模块通过所述总线向所述处理模块传输第一标签和所述总线包括的各个PS域段的值,所述第一标签用于所述处理模块从所述总线包括的多个PS域段中确定所述第一数量个PS域段,根据所述第一数量个PS域段的值获取所述第一报文对应的PS。
2.根据权利要求1所述的方法,其特征在于,所述解析模块根据第一报文对应的上下文信息PS占用所述总线中第一数量个PS域段之前,还包括:
所述解析模块根据所述第一报文的类型,确定所述第一数量个PS域段。
3.根据权利要求2所述的方法,其特征在于,所述解析模块根据所述第一报文的类型,确定所述第一数量个PS域段,包括:
所述解析模块根据所述第一报文的类型,查找报文类型与PS域段的对应关系,确定所述第一数量个PS域段。
4.根据权利要求3所述的方法,其特征在于,所述报文类型与PS域段的对应关系是根据多种类型的报文的获取频率、所述多种类型的报文对应的PS类型、或者所述多种类型的报文对应的PS大小中的至少一种获取的。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述解析模块还用于向所述处理模块传输所述第一报文;所述解析模块根据第一报文对应的上下文信息PS占用所述总线中第一数量个PS域段之前,还包括:
所述解析模块根据所述第一报文的报文头数据,得到所述报文头数据中的关键数据,所述关键数据用于所述处理模块对所述第一报文执行所述至少一次报文处理;
所述解析模块将所述关键数据作为所述第一报文对应的PS。
6.根据权利要求5所述的方法,其特征在于,用于得到所述关键数据的所述第一报文的报文头数据通过复制所述第一报文的报文头数据得到。
7.根据权利要求1-6中任一所述的方法,其特征在于,所述方法还包括:
所述解析模块为所述总线添加第一标签。
8.根据权利要求7所述的方法,其特征在于,所述解析模块为所述总线添加第一标签,包括:
所述解析模块为所述第一数量个PS域段添加所述第一标签,或者所述解析模块为所述总线中除所述第一数量个PS域段以外的其他PS域段添加所述第一标签。
9.根据权利要求1-8中任一所述的方法,其特征在于,所述第一标签包括指示所述第一数量个PS域段在所述总线包括的多个PS域段中的位置的信息。
10.根据权利要求1-9中任一所述的方法,其特征在于,所述第一芯片为转发芯片。
11.一种芯片功耗的管理方法,其特征在于,所述方法应用于处理模块,所述处理模块应用于第一芯片,所述第一芯片还包括解析模块,所述处理模块与所述解析模块通过总线通信连接,所述方法包括:
所述处理模块接收由所述解析模块通过所述总线传输的第一标签和所述总线包括的各个上下文信息PS域段的值,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,所述第一数量小于所述总线包括的PS域段的数量;
所述处理模块基于所述第一标签,从所述总线包括的多个PS域段中确定所述被占用的第一数量个PS域段,根据所述第一数量个PS域段的值获取所述第一报文对应的PS。
12.根据权利要求11所述的方法,其特征在于,所述第一标签包括指示所述被占用的第一数量个PS域段在所述总线包括的多个PS域段中的位置的信息。
13.根据权利要求11或12所述的方法,其特征在于,所述方法还包括:
所述处理模块接收由所述解析模块发送的所述第一报文;
所述处理模块将所述第一报文对应的PS写入所述处理模块中的第一存储区域,基于所述第一报文对应的PS进行查表,得到所述处理模块对所述第一报文执行的第一报文处理的类型;
所述处理模块从所述第一存储区域读取所述第一报文对应的PS,根据所述第一报文对应的PS和所述第一报文处理的类型对所述第一报文执行所述第一报文处理。
14.根据权利要求13所述的方法,其特征在于,所述处理模块将所述第一报文对应的PS写入所述处理模块中的第一存储区域之后,还包括:
所述处理模块为所述处理模块包括的多个存储区域添加第二标签,所述第二标签用于指示所述第一存储区域在所述多个存储区域中的位置;
所述处理模块从所述第一存储区域读取所述第一报文对应的PS之前,还包括:
所述处理模块根据所述第二标签,从所述多个存储区域中确定所述第一存储区域。
15.根据权利要求14所述的方法,其特征在于,所述处理模块为所述处理模块包括的多个存储区域添加第二标签,包括:
所述处理模块为所述第一存储区域添加所述第二标签,或者所述处理模块为所述多个存储区域中除所述第一存储区域以外的其他存储区域添加所述第二标签。
16.根据权利要求13-15中任一所述的方法,其特征在于,所述处理模块根据所述第一报文对应的PS和所述第一报文处理的类型对所述第一报文执行所述第一报文处理之后,还包括:
所述处理模块更新所述第一报文对应的PS;
所述处理模块根据所述第一报文对应的更新后的PS,对执行所述第一报文处理后的第一报文执行第二报文处理。
17.根据权利要求16所述的方法,其特征在于,所述第一报文对应的PS包括关键数据,所述关键数据为所述第一报文的报文头数据中用于所述处理模块对所述第一报文执行至少一次报文处理的数据;所述处理模块更新所述第一报文对应的PS,包括:
所述处理模块根据执行所述第一报文处理后的第一报文,获取所述第二报文处理的类型;
所述处理模块根据所述第二报文处理的类型,将所述关键数据中与所述第二报文处理无关的数据删除。
18.根据权利要求16或17所述的方法,其特征在于,所述处理模块更新所述第一报文对应的PS,包括:
所述处理模块将通过执行所述第一报文处理生成的第一数据添加至所述第一报文对应的PS,所述第一数据用于所述处理模块对所述执行所述第一报文处理后的第一报文执行所述第二报文处理。
19.根据权利要求11-18中任一所述的方法,其特征在于,所述第一芯片为转发芯片。
20.一种芯片功耗的管理装置,其特征在于,所述装置应用于解析模块,所述解析模块应用于第一芯片,所述第一芯片还包括处理模块,所述解析模块与所述处理模块通过总线通信连接,所述装置包括:
占用单元,用于根据第一报文对应的上下文信息PS占用所述总线中第一数量个PS域段,被占用的所述第一数量个PS域段的值用于指示所述第一报文对应的PS,所述第一数量小于所述总线包括的PS域段的数量;
传输单元,用于通过所述总线向所述处理模块传输第一标签和所述总线包括的各个PS域段的值,所述第一标签用于所述处理模块从所述总线包括的多个PS域段中确定所述第一数量个PS域段,根据所述第一数量个PS域段的值获取所述第一报文对应的PS。
21.根据权利要求20所述的装置,其特征在于,所述占用单元,还用于根据所述第一报文的类型,确定所述第一数量个PS域段。
22.根据权利要求21所述的装置,其特征在于,所述占用单元,用于根据所述第一报文的类型,查找报文类型与PS域段的对应关系,确定所述第一数量个PS域段。
23.根据权利要求22所述的装置,其特征在于,所述报文类型与PS域段的对应关系是根据多种类型的报文的获取频率、所述多种类型的报文对应的PS类型、或者所述多种类型的报文对应的PS大小中的至少一种获取的。
24.根据权利要求20-23中任一所述的装置,其特征在于,所述传输单元还用于向所述处理模块传输所述第一报文;所述装置还包括:获取单元,用于根据所述第一报文的报文头数据,得到所述报文头数据中的关键数据,所述关键数据用于所述处理模块对所述第一报文执行所述至少一次报文处理;将所述关键数据作为所述第一报文对应的PS。
25.根据权利要求24所述的装置,其特征在于,用于得到所述关键数据的所述第一报文的报文头数据通过复制所述第一报文的报文头数据得到。
26.根据权利要求20-25中任一所述的装置,其特征在于,所述装置还包括:
添加单元,用于为所述总线添加第一标签。
27.根据权利要求26所述的装置,其特征在于,所述添加单元,用于为所述第一数量个PS域段添加所述第一标签,或者所述添加单元,用于为所述总线中除所述第一数量个PS域段以外的其他PS域段添加所述第一标签。
28.根据权利要求20-27中任一所述的装置,其特征在于,所述第一标签包括指示所述第一数量个PS域段在所述总线包括的多个PS域段中的位置的信息。
29.根据权利要求20-28中任一所述的装置,其特征在于,所述第一芯片为转发芯片。
30.一种芯片功耗的管理装置,其特征在于,所述装置应用于处理模块,所述处理模块应用于第一芯片,所述第一芯片还包括解析模块,所述处理模块与所述解析模块通过总线通信连接,所述装置包括:
获取单元,用于接收由所述解析模块通过所述总线传输的第一标签和所述总线包括的各个上下文信息PS域段的值,被占用的第一数量个PS域段的值用于指示第一报文对应的PS,所述第一数量小于所述总线包括的PS域段的数量;
所述获取单元,还用于基于所述第一标签,从所述总线包括的多个PS域段中确定所述被占用的第一数量个PS域段,根据所述第一数量个PS域段的值获取所述第一报文对应的PS。
31.根据权利要求30所述的装置,其特征在于,所述第一标签包括指示所述被占用的第一数量个PS域段在所述总线包括的多个PS域段中的位置的信息。
32.根据权利要求30或31所述的装置,其特征在于,所述获取单元还用于接收由所述解析模块发送的所述第一报文;所述装置还包括:查表单元和处理单元,所述查表单元用于将所述第一报文对应的PS写入所述查表单元中的第一存储区域,基于所述第一报文对应的PS进行查表,得到所述处理单元对所述第一报文执行的第一报文处理的类型;所述处理单元用于从所述第一存储区域读取所述第一报文对应的PS,根据所述第一报文对应的PS和所述第一报文处理的类型对所述第一报文执行所述第一报文处理。
33.根据权利要求32所述的装置,其特征在于,所述查表单元,还用于为所述查表单元包括的多个存储区域添加第二标签,所述第二标签用于指示所述第一存储区域在所述多个存储区域中的位置;所述查表单元,还用于根据所述第二标签,从所述多个存储区域中确定所述第一存储区域。
34.根据权利要求33所述的装置,其特征在于,所述查表单元,用于为所述第一存储区域添加所述第二标签,或者所述查表单元,用于为所述多个存储区域中除所述第一存储区域以外的其他存储区域添加所述第二标签。
35.根据权利要求32-34中任一所述的装置,其特征在于,所述处理单元,还用于更新所述第一报文对应的PS;根据所述第一报文对应的更新后的PS,对执行所述第一报文处理后的第一报文执行第二报文处理。
36.根据权利要求35所述的装置,其特征在于,所述第一报文对应的PS包括关键数据,所述关键数据为所述第一报文的报文头数据中用于所述处理单元对所述第一报文执行至少一次报文处理的数据;所述处理单元,用于根据执行所述第一报文处理后的第一报文,获取所述第二报文处理的类型;根据所述第二报文处理的类型,将所述关键数据中与所述第二报文处理无关的数据删除。
37.根据权利要求35或36所述的装置,其特征在于,所述处理单元,用于将通过执行所述第一报文处理生成的第一数据添加至所述第一报文对应的PS,所述第一数据用于所述处理单元对所述执行所述第一报文处理后的第一报文执行所述第二报文处理。
38.根据权利要求30-37中任一所述的装置,其特征在于,所述第一芯片为转发芯片。
39.一种计算机系统,其特征在于,所述计算机系统包括:处理器,所述处理器包括解析模块和处理模块,当所述处理器执行程序指令或代码时,所述计算机系统实现如权利要求1-19中任一所述的方法。
40.根据权利要求39所述的计算机系统,其特征在于,所述计算机系统还包括:存储器,所述存储器用于存储所述程序指令或代码。
41.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序指令或代码,所述程序指令或代码由计算机执行,所述计算机包括解析模块和处理模块,所述程序指令或代码用于使所述计算机实现如权利要求1-19中任一所述的方法。
42.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序指令或代码,所述计算机程序指令或代码由计算机运行,所述计算机包括解析模块和处理模块,所述计算机程序指令或代码用于使得所述计算机实现如权利要求1-19中任一所述的方法。
43.一种芯片,其特征在于,所述芯片包括解析模块和处理模块,所述解析模块用于执行如权利要求1-10中任一所述的方法,所述处理模块用于执行如权利要求11-19中任一所述的方法。
44.一种芯片,其特征在于,所述芯片包括处理器,所述处理器包括解析模块和处理模块,所述处理器用于运行程序指令或代码,使得包含所述芯片的设备执行如权利要求1-19中任一所述的方法。
45.根据权利要求44所述的芯片,其特征在于,所述芯片还包括:输入接口、输出接口和存储器,所述输入接口、所述输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述存储器包含所述程序指令或代码。
Publications (1)
Publication Number | Publication Date |
---|---|
CN118113130A true CN118113130A (zh) | 2024-05-31 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3057272B1 (en) | Technologies for concurrency of cuckoo hashing flow lookup | |
CN110119304B (zh) | 一种中断处理方法、装置及服务器 | |
US9164907B2 (en) | Information processing apparatus, parallel computer system, and control method for selectively caching data | |
CN111352889A (zh) | 一种基于mctp协议的设备管理方法、设备、装置和介质 | |
CN112787927B (zh) | 一种分段路由报文转发方法、装置及预设逻辑电路单元 | |
US20130254462A1 (en) | Method and apparatus to reduce flash memory device programming time over a c.a.n. bus | |
WO2020224380A1 (zh) | 一种基于区块链的数据处理方法及装置 | |
CN116795454B (zh) | 一种芯片配置方法、设备及介质 | |
WO2019140885A1 (zh) | 一种目录处理方法、装置及存储系统 | |
CN104702508A (zh) | 表项动态更新方法及系统 | |
KR20170072645A (ko) | 프로세서 및 프로세서에서 데이터를 처리하는 방법 | |
US8645620B2 (en) | Apparatus and method for accessing a memory device | |
CN104394099A (zh) | 一种报文传输方法及装置 | |
CN118113130A (zh) | 芯片功耗的管理方法、装置、系统及计算机可读存储介质 | |
CN113973074B (zh) | 一种报文处理方法、装置、电子设备及介质 | |
US11275683B2 (en) | Method, apparatus, device and computer-readable storage medium for storage management | |
CN113630300B (zh) | 用于报文传输的方法和节点 | |
CN114253870A (zh) | 一种更新l2p表的方法、系统、设备以及介质 | |
CN114567614A (zh) | 基于fpga实现arp协议处理的方法及装置 | |
CN114489943A (zh) | 一种数据访问方法和装置 | |
CN114666259A (zh) | 报文传输的方法、装置、设备、存储介质及系统 | |
CN111865794A (zh) | 一种逻辑端口的关联方法、系统、设备及数据传输系统 | |
CN113157610B (zh) | 数据保存方法及装置、存储介质、电子装置 | |
CN112764666B (zh) | 用于存储管理的方法、设备和计算机程序产品 | |
CN115087958B (zh) | 数据更新方法、装置和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication |