CN104462007A - 实现多核间缓存一致性的方法及装置 - Google Patents

实现多核间缓存一致性的方法及装置 Download PDF

Info

Publication number
CN104462007A
CN104462007A CN201310432823.7A CN201310432823A CN104462007A CN 104462007 A CN104462007 A CN 104462007A CN 201310432823 A CN201310432823 A CN 201310432823A CN 104462007 A CN104462007 A CN 104462007A
Authority
CN
China
Prior art keywords
consistance
processor core
request
caching process
consistance request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310432823.7A
Other languages
English (en)
Other versions
CN104462007B (zh
Inventor
孙志文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanechips Technology Co Ltd
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201310432823.7A priority Critical patent/CN104462007B/zh
Priority to PCT/CN2014/077491 priority patent/WO2014187259A1/zh
Publication of CN104462007A publication Critical patent/CN104462007A/zh
Application granted granted Critical
Publication of CN104462007B publication Critical patent/CN104462007B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开了一种实现多核间缓存一致性的方法及装置,该方法包括:某个处理器核发起一致性请求到与其相对应的缓存处理单元,当该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,通过一致性总线单元查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应,本发明通过在处理器核执行操作前向其他处理器核发起一致性请求,在得到相应的处理器核的返回的数据或响应后,再执行操作,从而有效避免了多核间的Cache不一致性的问题。

Description

实现多核间缓存一致性的方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种实现多核间缓存一致性的方法及装置。
背景技术
在共享存储的多核处理器中,缓存(Cache)结构可以将共享存储空间中的数据缓存在本地,加速多核获取数据的过程。由于每个处理器看到的存储视图都是通过本地Cache得到的,因此对于同一个存储地址的数据而言,不同的处理器可能会获取到不同的数据值。所以如何实现多核间Cache的一致性成为现在亟待需要解决的问题。
发明内容
鉴于上述的分析,本发明旨在提供一种实现多核间缓存一致性的方法及装置,用以解决现有技术中多核间的缓存不一致性的问题。
本发明的目的主要是通过以下技术方案实现的:
一种实现多核间缓存一致性的方法,该方法包括:
某个处理器核发起一致性请求到与其相对应的缓存处理单元,当该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,通过一致性总线单元查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
优选地,所述方法还包括:当系统包括多个CPU簇,且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理控制单元;
当某个处理器核发起一致性请求到与其相对应的缓存处理单元,且该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,所述缓存处理控制单元查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与本簇内其他处理器核的缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元;
当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;
当需要发给所述一致性总线单元时,所述缓存处理控制单元将所述一致性请求发送给所述一致性总线单元,通过所述一致性总线单元查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓存处理控制单元,接收到所述一致性请求的簇的缓存处理控制单元查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应。
优选地,所述方法还包括:
所述一致性总线单元还查询其他要求一致性的装置,并在查询到所述一致性请求需要发送给其他要求一致性的装置时,将所述一致性请求发送给其他要求一致性的装置,其他要求一致性的装置在执行完毕后,通过所述一致性总线单元向发起一致性请求的处理器核返回响应。
优选地,所述一致性总线单元与侦听过滤单元连接,所述一致性总线单元收到所述一致性请求后,通过所述侦听过滤单元查询与所述一致性请求相关的处理器核。
优选地,所述一致性请求为基于地址的操作的一致性请求。
本发明还提供了一种实现多核间缓存一致性的装置,该装置包括:
处理器核,用于发起一致性请求到与其相对应的缓存处理单元;
缓存处理单元,用于在其自身查询所述一致性请求的查询结果为缺失或者需要发送请求到其他处理器核时,触发一致性总线单元;
一致性总线单元,用于查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和与其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
优选地,当系统包括多个CPU簇,且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理单元控制单元;
所述缓存处理单元还用于,在其自身查询所述一致性请求的查询结果为缺失或者需要发送到其他处理器核时,触发缓存处理控制单元;
所述缓存处理控制单元,用于查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与其他处理器核缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元,当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;当需要发所述一致性总线单元时,将所述一致性请求发送给所述一致性总线单元;在接收到所述一致性请求后,查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应;
所述一致性总线单元还用于,查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓冲控制单元,并将该一致性请求相对应的处理器核发送来的响应发送给发起一致性请求的处理器核。
优选地,所述一致性总线单元还用于,查询其他要求一致性的装置,并在查询到所述一致性请求需要发送给其他要求一致性的装置时,将所述一致性请求发送给其他要求一致性的装置,将接收到的其他要求一致性的装置返回的响应发送给发起一致性请求的处理器核;
其他要求一致性的装置,用于执行一致性请求,并在执行完向所述一致性总线单元返回响应。
优选地,该装置还包括:侦听过滤单元,所述侦听过滤单元与所述一致性总线单元连接;
所述一致性总线单元还用于,触发所述侦听过滤单元查询与所述一致性请求相关的处理器核;
所述侦听过滤单元,用于查询与所述一致性请求相关的处理器核。
优选地,所述一致性请求为基于地址的操作的一致性请求。
本发明有益效果如下:
本发明提供的一种实现多核间缓存一致性的方法及装置,通过在处理器核执行操作前向其他处理器核发起一致性请求,在得到相应的处理器核的返回的数据或响应后,再执行操作,从而有效避免了多核间的Cache不一致性的问题。
本发明的其他特征和优点将在随后的说明书中阐述,并且部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
图1为本发明实施例1的一种实现多核间缓存一致性的方法的流程图;
图2为本发明实施例1的一种实现多核间缓存一致性的装置结构示意图;
图3为本发明实施例1的另一种实现多核间缓存一致性的装置结构示意图;
图4为本发明实施例1的另一种实现多核间缓存一致性的方法的流程图;
图5为本发明实施例2的一种实现多核间缓存一致性的装置结构示意图;
图6为本发明实施例2的另一种实现多核间缓存一致性的装置结构示意图;
图7为本发明实施例2的再另一种实现多核间缓存一致性的装置结构示意图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。为了清楚和简化目的,当其可能使本发明的主题模糊不清时,将省略本文所描述的器件中已知功能和结构的详细具体说明。
实施例1
本发明实施例提供了一种实现多核间缓存一致性的方法,参见图1,该方法包括:
S101、某个处理器核发起一致性请求到与其相对应的缓存处理单元;
本发明实施例中的缓存处理单元与处理器核相连接,通过缓存处理单元解决了处理器核速度和内存速度的速度差异问题。
该步骤具体包括:当某个处理器核需要执行某个缓存操作时,其先向与其连接的缓存处理单元发起一致性请求,即通过该缓存处理单元查找所述一致性请求对应的地址。
其中,所述一致性请求为基于地址的操作的一致性请求。例如基于地址的写操作或读操作。
图2所示为本发明实施例中的一种实现多核间缓存一致性的装置结构示意图,如图2所示,一致性总线单元与多个处理器核的缓存处理单元相连接,并与共享缓存处理单元和系统总线相连接。
S102、该缓存处理单元对所述一致性请求进行查询,当查询结果为缺失或者需要发送到其他处理器核时,进入下一步;
当发起查询的一致性请求类型为读时,如果查询结果为缺失,进入下一步;当发起查询的一致性请求类型为写无效时,如果当前的查询结果不是命中脏数据,那么意味着其他处理器核有可能拥有该请求对应的共享数据,需要进入下一步;
S103、通过一致性总线单元查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和与其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核;
当所述一致性总线与侦听过滤单元(Snoop Filter)连接,该步骤具体包括:
所述一致性总线单元通过侦听过滤单元查询与所述一致性请求相关的处理器核,根据所述一致性请求的类型和查询结果将所述一致性请求发送到相应的处理器核。
通过在一致性总线单元上设置一个侦听过滤单元,能够大大提高其查询的效率并降低由于侦听操作带来的额外功耗。
其中,当所述一致性请求还需要架构中的其他要求一致性的装置的配合才能完成的情况下,将所述一致性请求发送给其他要求一致性的装置,其他要求一致性的装置,在执行完毕后,通过所述一致性总线单元向发起一致性请求的处理器核返回响应。例如,如图3所示,还可以通过一致性总线单元将该一致性请求通过系统总线发送给其他要求一致性的装置,从而实现与其他要求一致性的装置的一致性。当然本领域的技术人员也可以根据实际需要进行其他架构的设计来满足技术需要。
S104、相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
该步骤中的响应包括给发起一致性请求的处理器核返回的数据等等。
图3所示为本发明的另一种实现多核间缓存一致性的装置示意图,如图3所示,当系统中包括多个CPU簇(Cluster),且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理控制单元,图3中为了使图更美观,将缓存处理单元简写为缓存。
当某个处理器核发起一致性请求到与其相对应的缓存处理单元,且该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,所述缓存处理控制单元查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与本簇内其他处理器核的缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元。
例如,当发起一致性请求的类型为基于地址的写操作时,需要查找所有的存储有该信息的缓存处理单元,所以需要将该请求发送给一致性总线单元。
当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;
当需要发给所述一致性总线单元时,所述缓存处理控制单元将所述一致性请求发送给所述一致性总线单元,通过所述一致性总线单元查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓存处理控制单元,接收到所述一致性请求的簇的缓存处理控制单元查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应。通过相应的处理器核返回响应从而实现各个缓存处理单元的一致性。
下面以一个具体的例子对本发明进行详细的说明,参见图4:
S401、簇内部某个处理器核发起一致性操作到缓存处理单元L1(Data CacheL1),查询L1的结果是缺失,就会发送一致性请求到簇内部的缓存处理控制单元;
S402、缓存处理控制单元会去查询簇内的各个处理器核的缓存处理单元,根据查询结果将一致性请求发送到本簇内部的某个处理器核或者发送到簇外部;
S403、如果是发送到簇内部的一致性请求会被其他被侦听的处理器核响应后完成,那么将该一致性请求发送给簇内的相应的处理器核并在执行所述一致性请求完毕后向发起所述一致性请求的处理器核返回响应;
S404、如果是要发送到簇外部才能完成的一致性请求,那么缓存处理控制单元将该一致性请求发送到一致性总线单元上;
S405、一致性总线单元通过侦听过滤单元查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓存处理控制单元;
S406、接收到所述一致性请求的簇的缓存处理控制单元查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,并在执行一致性请求完毕后通过所述一致性总线单元向发起所述一致性请求的处理器核返回响应;
S407、所述一致性总线单元将接收到的响应发送给发起所述一致性请求的处理器核。
当然本领域的技术人员可以根据实际需要对处理器进行其他架构的设计以实现全系统的一致性维护。
本发明实施例提供的一种实现多核间缓存处理单元一致性的方法,通过在处理器核执行操作前向其他处理器核发起一致性请求,在得到相应的处理器核的返回的数据或响应后,再执行操作,从而有效避免了多核间的Cache不一致性的问题。
实施例2
本发明实施例提供了一种实现多核间缓存处理单元一致性的装置,参见图2和5,该装置包括:
处理器核,用于发起一致性请求到与其相对应的缓存处理单元;
缓存处理单元,用于在其自身查询所述一致性请求的查询结果为缺失或者需要发送到其他处理器核时,触发一致性总线单元;
一致性总线单元,用于查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和与其他处理器核缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
其中,本发明实施例中的所述一致性请求为基于地址的操作的一致性请求。
图6为本发明实施例另一种实现多核间缓存处理单元一致性的装置示意图,如图3和6所示,当系统包括多个CPU簇,且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理单元控制单元;
缓存处理单元还用于,在其自身查询所述一致性请求的查询结果为缺失或者需要发送到其他处理器核时,触发缓存处理控制单元;
缓存处理控制单元,用于查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与其他处理器核缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元,当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;当需要发所述一致性总线单元时,将所述一致性请求发送给所述一致性总线单元;在接收到所述一致性请求后,查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应;
一致性总线单元还用于,查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓冲控制单元,并将该一致性请求相对应的处理器核发送来的响应发送给发起一致性请求的处理器核。
本发明实施例的所述一致性总线单元还用于,查询其他要求一致性的装置,并在查询到所述一致性请求需要发送给其他要求一致性的装置时,将所述一致性请求发送给其他要求一致性的装置,将接收到的其他要求一致性的装置返回的响应发送给发起一致性请求的处理器核;
其他要求一致性的装置,用于执行一致性请求,并在执行完向所述一致性总线单元返回响应。
图7为本发明实施例的再另一种实现多核间缓存一致性的装置结构示意图,如图7所示,一致性总线单元与侦听过滤单元连接;
一致性总线单元还用于,触发所述侦听过滤单元查询与所述一致性请求相关的处理器核;
侦听过滤单元,用于查询与所述一致性请求相关的处理器核。
本发明提供了一种实现多核间缓存一致性的方法及装置至少能够带来以下有益效果:
1、通过在处理器核执行操作前向其他处理器核发起一致性请求,在得到相应的处理器核的返回的数据或响应后,再执行操作,从而有效避免了多核间的Cache不一致性的问题;
2、通过在一致性总线单元上设置侦听过滤单元,从而大大提高了查询效率。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (10)

1.一种实现多核间缓存一致性的方法,其特征在于,包括:
某个处理器核发起一致性请求到与其相对应的缓存处理单元,当该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,通过一致性总线单元查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当系统包括多个CPU簇,且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理控制单元;
当某个处理器核发起一致性请求到与其相对应的缓存处理单元,且该缓存处理单元的查询结果为缺失或者需要发送到其他处理器核时,所述缓存处理控制单元查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与本簇内其他处理器核的缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元;
当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;
当需要发给所述一致性总线单元时,所述缓存处理控制单元将所述一致性请求发送给所述一致性总线单元,通过所述一致性总线单元查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓存处理控制单元,接收到所述一致性请求的簇的缓存处理控制单元查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述一致性总线单元还查询其他要求一致性的装置,并在查询到所述一致性请求需要发送给其他要求一致性的装置时,将所述一致性请求发送给其他要求一致性的装置,其他要求一致性的装置在执行完毕后,通过所述一致性总线单元向发起一致性请求的处理器核返回响应。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述一致性总线单元与侦听过滤单元连接,所述一致性总线单元收到所述一致性请求后,通过所述侦听过滤单元查询与所述一致性请求相关的处理器核。
5.根据权利要求1-3任意一项所述的方法,其特征在于,所述一致性请求为基于地址的操作的一致性请求。
6.一种实现多核间缓存一致性的装置,其特征在于,包括:
处理器核,用于发起一致性请求到与其相对应的缓存处理单元;
缓存处理单元,用于在其自身查询所述一致性请求的查询结果为缺失或者需要发送请求到其他处理器核时,触发一致性总线单元;
一致性总线单元,用于查询其他处理器核的缓存处理单元,根据所述一致性请求的类型和与其他处理器核的缓存处理单元对应的查询结果,将所述一致性请求发送到相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应。
7.根据权利要求6所述的装置,其特征在于,当系统包括多个CPU簇,且每个簇内包括多个处理器核和与所述处理器核相连接的缓存处理单元时,每一个簇内均设有一个与簇内的所有缓存处理单元相连接的缓存处理单元控制单元;
所述缓存处理单元还用于,在其自身查询所述一致性请求的查询结果为缺失或者需要发送到其他处理器核时,触发缓存处理控制单元;
所述缓存处理控制单元,用于查询本簇内其他处理器核的缓存处理单元,并根据所述一致性请求的类型和与其他处理器核缓存处理单元对应的查询结果,判断是将所述一致性请求发送给本簇内的处理器核、还是发送给所述一致性总线单元、或是同时发送给本簇内的处理器核和所述一致性总线单元,当需要发给本簇内的处理器核时,将所述一致性请求直接发送给本簇内相应的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后向发起一致性请求的处理器核返回响应;当需要发所述一致性总线单元时,将所述一致性请求发送给所述一致性总线单元;在接收到所述一致性请求后,查询与该一致性请求相对应的处理器核,将所述一致性请求发送给查询到的处理器核,触发相应的处理器核执行所述一致性请求,并在执行完毕后通过所述一致性总线单元向发起一致性请求的处理器核返回响应;
所述一致性总线单元还用于,查询其他簇内的处理器核的缓存处理单元,并将所述一致性请求发送给相应簇的缓冲控制单元,并将该一致性请求相对应的处理器核发送来的响应发送给发起一致性请求的处理器核。
8.根据权利要求6所述的装置,其特征在于,
所述一致性总线单元还用于,查询其他要求一致性的装置,并在查询到所述一致性请求需要发送给其他要求一致性的装置时,将所述一致性请求发送给其他要求一致性的装置,将接收到的其他要求一致性的装置返回的响应发送给发起一致性请求的处理器核;
其他要求一致性的装置,用于执行一致性请求,并在执行完向所述一致性总线单元返回响应。
9.根据权利要求6-8中任意一项所述的装置,其特征在于,还包括:侦听过滤单元,所述侦听过滤单元与所述一致性总线单元连接;
所述一致性总线单元还用于,触发所述侦听过滤单元查询与所述一致性请求相关的处理器核;
所述侦听过滤单元,用于查询与所述一致性请求相关的处理器核。
10.根据权利要求6-8中任意一项所述的装置,其特征在于,所述一致性请求为基于地址的操作的一致性请求。
CN201310432823.7A 2013-09-22 2013-09-22 实现多核间缓存一致性的方法及装置 Active CN104462007B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310432823.7A CN104462007B (zh) 2013-09-22 2013-09-22 实现多核间缓存一致性的方法及装置
PCT/CN2014/077491 WO2014187259A1 (zh) 2013-09-22 2014-05-14 实现多核间缓存一致性的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310432823.7A CN104462007B (zh) 2013-09-22 2013-09-22 实现多核间缓存一致性的方法及装置

Publications (2)

Publication Number Publication Date
CN104462007A true CN104462007A (zh) 2015-03-25
CN104462007B CN104462007B (zh) 2018-10-02

Family

ID=51932836

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310432823.7A Active CN104462007B (zh) 2013-09-22 2013-09-22 实现多核间缓存一致性的方法及装置

Country Status (2)

Country Link
CN (1) CN104462007B (zh)
WO (1) WO2014187259A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105183662A (zh) * 2015-07-30 2015-12-23 复旦大学 一种无cache一致性协议的分布式共享片上存储架构
CN106326148A (zh) * 2015-07-01 2017-01-11 三星电子株式会社 数据处理系统及其操作方法
CN109101439A (zh) * 2017-06-21 2018-12-28 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置
US10409723B2 (en) 2014-12-10 2019-09-10 Alibaba Group Holding Limited Multi-core processor supporting cache consistency, method, apparatus and system for data reading and writing by use thereof
CN112559434A (zh) * 2019-09-25 2021-03-26 阿里巴巴集团控股有限公司 一种多核处理器及核间数据转发方法
CN112559433A (zh) * 2019-09-25 2021-03-26 阿里巴巴集团控股有限公司 一种多核互联总线、核间通信方法及多核处理器
CN116167310A (zh) * 2023-04-25 2023-05-26 上海芯联芯智能科技有限公司 一种验证多核心处理器缓存一致性的方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019118757B4 (de) 2019-07-11 2023-06-22 Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr Verfahren zur Herstellung der Cachekohärenz in Mehrkernprozessoren

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101958834A (zh) * 2010-09-27 2011-01-26 清华大学 支持高速缓存一致的片上网络系统及数据请求方法
CN102270180A (zh) * 2011-08-09 2011-12-07 清华大学 一种多核处理器高速缓存及其管理方法
CN102346714A (zh) * 2011-10-09 2012-02-08 西安交通大学 用于多核处理器的一致性维护装置及一致性交互方法
CN102591800A (zh) * 2011-12-31 2012-07-18 龙芯中科技术有限公司 一种弱一致性存储模型的数据访存系统和方法
CN102866923A (zh) * 2012-09-07 2013-01-09 杭州中天微系统有限公司 对称多核的高效一致性侦听过滤装置
CN102929832A (zh) * 2012-09-24 2013-02-13 杭州中天微系统有限公司 基于非写分配的高速缓存一致性的多核处理器数据传输系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11201402727WA (en) * 2011-12-01 2014-06-27 Univ Singapore Polymorphic heterogeneous multi-core architecture

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101958834A (zh) * 2010-09-27 2011-01-26 清华大学 支持高速缓存一致的片上网络系统及数据请求方法
CN102270180A (zh) * 2011-08-09 2011-12-07 清华大学 一种多核处理器高速缓存及其管理方法
CN102346714A (zh) * 2011-10-09 2012-02-08 西安交通大学 用于多核处理器的一致性维护装置及一致性交互方法
CN102591800A (zh) * 2011-12-31 2012-07-18 龙芯中科技术有限公司 一种弱一致性存储模型的数据访存系统和方法
CN102866923A (zh) * 2012-09-07 2013-01-09 杭州中天微系统有限公司 对称多核的高效一致性侦听过滤装置
CN102929832A (zh) * 2012-09-24 2013-02-13 杭州中天微系统有限公司 基于非写分配的高速缓存一致性的多核处理器数据传输系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10409723B2 (en) 2014-12-10 2019-09-10 Alibaba Group Holding Limited Multi-core processor supporting cache consistency, method, apparatus and system for data reading and writing by use thereof
CN106326148A (zh) * 2015-07-01 2017-01-11 三星电子株式会社 数据处理系统及其操作方法
CN106326148B (zh) * 2015-07-01 2020-06-23 三星电子株式会社 数据处理系统及其操作方法
CN105183662A (zh) * 2015-07-30 2015-12-23 复旦大学 一种无cache一致性协议的分布式共享片上存储架构
CN105183662B (zh) * 2015-07-30 2017-12-29 复旦大学 一种无cache一致性协议的分布式共享片上存储架构
CN109101439A (zh) * 2017-06-21 2018-12-28 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置
CN109101439B (zh) * 2017-06-21 2024-01-09 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置
CN112559434A (zh) * 2019-09-25 2021-03-26 阿里巴巴集团控股有限公司 一种多核处理器及核间数据转发方法
CN112559433A (zh) * 2019-09-25 2021-03-26 阿里巴巴集团控股有限公司 一种多核互联总线、核间通信方法及多核处理器
CN112559434B (zh) * 2019-09-25 2023-12-08 阿里巴巴集团控股有限公司 一种多核处理器及核间数据转发方法
CN112559433B (zh) * 2019-09-25 2024-01-02 阿里巴巴集团控股有限公司 一种多核互联总线、核间通信方法及多核处理器
CN116167310A (zh) * 2023-04-25 2023-05-26 上海芯联芯智能科技有限公司 一种验证多核心处理器缓存一致性的方法及装置

Also Published As

Publication number Publication date
CN104462007B (zh) 2018-10-02
WO2014187259A1 (zh) 2014-11-27

Similar Documents

Publication Publication Date Title
CN104462007A (zh) 实现多核间缓存一致性的方法及装置
DE112015004336B4 (de) Konfigurationsbasierte Auswahl eines Cachekohärenz-Protokolls
CN101958834B (zh) 支持高速缓存一致的片上网络系统及数据请求方法
JP3661761B2 (ja) 共用介入サポートを有する不均等メモリ・アクセス(numa)データ処理システム
CN104935680B (zh) 一种多层级共享缓存的递归域名服务系统和方法
CN103119568B (zh) 利用目录信息扩展高速缓存一致性监听广播协议
JP2000235558A (ja) 主記憶共有型マルチプロセッサシステム及びその共有領域設定方法
Kumar et al. Fusion: Design tradeoffs in coherent cache hierarchies for accelerators
EP1561162B1 (en) Methods and apparatus for multiple cluster locking
CN102662885B (zh) 对称式多核处理器维护二级缓存一致性的装置及其方法
US9594682B2 (en) Data access system, memory sharing device, and data reading method
US9679084B2 (en) Memory sharing across distributed nodes
US9183150B2 (en) Memory sharing by processors
CN106777085A (zh) 一种数据处理方法、装置及数据查询系统
CN104360981A (zh) 面向多核多处理器平台的Cache一致性协议的设计方法
US20150081986A1 (en) Modifying non-transactional resources using a transactional memory system
CN108170544B (zh) 面向数据无冲突程序的共享数据动态更新方法
CN102917036A (zh) 一种基于Memcached的分布式缓存数据同步实现方法
CN108416017B (zh) 一种cdn缓存清除方法和系统
US20120297092A1 (en) Managing data movement in a cell broadband engine processor
CN113900968B (zh) 多副本非原子写的存储序同步操作实现方法与实现装置
CN109542806B (zh) 总线数据解析方法、装置及存储介质
Das et al. Towards a better cache utilization by selective data storage for CMP last level caches
CN110098945B (zh) 应用于节点系统的数据处理方法及装置
CN103902352B (zh) 多核虚拟机系统获取请求数据的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20180817

Address after: 210000 68 Bauhinia Road, Yuhuatai District, Nanjing, Jiangsu

Applicant after: Nanjing Zhongxing New Software Co.,Ltd.

Address before: 518057 Nanshan District high tech Industrial Park, Shenzhen, Guangdong, Ministry of justice, Zhongxing Road, South China road.

Applicant before: ZTE Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191021

Address after: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee after: ZTE Corp.

Address before: 210000 No. 68 Bauhinia Road, Yuhuatai District, Jiangsu, Nanjing

Patentee before: Nanjing Zhongxing New Software Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221121

Address after: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd.

Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong

Patentee before: ZTE Corp.

TR01 Transfer of patent right