[发明专利]内存预取控制方法、装置及设备有效
申请号: | 201811242361.1 | 申请日: | 2018-10-24 |
公开(公告)号: | CN109408412B | 公开(公告)日: | 2021-04-30 |
发明(设计)人: | 李鹏;王焕东 | 申请(专利权)人: | 龙芯中科技术股份有限公司 |
主分类号: | G06F12/0862 | 分类号: | G06F12/0862 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 孙静;刘芳 |
地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 控制 方法 装置 设备 | ||
本发明实施例提供一种内存预取控制方法、装置及设备,该方法可以包括:根据第一知识产权IP核对内存的访问请求,确定第一数据流;获取所述第一数据流对应的访问间隔时长和所述内存的响应时长;在所述访问间隔时长与所述响应时长之差大于预设阈值时,为所述第一数据流分配流缓冲区,所述流缓冲区用于存储所述第一数据流对应的预取数据。提高了内存预取效率。
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种内存预取控制方法、装置及设备。
背景技术
在内存控制器端通常设置有预取器,在知识产权(intellectual property,简称IP)核访问内存的过程中,预取器可以将内存中的数据预先读取到预取器的流缓冲区中,以使IP核可以在流缓冲区中读取数据,进而降低IP核对内存访问的延迟,IP核可以包括处理器、输入/输出(Input/Output,简称I/O)设备、加速器、网卡等。
在现有技术中,预取器可以根据IP核发送的访问请求进行数据流识别,若预取器确定IP核访问内存中地址连续的数据,则预取器识别得到数据流,并在缓存中为数据流分配流缓冲区。预取器根据该IP核的历史访问请求推测该IP核未来可能访问的数据,并将该IP核未来可能访问的数据从内存预先读取到对应的流缓冲区中,这样,在以后接收到该IP核的访问请求时,可以将流缓冲区中的预先从内存读取的数据返回给该IP核,以降低该IP核对内存的访问延迟。
然而,当预取器识别得到的数据流较多时,则预取器进行内存预取的效率则会降低。
发明内容
本发明实施例提供一种内存预取控制方法、装置及设备,提高了内存预取效率。
第一方面,本发明实施例提供一种内存预取控制方法,包括:
根据第一知识产权IP核对内存的访问请求,确定第一数据流;
获取所述第一数据流对应的访问间隔时长和所述内存的响应时长;
在所述访问间隔时长与所述响应时长之差大于预设阈值时,为所述第一数据流分配流缓冲区,所述流缓冲区用于存储所述第一数据流对应的预取数据。
在一种可能的实施方式中,所述为所述第一数据流分配流缓冲区,包括:
判断缓存中是否存在空闲状态的流缓冲区;
若是,则将空闲状态的流缓冲区中的一个流缓冲区确定为所述第一数据流的流缓冲区;
若否,则根据访问所述内存的数据流对所述内存的访问记录,在所述缓存的流缓冲区中确定第一流缓冲区,并将所述第一流缓冲区确定为所述第一数据流的流缓冲区。
在另一种可能的实施方式中,所述第一流缓冲区对应的数据流与所述第一数据流对内存的访问不存在冲突;
和/或,
所述第一流缓冲区对应的数据流与第二数据流对所述内存的访问不存在冲突,所述第二数据流为直接访问内存的数据流。
在另一种可能的实施方式中,所述获取所述第一数据流对应的访问间隔时长,包括:
获取所述第一数据流对应的至少两个访问请求对应的访问时刻;
根据所述至少两个访问请求对应的访问时刻,确定所述访问间隔时长。
在另一种可能的实施方式中,所述根据第一IP核对内存的访问请求,确定第一数据流,包括:
获取所述第一IP核对所述内存的至少两个访问请求;
若所述至少两个访问请求用于请求内存中同一存储体的同一页中地址连续的内容,则确定得到所述第一数据流。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术股份有限公司,未经龙芯中科技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811242361.1/2.html,转载请声明来源钻瓜专利网。