[发明专利]用于多核处理器的硬件锁实现方法及装置有效
申请号: | 201210493920.2 | 申请日: | 2012-11-28 |
公开(公告)号: | CN102937915A | 公开(公告)日: | 2013-02-20 |
发明(设计)人: | 任巨;张明;龚锐;邓宇;石伟;郭御风;窦强;罗莉;马爱永;王永文 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 赵洪;谭武艺 |
地址: | 410073 湖南省长沙市砚瓦池正*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 多核 处理器 硬件 实现 方法 装置 | ||
1.一种用于多核处理器的硬件锁实现方法,其特征在于其实施步骤如下:
1)建立与处理器核一一对应的锁请求队列,初始化设置各个锁请求队列的权值,通过所述锁请求队列按照先入先出的原则分别缓存各处理器核发送的硬件锁访问请求;
2)获取锁请求队列的最小权值,选择最小权值对应的锁请求队列获得服务,将锁请求队列的权值在获得服务后递增,同时从获得服务的锁请求队列中选出最先进入的硬件锁访问请求并执行锁存储空间访问操作,然后返回应答报文。
2.根据权利要求1所述的用于多核处理器的硬件锁实现方法,其特征在于,所述步骤1)中初始化设置各个锁请求队列的权值的详细步骤如下:
1.1)初始化设置各个锁请求队列的权值计数器和权值递增值;
1.2)将权值计数器的值初始化为权值递增值作为锁请求队列的权值。
3.根据权利要求2所述的用于多核处理器的硬件锁实现方法,其特征在于:所述步骤2)中获取锁请求队列的最小权值具体是指采用二叉树结构获取锁请求队列的最小权值。
4.根据权利要求3所述的用于多核处理器的硬件锁实现方法,其特征在于:所述采用二叉树结构获取锁请求队列的最小权值的详细步骤如下:
2.1)将各个锁请求队列的权值和权编号分别输入二叉树的末梢节点;
2.2)所述二叉树的每一个节点将子节点输入的权项的权值进行比较并选择权值较小的权项作为输出至父节点的权项,最终由所述二叉树的根节点将最终选择得到的权项作为最终选择得到的权值最小的锁请求队列;
2.3)选择最小权值对应的锁请求队列获得服务。
5.根据权利要求4所述的用于多核处理器的硬件锁实现方法,其特征在于:所述步骤2)中将锁请求队列的权值在获得服务后递增的详细步骤如下:将有效的锁请求队列的权值在获得服务后的下一个周期将权值递增值累加到对应的权值计数器作为新的权值;同时判断获得服务的锁请求队列的权值计数器的值是否等于权值计数器的最大计数值,如果是则将所有锁请求队列的权值计数器初始化为权值递增值。
6.一种用于多核处理器的硬件锁装置,其特征在于,包括:
锁请求队列单元(1),包含多个与处理器核一一对应的锁请求队列,所述锁请求队列按照先入先出的原则分别缓存各处理器核发送的硬件锁访问请求;
权值计数逻辑单元(2),用于初始化设置各个锁请求队列的权值,并将锁请求队列的权值在获得服务后递增;
最小权值判断逻辑(3),用于获取锁请求队列的最小权值;
队列选择器(4),用于选择权值最小且请求有效的锁请求队列获得服务;
硬件锁存储空间访问逻辑(5),用于从获得服务的锁请求队列中选出最先进入的硬件锁访问请求执行锁存储空间访问操作并返回应答报文。
7.根据权利要求6所述的用于多核处理器的硬件锁访问装置,其特征在于:所述权值计数逻辑单元(2)包括与锁请求队列一一对应的多个权值计数逻辑(21),所述权值计数逻辑(21)包括步进寄存器(211)、加法器(212)、第一选择器(213)、权值计数器(214)、第二选择器(215)和比较器(216),所述步进寄存器(211)用于存储对应锁请求队列的权值递增值;所述权值计数器(214)用于存储对应锁请求队列的权值;当对应锁请求队列的权值计数器(214)尚未初始化或者收到全部计数器复位命令时,第一选择器(213)将权值递增值写入权值计数器(214)作为对应锁请求队列的权值并通过第二选择器(215)输出;当对应锁请求队列在上一个周期被选择的权值最小的锁请求队列时,加法器(212)将对应锁请求队列的权值计数器(214)加上步进寄存器(211)存储的权值递增值后写入权值计数器(214)作为对应锁请求队列的权值并通过第二选择器(215)输出;对对应锁请求队列在上一个周期未被选择的权值最小的锁请求队列时,第二选择器(215)直接读取对应锁请求队列的权值计数器(214)的数值作为对应锁请求队列的权值输出;且所述第二选择器(215)在对应锁请求队列无效时优先选择权值计数器(214)的最大计数值作为对应锁请求队列的权值输出;所述比较器(216)则在权值计数器(214)的数值等于权值计数器(214)的最大计数值时向各个权值计数逻辑(21)发送全部计数器复位命令。
8.根据权利要求6或7所述的用于多核处理器的硬件锁装置,其特征在于:所述最小权值判断逻辑(3)为二叉树结构,所述二叉树结构的末梢节点的输入端分别与各个权值计数逻辑(21)相连,所述二叉树结构的根节点的输出端与队列选择器(4)相连,所述二叉树结构的末梢节点分别获取各个锁请求队列的权值和权编号,所述二叉树结构的每一个节点将两个子节点输入的权项的权值进行比较并选择权值较小的权项作为输出至父节点的权项,并由所述二叉树结构的根节点将最终选择得到的权项作为最终选择得到的最小权值并输出给队列选择器(4)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210493920.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:网页呈现系统和方法
- 下一篇:一种管理默认应用程序的方法及装置