本公开的多种实施例涉及一种存储装置的控制器。
背景技术:
1、存储装置可以响应于来自外部装置的写入请求存储从外部装置提供的数据。此外,存储装置可以响应于来自外部装置的读取请求将所存储的数据提供给外部装置。外部装置可以是能够处理数据的电子装置,并且可以包括计算机、数码相机、移动电话等。存储装置可以嵌入外部装置内进行操作,或者可以被设计为可拆卸形式以连接到外部装置进行操作。存储装置可以包括用于存储数据的存储器装置。
2、为了有效处理来自外部装置的读取请求,存储装置可以激活缓存功能。然而,根据外部装置的工作负载,缓存功能可能会成为存储装置的瓶颈。因此,需要迅速响应外部装置的各种工作负载以有效利用缓存的方法。
技术实现思路
1、在本公开的实施例中,一种存储装置的控制器可以包括:存储器,被配置为用作先行缓存(lookahead cache);读取请求存储器件,被配置为在其中存储读取请求;以及缓存管理器,被配置为当存储在读取请求存储器件中的缓存命中读取请求的处理完成时执行瓶颈检查操作,并基于瓶颈检查操作中的检查结果选择性地停用先行缓存。
2、在本公开的实施例中,一种存储装置的控制器可以包括:存储器,被配置为用作先行缓存;读取请求存储器件,被配置为在其中存储读取请求;以及缓存管理器,被配置为基于存储在读取请求存储器件中的读取请求以及瓶颈历史记录选择性地停用先行缓存。
3、在本公开的实施例中,一种存储装置的控制器可以包括:存储器,被配置为用作先行缓存;读取请求存储器件,被配置为在其中存储读取请求;以及缓存管理器,被配置为基于存储在读取请求存储器件中的读取请求确定先行缓存是否造成瓶颈,并且在确定先行缓存造成瓶颈时,基于瓶颈历史记录选择性地停用先行缓存。
1.一种存储装置的控制器,包括:
2.根据权利要求1所述的控制器,其中,当在所述瓶颈检查操作中,所述读取请求存储器件中存储有未决读取请求时,所述缓存管理器确定所述先行缓存造成瓶颈。
3.根据权利要求2所述的控制器,其中,当在当前瓶颈检查操作中确定没有瓶颈时,所述缓存管理器保持所述先行缓存被激活。
4.根据权利要求2所述的控制器,其中,当在当前瓶颈检查操作中确定存在瓶颈并且参考次数的先前连续瓶颈检查操作中的每一次都指示瓶颈时,所述缓存管理器停用所述先行缓存。
5.根据权利要求2所述的控制器,其中,在当前瓶颈检查操作中,当参考次数的先前连续瓶颈检查操作中的至少一次指示没有瓶颈时,所述缓存管理器保持所述先行缓存被激活。
6.根据权利要求1所述的控制器,其中,在当前瓶颈检查操作中,当确定在激活所述先行缓存之后尚未执行过参考次数的先前连续瓶颈检查操作时,所述缓存管理器保持所述先行缓存被激活。
7.根据权利要求1所述的控制器,其中,每当执行所述瓶颈检查操作时,所述缓存管理器将确定所述先行缓存造成瓶颈或没有造成瓶颈的结果添加到瓶颈历史记录。
8.根据权利要求1所述的控制器,其中,当所述先行缓存保持被激活时,所述缓存管理器执行所述瓶颈检查操作。
9.一种存储装置的控制器,包括:
10.根据权利要求9所述的控制器,其中,当在执行瓶颈检查操作时所述读取请求存储器件中存储有待处理的读取请求时,所述缓存管理器在所述瓶颈检查操作中确定所述先行缓存造成瓶颈。
11.根据权利要求10所述的控制器,其中,当在当前瓶颈检查操作中确定没有瓶颈时,所述缓存管理器保持所述先行缓存被激活。
12.根据权利要求10所述的控制器,其中,所述缓存管理器基于所述瓶颈历史记录来确定参考次数的先前连续瓶颈检查操作中的每一次是否都指示瓶颈。
13.根据权利要求12所述的控制器,其中,当在当前瓶颈检查操作中确定存在瓶颈并且所述参考次数的先前连续瓶颈检查操作中的每一次都指示瓶颈时,所述缓存管理器停用所述先行缓存。
14.根据权利要求12所述的控制器,其中,当所述参考次数的先前连续瓶颈检查操作中的至少一次指示没有瓶颈时,所述缓存管理器在当前瓶颈检查操作中保持所述先行缓存被激活。
15.根据权利要求12所述的控制器,其中,当确定在激活所述先行缓存之后尚未执行过所述参考次数的先前连续瓶颈检查操作时,所述缓存管理器在当前瓶颈检查操作中保持所述先行缓存被激活。
16.一种存储装置的控制器,包括:
17.根据权利要求16所述的控制器,其中,当所述读取请求存储器件中存储有未决读取请求时,所述缓存管理器确定所述先行缓存造成瓶颈。
18.根据权利要求17所述的控制器,其中,当所述读取请求存储器件中未存储未决读取请求时,所述缓存管理器保持所述先行缓存被激活。
19.根据权利要求16所述的控制器,其中,当基于所述瓶颈历史记录确定预定连续区段存在瓶颈时,所述缓存管理器停用所述先行缓存。
20.根据权利要求16所述的控制器,其中,当基于所述瓶颈历史记录确定预定连续区段内的至少部分区段中没有瓶颈时,所述缓存管理器保持所述先行缓存被激活。
