多核互联二级缓存访问验证方法技术

技术编号:19856978 阅读:81 留言:0更新日期:2018-12-22 11:35
本发明专利技术提供一种多核互联二级缓存访问验证方法,要解决的技术问题是多核互联二级缓存功能验证过程遇到的错误定位延时长、校验预期结果生成困难的问题。技术方案是通过一致性传输监测模块实时检测多核互联系统与各单核处理器、二级缓存和主存的交互,并将收集的传输信息发送给二级缓存预期生成器和校验模块。二级缓存预期生成器依据多核一致性协议,从全局内存精准控制模块中获得信息后,生成预期结果。校验模块负责预期结果与实际结果的对比,从而无延时实现多核互联对二级缓存访问的正确性判断。

【技术实现步骤摘要】
多核互联二级缓存访问验证方法
本专利技术涉及多核处理器验证
,尤其涉及一种多核互联二级缓存访问验证方法。
技术介绍
当前,随着对计算能力不断增长的需求,使得高性能处理器设计深耕于多核领域。而多核处理器对传统的多级高速缓存结构提出了更高的要求,各个单核之间的缓存(cache)如何高效、精确地进行数据一致性的维护成为研究难题。多核互联结构的提出,旨在依据缓存一致性协议,将各单核发出的各种类型访存传输转发至其他单核或者下一次缓存。但是,其执行结果预期依赖于传输种类与当前地址一致性属性,此种多样化特点也给多核验证领域带来巨大的挑战。考虑到进一步提高多核互联的性能,设计人员往往在多核互联结构中增加二级缓存。当各单核内部的缓存对某一地址均出现数据缺失时,将由原先的直接向片外主存获取数据,转变为对二级缓存的访问,从而大幅减少访存延时。与之相对应的是,多核互联验证新增一个全新的维度,需要对二级缓存的访问与否与访问内容均进行校验。传统的验证流程是基于单核访问的方式来进行,当多核互联结构的二级缓存访问出现问题时,很难快速、精准定位。同时单核发出的传输类型多样化与当前缓存行处于各异的一致性状态均给二级缓存访问结果判断带来复杂度。使得多核互联二级缓存验证过程中出现错误定位延时长、校验预期结果生成困难。
技术实现思路
为了解决多核互联二级缓存功能验证过程遇到的错误定位延时长、校验预期结果生成困难的问题,本专利技术提供了一种支持实时校验,符合多核一致性协议预期精确生成的多核互联二级缓存访问验证方法。本专利技术解决其技术问题所采用的技术方案是:一种多核互联二级缓存访问验证方法,包括:步骤1:将各单核处理器向多核互联系统发送的传输通过一致性传输监测模块实时检测,并将收集的传输信息发送给二级缓存预期生成器;步骤2:二级缓存预期生成器对接收到的传输信息进行预处理,分拣出需要访问二级缓存的操作,并存放到缓存预期队列中;步骤3:将多核互联系统向二级缓存发送的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给缓存校验模块;步骤4:缓存校验模块根据步骤3接收的请求识别号从缓存预期队列中寻找是否存在此请求对应的预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统发生错误,将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤5;步骤5:将二级缓存向多核互联系统发送的反馈信息通过一致性传输监测模块实时观测,并将收集的传输信息发送给二级缓存预期生成器;步骤6:二级缓存预期生成器按照步骤5收集的二级缓存反馈信息,从全局内存精准控制模块中获得各核缓存行状态,判断是否需要再次访问二级缓存,如果需要访问,则更新缓存预期队列中对应表项信息;如果无需访问,则将缓存预期队列中对应表项信息删除;同时判断是否需要访问主存,如果需要,则存放到主存预期队列中;步骤7:将多核互联系统对主存发起的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给主存校验模块;步骤8:主存校验模块根据步骤7接收的请求识别号从主存预期队列中寻找此请求的有效预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统出现错误,主存校验模块将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤9;步骤9:当所有传输结束时,缓存校验模块检查缓存预期队列是否仍旧存在剩余表项,主存校验模块检查主存预期队列是否仍旧存在剩余表项,如果缓存预期队列或者主存预期队列存在剩余表项,则认为系统出现错误,缓存校验模块或者主存校验模块将报错并提供错误信息;否则认为多核互联系统操作正确。可选地,所述步骤1中收集的传输信息包括多核一致性操作类型、操作地址、操作地址区间大小、操作数据、操作地址属性和操作识别号。可选地,所述步骤2中对传输信息进行预处理的方式包括:根据操作地址属性来进行筛选,如果操作地址属性是非缓存属性,则操作不会访问二级缓存;如果操作地址属性是缓存属性,则操作将访问二级缓存。可选地,所述步骤3中收集的传输信息包括二级缓存操作类型、操作地址、操作数据和操作识别号。可选地,所述步骤4和步骤6中支持两个及两个以上具有相同的识别号不同传输的校验操作;单核发出两个及两个以上具有相同识别号的不同传输,多核互联系统将按照发送的先后顺序转发请求,校验系统也将按照相同规则进行正确性判定。可选地,所述步骤5中收集的传输信息包括缓存缺失与否指示以及返回数据。可选地,在所述步骤6中,全局内存精准控制模块记录各单核对内存地址的写操作地址与数据以及内存地址在各单核的缓存行状态。可选地,在所述步骤6中,二级缓存预期生成器依据全局内存精准控制模块记录提供的内存地址在各单核的缓存行状态与二级缓存返回信息,对二级缓存的访问操作依据总线传输协议转换成对主存的访问。可选地,所述步骤7中收集的传输信息包括主存访问操作类型、操作地址、操作地址区间大小、操作数据、操作地址属性和操作识别号。可选地,在所述步骤9中,当多核互联系统出错导致传输丢失情形时,缓存校验模块或者主存校验模块将立即报错。本专利技术提供的多核互联二级缓存访问验证方法,在多核互联系统执行操作过程中,具备不依赖于激励产生方式而能自主收集交互信息,并依据缓存一致性原理,独立维护全局内存精准控制模块,然后无延时提供二级缓存访问预期结果,且支持多次缓存访问判定,最终与实际结果进行比较,帮助快速定位错误。附图说明图1为本专利技术实施例提供的多核互联二级缓存访问验证的系统框图;图2为本专利技术实施例提供的对二级缓存访问进行无延时校验的执行流程;图3为本专利技术实施例提供的全局精准控制模块表项内容。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种多核互联二级缓存访问验证方法,如图1和图2所示,所述方法包括以下步骤:步骤1:将各单核处理器向多核互联系统发送的传输通过一致性传输监测模块实时检测,并将收集的传输信息发送给二级缓存预期生成器;步骤2:二级缓存预期生成器对接收到的传输信息进行预处理,分拣出需要访问二级缓存的操作,并存放到缓存预期队列中;步骤3:将多核互联系统向二级缓存发送的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给缓存校验模块;步骤4:缓存校验模块根据步骤3接收的请求识别号从缓存预期队列中寻找是否存在此请求对应的预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统发生错误,将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤5;步骤5:将二级缓存向多核互联系统发送的反馈信息通过一致性传输监测模块实时观测,并将收集的传输信息发送给二级缓存预期生成器;步骤6:二级缓存预期生成器按照步骤5收集的二级缓存反馈信息,从全局内存精准控制模块中获得各核缓存行状态,判断是否需要再次访问二级缓存,如果需要访问,本文档来自技高网...

