预取读方法、电子设备及存储介质与流程
本技术涉及多芯粒架构优化,尤其涉及一种预取读方法、电子设备及存储介质。
背景技术:
1、在当前的处理器芯片设计领域,随着计算需求的不断增长,单一芯片上集成所有功能模块的传统单片式架构面临良率下降、成本攀升以及设计灵活性受限等挑战。小芯片(chiplet)架构应运而生,其将传统的单片式芯片拆分为多个功能独立的芯粒,通过die-to-die(d2d)接口进行互联,以实现更高的制造良率、更低的开发成本和更灵活的设计组合。参照图1,在典型的chiplet处理器架构中,通常包含承载中央处理器(centralprocessing unit,cpu)核心与三级(level 3,l3)缓存的核心复合芯粒(core complexdie,ccd)、以及承载一致性点(point of coherence,poc)与双倍数据率(double datarate,ddr)内存控制器的i/o芯粒(i/o die,iod),ccd与i/o芯粒之间通过d2d接口进行物理连接和数据传输。
2、目前,当中央处理器核心发起读操作时,读请求首先访问l3缓存。当l3缓存未命中时,读请求需要通过d2d接口转发至i/o芯粒上的poc,由poc执行缓存一致性检查,以判断目标缓存行在其他核心复合芯粒中的一致性状态。一致性检查完成后,一致性点将读请求转发至内存控制器,由内存控制器从外部ddr内存中读取目标数据,读取到的数据再沿原路径依次返回至中央处理器核心。上述读操作流程的整体延迟较大,限制了处理器系统的访存性能。
3、上述内容仅用于辅助理解本技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本技术的主要目的在于提供一种预取读方法、电子设备及存储介质,有效降低读操作的整体延迟,显著提升chiplet架构处理器系统的访存性能。
2、为实现上述目的,本技术提出一种预取读方法,包括:
3、响应于当前芯粒的中央处理器核心发送的读操作请求,在本地缓存中查询目标数据并确定查询结果;
4、若查询结果满足预设预取条件,则向d2d接口发送读操作请求;
5、通过d2d接口根据读操作请求,向一致性点发送一致性检查请求,并向内存控制器发送预取读请求;
6、通过一致性点处理一致性检查请求,得到一致性检查结果并发送至d2d接口,通过内存控制器处理预取读请求,得到预取读数据并发送至d2d接口;
7、通过d2d接口根据一致性检查结果和预取读数据,确定目标数据,并将目标数据发送至中央处理器核心。
8、在一实施例中,d2d接口包括预取逻辑模块,通过d2d接口根据读操作请求,向一致性点发送一致性检查请求,并向内存控制器发送预取读请求的步骤包括:
9、通过预取逻辑模块对读操作请求进行解析,得到目标缓存行地址,根据目标缓存行地址,按照预设的d2d接口协议生成一致性检查请求和预取读请求,其中,一致性检查请求包括用于指示执行缓存一致性检查的操作码,预取读请求包括用于指示执行预取读操作的命令标识;
10、将一致性检查请求发送至一致性点,并将预取读请求发送至内存控制器。
11、在一实施例中,通过一致性点处理一致性检查请求,得到一致性检查结果并发送至d2d接口的步骤包括:
12、通过一致性点对一致性检查请求进行解析,得到目标缓存行地址,根据操作码,确定目标缓存行地址在除当前芯粒之外的各芯粒中的缓存状态,根据缓存状态,生成一致性检查结果;
13、将一致性检查结果发送至d2d接口。
14、在一实施例中,d2d接口包括预取缓冲区,通过内存控制器处理预取读请求,得到预取读数据并发送至d2d接口的步骤包括:
15、通过内存控制器对预取读请求进行解析,得到目标缓存行地址,根据命令标识,确定目标缓存行地址对应的缓存行数据为预取读数据;
16、将预取读数据发送至预取缓冲区。
17、在一实施例中,通过d2d接口根据一致性检查结果和预取读数据,确定目标数据的步骤包括:
18、通过d2d接口对一致性检查结果进行解析,得到缓存状态;
19、当缓存状态表征目标缓存行地址不存在于第一芯粒中,或目标缓存行地址在各第一芯粒中为只读状态时,将预取读数据确定为目标数据,其中,第一芯粒为芯片系统中除当前芯粒之外的芯粒。
20、在一实施例中,在通过d2d接口对一致性检查结果进行解析,得到缓存状态的步骤之后,还包括:
21、当缓存状态表征目标缓存行地址在任一第一芯粒中为独占状态或已修改状态时,将预取读数据标记为无效;
22、根据目标缓存行地址,生成数据获取请求并发送至目标缓存行地址对应的第一芯粒,查询目标数据并发送至中央处理器核心。
23、在一实施例中,在通过d2d接口根据读操作请求,向一致性点发送一致性检查请求,并向内存控制器发送预取读请求的步骤之后,还包括:
24、动态监测一致性检查结果和预取读数据的返回顺序;
25、若一致性检查结果先于预取读数据到达d2d接口,则通过d2d接口对一致性检查结果进行解析,得到缓存状态;
26、当缓存状态表征一致性检查结果中的目标缓存行地址不存在于第一芯粒中,或目标缓存行地址在各第一芯粒中为只读状态时,将d2d接口的接收数据通路配置为旁路模式,使得在旁路模式下,当预取读数据到达d2d接口时,通过d2d接口将预取读数据作为目标数据发送至中央处理器核心。
27、在一实施例中,在向d2d接口发送读操作请求的步骤之后,还包括:
28、通过d2d接口对读操作请求进行解析,得到目标缓存行地址;
29、将目标缓存行地址与d2d接口的预取缓冲区中各有效条目的地址标签进行匹配;
30、当目标缓存行地址与任一有效条目的地址标签匹配成功时,从匹配成功的有效条目中读取对应的缓存行数据,并将缓存行数据作为目标数据发送至中央处理器核心。
31、此外,为实现上述目的,本技术还提出一种电子设备,包括:存储器、处理器,处理器能够执行如上文所述的预取读方法的步骤。
32、此外,为实现上述目的,本技术还提出一种存储介质,存储介质为计算机可读存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上文所述的预取读方法的步骤。
33、本技术提出的一个或多个技术方案,至少具有以下技术效果:通过响应于当前芯粒的中央处理器核心发送的读操作请求,在本地缓存中查询目标数据并确定查询结果,利用本地缓存的快速访问特性,避免了不必要的跨芯粒访问;若查询结果满足预设预取条件,则向d2d接口发送读操作请求,触发跨芯粒的预取读流程;通过d2d接口根据读操作请求,向一致性点发送一致性检查请求,并向内存控制器发送预取读请求,使得一致性点的一致性检查不再阻塞内存控制器的数据读取,ddr内存访问得以提前发起,从而有效缩短了读操作的路径;通过一致性点处理一致性检查请求,得到一致性检查结果并发送至d2d接口,通过内存控制器处理预取读请求,得到预取读数据并发送至d2d接口;通过d2d接口根据一致性检查结果和预取读数据,确定目标数据,并将目标数据发送至中央处理器核心,确保了无论一致性检查结果如何,系统均能向中央处理器核心返回正确的目标数据,同时兼顾了读操作的正确性与性能优化。本技术有效降低了读操作的整体延迟,显著提升了chiplet架构处理器系统的访存性能。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com