【技术实现步骤摘要】
一种预取buffer数据一致性的处理方法及装置
本专利技术涉及集成电路
,特别涉及一种预取buffer数据一致性的处理方法及装置。
技术介绍
随着半导体工艺和处理器设计技术水平的不断提高,处理器的性能每年以60%左右的速度快速增长。与此同时,主存储器的访问速度却始终得不到大的提升,成为影响系统性能的一个最重要的瓶颈。为了解决存储墙的问题,目前处理器一般都采用预取buffer(缓冲器),一级或二级Cache(高速缓冲存储器),再加上外部存储器的这种存储结构。然而这种分层次的存储结构,改善存储器访问速度的同时,也带来了数据一致性问题。由于预取buffer中的数据来Cache,处理器对Cache中某一CacheLine(缓存行)进行写操作,如果这一行CacheLine的数据在写之前已经映射到预取buffer中,处理器对这一行CacheLine写完数据后,直接导致了当前CacheLine中的数据与预取buffer中数据不一致。如果处理器再对这一地址进行读操作,根据预取buffer优先读取机制,会首先读取预取buffer中的数据,而此时预取buffer中的数据是处理器写之前的数据,处理器读取到错误的数据直接会使整个电路系统运行出错。数据一致性的问题,直接影响到处理器执行指令与取数的正确性,也受到了越来越多的关注。
技术实现思路
本专利技术的目的在于提供一种预取buffer数据一致性的处理方法及装置,以解决目前带有预取buffer存储结构,由于处理器对存储器进行写后读相关操作后导致的数据 ...
【技术保护点】
1.一种预取buffer数据一致性的处理方法,其特征在于,包括:/n处理器发出访问请求,数据一致性控制模块将处理器发出的访问地址与预取buffer地址寄存器中的值进行比较,并且根据处理器发出的读写信号进行读写判断;/n当为写操作,若地址比较结果一致,表明预取buffer与之对应的Cache Line中数据将被修改,此时预取buffer中的数据仍对应Cache Line修改之前的数据,数据一致性控制模块对数据一致性状态寄存器写1,表示当前预取buffer中的数据与对应Cache Line中的数据不一致;若地址比较结果不一致,表明预取buffer与之对应的Cache Line中数据保持不变,数据一致性控制模块保留数据一致性状态寄存器原来的值;/n当为读操作,若地址比较结果一致,根据数据一致性状态寄存器中的值进行数据一致性判断,若值为1,则处理器直接从存储器Cache中读所需要的数据;若值为0,则处理器从预取buffer中读取数据;若地址比较结果不一致,处理器直接从存储器Cache中读所需要的数据;/n读操作时,地址比较结果不一致,或者数据一致性状态寄存器中的值为1时,处理器直接从存储器Ca ...
【技术特征摘要】
1.一种预取buffer数据一致性的处理方法,其特征在于,包括:
处理器发出访问请求,数据一致性控制模块将处理器发出的访问地址与预取buffer地址寄存器中的值进行比较,并且根据处理器发出的读写信号进行读写判断;
当为写操作,若地址比较结果一致,表明预取buffer与之对应的CacheLine中数据将被修改,此时预取buffer中的数据仍对应CacheLine修改之前的数据,数据一致性控制模块对数据一致性状态寄存器写1,表示当前预取buffer中的数据与对应CacheLine中的数据不一致;若地址比较结果不一致,表明预取buffer与之对应的CacheLine中数据保持不变,数据一致性控制模块保留数据一致性状态寄存器原来的值;
当为读操作,若地址比较结果一致,根据数据一致性状态寄存器中的值进行数据一致性判断,若值为1,则处理器直接从存储器Cache中读所需要的数据;若值为0,则处理器从预取buffer中读取数据;若地址比较结果不一致,处理器直接从存储器Cache中读所需要的数据;
读操作时,地址比较结果不一致,或者数据一致性状态寄存器中的值为1时,处理器直接从存储器Cache中读所需要的数据,数据一致性控制模块将处理器读取存储器Cache所在行的数据全部更新到预取buffer中,并同时更新预取buffer地址寄存器和数据一致性状态寄存器的值。
2.如权利要求1所述的预取buffer数据一致性的处理方法,其特征在于,若处理器发出读操作访问请求,当数据一致性状态寄存器中的值为1时,那多选器的选择信号sel的值为0,处理器从存储器Cache中取数据;当预取buffer地址寄存器中的值与处理器发出的地址不匹配时,则多选器的选择信号sel的值为0,处理器从存储器Cache中取数据;
当数据一致性状态寄存器中的值为0时,并且预取buffer地址寄存器中的值与处理器发出的地址匹配成功,那多选器的选择信号sel的值为1,处理器直接从预取buffer中取数据。
3.如权利要求1所述的预取buffer数据一致性的处理方法,其特征在于,若处理器发出读操作访问请求,当预取buffer地址寄存器中的值与处理器发出的地址比较结果不一致,或者数据一致性状态寄存器中的值为1时,数据一致性控制模块将处理器读取存储器Cache所在行的数据全部更新到预取buffer中,同时更新预取buffer地址寄存器中值和数据一致性状态寄存器的值,使得预取buffer中数据、数据对应的地址...
【专利技术属性】
技术研发人员:杨晓刚,朱樟明,魏敬和,
申请(专利权)人:中科芯集成电路有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。