【技术保护点】
1.一种多核互联二级缓存访问验证方法,其特征在于,包括:步骤1:将各单核处理器向多核互联系统发送的传输通过一致性传输监测模块实时检测,并将收集的传输信息发送给二级缓存预期生成器;步骤2:二级缓存预期生成器对接收到的传输信息进行预处理,分拣出需要访问二级缓存的操作,并存放到缓存预期队列中;步骤3:将多核互联系统向二级缓存发送的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给缓存校验模块;步骤4:缓存校验模块根据步骤3接收的请求识别号从缓存预期队列中寻找是否存在此请求对应的预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统发生错误,将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤5;步骤5:将二级缓存向多核互联系统发送的反馈信息通过一致性传输监测模块实时观测,并将收集的传输信息发送给二级缓存预期生成器;步骤6:二级缓存预期生成器按照步骤5收集的二级缓存反馈信息,从全局内存精准控制模块中获得各核缓存行状态,判断是否需要再次访问二级缓存,如果需要访问,则更新缓存预期队列中对应表项信息;如果无需访问,则将缓存预期队列中对应表项信息删除;同时判断是否需要访问主存,如果需要,则存放到主存预期队列中;步骤7:将多核互联系统对主存发起的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给主存校验模块;步骤8:主存校验模块根据步骤7接收的请求识别号从主存预期队列中寻找此请求的有效预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统出现错误,主存校验模块将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤9;步骤9:当所有传输结束时,缓存校验模块检查缓存预期队列是否仍旧存在剩余表项,主存校验模块检查主存预期队列是否仍旧存在剩余表项,如果缓存预期队列或者主存预期队列存在剩余表项,则认为系统出现错误,缓存校验模块或者主存校验模块将报错并提供错误信息;否则认为多核互联系统操作正确。...

【技术特征摘要】
1.一种多核互联二级缓存访问验证方法,其特征在于,包括:步骤1:将各单核处理器向多核互联系统发送的传输通过一致性传输监测模块实时检测,并将收集的传输信息发送给二级缓存预期生成器;步骤2:二级缓存预期生成器对接收到的传输信息进行预处理,分拣出需要访问二级缓存的操作,并存放到缓存预期队列中;步骤3:将多核互联系统向二级缓存发送的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给缓存校验模块;步骤4:缓存校验模块根据步骤3接收的请求识别号从缓存预期队列中寻找是否存在此请求对应的预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统发生错误,将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤5;步骤5:将二级缓存向多核互联系统发送的反馈信息通过一致性传输监测模块实时观测,并将收集的传输信息发送给二级缓存预期生成器;步骤6:二级缓存预期生成器按照步骤5收集的二级缓存反馈信息,从全局内存精准控制模块中获得各核缓存行状态,判断是否需要再次访问二级缓存,如果需要访问,则更新缓存预期队列中对应表项信息;如果无需访问,则将缓存预期队列中对应表项信息删除;同时判断是否需要访问主存,如果需要,则存放到主存预期队列中;步骤7:将多核互联系统对主存发起的访问请求通过一致性传输监测模块实时观测,并将收集的传输信息发送给主存校验模块;步骤8:主存校验模块根据步骤7接收的请求识别号从主存预期队列中寻找此请求的有效预期结果,如果预期队列中不存在有效结果,或者预期队列中存在有效结果,但预期结果与实际结果不一致,则认为系统出现错误,主存校验模块将报错并提供错误信息;否则认为多核互联系统操作正确,继续执行步骤9;步骤9:当所有传输结束时,缓存校验模块检查缓存预期队列是否仍旧存在剩余表项,主存校验模块检查主存预期队列是否仍旧存在剩余表项,如果缓存预期队列或者主存预期队列存在剩余表项,则认为系统出现错误,缓存校验模块或者主存校验模块将报错并提供错误信息;否则认为多核互...

【专利技术属性】
技术研发人员:朱涛涛
申请(专利权)人:杭州中天微系统有限公司
类型:发明
国别省市:浙江,33

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

1