[发明专利]基于分布式有限目录的多路处理器缓存数据一致性实现方法及系统在审
申请号: | 202010440942.7 | 申请日: | 2020-05-22 |
公开(公告)号: | CN111651375A | 公开(公告)日: | 2020-09-11 |
发明(设计)人: | 冯权友;张英;周宏伟;邓让钰;杨乾明;励楠;曾坤;王勇;张见;乔寓然;王俊辉;王永文 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F12/0815 | 分类号: | G06F12/0815;G06F12/0842;G06F12/0875;G06F12/0895;G06F9/46;G06F9/38;G06F9/54 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 谭武艺 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 分布式 有限 目录 处理器 缓存 数据一致性 实现 方法 系统 | ||
1.一种基于分布式有限目录的多路处理器缓存数据一致性实现方法,其特征在于实施步骤包括:
1)私有缓存PCache X响应对应的处理单元PE X的请求,且在请求不命中时向对应的宿主DDCU X发出数据读写一致性请求事务;
2)宿主DDCU X响应数据读写一致性请求事务并检测是否发生资源冲突,如无资源冲突,则通过其他宿主DDCU或MCU返回数据,结束并退出;否则,等待重试缓冲[X]处于空闲态free,且在重试缓冲[X]处于空闲态free时丢弃数据读写一致性请求事务并且向私有缓存PCache X发送重试应答报文RetryAck,跳转执行下一步;
3)私有缓存PCache X与私有缓存PCache之间进入流控模式,在流控模式下宿主DDCU X向私有缓存PCache X逐个发送信约报文Credit_Grant,且每发送一个信约报文Credit_Grant则私有缓存PCache X将被宿主DDCU X丢弃的一个数据读写一致性请求事务重新发送给宿主DDCU X,并通过宿主DDCU X响应数据读写一致性请求事务并返回数据,直至被宿主DDCU X丢弃的所有数据读写一致性请求事务全部完成后退出流控模式。
2.根据权利要求1所述的基于分布式有限目录的多路处理器缓存数据一致性实现方法,其特征在于,步骤1)的详细步骤包括:
1.1)私有缓存PCache X响应对应的处理单元PE X的请求并判断访问请求是否命中,如果命中则直接从私有缓存PCache X中返回命中结果并退出;否则跳转执行下一步;
1.2)将请求的报文设置为动态信用请求存储在正常队列中等待发给宿主DDCU X,且在私有缓存PCache将正常队列中的报文发送给宿主DDCU X的同时也将报文复制一份存入本地的重发队列的底部,使得向对应的宿主DDCU X收到数据读写一致性请求事务。
3.根据权利要求1所述的基于分布式有限目录的多路处理器缓存数据一致性实现方法,其特征在于,步骤2)中向私有缓存PCache X发送重试应答报文RetryAck时还包括将重试缓冲[X]的retryCounter计数器自增1的步骤。
4.根据权利要求3所述的基于分布式有限目录的多路处理器缓存数据一致性实现方法,其特征在于,步骤3)的详细步骤包括:
3.1)私有缓存PCache X收到重试应答报文RetryAck后则和宿主DDCU X进入流控模式,暂停其中正常队列中的目的节点为宿主DDCU X的报文发送,并将其对应的计数器retryCounter[X]自增1,且在计数器retryCounter[X]变为0以前不允许向宿主DDCU X发送动态信用请求Dreq,所述动态信用请求Dreq是指非流控模式下的一致性请求事务;
3.2)宿主DDCU X内当重试缓冲[X]中的上一个被重试的请求事务成功流出,重试缓冲[X]队列状态会转换为空闲态free,如果重试缓冲[X]的计数器retryCounter值大于1,则宿主DDCU X首先会设置重试缓冲[X]进入预留模式,并跳转执行下一步;
3.3)宿主DDCU X向对应的私有缓存PCache X发送信约报文Credit_Grant;
3.4)私有缓存PCache X收到信约报文Credit_Grant后,按时间顺序将先前被DCU丢弃的请求事务从重发队列中取出最早的一项数据读写一致性请求事务并设置为静态信用报文Sreq,再次发送给宿主DDCU X,同时对应宿主DDCU X的计数器retryCounter[X]自减1;所述静态信用报文Sreq是指流控模式下的一致性请求事务;
3.5)宿主DDCU X收到设置为静态信用报文Sreq的数据读写一致性请求事务后,向其余的私有缓存PCache请求对应的高速缓存行Cacheline或者通过存储控制器请求对应的高速缓存行Cacheline并返回给私有缓存PCache X;
3.6)判断宿主DDCU X的计数器retryCounter[X]是否为0,如果为0则私有缓存PCacheX和宿主DDCU X退出流控模式;否则,跳转执行步骤3.3)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010440942.7/1.html,转载请声明来源钻瓜专利网。