用于多核处理器的硬件锁实现方法及装置制造方法及图纸

技术编号:8347864 阅读:176 留言:0更新日期:2013-02-21 01:12
本发明专利技术公开了一种用于多核处理器的硬件锁实现方法及装置,方法步骤如下:1)建立与处理器核一一对应的锁请求队列,初始化设置各个锁请求队列的权值,所述锁请求队列按照先入先出的原则分别缓存各处理器核发送的硬件锁访问请求;2)选择权值最小且请求有效的锁请求队列获得服务,将锁请求队列的权值在获得服务后递增,同时从获得服务的锁请求队列中选出最先进入的硬件锁访问请求并执行锁存储空间访问操作,然后返回应答报文;装置包括锁请求队列单元、权值计数逻辑单元、最小权值判断逻辑、队列选择器、硬件锁存储空间访问逻辑。本发明专利技术具有能够使各处理器核获取硬件锁的机会均衡、硬件实现代价小、扩展性好、结构简单、易于实现的优点。

【技术实现步骤摘要】

本专利技术涉及多核微处理器设计领域,具体涉及一种用于多核处理器的硬件锁实现方法及装置
技术介绍
锁同步是软件系统中多个任务间广泛使用的同步方法,而且现代软件对锁的访问频度很高,因此提高锁的访问效率,对于提高软件性能具有较大的好处。硬件锁通常是现代微处理器中提高锁访问效率的常用手段之一。硬件锁通常拥有一定容量的集成在处理器内的存储单元,访问速度快,而且与Cache等多层次存储系统隔离,因此避免了频繁的Cache失效、替换等操作,故相比利用存储系统实现的软件锁,硬件锁拥有更高的访问效率。硬件锁的存储是集中式的,在处理器中位于一个固定的位置。在现代多核微处理 器中,受物理布局和体系结构的限制,各个处理器核访问硬件锁时经过的路径是不同的,各个核访问同一硬件锁的执行速度通常是不平衡的,这会导致硬件锁的同步时间增长。如图I所示,现有技术含有硬件锁部件的多核处理器共有N+1个内核(Core。 CoreN),每两个内核共用一个路由器(Router),多级路由器将所有内核连接在一起,并共享同一个硬件锁。因为到硬件锁的路由器级数的不同,各个内核访问硬件锁的延迟是不一致的,例如Core2相对于Core本文档来自技高网...

【技术保护点】
一种用于多核处理器的硬件锁实现方法,其特征在于其实施步骤如下:1)建立与处理器核一一对应的锁请求队列,初始化设置各个锁请求队列的权值,通过所述锁请求队列按照先入先出的原则分别缓存各处理器核发送的硬件锁访问请求;2)获取锁请求队列的最小权值,选择最小权值对应的锁请求队列获得服务,将锁请求队列的权值在获得服务后递增,同时从获得服务的锁请求队列中选出最先进入的硬件锁访问请求并执行锁存储空间访问操作,然后返回应答报文。

【技术特征摘要】

【专利技术属性】
技术研发人员:任巨张明龚锐邓宇石伟郭御风窦强罗莉马爱永王永文
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1