Including for the use of the cache bank extended to realize the system of computing devices, and methods for cache compression data access request. In one aspect, the cache bank expansion may include: determine the compression data of the cache memory access is suitable for a single cache memory. In response to the compressed data for a single cache bank, can calculate the cache bank value to replace the expansion / recovery for may be cleared in data compression during the physical address of the cache, the cache access requests the memory select bits. High speed buffer storage space physical cache memory in the extended physical address can include cache memory access request with the recovered memory select bits. You can use the cache memory extension address from the cache memory device reads the compressed data, or to the cache memory device writes the compressed data.
【技术实现步骤摘要】
【国外来华专利技术】用于压缩算法的高速缓冲存储体扩展
技术介绍
无损压缩使用可配置大小的被压缩的数据段。随后,将该压缩的数据存储在高速缓存中,直到其被写回到存储器为止。但是,通过对数据进行压缩,在物理地址空间中产生未使用的孔。根据如何将所压缩的数据存储在物理地址空间中,可能存在对系统级资源(例如,高速缓存)的不均匀使用。高速缓存按照高速缓存线粒度来存储数据,并且使用最频繁使用的比特来将数据路由到存储体。所压缩的块大小和高速缓存线大小之间的不匹配可能导致对高速缓存资源(例如,存储体)的不规则使用。这种不规则使用是通过所压缩的数据清除物理地址中的未使用比特产生的,其中这些未使用比特在高速缓存索引时使用。例如,这样的情况在将256字节块压缩成128字节时发生,其将清除物理地址中用于该压缩数据的地址位。较低的地址位通常被用于高速缓存选择决策,以便产生平衡的访问(由于它们频繁地改变)。如果通常使用较低的地址位的比特W来选择高速缓冲存储体,则压缩的数据将始终位于一半的存储体/高速缓存中,这是由于当比特W被清除时(即,在压缩比特W=0之后),该值将始终是相同的。类似地,如果通常使用两个比特(例如,比特W和比特Y)来选择高速缓冲存储体,虽然比特Y的值可以改变(即,在压缩之后,比特Y将等于0或1),但是由于比特W的值将保持静态(即,比特W=0),并且因此存储体选择位W和Y一起可以组合达四个存储体选择选项中的仅仅两个(即,比特Y和W=00或10,而不是00、01、10或11),因此压缩的数据将始终位于一半的存储体/高速缓存中。
技术实现思路
各个方面的方法和装置提供了用于在计算设备上针对压缩数据,执行高速 ...
【技术保护点】
一种用于在计算设备上针对压缩数据,执行高速缓冲存储器访问请求的方法,包括:恢复高速缓冲存储器访问请求的物理地址的一个或多个存储体选择位以产生高速缓冲存储体扩展地址;以及在所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求。
【技术特征摘要】
【国外来华专利技术】2014.09.11 US 14/483,9021.一种用于在计算设备上针对压缩数据,执行高速缓冲存储器访问请求的方法,包括:恢复高速缓冲存储器访问请求的物理地址的一个或多个存储体选择位以产生高速缓冲存储体扩展地址;以及在所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求。2.根据权利要求1所述的方法,还包括:确定压缩数据是否适合于高速缓冲存储器设备的单个高速缓冲存储体的高速缓存线,其中,恢复高速缓冲存储器访问请求的物理地址的一个或多个存储体选择位以产生高速缓冲存储体扩展地址包括:响应于确定所述压缩数据适合于所述高速缓冲存储器设备的单个高速缓冲存储体,恢复所述高速缓冲存储器访问请求的所述物理地址的所述一个或多个存储体选择位以产生所述高速缓冲存储体扩展地址。3.根据权利要求2所述的方法,其中,确定所述高速缓冲存储器访问请求的所述压缩数据是否适合于所述高速缓冲存储器设备的单个高速缓冲存储体包括:确定所述压缩数据的压缩比是否大于或等于2:1的压缩比。4.根据权利要求2所述的方法,其中,确定所述高速缓冲存储器访问请求的所述压缩数据是否适合于所述高速缓冲存储器设备的单个高速缓冲存储体包括:确定所述压缩数据的大小是否小于或等于所述高速缓冲存储器设备的高速缓存线的大小。5.根据权利要求2所述的方法,其中,响应于确定所述压缩数据适合于所述高速缓冲存储器设备的高速缓冲存储体,恢复所述高速缓冲存储器访问请求的所述物理地址的一个或多个存储体选择位以产生所述高速缓冲存储体扩展地址包括:选择用于高速缓冲存储体扩展函数的输入;执行所述高速缓冲存储体扩展函数;返回高速缓冲存储体扩展值;以及利用所述高速缓冲存储体扩展值来替换所述一个或多个存储体选择位。6.根据权利要求5所述的方法,其中:选择用于所述高速缓冲存储体扩展函数的输入包括:选择所述高速缓冲存储器访问请求的所述高速缓冲存储器设备的所述物理地址的保留位的多个最低有效位,作为用于高速缓冲存储体扩展函数的操作数;以及执行所述高速缓冲存储体扩展函数包括:使用具有所述操作数的异或运算符。7.根据权利要求5所述的方法,其中,执行所述高速缓冲存储体扩展函数包括:使用逻辑运算、算术运算中的一个,选择随机值,从表格中选择与所述高速缓冲存储器访问请求的所述物理地址相关联的所述高速缓冲存储体扩展地址。8.根据权利要求1所述的方法,其中,在所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求包括:将压缩数据写入到由所述高速缓冲存储体扩展地址的所述一个或多个恢复的存储体选择位指示的第一高速缓冲存储体,其中,所述第一高速缓冲存储体与由所述高速缓冲存储器访问请求的所述高速缓冲存储器设备的所述物理地址的一个或多个存储体选择位指示的第二高速缓冲存储体不同;以及从由所述高速缓冲存储体扩展地址的所述一个或多个恢复的存储体选择位指示的所述第一高速缓冲存储体读取所述压缩数据,其中,所述第一高速缓冲存储体与由所述高速缓冲存储器访问请求的高速缓冲存储器设备的所述物理地址的一个或多个存储体选择位指示的第二高速缓冲存储体不同。9.根据权利要求1所述的方法,其中,在所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求包括:在由所述高速缓冲存储体扩展地址指示的高速缓冲存储器设备的物理地址处执行针对所述压缩数据的所述高速缓冲存储器访问请求。10.一种计算设备,包括:处理器;存储体扩展函数组件,其被通信地连接到所述处理器并且被配置为执行包括以下的操作:恢复高速缓冲存储器访问请求的物理地址的一个或多个存储体选择位以产生高速缓冲存储体扩展地址;高速缓冲存储器控制器,其被通信地连接到所述存储体扩展函数组件并且被配置为执行包括以下的操作:在所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求;以及高速缓冲存储器,其被通信地连接到所述高速缓冲存储器控制器。11.根据权利要求10所述的计算设备,其中:所述存储体扩展函数组件被配置为执行还包括以下的操作:确定压缩数据是否适合于高速缓冲存储器的单个高速缓冲存储体的高速缓存线;以及所述存储体扩展函数组件被配置为执行操作,使得恢复高速缓冲存储器访问请求的物理地址的一个或多个存储体选择位以产生高速缓冲存储体扩展地址包括:响应于确定所述压缩数据适合于所述高速缓冲存储器的单个高速缓冲存储体,恢复所述高速缓冲存储器访问请求的所述物理地址的所述一个或多个存储体选择位以产生所述高速缓冲存储体扩展地址。12.根据权利要求11所述的计算设备,其中,所述存储体扩展函数组件被配置为执行操作,使得确定所述高速缓冲存储器访问请求的所述压缩数据是否适合于所述高速缓冲存储器的单个高速缓冲存储体包括:确定所述压缩数据的压缩比是否大于或等于2:1的压缩比。13.根据权利要求11所述的计算设备,其中,所述存储体扩展函数组件被配置为执行操作,使得确定所述高速缓冲存储器访问请求的所述压缩数据是否适合于所述高速缓冲存储器的单个高速缓冲存储体包括:确定所述压缩数据的大小是否小于或等于所述高速缓冲存储器的高速缓存线的大小。14.根据权利要求11所述的计算设备,其中,所述存储体扩展函数组件被配置为执行操作,使得响应于确定所述压缩数据适合于所述高速缓冲存储器的高速缓冲存储体,恢复所述高速缓冲存储器访问请求的所述物理地址的一个或多个存储体选择位以产生所述高速缓冲存储体扩展地址包括:选择用于高速缓冲存储体扩展函数的输入;执行所述高速缓冲存储体扩展函数;返回高速缓冲存储体扩展值;以及利用所述高速缓冲存储体扩展值来替换所述一个或多个存储体选择位。15.根据权利要求14所述的计算设备,其中,所述存储体扩展函数组件被配置为执行操作,使得:执行高速缓冲存储体扩展函数包括:使用具有操作数的异或运算符、逻辑运算、算术运算中的一个,选择随机值,从表格中选择与所述高速缓冲存储器访问请求的所述物理地址相关联的所述高速缓冲存储体扩展地址;以及选择用于所述高速缓冲存储体扩展函数的输入包括:使用具有所述操作数的异或运算符来选择所述高速缓冲存储器访问请求的所述高速缓冲存储器的所述物理地址的保留位的多个最低有效位,作为用于所述高速缓冲存储体扩展函数的所述操作数。16.根据权利要求10所述的计算设备,其中,所述高速缓冲存储器控制器被配置为执行操作,使得在所述高速缓冲存储器中的所述高速缓冲存储体扩展地址处执行所述高速缓冲存储器访问请求包括:将压缩数据写入到由所述高速缓冲存储体扩展地址的所述一个或多个恢复的存储体选择位指示的第一高速缓冲存储体,其中,所述第一高速缓冲存储体与由所述高速缓冲存储器访问请求的所述高速缓冲存储器的所述物理地址的一个或多个存储体选择位指示的第二高速缓冲存储体不同;以及从由所述高速缓冲存储体扩展地址的所述一个或多个恢复的存储体选择位指示的所述第一高速缓冲存储体读取所述压缩数据,其中,所述第一高速缓冲存储体与由所述高速缓冲存储器访问请求的所述高速缓冲存储器的所述物理地址的一个或多个存储体选择位指示的所述第二高速缓冲存储体不同。17.一种非暂时性处理器可读介质,其具有被存储在其上的处理器可执行指令,所述处理器可执行指令被配置为使处理器、...
【专利技术属性】
技术研发人员:G·帕奇拉腊斯,A·E·特纳,B·雷赫利克,
申请(专利权)人:高通股份有限公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。