【技术实现步骤摘要】
用于在固态驱动器中实行高速缓存操作的装置、计算机程序产品和方法
本文中描述的实施例一般涉及用于在固态驱动器中实行高速缓存操作的装置、计算机程序产品和方法。
技术介绍
主机侧高速缓存管理操作可能消耗大量主机资源来确定将数据置于更快速存储设备中的何处,该更快速的存储设备诸如是固态驱动器(SSD),其涉及用于更大、典型地更慢速的存储设备(例如硬盘驱动器(HDD)或混合硬盘驱动器)的地址。对于直接映射高速缓存而言,主机系统向数据地址的一部分应用散列函数来确定更快速存储设备中的唯一地址,在该唯一地址处存储用于该地址的数据。主机系统必须检查用于除了读取地址之外的不同地址的数据是否没有位于更快速存储设备中的直接映射高速缓存位置中,因为来自更大更慢速存储设备的多个地址映射到更快速存储设备中的一个地址。如果用于读取地址的数据并未处于更快速存储设备中的直接映射位置处,则存在读取未命中(readmiss)并且主机需要从更慢速存储设备取回数据。附图说明参考附图作为示例来描述实施例,附图没有按比例进行绘制,在附图中相同的附图标记指代类似的元素。图1图示了计算系统的实施例。图2图示了现有技术中已知的地址的实施例。图3图示了处于固态驱动器(SSD)中的高速缓存位置处的内容的实施例。图4图示了用于主机系统和固态驱动器(SSD)来处理读取请求的操作的实施例。图5a和图5b图示了针对主机系统和固态驱动器(SSD)来处理写入请求的操作的实施例。图6图示了读取命中流程的实施例。图7图示了读取未命中流程的实施例。图8图示了用以从固态驱动器(SSD)驱逐数据来使空间可用于写入的流程的实施例。具体实施 ...
【技术保护点】
1.一种用于高速缓存管理操作的装置,用以在固态驱动器中实行针对主机系统的高速缓存操作,所述装置包括:包括非易失性存储器的高速缓存存储器,所述高速缓存存储器用以在用于高速缓存存储器命名空间的地址处存储数据;以及高速缓存管理器,其用以:确定从所述主机系统接收的用于主存储命名空间中的所请求的存储地址的数据是否存储在根据高速缓存映射方案由所请求的存储地址所映射到的高速缓存存储器命名空间中的地址处,其中所述主存储装置中的存储地址中的多个存储地址映射到所述高速缓存存储器命名空间中的一个地址;以及响应于确定用于所请求的存储地址的数据存储在所述高速缓存存储器命名空间中来向所述主机系统返回存储在所述高速缓存存储器命名空间中的所请求地址处的数据。
【技术特征摘要】
2017.03.31 US 15/4768851.一种用于高速缓存管理操作的装置,用以在固态驱动器中实行针对主机系统的高速缓存操作,所述装置包括:包括非易失性存储器的高速缓存存储器,所述高速缓存存储器用以在用于高速缓存存储器命名空间的地址处存储数据;以及高速缓存管理器,其用以:确定从所述主机系统接收的用于主存储命名空间中的所请求的存储地址的数据是否存储在根据高速缓存映射方案由所请求的存储地址所映射到的高速缓存存储器命名空间中的地址处,其中所述主存储装置中的存储地址中的多个存储地址映射到所述高速缓存存储器命名空间中的一个地址;以及响应于确定用于所请求的存储地址的数据存储在所述高速缓存存储器命名空间中来向所述主机系统返回存储在所述高速缓存存储器命名空间中的所请求地址处的数据。2.根据权利要求1所述的装置,其中所述高速缓存管理器进一步用以:向所述主机系统返回消息,所述消息指示用于所请求的存储地址的数据没有存储在所述高速缓存存储器命名空间中,其中所述消息使所述主机系统从所述主存储装置取回用于所请求的存储地址的数据。3.根据权利要求2所述的装置,其中所述高速缓存管理器进一步用以:响应于接收到所述消息来接收从所述主存储装置取回的来自所述主机系统的用于所请求的存储地址的数据;以及将用于所请求的存储地址的所接收数据存储在高速缓存易失性存储器命名空间中。4.根据权利要求1所述的装置,其中所述高速缓存管理器进一步用以:从所述主机系统接收用于所述主存储命名空间的目标存储地址的数据,以添加到所述高速缓存存储器命名空间;确定在所述高速缓存存储器命名空间中是否存在根据高速缓存映射方案由存储地址所映射到的用于所接收数据的可用地址;以及将用于所述目标存储地址的数据存储在所述高速缓存存储器命名空间中的所确定的可用地址中。5.根据权利要求4所述的装置,其中所述高速缓存管理器进一步用以:向所述主机系统返回消息,所述消息指示在所述高速缓存存储器命名空间中不存在用于所述目标存储地址处的数据的可用空间;从所述主机系统接收删除请求来删除用于所述主存储装置中的与目标存储地址不同的驱逐存储地址的数据,其中所述目标存储地址和所述驱逐存储地址两者都映射到所述高速缓存存储器命名空间中的同一地址集合;确定所述高速缓存存储器命名空间中的具有用于所述驱逐存储地址的数据的驱逐地址;删除所述高速缓存存储器命名空间中的所述驱逐地址处的数据;以及将用于所述目标存储地址的数据写入到所述高速缓存存储器命名空间中的所述驱逐地址。6.根据权利要求5所述的装置,其中所述高速缓存管理器进一步用以:在接收到所述删除请求之后,接收来自所述主机系统的重试写入请求,其中响应于所述重试写入请求将用于所述目标存储地址的数据写入到所述高速缓存存储器命名空间中的所述驱逐地址。7.根据权利要求5所述的装置,其中所述高速缓存管理器进一步用以:接收来自所述主机系统的用以对所述驱逐存储地址处的包括脏数据的数据进行读取的请求;以及返回所述高速缓存存储器命名空间中的所述驱逐地址处的脏数据,其中在返回所述脏数据之后,接收用以删除用于所述驱逐存储地址的数据的删除请求。8.根据权利要求1所述的装置,其中所述高速缓存映射方案包括集合关联性高速缓存映射方案。9.根据权利要求1所述的装置,其中所述高速缓存存储器包括字节可寻址写入就位高速缓存存储器。10.一种用于实行高速缓存管理操作的系统,所述系统耦合到高速缓存存储器和具有比所述高速缓存存储器的高速缓存存储器命名空间更大的地址空间的主存储装置,所述系统执行程序代码以进行以下操作:将读取请求发送到所述高速缓存存储器来读取所述主存储装置中的读取存储地址处的数据;以及从所述高速缓存存储器接收根据高速缓存映射方案由所述读取存储地址所映射到的高速缓存存储器命名空间中的地址处的数据。11.根据权利要求10所述的系统,其中所述程序代码包括高速缓存管理器,其中所述程序代码当被执行时进一步用以:由所述高速缓存管理器确定所述主存储装置中的用于所述高速缓存存储器命名地址中所存储的要从所述高速缓存存储器设备驱逐的数据的存储地址;以及将针对所述主存储装置中的存储地址的读取请求和写入请求直接发送到所述高速缓存存储器。12.根据权利要求10所述的系统,其中所述读取请求包括第一读取请求,其中所述程序代码当被执行时进一步用以:从所述高速缓存存储器接收消息,所述消息指示用于读取存储地址的数据没有存储在所述高速缓存存储器命名空间中;以及将用以对所述读取存储地址处的数据进行读取的第二读取请求发送到所述主存储装置。13.根据权利要求12所述的系统,其中所述程序代码当被执行时进一步用以:将从所述主存储装置返回的所述读取存储地址处的读取数据写入到所述高速缓存存储器以存储在所述高速缓存存储器命名空间中。14.根据权利要求10所述的系统,其中所述程序代码当被执行时进一步用以:将用以将数据写入到所述主存储装置中的目标存储地址的写入请求发送到所述高速缓存存储器设备;从所述高速缓存存储器接收消息,所述消息指示在所述高速缓存存储器命名空间中不存在用于所述目标存储地址的可用空间;确定在所述高速缓存存储器命名空间中存储数据所针对的用于主存储装置的驱逐存储地址;以及将删除请求发送到所述高速缓存存储器来删除所述驱逐存储地址处的数据。15.根据权利要求14所述的系统,其中所述程序代码当被执行时进一步用以:响应于发送所述删除请求来将用于所述目标存储地址的数据写入的重试发送...
【专利技术属性】
技术研发人员:P维索茨基,M巴尔察克,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。