[发明专利]一种处理器和线程处理方法在审
| 申请号: | 201711146942.0 | 申请日: | 2017-11-17 |
| 公开(公告)号: | CN109800064A | 公开(公告)日: | 2019-05-24 |
| 发明(设计)人: | 刘国丁;陈会勇;涂水平 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 线程 输入调度 输出调度 线程处理 处理器 申请 报文处理 存储模块 调度方式 继续处理 模块处理 模块连接 线程分配 指令引擎 有效地 对线 分配 环回 预设 引擎 送入 指令 输出 | ||
本申请实施例公开了一种处理器以及线程处理方法,用于有效地提高报文处理效率。本申请实施例处理器包括:输入调度模块、执行模块、存储模块以及输出调度模块,其中,输入调度模块和输出调度模块分别与执行模块连接,执行模块至少包括一个指令引擎;输入调度模块,用于对未分配线程号的线程分配线程号,并按照预设调度方式将已分配线程号的线程送入执行模块;执行模块,用于通过执行引擎执行线程所对应的指令以对线程的上下文进行处理;输出调度模块,用于确定经过执行模块处理后输出的线程是否要继续处理;若要,则将线程环回至输入调度模块。本申请实施例还对应公开了一种线程处理方法。
技术领域
本申请涉及线程处理领域,尤其涉及到一种处理器和线程处理方法。
背景技术
随着互联网技术的发展,实际应用中对报文的处理既要满足处理速率,同时也要提供可编程能力的要求越来越高,处理器常用于报文处理,协议分析、路由查找等方面。以报文转发为例,通常使用处理器有效地进行报文处理,来满足短时间内处理大量的报文和有效地增加报文处理的需求。在过去,报文处理使用通用处理器(general purposeprocessor,gpp),或专用集成电路(application specific integrated circuits,asic),其中,gpp未针对适用于报文转发的需求而被特殊设计,因此gpp在处理报文转发的性能较差,导致gpp处理报文转发的速率较慢。而asic可以针对适用于报文转发而被特殊设计的集成电路,可以快速的处理报文转发工作,但常被用于特定格式的报文转发工作而被特殊设计,其计算逻辑已经固定在硬件中,未具有可编程能力,也就是说asic芯片确定后无法进行修改或者很难修改升级以增加新功能,因此,asic灵活度不够高。
因此,为了兼顾处理速度性能和灵活性的要求,可编程的多线程处理器被开发出来。多线程处理器的可编程能力可以适应各种报文格式,满足灵活性要求,另外多线程处理器可以运行多个线程,能够同时处理多个报文,满足处理速度性能。
现有技术中,提出了一种多线程处理器,该处理器包括基于运行至止(run tocomplete,rtc)结构的多个执行模块,可以同时处理不同的报文,执行模块中包括有一个指令引擎,每个执行模块以流水线方式依次执行用于处理该报文对应的处理指令。该处理器在处理报文时,通过执行模块以完成不同的报文处理动作,直至处理完毕。由于执行模块只包括一个指令引擎,执行模块处理每个报文包时,每个时间周期内能同时执行的指令数受限,现有处理器的做法,报文处理的效率较低。
发明内容
本申请实施例提供了一种处理器以及线程处理方法,用于解决报文处理效率较低的问题。
为了解决上述问题,本申请实施例提供以下技术方案:
本申请实施例第一方面提供了一种处理器,其特征在于,处理器包括输入调度模块、执行模块、存储模块以及输出调度模块,其中,输入调度模块和输出调度模块分别与执行模块连接,执行模块至少包括一个指令引擎;输入调度模块,用于对未分配线程号的线程分配线程号,并按照预设调度方式将已分配线程号的线程送入执行模块;执行模块,用于通过执行引擎执行线程所对应的指令以对线程的上下文(context)进行处理;输出调度模块,用于确定经过执行模块处理后输出的线程是否要继续处理;若要,则将线程环回至输入调度模块。
从以上方案可以看出,对于执行模块输出的需要继续处理的线程,该线程将在输出调度模块和输入调度模块之间环回处理,直至该线程不需要继续处理,这样,可以有效地保证该线程对应的任务被成功执行,以报文转发为例,可以有效地提高报文处理效率。
在一种可能的实现中,处理器还包括存储模块;该存储模块用于存储线程的上下文。例如,用于存储所述输出调度模块环回至所述输入调度模块的线程的上下文,以便所述输入调度模块调度所述环回的线程时从所述存储获取所述环回的线程的上下文。另外,可选的,该存储模块的存储深度为处理器的线程数总数,能够存储所所有线程的上下文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711146942.0/2.html,转载请声明来源钻瓜专利网。





