[发明专利]一种多核处理器CAS/SWAP原子操作实现方法有效
申请号: | 201210322804.4 | 申请日: | 2012-09-04 |
公开(公告)号: | CN102880584A | 公开(公告)日: | 2013-01-16 |
发明(设计)人: | 邓让钰;衣晓飞;李永进;周宏伟;晏小波;张英;窦强;曾坤;谢伦国;马卓 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F15/167 | 分类号: | G06F15/167 |
代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 赵洪;周长清 |
地址: | 410073 湖南省长沙市砚瓦池正*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 处理器 cas swap 原子 操作 实现 方法 | ||
1.一种多核处理器CAS/SWAP原子操作实现方法,其特征在于,步骤为:
(1)最外层私有Cache LLPC接收到对称处理核SPC的CAS/SWAP原子操作请求后:
若Cache命中,且原子操作满足数据交换条件,向目录控制器DCU发送LLPC Atomic Update Request请求,该请求中携带交换的数据,置Cache块状态为锁定态A;所述Cache块处于锁定态A时,表示该Cache块被占用或处于中间状态,不能被替换;
若Cache失效,则向目录控制器DCU发送LLPC Atomic Read Shared Request请求,需要分配Cache块,且置Cache块为锁定态A;
(2)目录控制器DCU处理最外层私有Cache LLPC与原子请求操作相关的请求:
如果目录控制器DCU对应位向量处于忙状态,则根据请求类型LLPC Atomic Read Shared Request和LLPC Atomic Update Request分别返回DCU Atomic Read Shared NRSP和DCU Atomic Update NRSP响应给源请求LLPC;
若目录控制器DCU对应位向量处于不忙状态,且请求是LLPC Atomic Read Shared Request,目录控制器DCU从LLPC数据副本和memory数据副本中选取最新副本,向请求源返回DCU Atomic Read Shared RSP响应,并置对应位向量;
若目录控制器DCU对应位向量处于不忙状态,且请求是LLPC Atomic Update Request,目录控制器DCU向各个LLPC副本发送DCU Atomic Update Snp监听请求,同时还需要更新Memory副本;
(3)最外层私有Cache LLPC收到目录控制器DCU的更新监听请求后:
最外层私有Cache LLPC收到目录控制器DCU的DCU Atomic Update Snp监听请求后,用监听报文中的数据更新Cache块数据,然后向源目录控制器DCU发送LLPC Atomic Update Snp Ack更新完成应答;
(4)目录控制器DCU收到最外层私有Cache LLPC的更新完成应答后:
等待所有副本的LLPC的LLPC Atomic Update Snp Ack更新完成应答;所有副本的更新完成时,产生完成DCU A tomic Update Cmpl Rsp响应给源请求LLPC;
(5)最外层私有Cache LLPC收到目录控制器DCU的响应后:
若最外层私有Cache LLPC接收到目录控制器DCU产生的DCU Atomic Read Shared NRSP和DCU Atomic Update NRSP响应,重发原请求;
若最外层私有Cache LLPC接收到目录控制器DCU产生的DCU Atomic Read Shared RSP响应,重新处理CAS/SWAP原子操作请求;
若最外层私有Cache LLPC接收到目录控制器DCU产生的DCU Atomic Update Cmpl Rsp响应,完成数据交换操作,置Cache块状态为共享态S,并向目录控制器DCU发送LLPC Atomic Update Cmpl Rsp ACK;所述Cache块处于共享态S时,表示该Cache数据有多个副本;
(6)目录控制器DCU处理LLPC Atomic Update Cmpl Rsp ACK:
目录控制器DCU接收到LLPC Atomic Update Cmpl Rsp ACK后,清空对应位向量的状态位。
2.根据权利要求1所述的多核处理器CAS/SWAP原子操作实现方法,其特征在于,所述目录控制器DCU记录加载到最外层私有Cache LLPC中的所有Cache块的情况;每个进入最外层私有Cache LLPC的数据副本对应一个位向量,该位向量中的每一位对应数据块的一个或多个LLPC副本。
3.根据权利要求1或2所述的多核处理器CAS/SWAP原子操作实现方法,其特征在于,所述多核处理器的结构包括多个对称处理核SPC、每个对称处理核SPC上均有的最外层私有Cache LLPC、目录控制器DCU以及网络NOC,所述对称处理核SPC用于发送CAS/SWAP原子操作请求到最外层私有Cache LLPC,最外层私有Cache LLPC和目录控制器DCU将会协同完成Cache一致性协议;所述最外层私有Cache LLPC负责加载数据并处理原子操作请求,所述目录控制器DCU负责记录加载到各个最外层私有Cache LLPC的所有Cache块的信息,并控制对LLC/memory的访问;所述网络NOC负责最外层私有Cache LLPC和目录控制器DCU之间的通信。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210322804.4/1.html,转载请声明来源钻瓜专利网。