[发明专利]数据处理方法及相关网元、设备、系统有效
申请号: | 201810081760.8 | 申请日: | 2018-01-26 |
公开(公告)号: | CN110083548B | 公开(公告)日: | 2023-01-13 |
发明(设计)人: | 程永波;贺成洪;兰可嘉 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/0817 | 分类号: | G06F12/0817 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 方法 相关 设备 系统 | ||
本申请实施例提供了一种数据处理方法及相关元件、设备、系统,其中,该数据处理方法包括:第一处理器向内存控制器发送第一请求,所述第一请求中携带有请求地址;所述第一处理器在未确认所述第一请求已完成的情况下,若接收到侦听指令,则在接收到来自所述内存控制器的指示指令后,处理所述侦听指令;其中,所述侦听指令中携带有所述请求地址;所述指示指令用于指示所述第一请求不能被处理,或者所述指示指令用于指示已完成所述第一请求。实施本申请实施例,在多个缓存控制器对同一数据发起请求时避免数据的冲突,进而避免系统出错,提高系统运行的稳定性。
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种数据处理方法及相关网元、设备、系统。
背景技术
由于单个处理器(Central Processing Unit,CPU)核的性能提升在多年前已经达到了瓶颈,因此目前在大多数高性能处理器设计中都采用了增加处理器核数的方法,以增加处理器性能。在多个处理器核系统中,为了提升性能处理器核中可以包括一或两级缓冲存储器(Cache,也称缓存),这些缓冲存储器可以通过总线访问系统中的主存。通常多处理器核系统都是具有缓存一致性的系统,一个常见的一致性多核处理器(Coherence Multi-Processor,CMP)系统可如图1所示。
其中,CMP系统中的缓存控制器(Cache Agent,简称CA),如缓存Cache0~Cachen可以访问系统中统一编码的主存系统。假设初始状态为Cache0缓存了数据A的共享态副本,目录指向Cache0共享该数据A。Cache1请求数据A的独占态副本,Cache1的请求到达内存控制器(Home Agent,HA),内存控制器向Cache0发起侦听;该情况下,若Cache0也发起对数据A的独占态副本的请求,那么该Cache0的请求与该Cache1的请求会存在冲突,如果不处理该冲突,很可能会导致系统出错。
因此,在处理同一数据时,如何有效解决冲突是本领域技术人员正在研究的问题。
发明内容
本申请实施例所要解决的技术问题在于,提供一种数据处理方法及相关元件、设备、系统,在多个缓存控制器对同一数据发起请求时避免数据的冲突,进而避免系统出错,提高系统运行的稳定性。
第一方面,本申请实施例提供了一种数据处理方法,应用于第一处理器,包括:
所述第一处理器向内存控制器发送第一请求,所述第一请求中携带有请求地址;
所述第一处理器在未确认所述第一请求已完成的情况下,若接收到侦听指令,则在接收到来自所述内存控制器的指示指令后,处理所述侦听指令;其中,所述侦听指令中携带有所述请求地址;所述指示指令用于指示所述第一请求不能被处理,或者所述指示指令用于指示已完成所述第一请求。
在一种可选的实现方式中,所述接收到侦听指令之后,以及接收来自所述内存控制器的指示指令之前,所述方法还包括:
所述第一处理器确定所述侦听指令处于阻塞状态。
在一种可选的实现方式中,在所述指示指令用于指示所述第一请求不能被处理的情况下,所述方法还包括:
所述第一处理器接收来自所述内存控制器的重新请求指令后,重新向所述内存控制器发送所述第一请求。
在一种可选的实现方式中,在所述第一请求为写请求的情况下,所述指示指令用于指示已完成所述第一请求。
通过执行上述方法,在第一处理器所发出的第一请求与该第一处理器所接收到的侦听指令冲突的情况下,该第一处理器可以暂停处理该侦听指令,直到接收到内存控制器发送的指示指令后,处理该侦听指令,实施本申请实施例,可以有效解决数据冲突,维护了数据的一致性,避免系统出错,提高系统运行的稳定性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810081760.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:异构计算系统及其操作方法
- 下一篇:一种缓存读写的方法及终端