CN114238170A - 数据处理方法、数据处理装置和存储介质 - Google Patents
数据处理方法、数据处理装置和存储介质 Download PDFInfo
- Publication number
- CN114238170A CN114238170A CN202111568664.4A CN202111568664A CN114238170A CN 114238170 A CN114238170 A CN 114238170A CN 202111568664 A CN202111568664 A CN 202111568664A CN 114238170 A CN114238170 A CN 114238170A
- Authority
- CN
- China
- Prior art keywords
- storage
- directory information
- directory
- storage group
- information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
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)
Abstract
一种数据处理方法、数据处理装置和存储介质。该数据处理方法包括:确定待存储的目录信息;响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间且多个第二存储组中与第一存储组对应的第二存储组中存在空闲的存储空间,将待存储的目录信息存入多个第二存储组中与第一存储组对应的第二存储组中的空闲的存储空间中。通过使用系统存储器对目录存储器的容量进行扩充,提高了用于存储目录信息的存储容量,降低了降级发生的概率,提高了处理器的整体性能。
Description
技术领域
本公开的实施例涉及一种数据处理方法、数据处理装置和存储介质。
背景技术
目前,对于具有多个处理器和多个高速缓冲存储器(Cache,即缓存)的计算机系统,缓存可以缓存大量数据,这些数据可能是独占的,也可能在不同缓存中保存有相同地址的数据副本。当不同的缓存对所缓存的相同地址的数据进行操作时,会产生一致性问题。为了解决这个问题,出现了很多技术来维护数据一致性。例如,当多个缓存存储有相同的数据副本时,某个处理器想修改某个缓存中存储的数据时,该数据在其他缓存的副本将被标记无效,以避免发生一致性错误。
发明内容
本公开一些实施例提供了一种数据处理方法,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,所述数据处理方法包括:确定待存储的目录信息;响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述多个第二存储组中与所述第一存储组对应的第二存储组中的空闲的存储空间中。
例如,在本公开一些实施例提供的数据处理方法中,每个第一存储组还包括扩展标志位,所述方法还包括:将所述第一存储组的扩展标志位设置为有效状态。
例如,本公开一些实施例提供的数据处理方法还包括:响应于与所述待存储的目录信息对应的第一存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述第一存储组中的空闲的存储空间中。
例如,本公开一些实施例提供的数据处理方法还包括:响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中不存在空闲的存储空间,确定待替换的目录信息,将所述待替换的目录信息移出并将所述待存储的目录信息存储至用于存储所述待替换的目录信息的存储空间,将与所述待替换的目录信息相对应的数据信息从所述多个缓存中移出并写入所述系统存储器。
例如,在本公开一些实施例提供的数据处理方法中,所述待替换的目录信息存储在与所述待存储的目录信息对应的第一存储组中或所述多个第二存储组中与所述第一存储组对应的第二存储组中。
例如,在本公开一些实施例提供的数据处理方法中,所述第一存储组在所述目录存储器中的第一组地址的值与对应于所述第一存储组的第二存储组在所述系统存储器中的第二组地址的值存在映射关系。
例如,在本公开一些实施例提供的数据处理方法中,所述映射关系为所述第一组地址的值的一部分对应于所述第二组地址的值的一部分。
本公开一些实施例还提供了一种数据处理方法,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,所述数据处理方法包括:确定待查询的目录信息;在与所述待查询的目录信息对应的第一存储组中查询所述待查询的目录信息;响应于与所述待查询的目录信息对应的第一存储组没有存储所述待查询的目录信息,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组中查询所述待查询的目录信息;响应于所述第二存储组存储有所述待查询的目录信息,从所述第二存储组读取所述待查询的目录信息。
例如,在本公开一些实施例提供的数据处理方法中,所述每个第一存储组还包括扩展标志位,当所述每个第一存储组的扩展标志位表示有效状态,则表示与所述每个第一存储组对应的第二存储组存储有目录信息,所述方法还包括:响应于所述第一存储组没有存储所述待查询的目录信息且所述第一存储组中的扩展标志位表示所述有效状态,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组查询所述待查询的目录信息。
例如,本公开一些实施例提供的数据处理方法还包括:响应于与所述待查询的目录信息对应的第一存储组中存储有所述待查询的目录信息,从与所述待查询的目录信息对应的第一存储组中读取所述待查询的目录信息。
例如,本公开一些实施例提供的数据处理方法还包括:响应于所述第一存储组存在空闲的存储空间,将所述待查询的目录信息从所述第二存储组中读出后写入所述第一存储组中的空闲的存储空间中;响应于所述第一存储组不存在空闲的存储空间,将从所述第二存储组中读出的所述待查询的目录信息与所述第一存储组中的目录信息进行交换。
本公开一些实施例提供一种数据处理装置,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,所述数据处理装置包括:目录信息确定模块,配置为确定待存储的目录信息;目录信息存储模块,配置为响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述多个第二存储组中与所述第一存储组对应的第二存储组中的空闲的存储空间中。
例如,在本公开一些实施例提供的一种数据处理装置中,每个第一存储组还包括扩展标志位,所述目录信息存储模块还配置为:将所述第一存储组的扩展标志位设置为有效状态。
例如,在本公开一些实施例提供的一种数据处理装置中,所述目录信息存储模块还配置为:响应于与所述待存储的目录信息对应的第一存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述第一存储组中的空闲的存储空间中。
例如,在本公开一些实施例提供的一种数据处理装置中,所述目录信息存储模块还配置为:响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中不存在空闲的存储空间,确定待替换的目录信息,将所述待替换的目录信息移出并将所述待存储的目录信息存储至用于存储所述待替换的目录信息的存储空间,将与所述待替换的目录信息相对应的数据信息从所述多个缓存中移出并写入所述系统存储器。
本公开一些实施例还提供了一种数据处理装置,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,所述数据处理装置包括:目录信息确定模块,配置为确定待查询的目录信息;目录信息查询模块,配置为在与所述待查询的目录信息对应的第一存储组中查询所述待查询的目录信息;响应于与所述待查询的目录信息对应的第一存储组没有存储所述待查询的目录信息,所述目录信息查询模块配置为在对应于与所述待查询的目录信息对应的第一存储组的第二存储组中查询所述待查询的目录信息;响应于所述第二存储组存储有所述待查询的目录信息,所述目录信息查询模块配置为从所述第二存储组读取所述待查询的目录信息。
例如,在本公开一些实施例提供的一种数据处理装置中,所述每个第一存储组还包括扩展标志位,当所述每个第一存储组的扩展标志位表示有效状态,则表示与所述每个第一存储组对应的第二存储组存储有目录信息,所述目录信息查询模块还配置为:响应于所述第一存储组没有存储所述待查询的目录信息且所述第一存储组中的扩展标志位表示所述有效状态,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组查询所述待查询的目录信息。
例如,在本公开一些实施例提供的一种数据处理装置中,所述目录信息查询模块还配置为:响应于与所述待查询的目录信息对应的第一存储组中存储有所述待查询的目录信息,从与所述待查询的目录信息对应的第一存储组中读取所述待查询的目录信息。
例如,本公开一些实施例提供的一种数据处理装置还包括:目录信息写入模块,所述目录信息写入模块配置为,响应于所述第一存储组存在空闲的存储空间,将所述待查询的目录信息从所述第二存储组中读出后写入所述第一存储组中的空闲的存储空间中;响应于所述第一存储组不存在空闲的存储空间,将从所述第二存储组中读出的所述待查询的目录信息与所述第一存储组中的目录信息进行交换。
本公开一些实施例还提供一种数据处理装置,包括:存储器,用于非暂时性存储计算机可执行指令;以及处理器,用于运行所述计算机可执行指令,其中,所述计算机可执行指令被所述处理器运行时执行本公开一些实施例提供的任一种数据处理方法。
本公开一些实施例提供了一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行本公开一些实施例提供的任一种数据处理方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为本公开一些实施例提供的一种电子设备的示意图;
图2为本公开一些实施例提供的一种目录存储器与系统存储器的结构示意图;
图3为本公开一些实施例提供的一种数据处理方法的流程图;
图4A为本公开一些实施例提供的另一种数据处理方法的流程图;
图4B为本公开另一些实施例提供的另一种数据处理方法的流程图;
图5为本公开一些实施例提供的一种数据处理装置的示意图;
图6为本公开一些实施例提供的另一种数据处理装置的示意图;
图7为本公开一些实施例提供的数据处理装置的示意图;以及
图8是本公开一些实施例提供的一种非暂时性存储介质的示意图;
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了部分已知功能和已知部件的详细说明。
现有的目录式侦听过滤器(目录存储器)中储存的追踪信息(目录信息)多以组相联模式存储,目录存储器包括多个存储组,每个存储组可以存储多条目录信息。当需要向目录存储器中存入目录信息时,目录存储器根据映射关系将该目录信息放入相应的存储组。如果此时,该存储组被多条目录信息占满时,就需要将其中一条目录信息从目录存储器中驱逐出去,目录存储器此时会向相应缓存发送探针,将与该被驱逐的目录信息相对应的数据信息从缓存中驱逐出去并写回系统存储器中(该过程称为降级(downgrade))。因该降级不是由处理器主动发出的,所以如果处理器后续很可能需要访问被驱逐的数据信息,此时又需要将该数据信息从系统存储器中读出并且重新写入缓存。这样的过程会增加数据信息的访问延时并占用总线资源,并且可能会触发新的降级。
上述方案的缺点是目录存储器组相联存储模式中每个存储组的容量有限,在各个存储组之间存储信息不均匀的情况下容易出现降级问题。本公开的发明人注意到,通过对目录存储器在系统存储器中进行存储容量扩充,可以减少降级概率。
基于上述理解,本公开一些实施例提供一种数据处理方法。该数据处理方法应用于电子设备,电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,目录存储器用于存储多个缓存中存储的数据信息对应的目录信息,目录存储器包括多个第一存储组,系统存储器包括与多个第一存储组对应的多个第二存储组,该数据处理方法包括:确定待存储的目录信息;响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间且多个第二存储组中与第一存储组对应的第二存储组中存在空闲的存储空间,将待存储的目录信息存入多个第二存储组中与第一存储组对应的第二存储组中的空闲的存储空间中。
在本公开的实施例中,利用系统存储器对目录信息进行扩展存储,由于系统存储器的容量相比目录存储器的容量更加充足(例如,系统存储器的容量相比目录存储器的容量多出几个数量级),将目录信息扩展存储到系统存储器中对系统存储器的影响很小同时提高了用于存储目录信息的存储容量,降低了降级发生的概率,进而提高了系统整体的性能。
本公开一些实施例还提供了另一种数据处理方法,应用于电子设备,该电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,目录存储器用于存储多个缓存中存储的数据信息对应的目录信息,目录存储器包括多个第一存储组,系统存储器包括与多个第一存储组对应的多个第二存储组,数据处理方法包括:确定待查询的目录信息;在与待查询的目录信息对应的第一存储组中查询待查询的目录信息;响应于与待查询的目录信息对应的第一存储组没有存储待查询的目录信息,在对应于与待查询的目录信息对应的第一存储组的第二存储组中查询待查询的目录信息;响应于第二存储组存储有待查询的目录信息,从第二存储组读取待查询的目录信息。
该数据处理方法的技术效果与上述数据处理方法的技术效果相同,此处不再赘述。
本公开一些实施例还提供了一种对应于上述数据处理方法的数据处理装置和非暂时性存储介质。
下面介绍一下本公开一些实施例提供的电子设备。
图1为本公开一些实施例提供的一种电子设备的示意图。
如图1所示,电子设备100包括多个缓存1011~1015、至少一个目录存储器106(目录存储器1061)、至少一个系统存储器105(系统存储器1051)和一致性维护模块102。
本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴电子设备等等的移动终端以及诸如数字TV、台式计算机、智能家居设备等等的固定终端。
例如,多个缓存1011~1015中的每个缓存被配置为能够存储至少一个数据信息对应的数据存储信息。目录存储器1061被配置为存储多个缓存1011~1015中存储的所有数据存储信息对应的数据信息的至少部分数据信息对应的目录信息(例如,也可以被称为一致性目录信息),例如,目录存储器1061还可以被配置为能够存储至少一个数据信息对应的数据存储信息,也就是说,目录存储器1061既可以存储数据信息(例如,存储数据信息对应的数据存储信息),还可以存储数据信息对应的目录信息。一致性维护模块102被配置为维护多个缓存1011~1015中存储的所有数据存储信息对应的数据信息的一致性,即用于维护多个缓存1011~1015中存储的所有数据信息的一致性。
在本公开中,“维护多个缓存1011~1015中存储的所有数据存储信息对应的数据信息的一致性”通常指基于探针的数据信息的状态的维护与数据信息的传递、以及相应的目录信息的更新机制,但是也可以包括数据信息的其他方面的一致性维护。
例如,多个缓存1011~1015中的每个缓存可以包括多个数据存储组,每个数据存储组可以包括多个数据存储单元。每个数据存储单元用于存储一个数据信息对应的数据存储信息。
例如,缓存1011~1015可以为高速缓冲存储器,高速缓冲存储器由静态存储芯片(SRAM)组成。在计算机存储系统的层次结构中,高速缓冲存储器是介于中央处理器和系统存储器之间的高速小容量存储器。目录存储器1061可以与缓存1011~1015采用相同或相近的方式实现,也可以采用与缓存1011~1015不同的实现方式实现。
图2为本公开一些实施例提供的一种目录存储器与系统存储器的结构示意图。
例如,如图2所示,对于目录存储器1061,为了便于快速查询目录存储器1061中存储的内容,可以将目录存储器1061划分为多个第一存储组C1~Cn,即目录存储器1061可以包括多个第一存储组C1~Cn,每个第一存储组包括多个第一存储单元B1~Bm(图2示出了第一存储单元B1、第一存储单元B2、第一存储单元B3、第一存储单元B(m-1)和第一存储单元Bm),n和m均为大于1的正整数。需要说明的是,在本公开的实施例中,例如,在一些实施例中,目录存储器1061可以仅用于存储目录信息,此时,每个第一存储单元可以仅存储一个目录信息,或者,每个第一存储单元也可以存储多个目录信息。又例如,在一些实施例中,目录存储器1061可以用于存储数据信息对应的目录信息和数据信息对应的数据存储信息,此时,多个第一存储组C1~Cn的每个第一存储组可以存储目录信息和/或数据存储信息,由于通常数据存储信息所需的存储空间大于目录信息所需的存储空间,从而此时,每个第一存储单元用于存储一个数据存储信息或多个目录信息。在本公开下面的描述中,除非特别说明,按照目录存储器1061可以用于存储数据信息对应的目录信息和数据信息对应的数据存储信息为例进行说明。
需要说明的是,多个第一存储组C1~Cn分别对应的存储单元数量可以各不相同,也可以至少部分相同,具体可以根据实际设计需求进行设计。第一存储组对应的存储单元数量表示第一存储组中的第一存储单元的数量。图2所示的示例中,每个第一存储组对应的存储单元数量均为m,即每个第一存储组包括m个第一存储单元。
例如,数据存储信息可以包括数据地址信息、数据状态信息以及数据信息。该数据地址信息可以包括该数据信息在存储该数据信息的系统存储器中对应的地址的至少一部分。该对应的地址可以包括第一地址部分和第二地址部分,该数据地址信息可以包括第一地址部分,第二地址部分用于确定用于存储该数据存储信息的存储组(例如,数据存储组或第一存储组)。数据状态信息可以表示该数据信息是“干净”或是“脏”状态,即指示该数据信息是否被改写,当数据状态信息为“脏”状态,则表示该数据信息已经被改写;当数据状态信息为“干净”状态,则表示该数据信息没有被改写。
例如,目录信息可以包括目录地址信息和缓存状态信息。其中,该目录地址信息可以包括第一地址部分;该缓存状态信息用于指示存储有与该缓存状态信息相对应的数据信息的缓存,即表示哪些缓存存储了该数据信息,数据信息的缓存状态信息还可以用于指示数据信息是否被修改等信息。
例如,第二地址部分用于确定目录存储器1061中用于存储数据信息对应的目录信息的第一存储组,例如,一致性维护模块102基于第二地址部分,将数据信息对应的目录信息存储在目录存储器1061中与第二地址部分对应的第一存储组中的任一第一存储单元中。例如,在一些实施例中,一致性维护模块102基于第二地址部分,通过组相联的地址映射方式,将数据信息对应的目录信息存储在目录存储器1061中与第二地址部分对应的第一存储组中的任一第一存储单元中。
例如,在每个第一存储组中,按照组相联的方式保存了多个数据信息分别对应的目录信息,该目录信息能够表示数据信息在缓存中的存储状态,为了能快速查找某个数据信息在缓存中的存储状态,通常该数据信息在用于存储该数据信息的系统存储器中对应的地址的一部分(即第二地址部分)作为组相联的地址映射关系实现映射,该数据信息在用于存储该数据信息的系统存储器中对应的地址的剩下部分(即第一地址部分)与该数据信息的缓存状态信息作为该数据信息对应的目录信息被存储在目录存储器中的对应第一存储组的某一第一存储单元中。
例如,在本公开的实施例中,每个第一存储组中的每个第一存储单元可以存储多个目录信息。如图2所示,在一些实施例中,在目录存储器1061还可以用于存储数据信息对应的数据存储信息的情况下,对于第一存储组C1中的第一存储单元B1,该第一存储组C1中的第一存储单元B1存储的内容可以包括目录标志和多个目录信息。每个目录信息可以包括目录地址信息和缓存状态信息,目录标志用于表示该第一存储组C1中的第一存储单元B1存储的内容为数据信息对应的目录信息。在一些实施例中,在目录存储器1061仅用于存储数据信息对应的目录信息的情况下,每个第一存储单元存储的内容可以不包括目录标志,而仅仅包括目录信息,例如,对于第一存储组C1中的第一存储单元B1,该第一存储组C1中的第一存储单元B1存储的内容包括多个目录信息。
例如,在一些实施例中,在目录存储器1061还可以用于存储数据信息对应的数据存储信息的情况下,即多个第一存储组C1~Cn中的每个第一存储组还可以存储数据信息,例如,图2所示的第一存储组C1中的第一存储单元B2存储的内容可以包括数据标志和一个数据存储信息,数据存储信息可以包括数据地址信息、数据状态信息和该数据信息本身,数据标志用于表示该第一存储组C1中的第一存储单元B2存储的内容为数据信息对应的数据存储信息。
例如,在缓存1011~1015和目录存储器1061中,通常按照组相联的方式保存多个数据信息,即存储多个数据信息分别对应的数据存储信息,为了能快速查找某个数据信息,通常该数据信息在用于存储数据信息的系统存储器中对应的地址的一部分(即第二地址部分)作为组相联的地址映射关系实现映射,该数据信息在用于存储该数据信息的系统存储器中对应的地址的剩下部分(即第一地址部分)、该数据信息以及数据状态信息作为该数据信息对应的数据存储信息被存储在缓存1011~1015和/或目录存储器1061中的对应存储组的某一存储单元中。
需要说明的是,虽然本公开中,可以采用“组相联”的方式进行地址映射,然而应该理解,地址映射的方式不限于组相联,还可以采用任何合适的方式实现,例如,全相联或者一一映射的方式。
需要说明的是,第一地址部分和第二地址部分的划分方式可以根据实际情况设置,本公开对此不作限定。本公开对目录信息或者数据存储信息包括的具体内容不作限定,其还可以具有其他信息,目录信息或者数据存储信息包括的具体信息可以根据实际情况设置,本公开对此不作限定。
例如,在目录存储器1061可以用于存储数据存储信息和目录信息的情况下,在目录存储器1061中,每个第一存储单元仅能存储一种类型的信息,即只能存储目录信息或数据存储信息。但是每个第一存储组可以同时存储目录信息和数据存储信息,即该第一存储组中的一些第一存储单元存储目录信息,该第一存储组中的另一些第一存储单元则存储数据存储信息。
当目录存储器1061的存储空间不足(紧张)时,例如,目录存储器1061的某个第一存储组不存在充足的存储空间来存储新的目录信息或数据信息时,可以在系统存储器中选取一块存储区域用于扩展目录存储器1061的存储容量,以便存储目录存储器1061的某个第一存储组中因无足够存储空间而存不下的目录信息或数据信息。
如图2所示,系统存储器1051可以包括扩展目录存储空间1051A。例如,扩展目录存储空间1051A可以是在系统存储器1051上选定的一段存储空间,该一段存储空间对应于存储地址段,该一段存储空间位于该存储地址段在系统存储器1051上指定位置区域中。例如,该存储地址段可以包括多个存储地址,该多个存储地址可以是连续的也可以的不连续的,本公开对此不做限定。
例如,如图2所示,扩展目录存储空间1051A可以包括多个第二存储组ExC1~ExCn(图2示出了第二存储组ExC1、第二存储组ExC2和第二存储组ExCn)。例如,在多个第二存储组ExC1~ExCn中的每个第二存储组中,也可以按照组相联的方式保存多个目录信息或多个数据存储信息,或者按照其他地址映射的方式保存多个目录信息或多个数据存储信息,本公开对此不做限定。
例如,如图2所示,多个第二存储组ExC1~ExCn与多个第一存储组C1~Cn一一对应。每个第二存储组包括多个第二存储单元ExB1~ExBk(图2示出了第二存储单元ExB1、第二存储单元ExB2、第二存储单元ExB3和第二存储单元ExBk),n和k均为大于1的正整数。
需要说明的是,多个第二存储组ExC1~ExCn分别对应的存储单元数量可以各不相同,也可以至少部分相同,具体可以根据实际设计需求进行设计。第二存储组对应的存储单元数量表示第二存储组中的第二存储单元的数量。图2所示的示例中,每个第二存储组对应的存储单元数量均为k,即每个第二存储组包括k个第二存储单元。
例如,在目录存储器1061仅用于存储目录信息的情况下,多个第二存储组ExC1~ExCn的每个第二存储组也仅用于存储目录信息;在目录存储器1061可以用于存储数据信息对应的目录信息和数据信息对应的数据存储信息的情况下,多个第二存储组ExC1~ExCn的每个第二存储组也可以存储目录信息和/或数据存储信息。
例如,目录存储器1061可以设置扩展标志位(Flag),例如可以在目录存储器1061的多个第一存储组中的每个第一存储组上设置扩展标志位。该扩展标志位的状态可以包括有效状态和无效状态,例如当第一存储组的扩展标志位为有效状态时,表示在与该第一存储组对应的第二存储组中存储有数据存储信息和/或目录信息;反之,当第一存储组的扩展标志位为有无效状态时,表示在与该第一存储组对应的第二存储组中没有存储数据存储信息和目录信息。
例如,如图2所示,第一存储器1061包括的多个第一存储组C1~Cn中的每个第一存储组可以设置有扩展标志位F,扩展标志位F的状态可以包括有效状态和无效状态,当某个第一存储组(例如第一存储组C1)的扩展标志位F的状态为有效状态时,在系统存储器1051中的扩展目录存储空间1051A中与该第一存储组C1对应的第二存储组(例如,第二存储组ExC1)中存储有目录信息和/或数据存储信息;当某个第一存储组(例如第一存储组C2)的扩展标志位F的状态为无效状态时,在系统存储器1051中的扩展目录存储空间1051A中与该第一存储组C2对应的第二存储组(例如第二存储组ExC2)中没有存储任何信息。
从而,通过利用系统存储器对目录存储器的容量进行扩展,由于系统存储器的容量通常比目录存储器大若干数量级,在系统存储器中设置一部分存储空间以用于存储目录信息对系统存储器的影响很小,而又提高了用于存储目录信息的存储容量,降低了降级发生的概率,提高了系统整体的性能。
例如,如图1所示,电子设备100还包括多个处理器1031~1032,多个缓存1011~1015包括由多个处理器1031~1032使用的多个专用缓存以及多个处理器1031~1032共用的至少一个共享缓存。在一些实施例中,至少一个共享缓存包括缓存1015,且可以由多个处理器1031~1032共用。
需要说明的是,在本公开的实施例中,处理器的专用缓存表示仅仅可以由该处理器访问的缓存,而共享缓存则可以由多个处理器访问。
每个处理器可以使用至少一个专用缓存,例如,图1所示的缓存1011和缓存1012可以为由处理器1031使用的专用缓存,图1所示的缓存1013和缓存1014可以为由处理器1032使用的专用缓存,图1所示的缓存1015可以为由处理器1031和处理器1032共用的共享缓存。例如,缓存1011和缓存1013可以为第一级缓存(L1),缓存1012和缓存1014可以为第二级缓存(L2)。缓存1015可以为第三级缓存(L3),缓存1015可以为系统级缓存(SLC,system levelcache,SLC通常指计算机系统中分布在系统存储器和缓存(L1、L2、L3等)之间的缓存)。
例如,对于多个处理器1031~1032中需要访问缓存的当前处理器,当前处理器首先访问由当前处理器使用的至少一个专用缓存,然后访问至少一个共享缓存中的一个缓存或目录存储器。例如,当前处理器可以为处理器1031,当处理器1031发出读取请求以读取数据信息时,处理器1031会访问缓存,此时,处理器1031首先访问由处理器1031使用的至少一个专用缓存,即缓存1011和缓存1012,在设计的过程,对于专用缓存的访问可以设定访问顺序,例如,处理器1031可以先访问缓存1011,当缓存1011中没有存储处理器1031需要读取的数据信息时,处理器1031接着访问缓存1012;当访问完专用缓存,即缓存1011和缓存1012均没有存储处理器1031需要读取的数据信息时,处理器1031则可以继续访问该处理器1031使用的至少一个共享缓存或目录存储器,即图1所示的缓存1015和目录存储器1061,在设计的过程,对于共享缓存和目录存储器的访问也可以设定访问顺序,例如,处理器1031可以先访问缓存1015,当缓存1015中没有存储处理器1031需要读取的数据信息时,则处理器1031访问目录存储器1061。
需要说明的是,在图1所示的示例中,仅示出了五个缓存1011~1015、一个系统存储器1051、一个目录存储器1061和两个处理器1031~1032,然而,本公开的实施例并不限于此,电子设备100可以包括更多或更少的缓存,可以包括更多的目录存储器,也可以包括更多的处理器,也可以包括更多的系统存储器。
例如,每个缓存具有一个缓存控制模块,该缓存控制模块可以访问缓存中的每一个存储单元,以对存储单元中存储的内容进行读取,然后解析该存储的内容。在判断处理器发出的读取请求中的需要被读取的数据信息是否被存储在某个缓存中时,由缓存中的缓存控制模块执行判断的过程,即缓存控制模块将存储单元中的内容读取出并解析,将解析后的内容与基于读取请求确定的需要被读取的数据信息进行比较,从而判断存储单元中存储的数据信息与需要被读取的数据信息是否一致。
例如,如图1所示,根据访问缓存的逻辑顺序,缓存1011最靠近处理器1031,缓存1015最远离处理器1031,即处理器1031最先访问缓存1011,最后访问缓存1015;类似地,缓存1013最靠近处理器1032,缓存1015最远离处理器1032。
例如,在一些实施例中,如图1所示,一致性维护模块102与目录存储器1061耦接(例如,直接耦接,从而提高一致性维护模块102访问目录存储器1061的速度),以直接访问目录存储器1061。
例如,如图1所示,电子设备100还包括一致性互联总线104,一致性互联总线104与缓存1015直接耦接,还与一致性维护模块102直接耦接。一致性互联总线104为信息传输的公共通信干线,例如,一致性互联总线104为由导线等电子元件组成的传输线束。
例如,如图1所示,目录存储器1061被配置为能够存储与至少一个系统存储器105中存储的所有数据信息中的至少部分数据信息对应的目录信息。
例如,系统存储器105可以为主存,也可以为电子设备101外接的存储器,例如,硬盘、软盘、光盘、U盘等。
例如,如图1所示,一致性维护模块102与至少一个系统存储器105中的一个系统存储器1051耦接,例如,直接耦接,即一致性维护模块102可以直接访问系统存储器1051,从而实现维护系统存储器1051中存储的数据信息的一致性。
需要说明的是,在本公开中,两个器件“耦接”表示在逻辑关系上其中一个器件可以访问另一个器件。
例如,如图1所示,当处理器1031需要读取数据信息时,若处理器1031使用的所有缓存(即缓存1012、缓存1013、缓存1015)和目录存储器1061均没有存储该数据信息,则可以从系统存储器1051中读取该数据信息并反馈给处理器1031。
例如,一致性维护模块102可以采用软件、硬件、固件以及它们的任意可行的组合实现。例如,一致性维护模块102可以包括逻辑器件,例如,寄存器、锁存器、触发器、缓存器、反转器等。
例如,处理器1031~1032可以是中央处理单元(CPU)或者具有数据处理能力和/或程序执行能力的其它形式的处理单元,例如现场可编程门阵列(FPGA)或张量处理单元(TPU)等;例如,中央处理单元(CPU)可以为X86或ARM架构等。
图3为本公开一些实施例提供的一种数据处理方法的流程图。
例如,数据处理方法可以应用于本公开的实施例提供的电子设备中,电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,目录存储器用于存储多个缓存中存储的数据信息对应的目录信息,目录存储器包括多个第一存储组,系统存储器包括与多个第一存储组对应的多个第二存储组。例如,在本公开的一些实施例中,电子设备可以为上述图1所示的电子设备100。例如,多个第一存储组与多个第二存储组一一对应,多个第一存储组与多个第二存储组之间的映射对应关系可以根据实际情况进行设置,本公开的实施例对此不作限制。
如图3所示,该数据处理方法至少包括以下步骤S101~S102。
步骤S101,确定待存储的目录信息。
例如,如图3所示,在确定待存储的目录信息之后,首先,确定与待存储的目录信息对应的第一存储组中是否存在空闲的存储空间,当与待存储的目录信息对应的第一存储组中不存在空闲的存储空间,则确定多个第二存储组中与第一存储组对应的第二存储组中是否存在空闲的存储空间,当多个第二存储组中与第一存储组对应的第二存储组中存在空闲的存储空间,则执行步骤S102。即响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间,且多个第二存储组中与第一存储组对应的第二存储组中存在空闲的存储空间,执行步骤S102。
步骤S102,将待存储的目录信息存入多个第二存储组中与第一存储组对应的第二存储组中的空闲的存储空间中。
在本公开的实施例提供的数据处理方法中,利用系统存储器对目录信息进行扩展存储,从而扩展用于存储目录信息的存储容量,由于系统存储器的容量相比目录存储器的容量更加充足(例如系统存储器的容量通常比目录存储器的容量大若干数量级),将目录信息扩展存储到系统存储器中对系统存储器的影响很小同时提高了用于存储目录信息的存储容量,降低了降级发生的概率,进而提高了系统整体的性能。
例如,在一些实施例中,步骤S101可以根据处理器等控制设备确定待存储的目录信息,并由该控制设备指示将该待存储的目录信息存入待存储的位置。
例如,如图2所示,在目录存储器1061中与该待存储的目录信息对应的第一存储组无空闲的存储空间时,可以将该待存储的目录信息扩展存储到系统存储器1051的扩展目录存储空间1051A中,例如可以将该待存储的目录信息存储到多个第二存储组中与第一存储组对应的具有空闲的存储空间的第二存储组。
需要说明的是,第一存储组中的空闲的存储空间可以是第一存储组中的一个第一存储单元,也可以是第一存储单元的一部分空间,类似地,第二存储组中的空闲的存储空间可以是第二存储组中的一个第二存储单元,也可以是第二存储单元的一部分空间,只要该存储空间可以存储目录信息即可。
例如,在步骤S102中,在确定了待存储的目录信息以及用于存储该待存储的目录信息的存储空间之后,可以将该待存储的目录信息存入该存储空间中,例如存入第二存储组中具有空闲的存储空间的第二存储单元中,该第二存储组是多个第二存储组中与该第一存储组对应的第二存储组。
例如,在本公开的一些实施例中,如图2所示,每个第一存储组还包括扩展标志位F,此时,如图3所示,数据处理方法还可以包括步骤S103:将第一存储组的扩展标志位设置为有效状态。
例如,将待存储的目录信息存入到第二存储组之后,可以将与该待存储的目录信息对应的第一存储组中的扩展标志位设置为有效状态,以表示系统存储器中的与该待存储的目录信息对应的第一存储组对应的第二存储组已经启用并存入了该待存储的目录信息。
如图3所示,在本公开的一些实施例中,响应于与待存储的目录信息对应的第一存储组中存在空闲的存储空间,数据处理方法还可以包括步骤S104,将待存储的目录信息存入第一存储组中的空闲的存储空间中。
例如,当待存储的目录信息对应的第一存储组中存在能够存储该待存储的目录信息的空闲空间时,可以将该待存储的目录信息直接存放在第一存储组中的该空闲空间里,从而不必存放在系统存储器的扩展目录存储空间中(例如与该第一存储组对应的第二存储组中),从而可以便于后续读取该待存储的目录信息。通常情况下,处理器从系统存储器读取数据的速度低于处理器从目录存储器读取数据的速度。
如图3所示,在本公开的一些实施例中,当与待存储的目录信息对应的第一存储组中不存在空闲的存储空间且多个第二存储组中与第一存储组对应的第二存储组中不存在空闲的存储空间,即响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间,且多个第二存储组中与第一存储组对应的第二存储组中不存在空闲的存储空间,数据处理方法还可以包括步骤S105:确定待替换的目录信息,将待替换的目录信息移出并将待存储的目录信息存储至用于存储待替换的目录信息的存储空间,将与待替换的目录信息相对应的数据信息从多个缓存中移出并写入系统存储器。
例如,若目录存储器和/或系统存储器中的扩展目录存储空间中也存储有与待替换的目录信息相对应的数据信息,则还需要将与待替换的目录信息相对应的数据信息从目录存储器和/或系统存储器中的扩展目录存储空间中移出。
例如,待替换的目录信息存储在与待存储的目录信息对应的第一存储组中或多个第二存储组中与该第一存储组对应的第二存储组中。
例如,在与待存储的目录信息对应的第一存储组没有空闲的存储空间,同时,与该第一存储组对应的第二存储组也没有空闲的存储空间时,也即,待存储的目录信息无处可存时,可以从该第一存储组或第二存储组中确定并移出待替换的目录信息从而为待存储的目录信息腾出空闲的存储空间,并将待存储的目录信息存入该腾出的空闲的存储空间里,例如,确定待替换的目录信息的方法可以包括通过随机方式、最近最少使用(LeastRecently Used,LRU)等方式,本公开对此不做限定。由于将待替换的目录信息移出第一存储组或对应的第二存储组,与待替换的目录信息对应的数据信息也需要从多个缓存中移出并写入系统存储器。这里,将与待替换的目录信息相对应的数据信息从多个缓存中移出包括将与该数据信息对应的数据存储信息从多个缓存中移出。若待替换的目录信息相对应的数据信息也存储在目录存储器和/或系统存储器中的扩展目录存储空间中,则与待替换的目录信息相对应的数据信息还需要从目录存储器和/或系统存储器中的扩展目录存储空间中移除。
例如,如图2所示,若待存储的目录信息对应的第一存储组为第一存储组C1,多个第二存储组中与该第一存储组C1对应的第二存储组为第二存储组ExC1,当第一存储组C1和第二存储组ExC1均没有空间的存储空间,则从第一存储组C1或第二存储组ExC1选择待替换的目录信息,即待替换的目录信息存储在第一存储组C1或第二存储组ExC1,然后将待替换的目录信息移出并将待存储的目录信息存储至用于存储待替换的目录信息的存储空间。
例如,在本公开的一些实施例中,第一存储组在目录存储器中的第一组地址的值与对应于第一存储组的第二存储组在系统存储器中的第二组地址的值存在映射关系。例如,该映射关系可以为第一组地址的值的一部分对应于第二组地址的值的一部分。
例如,第一组地址可以是第一存储组在目录存储器中的地址;第二组地址可以是第二存储组在系统存储器中的地址。第一组地址与第二组地址之间的映射关系可以是使用第一组地址的值的一部分(例如高位部分)作为第二组地址的值,例如,第一组地址的值可以是11100101,高位部分可以是第一组地址的值的高四位1110,1110可以作为第二组地址的值。当然,第一组地址与第二组地址之间的映射关系也可以使用上述的“组相联”映射、经过地址的值的逻辑运算等其他有规律的方法映射或经过地址值的变换后的映射。应当注意,此处阐述的第一组地址与第二组地址之间的映射关系仅为示例性说明,不应当认为是对本公开的限制。
图4A为本公开一些实施例提供的另一种数据处理方法的流程图,图4B为本公开另一些实施例提供的另一种数据处理方法的流程图。
例如,该数据处理方法也可以应用于本公开的实施例提供的电子设备中,在本公开的一些实施例中,电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,目录存储器用于存储多个缓存中存储的数据信息对应的目录信息,目录存储器包括多个第一存储组,系统存储器包括与多个第一存储组对应的多个第二存储组,例如,该数据处理方法也可以应用于上述电子设备100。例如,多个第一存储组与多个第二存储组一一对应,多个第一存储组与多个第二存储组之间的映射对应关系可以根据实际情况进行设置,本公开的实施例对此不作限制。
如图4A和图4B所示,该数据处理方法至少包括以下步骤S201~S204。
步骤S201,确定待查询的目录信息。
步骤S202,在与待查询的目录信息对应的第一存储组中查询待查询的目录信息。
步骤S203,响应于与待查询的目录信息对应的第一存储组没有存储待查询的目录信息,在对应于与待查询的目录信息对应的第一存储组的第二存储组中查询待查询的目录信息。
步骤S204,响应于第二存储组存储有待查询的目录信息,从第二存储组读取待查询的目录信息。
在本公开的实施例提供的数据处理方法中,使用系统存储器对目录存储器的存储容量进行扩充,从而扩展用于存储目录信息的存储容量,因此可以降低降级发生的概率。由于降低了降级发生的概率,所以减少了由于降级带来的互联总线的带宽消耗和访问延时,从而在某些降级较为频繁的场景中,提高了处理器的整体性能。
例如,在步骤S201中,可以根据处理器等控制设备确定待查询的目录信息,并由该控制设备指示在目录存储器中或与该目录存储器对应的系统存储器上的扩展目录存储空间中查询该待查询的目录信息。
例如,在步骤S202中,可以先在目录存储器中与待查询的目录信息对应的第一存储组中查询待查询的目录信息。
例如,如果步骤S202的查询结果为与待查询的目录信息对应的第一存储组中没有存储待查询的目录信息,则执行步骤S203。在步骤S203中,可以在系统存储器的第二存储组中查询该待查询的目录信息,该第二存储组与待查询的目录信息对应的第一存储组对应。
例如,如果步骤S203的查询结果为该第二存储组存储有待查询的目录信息,则执行步骤S204。在步骤S204中,可以将查询到的该待查询的目录信息读取出来。如果步骤S203的查询结果为该第二存储组存储有待查询的目录信息,则做出没有查询到待查询的目录信息的信号通知。
例如,在本公开的一些实施例中,每个第一存储组还包括扩展标志位,当每个第一存储组的扩展标志位表示有效状态,则表示与每个第一存储组对应的第二存储组存储有目录信息。
例如,在每个第一存储组包括扩展标志位的情况下,如图4B所示,当与待查询的目录信息对应的第一存储组没有存储待查询的目录信息时,可以判断第一存储组中的扩展标志位是否表示有效状态,当待查询的目录信息对应的第一存储组的扩展标志位为有效状态时,则执行步骤S203,即可以在与该第一存储组对应的第二存储组查询是否存在该待查询的目录信息。若存在该待查询的目录信息,则读取该待查询的目录信息,否则,做出没有查询到待查询的目录信息的信号通知。
当待查询的目录信息对应的第一存储组的扩展标志位为无效状态时,则表示与该第一存储组对应的第二存储组没有存储信息,此时可以做出没有查询到待查询的目录信息的信号通知。
例如,在本公开的一些实施例中,如图4A和图4B所示,响应于与待查询的目录信息对应的第一存储组存储有待查询的目录信息,即步骤S202的查询结果为与待查询的目录信息对应的第一存储组中存储有待查询的目录信息,数据处理方法还可以包括步骤S205,从与待查询的目录信息对应的第一存储组中读取待查询的目录信息。
例如,若在待查询的目录信息对应的第一存储组能够查询到待查询的目录信息,则不必继续查询与该第一存储组对应的第二存储组,可以直接从该待查询的目录信息对应的第一存储组中读取待查询的目录信息。
例如,在本公开的一些实施例中,数据处理方法还可以包括步骤S206和步骤S207。如图4A和图4B所示,在执行步骤S204之后,即从第二存储组读取出待查询的目录信息之后,可以确定与该待查询的目录信息对应的第一存储组是否存在空闲的存储空间,响应于与该待查询的目录信息对应的第一存储组存在空闲的存储空间,执行步骤S206,步骤S206:将待查询的目录信息从第二存储组中读出后写入第一存储组中的空闲的存储空间中。
响应于与该待查询的目录信息对应的第一存储组不存在空闲的存储空间,执行步骤S207,步骤S207:将从第二存储组中读出的待查询的目录信息与第一存储组中的目录信息进行交换。
例如,为了提高目录存储器与目录存储器对应的扩展目录存储空间的整体性能,可以将存储于第二存储组中的待查询的目录信息从第二存储组中移动到第一存储组中。若待查询的目录信息对应的第一存储组中存在空闲的存储空间,则可以直接将该待查询的目录信息从第二存储组中读出后写入待查询的目录信息对应的第一存储组中。若待查询的目录信息对应的第一存储组中不存在空闲的存储空间,则可以将从第二存储组中读出的待查询的目录信息与第一存储组中的目录信息进行交换,该交换方法可以是在第一存储组中选择一个待交换目录信息,将该待交换目录信息读出,将待查询的目录信息写入该待交换目录信息所在的存储空间,将该待交换目录信息存入第二存储组中用于存储待查询的目录信息的存储空间中。从而,待查询的目录信息可以从第二存储组移动到第一存储组,由于第一存储组的查询和读取信息的速度高于第二存储组,后续对该待查询目录信息的再次查询和读取的速度将得到提高。
图5为本公开一些实施例提供的一种数据处理装置的示意图。
例如,数据处理装置可以应用于本公开的实施例提供的电子设备中,例如,上述电子设备100。
如图5所示,在本公开的一些实施例中,数据处理装置300包括目录信息确定模块310以及目录信息存储模块320。
目录信息确定模块310被配置为确定待存储的目录信息。目录信息确定模块310可以用于实现图3所示的数据处理方法中的步骤S101,关于目录信息确定模块310可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S101的描述。
目录信息存储模块320被配置为响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间且多个第二存储组中与第一存储组对应的第二存储组中存在空闲的存储空间,将待存储的目录信息存入多个第二存储组中与第一存储组对应的第二存储组中的空闲的存储空间中。目录信息存储模块320可以用于实现图3所示的数据处理方法中的步骤S102,关于目录信息存储模块320可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S102的描述。
例如,在一些实施例中,每个第一存储组还包括扩展标志位,当将待存储的目录信息存入多个第二存储组中与第一存储组对应的第二存储组中的空闲的存储空间中之后,目录信息存储模块320还可以被配置为将待存储的目录信息对应的第一存储组的扩展标志位设置为有效状态。目录信息存储模块320可以用于实现图3所示的数据处理方法中的步骤S103,关于目录信息存储模块320可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S103的描述。
目录信息存储模块320还可以被配置为响应于与待存储的目录信息对应的第一存储组中存在空闲的存储空间,将待存储的目录信息存入空闲的存储空间中。目录信息存储模块320可以用于实现图3所示的数据处理方法中的步骤S104,关于目录信息存储模块320可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S104的描述。
目录信息存储模块320还可以被配置为响应于与待存储的目录信息对应的第一存储组中不存在空闲的存储空间且多个第二存储组中与第一存储组对应的第二存储组中不存在空闲的存储空间,确定待替换的目录信息,将待替换的目录信息移出并将待存储的目录信息存储至用于存储待替换的目录信息的存储空间,将与待替换的目录信息相对应的数据信息从多个缓存中移出并写入系统存储器。目录信息存储模块320可以用于实现图3所示的数据处理方法中的步骤S105,关于目录信息存储模块320可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S105的描述。
图6为本公开一些实施例提供的另一种数据处理装置的示意图。
例如,数据处理装置可以应用于本公开的实施例提供的电子设备中,例如,上述电子设备100。
如图6所示,在本公开的一些实施例中,数据处理装置400包括目录信息确定模块410、目录信息查询模块420以及目录信息写入模块430。
目录信息确定模块410被配置为确定待查询的目录信息。目录信息确定模块410可以用于实现图4A和图4B所示的数据处理方法中的步骤S201,关于目录信息确定模块410可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S201的描述。
目录信息查询模块420被配置为查询待查询的目录信息,在一些示例中,目录信息查询模块420配置为在与待查询的目录信息对应的第一存储组中查询待查询的目录信息;响应于与待查询的目录信息对应的第一存储组没有存储待查询的目录信息,在对应于与待查询的目录信息对应的第一存储组的第二存储组中查询待查询的目录信息;响应于第二存储组存储有待查询的目录信息,从第二存储组读取待查询的目录信息。例如,在一些实施例中,在每个第一存储组还包括扩展标志位的情况下,目录信息查询模块420还可以进一步被配置为响应于第一存储组没有存储待查询的目录信息且第一存储组中的扩展标志位表示有效状态,在对应于与待查询的目录信息对应的第一存储组的第二存储组查询待查询的目录信息。目录信息查询模块420可以用于实现图4A和图4B所示的数据处理方法中的步骤S202~步骤S204,关于目录信息查询模块420可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S202~步骤S204的描述。
例如,目录信息查询模块420还可以进一步被配置为响应于与待查询的目录信息对应的第一存储组中存储有待查询的目录信息,从与待查询的目录信息对应的第一存储组中读取待查询的目录信息。目录信息查询模块420可以用于实现图4A和图4B所示的数据处理方法中的步骤S205,关于目录信息查询模块420进一步实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S205的描述。
例如,目录信息写入模块430被配置为将第二存储组中查询到的目录信息移动到与该目录信息对应的第一存储组中,在一些示例中,目录信息写入模块430被配置为响应于第一存储组存在空闲的存储空间,将待查询的目录信息从第二存储组中读出后写入第一存储组中的空闲的存储空间中;响应于第一存储组不存在空闲的存储空间,将从第二存储组中读出的待查询的目录信息与第一存储组中的目录信息进行交换。目录信息写入模块430可以用于实现图4A和图4B所示的数据处理方法中的步骤S206~步骤S207,关于目录信息写入模块430可以实现的功能的具体说明可以参考上述数据处理方法的实施例中对于步骤S206~步骤S207的描述。
例如,目录信息确定模块310以及目录信息存储模块320之间可以实现数据传输,目录信息确定模块410、目录信息查询模块420以及目录信息写入模块430之间也可以实现数据传输。
例如,目录信息确定模块310以及目录信息存储模块320之间可以通过有线或无线的方式进行通信,例如,目录信息确定模块310以及目录信息存储模块320之间可以通过总线进行互联,以实现通信,或者,目录信息确定模块310以及目录信息存储模块320之间也可以通过网络连接进行通信,本公开的实施例对此不作限制。目录信息确定模块410、目录信息查询模块420以及目录信息写入模块430之间也可以按照上述方式进行通信,此处不再赘述。
例如,目录信息确定模块310、目录信息存储模块320、目录信息确定模块410、目录信息查询模块420和以及目录信息写入模块430可以采用硬件、软件、固件以及它们的任意可行的组合实现。
在一些实施例中,目录信息确定模块410、目录信息查询模块420和/或目录信息写入模块430包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的目录信息确定模块410、目录信息查询模块420和/或目录信息写入模块430的一些功能或全部功能。在另一些实施例中,目录信息确定模块410、目录信息查询模块420和/或目录信息写入模块430可以是专用硬件器件,用来实现如上所述的目录信息确定模块410、目录信息查询模块420和/或目录信息写入模块430的一些或全部功能。例如,目录信息确定模块410、目录信息查询模块420和/或目录信息写入模块430可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本公开的实施例中,该一个电路板或多个电路板的组合可以包括:一个或多个处理器;与处理器相连接的一个或多个非暂时的计算机可读的存储器;以及处理器可执行的存储在存储器中的固件。例如,目录信息确定模块310以及目录信息存储模块320也可以按照上述方式进行实施,此处不再赘述。
本公开一些实施例还提供另一种数据处理装置。图7为本公开一些实施例提供的数据处理装置的示意图。如图7所示,根据本公开实施例的数据处理装置500可以包括处理器501以及存储器502,其可以通过总线503进行互连。
处理器501可以根据存储在存储器502中的程序或代码执行各种动作和处理。具体地,处理器501可以是一种集成电路芯片,具有信号的处理能力。例如,上述处理器501可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本公开实施例中公开的各种方法、步骤、流程及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以是X86架构或者是ARM架构等。
存储器502用于非暂时性存储计算机可执行指令,处理器501用于运行计算机可执行指令。当计算机可执行指令在被处理器501执行时实现本公开至少一实施例提供的数据处理方法。
例如,存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。易失性存储器可以是随机存取存储器(RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率同步动态随机存取存储器(DDRSDRAM)、增强型同步动态随机存取存储器(ESDRAM)、同步连接动态随机存取存储器(SLDRAM)和直接内存总线随机存取存储器(DRRAM)。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本公开的实施例还提供了一种非暂时性存储介质,该非暂时性存储介质可以为非暂时性计算机可读存储介质。非暂时性存储介质用于非瞬时性地存储计算机可执行指令,该计算机可执行指令在被计算机执行时实现本公开一些实施例提供的数据处理方法。
图8是本公开一些实施例提供的一种非暂时性存储介质的示意图。如图8所示,非暂时性存储介质600可以非暂时性地存储计算机可执行指令610,计算机可执行指令610在被计算机执行时实现本公开任一实施例提供的数据处理方法。
类似地,本公开实施例中的非暂时性存储介质可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本公开的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在非暂时性存储介质中。计算机设备的处理器从非暂时性存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行根据本公开实施例的数据处理方法。
上述数据处理装置以及非暂时性存储介质的技术效果与上述数据处理方法的技术效果相同,此处不再赘述。
需要说明的是,附图中的流程图和框图,图示了按照本公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含至少一个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)为了清晰起见,在用于描述本公开的实施例的附图中,层或结构的厚度和尺寸被放大。可以理解,当诸如层、膜、区域或基板之类的元件被称作位于另一元件“上”或“下”时,该元件可以“直接”位于另一元件“上”或“下”,或者可以存在中间元件。
(3)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (21)
1.一种数据处理方法,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,
所述数据处理方法包括:
确定待存储的目录信息;
响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述多个第二存储组中与所述第一存储组对应的第二存储组中的空闲的存储空间中。
2.如权利要求1所述的方法,其中,每个第一存储组还包括扩展标志位,所述方法还包括:
将所述第一存储组的扩展标志位设置为有效状态。
3.如权利要求1所述的方法,还包括:
响应于与所述待存储的目录信息对应的第一存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述第一存储组中的空闲的存储空间中。
4.如权利要求1-3任一项所述的方法,还包括:
响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中不存在空闲的存储空间,确定待替换的目录信息,将所述待替换的目录信息移出并将所述待存储的目录信息存储至用于存储所述待替换的目录信息的存储空间,将与所述待替换的目录信息相对应的数据信息从所述多个缓存中移出并写入所述系统存储器。
5.如权利要求4所述的方法,其中,所述待替换的目录信息存储在与所述待存储的目录信息对应的第一存储组中或所述多个第二存储组中与所述第一存储组对应的第二存储组中。
6.如权利要求1-3任一项所述的方法,其中,所述第一存储组在所述目录存储器中的第一组地址的值与对应于所述第一存储组的第二存储组在所述系统存储器中的第二组地址的值存在映射关系。
7.如权利要求6所述的方法,其中,
所述映射关系为所述第一组地址的值的一部分对应于所述第二组地址的值的一部分。
8.一种数据处理方法,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,
所述数据处理方法包括:
确定待查询的目录信息;
在与所述待查询的目录信息对应的第一存储组中查询所述待查询的目录信息;
响应于与所述待查询的目录信息对应的第一存储组没有存储所述待查询的目录信息,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组中查询所述待查询的目录信息;
响应于所述第二存储组存储有所述待查询的目录信息,从所述第二存储组读取所述待查询的目录信息。
9.如权利要求8所述的方法,其中,所述每个第一存储组还包括扩展标志位,当所述每个第一存储组的扩展标志位表示有效状态,则表示与所述每个第一存储组对应的第二存储组存储有目录信息,
所述方法还包括:
响应于所述第一存储组没有存储所述待查询的目录信息且所述第一存储组中的扩展标志位表示所述有效状态,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组查询所述待查询的目录信息。
10.如权利要求8所述的方法,还包括:
响应于与所述待查询的目录信息对应的第一存储组中存储有所述待查询的目录信息,从与所述待查询的目录信息对应的第一存储组中读取所述待查询的目录信息。
11.如权利要求8-10任一项所述的方法,还包括:
响应于所述第一存储组存在空闲的存储空间,将所述待查询的目录信息从所述第二存储组中读出后写入所述第一存储组中的空闲的存储空间中;
响应于所述第一存储组不存在空闲的存储空间,将从所述第二存储组中读出的所述待查询的目录信息与所述第一存储组中的目录信息进行交换。
12.一种数据处理装置,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,
所述数据处理装置包括:
目录信息确定模块,配置为确定待存储的目录信息;
目录信息存储模块,配置为响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述多个第二存储组中与所述第一存储组对应的第二存储组中的空闲的存储空间中。
13.如权利要求12所述的装置,其中,每个第一存储组还包括扩展标志位,所述目录信息存储模块还配置为:
将所述第一存储组的扩展标志位设置为有效状态。
14.如权利要求12或13所述的装置,其中,所述目录信息存储模块还配置为:
响应于与所述待存储的目录信息对应的第一存储组中存在空闲的存储空间,将所述待存储的目录信息存入所述第一存储组中的空闲的存储空间中。
15.如权利要求12或13所述的装置,其中,所述目录信息存储模块还配置为:
响应于与所述待存储的目录信息对应的第一存储组中不存在空闲的存储空间且所述多个第二存储组中与所述第一存储组对应的第二存储组中不存在空闲的存储空间,确定待替换的目录信息,将所述待替换的目录信息移出并将所述待存储的目录信息存储至用于存储所述待替换的目录信息的存储空间,将与所述待替换的目录信息相对应的数据信息从所述多个缓存中移出并写入所述系统存储器。
16.一种数据处理装置,应用于电子设备,其中,所述电子设备包括目录存储器、由多个处理器使用的多个缓存以及系统存储器,所述目录存储器用于存储所述多个缓存中存储的数据信息对应的目录信息,所述目录存储器包括多个第一存储组,所述系统存储器包括与所述多个第一存储组对应的多个第二存储组,
所述数据处理装置包括:
目录信息确定模块,配置为确定待查询的目录信息;
目录信息查询模块,配置为在与所述待查询的目录信息对应的第一存储组中查询所述待查询的目录信息;响应于与所述待查询的目录信息对应的第一存储组没有存储所述待查询的目录信息,所述目录信息查询模块配置为在对应于与所述待查询的目录信息对应的第一存储组的第二存储组中查询所述待查询的目录信息;响应于所述第二存储组存储有所述待查询的目录信息,所述目录信息查询模块配置为从所述第二存储组读取所述待查询的目录信息。
17.如权利要求16所述的装置,其中,所述每个第一存储组还包括扩展标志位,当所述每个第一存储组的扩展标志位表示有效状态,则表示与所述每个第一存储组对应的第二存储组存储有目录信息,
所述目录信息查询模块还配置为:
响应于所述第一存储组没有存储所述待查询的目录信息且所述第一存储组中的扩展标志位表示所述有效状态,在对应于与所述待查询的目录信息对应的第一存储组的第二存储组查询所述待查询的目录信息。
18.如权利要求16或17所述的装置,其中,所述目录信息查询模块还配置为:
响应于与所述待查询的目录信息对应的第一存储组中存储有所述待查询的目录信息,从与所述待查询的目录信息对应的第一存储组中读取所述待查询的目录信息。
19.如权利要求16或17所述的装置,还包括:目录信息写入模块,
其中,所述目录信息写入模块配置为,响应于所述第一存储组存在空闲的存储空间,将所述待查询的目录信息从所述第二存储组中读出后写入所述第一存储组中的空闲的存储空间中;响应于所述第一存储组不存在空闲的存储空间,将从所述第二存储组中读出的所述待查询的目录信息与所述第一存储组中的目录信息进行交换。
20.一种数据处理装置,包括:
存储器,用于非暂时性存储计算机可执行指令;以及
处理器,用于运行所述计算机可执行指令,
其中,所述计算机可执行指令被所述处理器运行时执行根据权利要求1-11任一所述的数据处理方法。
21.一种非暂时性存储介质,非暂时性地存储计算机可执行指令,其中,当所述计算机可执行指令由计算机执行时,执行根据权利要求1-11任一所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111568664.4A CN114238170A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法、数据处理装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111568664.4A CN114238170A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法、数据处理装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114238170A true CN114238170A (zh) | 2022-03-25 |
Family
ID=80760130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111568664.4A Pending CN114238170A (zh) | 2021-12-21 | 2021-12-21 | 数据处理方法、数据处理装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114238170A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107003932A (zh) * | 2014-09-29 | 2017-08-01 | 华为技术有限公司 | 多核处理器系统的缓存目录处理方法和目录控制器 |
US20200409846A1 (en) * | 2019-06-25 | 2020-12-31 | Seagate Technology Llc | Dual controller cache optimization in a deterministic data storage system |
CN112463652A (zh) * | 2020-11-20 | 2021-03-09 | 海光信息技术股份有限公司 | 基于缓存一致性的数据处理方法装置、处理芯片及服务器 |
US20210240741A1 (en) * | 2020-01-30 | 2021-08-05 | SCREEN Holdings Co., Ltd. | Data processing method, data processing device, and storage medium |
CN113254363A (zh) * | 2021-05-10 | 2021-08-13 | 英韧科技(上海)有限公司 | 具有部分逻辑到物理地址转换表的非易失性存储控制器 |
-
2021
- 2021-12-21 CN CN202111568664.4A patent/CN114238170A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107003932A (zh) * | 2014-09-29 | 2017-08-01 | 华为技术有限公司 | 多核处理器系统的缓存目录处理方法和目录控制器 |
US20200409846A1 (en) * | 2019-06-25 | 2020-12-31 | Seagate Technology Llc | Dual controller cache optimization in a deterministic data storage system |
US20210240741A1 (en) * | 2020-01-30 | 2021-08-05 | SCREEN Holdings Co., Ltd. | Data processing method, data processing device, and storage medium |
CN112463652A (zh) * | 2020-11-20 | 2021-03-09 | 海光信息技术股份有限公司 | 基于缓存一致性的数据处理方法装置、处理芯片及服务器 |
CN113254363A (zh) * | 2021-05-10 | 2021-08-13 | 英韧科技(上海)有限公司 | 具有部分逻辑到物理地址转换表的非易失性存储控制器 |
Non-Patent Citations (3)
Title |
---|
BLAS CUESTA等: "Increasing the effectiveness of directory caches by deactivating coherence for private memory blocks", 《2011 38TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA)》 * |
JONG HYUK CHOI等: "Hybrid full map directory scheme for distributed shared memory multiprocessors", 《PROCEEDINGS HIGH PERFORMANCE COMPUTING ON THE INFORMATION SUPERHIGHWAY. HPC ASIA "97》 * |
周恒钊: "面向大规模分布式共享内存系统的Cache一致性协议研究和实现", 《中国优秀硕士学位论文全文数据(电子期刊)》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101359813B1 (ko) | 프로세서 주 메모리용 영구 메모리 | |
JP5348429B2 (ja) | 持続性メモリのためのキャッシュコヒーレンスプロトコル | |
US20200081848A1 (en) | Storage device and system | |
US10956323B2 (en) | NVDIMM emulation using a host memory buffer | |
US11379381B2 (en) | Main memory device having heterogeneous memories, computer system including the same, and data management method thereof | |
US11210020B2 (en) | Methods and systems for accessing a memory | |
US20170177482A1 (en) | Computing system having multi-level system memory capable of operating in a single level system memory mode | |
US20180032429A1 (en) | Techniques to allocate regions of a multi-level, multi-technology system memory to appropriate memory access initiators | |
CN114238165B (zh) | 数据处理方法、数据处理装置以及存储介质 | |
US20170083444A1 (en) | Configuring fast memory as cache for slow memory | |
US20180095884A1 (en) | Mass storage cache in non volatile level of multi-level system memory | |
US10210093B2 (en) | Memory device supporting both cache mode and memory mode, and operating method of the same | |
US20190042415A1 (en) | Storage model for a computer system having persistent system memory | |
CN117667785A (zh) | 数据处理方法、数据处理装置、电子设备和存储介质 | |
CN114238171B (zh) | 电子设备、数据处理方法和装置、计算机系统 | |
CN114238170A (zh) | 数据处理方法、数据处理装置和存储介质 | |
CN112463652B (zh) | 基于缓存一致性的数据处理方法、装置、处理芯片及服务器 | |
CN112433961B (zh) | 复合缓存目录系统及其管理方法 | |
CN116049031B (zh) | 数据处理方法、装置、电子设备和存储介质 | |
CN112612726B (zh) | 基于缓存一致性的数据存储方法、装置、处理芯片及服务器 | |
CN116225978A (zh) | 数据处理方法、数据处理装置、电子设备和存储介质 | |
US20220229552A1 (en) | Computer system including main memory device having heterogeneous memories, and data management method thereof | |
US12019545B2 (en) | Memory system and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |