• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 8
    • 下载费用:30 金币  

    重庆时时彩票的分析: 用于网络处理器中引擎分配的实现方法.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN201611110967.0

    申请日:

    2016.12.06

    公开号:

    CN106802827A

    公开日:

    2017.06.06

    当前法律状态:

    实审

    有效性:

    审中

    法律详情: 实质审查的生效IPC(主分类):G06F 9/50申请日:20161206|||公开
    IPC分类号: G06F9/50 主分类号: G06F9/50
    申请人: 中国电子科技集团公司第三十二研究所
    发明人: 邱益波; 阎燕山
    地址: 200233 上海市嘉定区嘉罗路1485号
    优先权:
    专利代理机构: 上海汉声知识产权代理有限公司 31236 代理人: 郭国中
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201611110967.0

    授权公告号:

    |||

    法律状态公告日:

    2017.06.30|||2017.06.06

    法律状态类型:

    实质审查的生效|||公开

    摘要

    本发明公开了一种用于网络处理器中引擎分配的实现方法,其包括以下步骤:步骤一:根据当前可用的引擎和前一时刻分配的引擎,选择当前选用的工作引擎,将待处理的数据传递到该引擎中;步骤二:实现多个相同的工作引擎,并行执行具体功能;步骤三:保存处理结果供后级取用,释放占用的引擎,将空闲寄存器对应位清零。本发明支持通过寄存器灵活配置实际工作的引擎数目,根据具体应用需求配置引擎数目、平衡资源和速度,实现性能最优;只要有一个以上空闲引擎,就可以接收数据,释放前级??樽试?,隐藏??橹涫荽浜痛淼氖奔?,提高工作效率;后续引擎数目的扩展方便,只需要简单改动。

    权利要求书

    1.一种用于网络处理器中引擎分配的实现方法,其特征在于,所述用于网络处理器中
    引擎分配的实现方法包括以下步骤:
    步骤一:根据当前可用的引擎和前一时刻分配的引擎,选择当前选用的工作引擎,将待
    处理的数据传递到该引擎中;
    步骤二:实现多个相同的工作引擎,并行执行具体功能;
    步骤三:保存处理结果供后级取用,释放占用的引擎,将空闲寄存器对应位清零。
    2.根据权利要求1所述的用于网络处理器中引擎分配的实现方法,其特征在于,所述用
    于网络处理器中引擎分配的实现方法涉及网络处理器,网络处理器包括解析???、查找模
    块、更新转发???、修改???,且解析???、查找???、更新转发???、修改??榫С侄喔?br />相同、独立的执行单元。
    3.根据权利要求1所述的用于网络处理器中引擎分配的实现方法,其特征在于,所述步
    骤一提供寄存器接口、供软件人员配置引擎数目。
    4.根据权利要求1所述的用于网络处理器中引擎分配的实现方法,其特征在于,所述步
    骤二隐藏数据传输时间,加快数据处理速度。
    5.根据权利要求1所述的用于网络处理器中引擎分配的实现方法,其特征在于,所述空
    闲寄存器反映当前空闲的引擎情况,由??槟诓拷形?。

    说明书

    用于网络处理器中引擎分配的实现方法

    技术领域

    本发明涉及一种网络通信领域技术,特别是涉及一种用于网络处理器中引擎分配
    的实现方法。

    背景技术

    网络处理器是经过专门设计和高度优化来实现网络功能的可编程硬件,用于完成
    报文处理、协议分析、路由转发等通信工作。网络处理器拥有高性能和可编程的优点,支持
    不断涌现的网络技术。

    图1是现有网络处理器的核心组成部分。网络处理器包括数据包解析???、查找模
    块、更新转发??楹褪莅薷乃闹帜??。每种??橥瓿刹煌娜挝?。其中,数据包解析模
    块从帧存储器读出帧数据,分类解析后识别并提取关键信息,对信息进行组合构成多个查
    找关键字。查找??榻邮绽醋圆檎夜丶?,对相关表进行查找和管理。更新转发??楦莶?br />找结果决定帧的输出端口、输出队列。数据包修改??榇又〈娲⑵髦卸脸鲋?,根据需要修改
    内容后写回帧存储器。

    每种??槎伎梢约虻シ治霾街瑁悍峙湟娌⒔邮沾硎?、执行具体功能、
    保存处理结果传递给后级???。??橹湫枰媒隙嗍奔淅创涫?。如果每种??橹挥?br />一个工作引擎,那么??橹浔匦氪泄ぷ?,处理速度非常慢。因此,每种??榫捎枚喔?br />工作引擎执行相同的具体功能,并行处理数据,隐藏传输和处理的时间,如图2所示。

    传统方法是通过状态机的形式来实现多个引擎的分配,每个周期只有一个引擎有
    优先权,如果该引擎没有空闲,则它下一个空闲的引擎可以被分配。这种方法只适合在较少
    引擎数目的场合运用。随着引擎数目的增加,状态机会变得异常复杂,难于管理且不易扩
    展。

    发明内容

    本发明所要解决的技术问题是提供一种用于网络处理器中引擎分配的实现方法,
    其能够快速分配引擎资源,及时接受前级??榇吹氖?,避免长时间占用???,影响数据
    帧线性收发;不同应用场合灵活选择工作引擎的数目,便于选择处理速度和资源占用的最
    优情况;后续扩展引擎数目灵活方便,改动小。

    本发明是通过下述技术方案来解决上述技术问题的:一种用于网络处理器中引擎
    分配的实现方法,其特征在于,所述用于网络处理器中引擎分配的实现方法包括以下步骤:

    步骤一:根据当前可用的引擎和前一时刻分配的引擎,选择当前选用的工作引擎,
    将待处理的数据传递到该引擎中;

    步骤二:实现多个相同的工作引擎,并行执行具体功能;

    步骤三:保存处理结果供后级取用,释放占用的引擎,将空闲寄存器对应位清零。

    优选地,所述用于网络处理器中引擎分配的实现方法涉及网络处理器,网络处理
    器包括解析???、查找???、更新转发???、修改???,且解析???、查找???、更新转发模
    块、修改??榫С侄喔鱿嗤?、独立的执行单元。

    优选地,所述步骤一提供寄存器接口、供软件人员配置引擎数目。

    优选地,所述步骤二隐藏数据传输时间,加快数据处理速度。

    优选地,所述空闲寄存器反映当前空闲的引擎情况,由??槟诓拷形?。

    本发明的积极进步效果在于:本发明支持通过寄存器灵活配置实际工作的引擎数
    目,根据具体应用需求配置引擎数目、平衡资源和速度,实现性能最优;只要有一个以上空
    闲引擎,就可以接收数据,释放前级??樽试?,隐藏??橹涫荽浜痛淼氖奔?,提高
    工作效率;后续引擎数目的扩展方便,只需要简单改动。

    附图说明

    图1为现有网络处理器的核心处理??榻峁雇?。

    图2为现有网络处理器中每种??榇硎萘鞒掏?。

    图3为本发明用于网络处理器中引擎分配的实现方法的流程图。

    具体实施方式

    下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。

    本发明也涉及网络处理器,网络处理器包括解析???、查找???、更新转发???、
    修改???,且四个??榫С侄喔鱿嗤?、独立的执行单元,即工作引擎。

    如图3所示,本发明用于网络处理器中引擎分配的实现方法包括以下步骤:

    步骤301:根据当前可用的引擎和前一时刻分配的引擎,选择当前选用的工作引
    擎,将待处理的数据传递到该引擎中;

    步骤302:实现多个相同的工作引擎,并行执行具体功能,如解析、查找、更新转发
    或修改;

    步骤303:保存处理结果供后级取用,释放占用的引擎,将FREE寄存器(空闲寄存
    器)对应位清零。

    其中,步骤301提供寄存器接口、供软件人员配置引擎数目。

    步骤302隐藏数据传输时间,加快数据处理速度,这样能尽早释放前级??樽试?,
    保证帧的线性收发。

    其中,寄存器包括ENABLE寄存器、FREE寄存器(空闲寄存器)、AVALABLE寄存器、
    SELECT寄存器。上述三个步骤流水执行,隐藏了数据传输和处理的时间,大大提高性能。同
    时,引擎分配部分实现十分简单,改动极其方便,方便后续扩展。

    FREE寄存器反映当前空闲的引擎情况,由??槟诓拷形?。在分配引擎后,将
    FREE寄存器的对应位置1。ENABLE寄存器和FREE寄存器按位与后得到AVAILABLE寄存器,也
    就是当前实际能使用的引擎情况?;贏VAILABLE寄存器和SELECT寄存器,采用仲裁逻辑
    (具体实现方式可以不同)得到新的SELECT寄存器值,并将前级传来的待处理数据传递给相
    应的引擎。传递结束后,释放前级??樽试?。只要有一个或一个以上的空闲引擎,就可以继
    续传递和处理后续数据。某个引擎处理完数据后,会将数据传递给步骤303。此时,释放该引
    擎,并将FREE寄存器中对应位置1。

    以下介绍各个寄存器:

    ENABLE(使能)寄存器:当前使能的引擎情况。如bit0=1表示引擎0使能,0表示不
    使能。以此类推。根据支持的工作引擎数目来配置。如只允许一个引擎工作,那么ENABLE=
    ‘b1;允许2个引擎工作,ENABLE=‘b11,以此类推;

    FREE(空闲)寄存器:当前空闲的引擎情况。表示当前各引擎的空闲情况。bit0=1
    表示引擎0空闲,0表示忙碌。以此类推;

    AVAILABLE(可用)寄存器:当前可用的引擎情况??赡苡卸辔晃?。由ENABLE寄存器
    和FREE寄存器按位与得到;

    SELECT(选择)寄存器:当前实际选用的引擎情况,某时刻有且仅有1位为1。如Bit0
    =1表示选用引擎0,以此类推;根据当前SELECT的值和AVALIABLE的值,得到SELECT的新值,
    也就是由前一时刻选用的引擎和当前可用的引擎情况,得到当前可选用的引擎;

    这四个寄存器的位宽可以和当前支持的引擎数目相同,但是,考虑到后续会增加
    引擎数目,所以将这些寄存器的位宽加大,超过当前支持的引擎数目。

    举个例子,当前支持四个引擎,可以将上述寄存器的位宽定为8,此时只要将
    ENABLE寄存器设成8’b0000_1111。后续如果增加四个引擎,只要将ENABLE寄存器改成8’
    b1111_1111;如果减少四个引擎,只要将ENABLE寄存器改成8’b0000_1111。其他情况以此类
    推。表1列出当前支持的引擎数目和ENABLE寄存器的对应值,可以根据需要灵活配置引擎数
    目,改动很小。

    表1


    既支持只有一个引擎工作,方便硬件调试定位错误;也支持多个引擎并行工作,隐
    藏数据传输时间,提高工作效率。在具体应用中,根据实际情况灵活配置引擎数目,比较资
    源占用和处理速度,选择最优的情况。

    某个时刻选择的引擎由前一时刻选择的引擎和当前可用的引擎来共同决定。

    初始时刻,ENABLE为全1,FREE为全1,那么AVALIABLE也为全1,所有引擎均可用。一
    旦前级??橛惺葑急负?,SELECT仅bit0为1,立即分配到引擎0中处理,将FREE[0]清零。如
    果前级??橛惺葑急负?,此时SELECT仅bit1为1,将立即分配到引擎1中处理,将FREE[1]
    清零。当引擎0工作完成将结果保存好后,释放引擎0,将FREE[0]置1。以此类推,一旦前级模
    块准备好数据,从可用引擎中选择一个引擎,立即将数据传递到这个引擎中,释放前一级模
    块资源。

    本发明均支持多个相同、独立的执行单元,即工作引擎,执行具体功能,对数据进
    行并行处理,隐藏??橹涫莸拇涫奔?,加快处理速度,提高工作效率。只要有一个或
    一个以上的空闲引擎,就允许接收数据,这样能尽快释放前级??樽试?,保证帧的线性收
    发。提供寄存器接口灵活配置工作引擎的数目。支持单引擎模式,即只有一个引擎工作,方
    便硬件调试定位错误;支持多个引擎并行工作,隐藏传输和处理时间,提高工作效率。在具
    体应用中,根据实际情况配置引擎数目,平衡资源和速度两者关系,实现性能的最优。监控
    所有引擎的空闲/忙碌状态,在前一次分配的引擎的基础上,选用一个可用引擎,将前级模
    块的数据保存到该引擎对应的寄存器中,尽快释放前级??榈淖试?,保证数据包的线性收
    发。

    综上所述,本发明支持通过寄存器灵活配置实际工作的引擎数目,根据具体应用
    需求配置引擎数目、平衡资源和速度,实现性能最优;只要有一个以上空闲引擎,就可以接
    收数据,释放前级??樽试?,隐藏??橹涫荽浜痛淼氖奔?,提高工作效率;后续引
    擎数目的扩展方便,只需要简单改动。本发明支持软件根据具体应用灵活配置工作引擎的
    数目,便于选择处理速度和资源占用的最优情况。

    本发明支持灵活配置工作引擎的数目,根据具体应用需求选择合适的引擎数目,
    平衡资源占用和处理速度。既支持单个引擎工作,便于硬件调试;也支持多个工作引擎并行
    处理数据,隐藏数据传输的时间。只要有一个或一个以上空闲的引擎就可以接收前一级模
    块传来的数据,尽快释放前一级??樽试?,保证帧的线性收发。本发明对引擎分配的结构进
    行优化,仅用4个寄存器和简单的仲裁逻辑,实现从当前可用的引擎中选择一个,接收前级
    ??榈氖?,加快处理速度,提高资源利用率,实现性能的最优。

    以上所述的具体实施例,对本发明的解决的技术问题、技术方案和有益效果进行
    了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制
    本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本
    发明的?;し段е?。

    关 键 词:
    用于 网络 处理器 引擎 分配 实现 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:用于网络处理器中引擎分配的实现方法.pdf
    链接地址://www.4mum.com.cn/p-6000642.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03