一种缓存一致性的验证和调试的实现方法技术

技术编号:37472492 阅读:14 留言:0更新日期:2023-05-06 09:55
本申请公开了一种缓存一致性的验证和调试的实现方法,包括:先获取目标POWER处理器的Core信息以及Nest信息、构建NCT目标模块,并通过目标Tcl接口对NCT目标模块进行配置和驱动;再通过配置后的NCT目标模块对Core信息对应的各级Cache的状态进行配置,并在目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试。本申请增加了新的NCT目标模块可以跳过Core直接驱动存储系统,简化验证和调试缓存一致性的实现难度,通过Tcl脚本配置及简单的Tcl命令可以配置好任意测试缓存一致性的场景,缩短验证和调试周期,支持自动化调试以及批量自动调试。支持自动化调试以及批量自动调试。支持自动化调试以及批量自动调试。

【技术实现步骤摘要】
一种缓存一致性的验证和调试的实现方法


[0001]本申请涉及信息
,具体涉及一种缓存一致性的验证和调试的实现方法。

技术介绍

[0002]缓存一致性,也叫高速缓冲存储器一致性(Cache coherence),其是指在采用层次结构存储系统的计算机系统中,保证高速缓冲存储器中数据与主存储器中数据的相同机制。
[0003]在一个系统中,当许多不同的设备共享一个共同存储器资源,在高速缓存中的数据不一致,就会产生问题。这个问题在有数个CPU的多处理机系统中特别容易出现。因此,保证缓存一致性尤为重要,在设计缓存一致性协议时,现有技术往往通过两个方面进行,一方面借助已有物理处理器,通过选取合适的测试集,触发CPU高速缓存(CPU Cache)的状态配置,促使多核数(多Core)、多芯片(多chip)运行起来,借助性能监视单元(Performance Monitor Unit,PMU)事件来分析高速缓冲存储器(Cache)状态的变化情况;另一方面利用模拟器来构造整个CPU处理器的存储系统以及总线,同样需要选取合适的测试集,借助模拟的统计信息来收集高速缓冲存储器(Cache)状态的变化情况。
[0004]然而在上述方案中,很难选取到能够覆盖所有缓存一致性协议情况的合适的测试集,并且在物理机的设计情况复杂,需要经过的路径更多时,也会使得测试集的设计复杂度增加,加大构造多Core多chip的场景难度,因此,现有的缓存一致性的调试、验证方法效率较低,且实现困难。

技术实现思路

