[发明专利]硬件访问计数器以及用于协调多线程处理的事件产生有效
申请号: | 201680070290.4 | 申请日: | 2016-12-12 |
公开(公告)号: | CN108292230B | 公开(公告)日: | 2022-06-10 |
发明(设计)人: | 曼基特·洛 | 申请(专利权)人: | 图芯芯片技术有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 上海光华专利事务所(普通合伙) 31219 | 代理人: | 余明伟 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 硬件 访问 计数器 以及 用于 协调 多线程 处理 事件 产生 | ||
1.一种方法,包括:
提供存储可执行数据的存储器装置;
提供处理装置,所述处理装置连接到所述存储器装置并且可用于检索和执行所述可执行数据;
提供可操作地连接到所述处理装置的硬件同步组件,其中所述硬件同步组件包含一个或多个状态;
通过所述处理装置同时执行多个执行线程;
对于所述状态中的每一个状态,通过所述多个执行线程将指令发布到所述硬件同步组件,其中所述指令是在一个时钟循环期间接收到的指令;
对于所述状态中的每一个状态,通过所述硬件同步组件聚合所述指令,以得到聚合的指令;
根据所述聚合的指令,通过所述硬件同步组件更新所述硬件同步组件的状态中的每一个状态;
通过所述硬件同步组件确定所述硬件同步组件的所述状态是否符合阈值条件;
响应于确定所述硬件同步组件的所述状态符合所述阈值条件,通过所述硬件同步组件将事件输出到所述处理装置;
响应于从所述硬件同步组件接收所述事件,通过所述处理装置改变所述多个执行线程中的至少一个线程的执行。
2.根据权利要求1所述的方法,进一步包括:
通过所述处理装置将所述事件输入到线程调度器;以及
响应于所述事件,通过所述线程调度器,引起改变所述至少一个线程的所述执行。
3.根据权利要求1所述的方法,其中改变所述至少一个线程的执行包括阻塞所述至少一个线程。
4.根据权利要求1所述的方法,其中改变所述至少一个线程的执行包括指导所述至少一个线程分叉。
5.根据权利要求1所述的方法,其中,根据所述聚合的指令,通过所述硬件同步组件更新所述状态中的每一个状态包括,使计数器增加一个数值,所述数值等于所述指令的数目。
6.根据权利要求5所述的方法,其中确定所述硬件同步组件的所述状态符合所述阈值条件包括确定所述计数器符合所述阈值条件。
7.根据权利要求1所述的方法,其中所述指令包含第一指令和第二指令;
其中更新所述硬件同步组件的所述状态的每一个状态包括:使第一计数器增加第一数值,所述第一数值等于所述第一指令的数目;以及
使第二计数器增加第二数值,所述第二数值等于所述第二指令的数目。
8.根据权利要求7所述的方法,其中确定所述硬件同步组件的所述状态符合所述阈值条件包括:
将所述第一计数器的第一值和所述第二计数器的第二值输入到函数中以获得函数输出;以及
确定所述函数输出符合所述阈值条件。
9.根据权利要求8所述的方法,其中所述函数是所述第一值与所述第二值之间的差。
10.根据权利要求9所述的方法,其中第一指令是写入指令并且第二指令是读取指令,所述读取指令和所述写入指令引用先进先出缓冲器。
11.一种系统,包括:
存储器装置,所述存储器装置存储可执行数据;
处理装置,所述处理装置连接到所述存储器装置并且可用于检索和执行所述可执行数据;
硬件同步组件,所述硬件同步组件可操作地连接到所述处理装置,并包含一个或多个状态;
其中所述处理装置被编程为—
通过所述处理装置同时执行多个执行线程;
向所述硬件同步组件发布指令,其中所述指令为从所述多个执行线程更新所述状态;
其中,对于所述状态中的每个状态,所述硬件同步组件被编程为—
对一特定时钟的每一个时钟循环期间,聚合所述指令,以得到聚合的指令;
根据所述聚合的指令,更新所述硬件同步组件的所述每个状态;
当所述状态符合阈值条件,将事件输出到所述处理装置;
其中所述处理装置进一步被编程为响应于所述事件而改变所述多个执行线程中的至少一个线程的执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于图芯芯片技术有限公司,未经图芯芯片技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680070290.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于重新出现的相邻聚集的指令和逻辑
- 下一篇:从数据生成应用的方法和系统