[发明专利]一种缓存流水线处理方法及装置在审
申请号: | 202210056383.9 | 申请日: | 2022-01-18 |
公开(公告)号: | CN114398298A | 公开(公告)日: | 2022-04-26 |
发明(设计)人: | 刘胜;崔剑峰;黄佳帅;张洋;刘畅;李晨;曹壮 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F12/0877 | 分类号: | G06F12/0877;G06F12/0888;G06F12/0891;G06F12/126 |
代理公司: | 长沙国科天河知识产权代理有限公司 43225 | 代理人: | 唐品利 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缓存 流水线处理 方法 装置 | ||
1.一种缓存流水线处理方法,其特征在于,所述方法包括:
搭建缓存流水线处理框架;所述缓存流水线处理框架中流水线的栈包括:请求仲裁、Tag体访问、Tag体流出、Tag体命中判定、数据体访问、数据体流出以及数据返回仲裁;
请求仲裁栈中,接收上游网络发送的读写请求、清空处理请求以及Tag体命中判定栈发送的缺失请求,所述请求仲裁栈按照预设优先级依次处理所述读写请求、所述清空处理请求以及所述缺失请求;
Tag体访问栈中,接收请求仲裁栈发送的Tag体访问请求,并根据Tag体访问请求提取请求地址中Tag体索引位的Tag体数据;
Tag体流出栈中,在一个时序提供Tag存储体流出数据,以及读出Tag体数据;
Tag体命中判定栈中,接收Tag体流出栈读出的Tag体数据,将Tag体数据与请求地址的Tag值部分进行比对,若相同,则输出命中位置信息,若否则输出缺失请求;
数据体访问栈中,根据Tag体索引位和命中位置信息,读取数据体,并且根据请求类型修改对应的状态位;
数据体流出栈中,对数据体访问栈中读取的数据体进行EDAC处理;
数据返回仲裁中,根据请求类型判断数据体流出栈EDAC处理后的数据体以及是发往上游网络的返回数据还是发往下游网络的写回数据。
2.根据权利要求1所述的方法,其特征在于,Tag体访问栈中执行读Tag的读请求、写请求、替换请求和Flush请求,以及写Tag的分配请求;
Tag体流出栈中执行读Valid的读请求、写请求、替换请求以及Flush请求;执行读Dirty的替换请求以及Flush请求;执行读LRU的读请求、写请求以及替换请求;
数据体访问栈中执行写Valid的替换请求、分配请求以及Flush请求;执行写Dirty的写请求、分配请求以及Flush请求;执行写LRU的读请求和写请求。
3.根据权利要求1所述的方法,其特征在于,所述缓存流水线处理框架中,当前续请求为写请求时,后续请求为替换请求。
4.根据权利要求1所述的方法,其特征在于,所述清空处理请求、所述缺失请求以及所述读写请求的优先级依次降低。
5.根据权利要求1所述的方法,其特征在于,生成清空处理请求的步骤包括:
接收控制寄存器清空写回使能信号和写回配置信号后,判断缓存流水线处理框架是否清空,若是,则根据所述写回配置信号的地址范围,判断清空请求类型;所述清空请求包括:大范围清空和小范围清空;
若清空请求为大范围清空,则遍历缓存,逐行执行操作;
若清空请求为小范围清空,则根据地址范围,依次查找缓存行。
6.根据权利要求1所述的方法,其特征在于,Tag体访问栈中,接收请求仲裁栈的请求,并判断请求类型;所述请求类型包括:大范围清空回写和一般类型;
当请求类型为一般类型时,根据地址映射规则,将请求数据中携带的地址的若干位作为一组缓存行的索引,流出至Tag体流出栈读取相应数据;
当请求类型为大范围清空回写时,将索引值流入至Tag体流出栈读取相应数据。
7.根据权利要求1所述的方法,其特征在于,在Tag体命中判定栈中,接收Tag体流出栈读出的Tag体数据和请求输入,将Tag体数据与请求地址的Tag值部分进行比对,若Tag值命中,则输出命中位置信息和请求输出至数据体访问栈,若Tag值未命中,则对请求类型进行判定;请求类型包括:请求失效和确实缓存。
8.一种缓存流水线处理装置,其特征在于,所述装置包括:缓存,所述缓存中执行权利要求1至7任一项所述的缓存流水线处理方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210056383.9/1.html,转载请声明来源钻瓜专利网。