缓存数据处理方法、装置、处理器及电子设备与流程

    技术2024-11-24  51


    本申请涉及高速缓存,尤其涉及一种缓存数据处理方法、装置、处理器及电子设备。


    背景技术:

    1、目前,在多核架构的处理器中,某个处理器核对内存的某个虚拟地址的数据进行了更新,若其他处理器核之前对内存的该虚拟地址的数据已经进行了缓存,则会出现其他处理器核所缓存的该虚拟地址的数据与该虚拟地址的最新数据不一致,导致程序处理出错。


    技术实现思路

    1、鉴于以上问题,本申请实施例提供一种缓存数据处理方法、装置、处理器及电子设备,以解决上述各处理器核缓存数据不一致的技术问题。

    2、第一方面,本申请实施例提供一种缓存数据处理方法,应用于处理器,所述处理器包括多个处理器核以及数据一致性单元,所述处理器核包括处理单元和第一缓存;所述缓存数据处理方法包括:

    3、获取处理单元执行的写指令,所述写指令用于对存储模块的第一目标地址进行数据写入;

    4、根据所述写指令,判断第一缓存中是否存在第一目标缓存线,所述第一目标缓存线所缓存的数据对应的虚拟地址与所述第一目标地址匹配;

    5、当存在所述第一目标缓存线时,将所述第一目标缓存线的缓存数据进行清除;

    6、向所述数据一致性单元发送第一数据修改通知,以使所述数据一致性单元向其他处理器核发送所述第一数据修改通知,其中,所述第一数据修改通知用于表征所述存储模块的所述第一目标地址的数据被修改。

    7、第二方面,本申请实施例提供一种缓存数据处理装置,应用于处理器,所述处理器包括多个处理器核,所述处理器核包括处理单元和第一缓存;所述缓存数据处理装置包括:

    8、分别与所述多个处理器核对应的多个缓存数据更新单元;

    9、与多个所述缓存数据更新单元分别连接的数据一致性单元;

    10、所述缓存数据更新单元用于获取处理单元执行的写指令,所述写指令用于对存储模块的第一目标地址进行数据写入;根据所述写指令,判断第一缓存中是否存在目标缓存线,所述第一目标缓存线所缓存的数据对应的虚拟地址与所述第一目标地址匹配;当存在所述第一目标缓存线时,将所述第一目标缓存线的缓存数据进行清除;向所述数据一致性单元发送第一数据修改通知;

    11、所述数据一致性单元用于向所述处理器核发送所述第一数据修改通知,其中,所述第一数据修改通知用于表征所述存储模块的所述第一目标地址的数据被修改。

    12、第三方面,本申请实施例提供一种处理器,所述处理器包括上述的缓存数据处理装置。

    13、第四方面,本申请实施例提供一种电子设备,所述电子设备包括上述的处理器。

    14、本申请实施例提供的缓存数据处理方法、装置、处理器及电子设备,获取处理单元执行的写指令,所述写指令用于对存储模块的第一目标地址进行数据写入;根据所述写指令,判断第一缓存中是否存在第一目标缓存线,所述第一目标缓存线所缓存的数据对应的虚拟地址与所述第一目标地址匹配;当存在所述第一目标缓存线时,将所述第一目标缓存线的缓存数据进行清除;向所述数据一致性单元发送第一数据修改通知,以使所述数据一致性单元向其他处理器核发送所述第一数据修改通知,其中,所述第一数据修改通知用于表征所述存储模块的所述第一目标地址的数据被修改;通过上述方式,任一处理器核的处理单元执行了写指令后,在第一缓存中检索写指令更新的第一目标地址,以从第一缓存中清除与第一目标地址对应的缓存数据,并通过数据一致性单元向其他处理器核发送第一目标地址的数据更新的通知,以使其他处理器核可以从对应的第一缓存中清除与第一目标地址对应的缓存数据,实现了缓存数据的一致性,避免程序错误。

    15、本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。



    技术特征:

    1.一种缓存数据处理方法,其特征在于,应用于处理器,所述处理器包括多个处理器核以及数据一致性单元,所述处理器核包括处理单元和第一缓存;所述缓存数据处理方法包括:

    2.根据权利要求1所述的缓存数据处理方法,其特征在于,所述根据所述写指令,判断第一缓存中是否存在第一目标缓存线,包括:

    3.根据权利要求2所述的缓存数据处理方法,其特征在于,所述当存在所述第一目标缓存线时,将所述第一目标缓存线的缓存数据进行清除之后,还包括:

    4.根据权利要求1或2所述的缓存数据处理方法,其特征在于,所述缓存数据处理方法还包括:

    5.根据权利要求4所述的缓存数据处理方法,其特征在于,所述根据所述第二数据修改通知,判断第一缓存中是否存在第二目标缓存线,包括:

    6.根据权利要求1所述的缓存数据处理方法,其特征在于,

    7.根据权利要求6所述的缓存数据处理方法,其特征在于,所述缓存数据处理方法还包括:

    8.一种缓存数据处理装置,其特征在于,应用于处理器,所述处理器包括多个处理器核,所述处理器核包括处理单元和第一缓存;所述缓存数据处理装置包括:

    9.根据权利要求8所述的缓存数据处理装置,其特征在于,所述缓存数据更新单元还用于根据所述写指令中所述第一目标地址的第一目标标签在缓存线中进行检索,其中,所述第一目标标签为所述第一目标地址对应的缓存标签;当检索到命中所述第一目标标签的缓存线时,将命中所述第一目标标签的缓存线作为所述第一目标缓存线。

    10.根据权利要求9所述的缓存数据处理装置,其特征在于,所述缓存数据更新单元还用于响应于缓存数据读取指令,根据所述第一目标地址的所述第一目标标签在所述缓存线中进行检索;当未命中所述第一目标地址的第一目标标签时,从所述存储模块读取所述第一目标地址的数据,并将所述第一目标地址的数据写入所述第一缓存的所述缓存线中。

    11.根据权利要求8或9所述的缓存数据处理装置,其特征在于,所述缓存数据更新单元还用于接收所述数据一致性单元发送的第二数据修改通知,其中,所述第二数据修改通知用于表征所述存储模块的第二目标地址的数据被修改;根据所述第二数据修改通知,判断第一缓存中是否存在第二目标缓存线,所述第二目标缓存线所缓存的数据对应的虚拟地址与所述第二目标地址匹配;当存在所述第二目标缓存线时,将所述第二目标缓存线的缓存数据进行清除。

    12.根据权利要求11所述的缓存数据处理装置,其特征在于,所述缓存数据更新单元还用于根据所述第二数据修改通知中所述第二目标地址的第二目标标签在缓存线中进行检索,其中,所述第二目标标签为所述第二目标地址对应的缓存标签;当检索到命中所述第二目标标签的缓存线时,将命中所述第二目标标签的缓存线作为所述第二目标缓存线。

    13.根据权利要求8所述的缓存数据处理装置,其特征在于,所述缓存数据处理装置还包括:

    14.根据权利要求13所述的缓存数据处理装置,其特征在于,

    15.一种处理器,其特征在于,包括多个处理器核,所述处理器核包括处理单元和第一缓存,所述处理器还包括如权利要求8~14任一项所述的缓存数据处理装置。

    16.一种电子设备,其特征在于,包括如权利要求15所述的处理器。


    技术总结
    本申请涉及高速缓存技术领域,尤其涉及一种缓存数据处理方法、装置、处理器及电子设备,根据所述写指令,判断第一缓存中是否存在第一目标缓存线;当存在第一目标缓存线时,将第一目标缓存线的缓存数据进行清除;向所述数据一致性单元发送第一数据修改通知;通过上述方式,任一处理器核的处理单元执行了写指令后,在第一缓存中检索写指令更新的第一目标地址,以从第一缓存中清除与第一目标地址对应的缓存数据,并通过数据一致性单元向其他处理器核发送第一目标地址的数据更新的通知,以使其他处理器核可以从对应的第一缓存中清除与第一目标地址对应的缓存数据,实现了缓存数据的一致性,避免程序错误。

    技术研发人员:贾天明
    受保护的技术使用者:芯海科技(深圳)股份有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-22586.html

    最新回复(0)