[0005]本申请提供了一种缓存一致性的验证和调试的实现方法,可以通过简单的Tcl命令配置好任意测试缓存一致性的场景,在时间上大大缩短验证和调试周期,降低了一致性调试的复杂度,该技术方案如下。
[0006]一方面,提供了一种缓存一致性的验证和调试的实现方法,所述方法包括:
[0007]获取目标POWER处理器的Core信息以及Nest信息;
[0008]构建NCT目标模块;所述NCT目标模块用于替代所述目标POWER处理器中的Core为所述目标POWER处理器中的Nest提供所需要的数据,以驱动Nest的运行;
[0009]通过目标Tcl接口对所述NCT目标模块进行配置和驱动;
[0010]通过配置后的所述NCT目标模块对所述Core信息对应的各级Cache的状态进行配置,并在所述目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试。
[0011]又一方面,提供了一种缓存一致性的验证和调试的实现装置,所述装置包括:
[0012]Core与Nest获取模块,用于获取目标POWER处理器的Core信息以及Nest信息;
[0013]NCT目标模块构建模块,用于构建NCT目标模块;所述NCT目标模块用于替代所述目标POWER处理器中的Core为所述目标POWER处理器中的Nest提供所需要的数据,以驱动Nest
的运行;
[0014]NCT目标模块配置模块,用于通过目标Tcl接口对所述NCT目标模块进行配置和驱动;
[0015]验证和调试模块,用于通过配置后的所述NCT目标模块对所述Core信息对应的各级Cache的状态进行配置,并在所述目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试。
[0016]在一种可能的实施方式中,所述NCT目标模块配置模块,还用于:
[0017]通过一组Tcl扩展命令对所述NCT目标模块进行配置和驱动,并实现所述Tcl扩展命令中每条命令的处理函数;所述Tcl扩展命令包括设置缓存一致性的命令、指定地址的状态配置命令以及设置请求地址为固定地址的命令。
[0018]在一种可能的实施方式中,所述设置缓存一致性的命令包括对Cache的编号、缓存状态、Core是否运行、Core的运行优先级、Cache的加载与存储、运行次数以及延迟周期数的设置。
[0019]在一种可能的实施方式中,所述指定地址的状态配置命令包括对Cache的编号、指定地址、缓存状态以及Core的运行优先级的设置。
[0020]在一种可能的实施方式中,所述验证和调试模块,还用于:
[0021]基于所述Tcl扩展命令,通过目标链表获取并存储各级Cache的设置请求;
[0022]将所述设置请求下发到对应的Core中,并根据所述设置请求完成每个Core中的Cache的状态配置;以及对所述目标POWER处理器中的Nest、Bus总线以及MC内存控制器进行驱动;
[0023]根据每个Core中的操作内容,对所述已完成状态配置的Cache的状态转化进行验证,并回收所述目标链表中已完成配置的配置信息。
[0024]在一种可能的实施方式中,所述验证和调试模块,还用于:
[0025]构建目标链表;
[0026]通过所述目标链表,对所述各级Cache的设置请求所对应的所述缓存一致性的命令进行接收;
[0027]将接收到的所述缓存一致性的命令按照Cache的编号顺序以及添加顺序进行排序。
[0028]在一种可能的实施方式中,所述验证和调试模块,还用于:
[0029]根据目标条件遍历所述目标链表内的所述缓存一致性的命令,并将所述设置请求下发到对应的Core中;
[0030]在所述对应的Core被调度时,对所述对应的Core中的Cache进行状态配置。
[0031]再一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的一种缓存一致性的验证和调试的实现方法。
[0032]又一方面,提供了所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的一种缓存一致性的验证和调试的实现方法。
[0033]本申请提供的技术方案可以包括以下有益效果:
[0034]先获取目标POWER处理器的Core信息以及Nest信息、构建NCT目标模块,并通过目
标Tcl接口对NCT目标模块进行配置和驱动;再通过配置后的NCT目标模块对Core信息对应的各级Cache的状态进行配置,并在目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试。在上述方案中,通过NCT目标模块替代该目标POWER处理器中的Core为该目标POWER处理器中的Nest提供所需要的数据,以驱动Nest的运行,简化验证和调试缓存一致性的实现难度;通过简单的Tcl命令可以配置好任意测试缓存一致性的场景,在时间上大大缩短验证和调试周期,降低了一致性调试的复杂度;此外,由于采用Tcl脚本配置的方式,还可以支持自动化调试以及批量自动调试,以缩短验证时间。
附图说明
[0035]为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存一致性的验证和调试的实现方法,其特征在于,所述方法包括:获取目标POWER处理器的Core信息以及Nest信息;构建NCT目标模块;所述NCT目标模块用于替代所述目标POWER处理器中的Core,为所述目标POWER处理器中的Nest提供所需要的数据,以驱动Nest的运行;通过目标Tcl接口对所述NCT目标模块进行配置和驱动;通过配置后的所述NCT目标模块对所述Core信息对应的各级Cache的状态进行配置,并在所述目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试。2.根据权利要求1所述的方法,其特征在于,所述通过目标Tcl接口对所述NCT目标模块进行配置和驱动,包括:通过一组Tcl扩展命令对所述NCT目标模块进行配置和驱动,并实现所述Tcl扩展命令中每条命令的处理函数;所述Tcl扩展命令包括设置缓存一致性的命令、指定地址的状态配置命令以及设置请求地址为固定地址的命令。3.根据权利要求2所述的方法,其特征在于,所述设置缓存一致性的命令包括对Cache的编号、缓存状态、Core是否运行、Core的运行优先级、Cache的加载与存储、运行次数以及延迟周期数的设置。4.根据权利要求2所述的方法,其特征在于,所述指定地址的状态配置命令包括对Cache的编号、指定地址、缓存状态以及Core的运行优先级的设置。5.根据权利要求1所述的方法,其特征在于,所述通过配置后的所述NCT目标模块对所述Core信息对应的各级Cache的状态进行配置,并在所述目标POWER处理器中的Nest驱动后,对已完成状态配置的Cache的状态转化进行验证和调试,包括:基于所述Tcl扩展命令,通过目标链表获取并存储各级Cache的设置请求;将所述设置请求下发到对应的Core中,并根据所述设置请求完成每个Core中的Cache的状态配置,以及对所述目标POWER处理器中的Nest、Bus总线以及MC内存控制器进行驱动;根据每个Core中的操作内容,对所述已完成状态配置的Cache的...

【专利技术属性】
技术研发人员:徐继辉
申请(专利权)人:合芯科技苏州有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1