在基于中央处理单元(CPU)的系统中通过经压缩存储器控制器(CMC)使用背靠背读取操作来提供存储器带宽压缩技术方案

技术编号:16112541 阅读:21 留言:0更新日期:2017-08-30 05:53
本发明专利技术揭示在基于中央处理单元CPU的系统中通过经压缩存储器控制器CMC使用背靠背读取操作来提供存储器带宽压缩。在这点上,在一些方面中,CMC经配置以接收对系统存储器中的物理地址的存储器读取请求,并从与所述物理地址相关联的存储器线中的第一存储器块的错误校正码ECC位读取用于所述物理地址的压缩指示符CI。基于所述CI,所述CMC确定所述第一存储器块是否包括经压缩数据。如果不,那么所述CMC与返回所述第一存储器块并行地执行对所述存储器线的一或多个额外存储器块的背靠背读取。一些方面可通过将经压缩数据写入到所述存储器线的多个存储器块中的每一者而不是仅写入到所述第一存储器块来进一步改善存储器存取等待时间。

【技术实现步骤摘要】
【国外来华专利技术】在基于中央处理单元(CPU)的系统中通过经压缩存储器控制器(CMC)使用背靠背读取操作来提供存储器带宽压缩优先权申请本申请案要求2015年2月3日申请且标题为“用使用改善的等待时间的背靠背读取操作的存储器带宽压缩的存储器控制器、和相关的基于处理器的系统和方法(MEMORYCONTROLLERSEMPLOYINGMEMORYBANDWIDTHCOMPRESSIONEMPLOYINGBACK-TO-BACKREADOPERATIONSFORIMPROVEDLATENCY,ANDRELATEDPROCESSOR-BASEDSYSTEMSANDMETHODS)”的第62/111,347号美国临时专利申请案的优先权,所述专利申请案以全文引用的方式并入本文中。本申请案还要求2015年9月3日申请且标题为“在基于中央处理单元(CPU)的系统中通过经压缩存储器控制器(CMC)使用背靠背读取操作来提供存储器带宽压缩(PROVIDINGMEMORYBANDWIDTHCOMPRESSIONUSINGBACK-TO-BACKREADOPERATIONSBYCOMPRESSEDMEMORYCONTROLLERS(CMCs)INACENTRALPROCESSINGUNIT(CPU)-BASEDSYSTEM)”的第14/844,516号美国专利申请案的优先权,所述专利申请案以全文引用的方式并入本文中。
本专利技术的技术大体上涉及计算机存储器系统,且确切地说,涉及用于提供具有到存储器的存储器存取接口的中央处理单元(CPU)的计算机存储器系统中的存储器控制器。
技术介绍
微处理器在广泛多种应用程序中执行计算任务。典型的微处理器应用程序包含执行软件指令的一或多个中央处理单元(CPU)。软件指令可发指令给CPU从存储器中的位置取数据、使用取到的数据来执行一或多个CPU操作并产生结果。结果接着可存储于存储器中。作为非限制性实例,这个存储器可为在CPU本地的高速缓冲存储器、在CPU块中的CPU之间的共享本地高速缓冲存储器,在多个CPU块之间的共享高速缓冲存储器,或微处理器的主存储器。正这点上,图1是包含基于CPU的系统12的示范性芯片上系统(SoC)10的示意图。在此实例中,基于CPU的系统12包含多个CPU块14(1)到14(N),其中“N”等于所需的CPU块14(1)到14(N)的任何数目。在图1的实例中,CPU块14(1)到14(N)中的每一者含有两个CPU16(1)、16(2)。CPU块14(1)到14(N)进一步分别含有共享2阶(L2)高速缓冲存储器18(1)到18(N)。还提供共享3阶(L3)高速缓冲存储器20,其用于存储由CPU块14(1)到14(N)中的任一者使用或在其之间共享的高速缓冲存储器的数据。提供内部系统总线22以使CPU块14(1)到14(N)中的每一者能够存取共享的L3高速缓冲存储器20以及其它共享资源。由CPU块14(1)到14(N)通过内部系统总线22存取的其它共享资源可包含存储器控制器24,存储器控制器24用于存取主要外部存储器(例如双速率动态随机存取存储器(DRAM)(DDR),作为非限制性实例)、外围装置26、其它存储装置28、快速外围部件互连(PCI)(PCI-e)接口30、直接存储器存取(DMA)控制器32,和/或集成存储器控制器(IMC)34。随着在图1中的基于CPU的系统12中执行的基于CPU的应用的复杂性和性能增加,共享L2缓冲18(1)到18(N)和共享L3缓冲20,以及可通过存储器控制器24存取的外部存储器的存储器容量要求也可增加。可使用数据压缩来增加基于CPU的系统12的有效存储器容量,而不增加物理存储器容量。然而,对数据压缩的使用可增加存储器存取等待时间且消耗额外的存储器带宽,这是因为取决于数据是经压缩的还是未经压缩的,可能需要多个存储器存取请求来检索数据。因此,期望使用数据压缩来增加基于CPU的系统12的存储器容量,同时缓解对存储器存取等待时间和存储器带宽的影响。
技术实现思路
本文中所揭示的方面包含在基于中央处理单元(CPU)的系统中通过经压缩存储器控制器(CMC)使用背靠背读取操作来提供存储器带宽压缩。在这点上,在一些方面中,CMC经配置以提供针对存储器读取请求和/或存储器写入请求的存储器带宽压缩。根据一些方面,在接收到对系统存储器中的物理地址的存储器读取请求后,所述CMC可即刻从与所述系统存储器中的所述物理地址相关联的存储器线中的第一存储器块的错误校正码(ECC)位读取用于所述物理地址的压缩指示符(CI)。基于所述CI,所述CMC确定所述第一存储器块是否包括经压缩数据。如果所述第一存储器块不包括经压缩数据,那么所述CMC可通过与返回所述第一存储器块(前提是所述第一存储器块包括需求字)并行地执行对所述存储器线的一或多个额外存储器块的背靠背读取来改善存储器存取等待时间。在一些方面中,由所述CMC读取的所述存储器块可以是含有如由所述存储器读请求的需求字指示符指示的所述需求字的存储器块。一些方面可通过将经压缩数据写入到所述存储器线的多个存储器块中的每一者而不是仅写入到所述第一存储器块来提供另外的存储器存取等待时间改善。在此些方面中,所述CMC可读取由所述需求字指示符指示的存储器块,且保证所述读取存储器块(不管其含有经压缩数据还是未经压缩数据)将提供所述需求字。以此方式,所述CMC可更高效地读取且写入经压缩和未经压缩数据,从而产生减少的存储器存取等待时间和改善的系统性能。在另一方面中,提供一种CMC,其包括经配置以经由系统总线存取系统存储器的存储器接口。所述CMC经配置以接收存储器读取请求,所述存储器读取请求包括第一存储器线的物理地址,所述第一存储器线包括所述系统存储器中的多个存储器块。所述CMC经进一步配置以读取所述第一存储器线的所述多个存储器块中的第一存储器块。所述CMC还经配置以基于所述第一存储器块的CI而确定所述第一存储器块是否包括经压缩数据。所述CMC另外经配置以响应于确定所述第一存储器块不包括所述经压缩数据而执行对所述第一存储器线的所述多个存储器块中的一或多个额外存储器块的背靠背读取。所述CMC经进一步配置以与所述背靠背读取并行地确定读取存储器块是否包括需求字并响应于确定所述读取存储器块包括所述需求字而返回所述读取存储器块。在另一方面中,提供一种CMC,其包括经配置以经由系统总线存取系统存储器的存储器接口。所述CMC经配置以接收存储器读取请求,所述存储器读取请求包括第一存储器线的物理地址,所述第一存储器线包括所述系统存储器中的多个存储器块,且所述存储器读取请求包括指示所述第一存储器线的所述多个存储器块当中的含有需求字的存储器块的需求字指示符。所述CMC经进一步配置以读取由所述需求字指示符指示的所述存储器块。所述CMC还经配置以基于所述存储器块的CI而确定所述存储器块是否包括经压缩数据。所述CMC另外经配置以:响应于确定所述存储器块不包括所述经压缩数据,与返回所述存储器块并行地执行对所述第一存储器线的所述多个存储器块中的一或多个额外存储器块的背靠背读取。在另一方面中,一种用于提供存储器带宽压缩的方法。所述方法包括接收存储器读取请求,所述存储器读取请求包括第一存储器线的物理地本文档来自技高网
...
在基于中央处理单元(CPU)的系统中通过经压缩存储器控制器(CMC)使用背靠背读取操作来提供存储器带宽压缩

【技术保护点】
一种经压缩存储器控制器CMC,其包括经配置以经由系统总线存取系统存储器的存储器接口;所述CMC经配置以:接收存储器读取请求,所述存储器读取请求包括第一存储器线的物理地址,所述第一存储器线包括所述系统存储器中的多个存储器块;读取所述第一存储器线的所述多个存储器块中的第一存储器块;基于所述第一存储器块的压缩指示符CI而确定所述第一存储器块是否包括经压缩数据;以及响应于确定所述第一存储器块不包括所述经压缩数据而:执行对所述第一存储器线的所述多个存储器块中的一或多个额外存储器块的背靠背读取;以及与所述背靠背读取并行地:确定读取存储器块是否包括需求字;以及响应于确定所述读取存储器块包括所述需求字而返回所述读取存储器块。

【技术特征摘要】
【国外来华专利技术】2015.02.03 US 62/111,347;2015.09.03 US 14/844,5161.一种经压缩存储器控制器CMC,其包括经配置以经由系统总线存取系统存储器的存储器接口;所述CMC经配置以:接收存储器读取请求,所述存储器读取请求包括第一存储器线的物理地址,所述第一存储器线包括所述系统存储器中的多个存储器块;读取所述第一存储器线的所述多个存储器块中的第一存储器块;基于所述第一存储器块的压缩指示符CI而确定所述第一存储器块是否包括经压缩数据;以及响应于确定所述第一存储器块不包括所述经压缩数据而:执行对所述第一存储器线的所述多个存储器块中的一或多个额外存储器块的背靠背读取;以及与所述背靠背读取并行地:确定读取存储器块是否包括需求字;以及响应于确定所述读取存储器块包括所述需求字而返回所述读取存储器块。2.根据权利要求1所述的CMC,其经进一步配置以响应于确定所述第一存储器块包括所述经压缩数据而:将所述第一存储器块的所述经压缩数据解压缩成一或多个经解压缩存储器块;以及确定所述一或多个经解压缩存储器块中的包括所述需求字的经解压缩存储器块;以及在返回所述剩余一或多个经解压缩存储器块之前返回包括所述需求字的所述经解压缩存储器块。3.根据权利要求1所述的CMC,其经进一步配置以:接收存储器写入请求,所述存储器写入请求包括未经压缩写入数据和包括所述系统存储器中的多个存储器块的第二存储器线的物理地址;将所述未经压缩写入数据压缩成经压缩写入数据;确定所述经压缩写入数据的大小是否大于所述第二存储器线的所述多个存储器块中的每一存储器块的大小;响应于确定所述经压缩写入数据的所述大小不大于所述第二存储器线的所述多个存储器块中的每一存储器块的所述大小,将所述经压缩写入数据写入到所述第二存储器线的第一存储器块;响应于确定所述经压缩写入数据的所述大小大于所述第二存储器线的所述多个存储器块中的每一存储器块的所述大小,将所述未经压缩写入数据写入到所述第二存储器线的所述多个存储器块中的多者;以及设置所述第二存储器线的所述多个存储器块中的所述第一存储器块的所述CI以指示所述第一存储器块的压缩状态。4.根据权利要求1所述的CMC,其进一步包括压缩监视器,所述压缩监视器经配置以基于所述经压缩数据的读取的数目、读取操作的总数目、所述经压缩数据的写入的数目和写入操作的总数目中的至少一者而跟踪压缩比。5.根据权利要求4所述的CMC,其中所述压缩监视器经配置以作为非限制性实例在每中央处理单元CPU基础、每工作负荷基础、每虚拟机VM基础、每容器基础中的一或多者上和在每服务质量QoS标识符QoSID基础上跟踪所述压缩比。6.根据权利要求4所述的CMC,其中所述压缩监视器包括用于跟踪以下各者中的所述至少一者的一或多个计数器:所述经压缩数据的读取的所述数目、所述读取操作的所述总数目、所述经压缩数据的写入的所述数目和所述写入操作的所述总数目。7.根据权利要求4所述的CMC,其经进一步配置以:响应于接收到所述存储器读请求而确定所述压缩比是否低于阈值;以及响应于确定所述压缩比低于所述阈值而:读取所述第一存储器线的所述多个存储器块;基于所述第一存储器线的所述多个存储器块中的所述第一存储器块的所述CI而确定所述第一存储器块是否包括所述经压缩数据;响应于确定所述第一存储器块包括所述经压缩数据而:将所述第一存储器块的所述经压缩数据解压缩成一或多个经解压缩存储器块;识别所述一或多个经解压缩存储器块中的含有所述需求字的经解压缩存储器块;以及返回所述经解压缩存储器块;以及响应于确定所述第一存储器块不包括所述经压缩数据而返回所述多个存储器块;且所述CMC经配置以响应于确定所述压缩比等于或超出所述阈值而读取所述第一存储器线的所述多个存储器块中的所述第一存储器块。8.根据权利要求1所述的CMC,其集成到集成电路IC中。9.根据权利要求1所述的CMC,其集成到选自由以下各项组成的群组的装置中:机顶盒;娱乐单元;导航装置;通信装置;固定位置数据单元;移动位置数据单元;移动电话;蜂窝式电话;计算机;便携式计算机;台式计算机;个人数字助理PDA;监视器;计算机监视器;电视机;调谐器;无线电;卫星无线电;音乐播放器;数字音乐播放器;便携式音乐播放器;数字视频播放器;视频播放器;数字视频光盘DVD播放器;和便携式数字视频播放器。10.一种经压缩存储器控制器CMC,其包括经配置以经由系统总线存取系统存储器的存储器接口;所述CMC经配置以:接收包括以下各者的存储器读取请求:包括所述系统存储器中的多个存储器块的第一存储器线的物理地址;以及需求字指示符,其指示所述第一存储器线的所述多个存储器块当中的含有需求字的存储器块;读取由所述需求字指示符指示的所述存储器块;基于所述存储器块的压缩指示符CI而确定所述存储器块是否包括经压缩数据;以及响应于确定所述存储器块不包括所述经压缩数据,与返回所述存储器块并行地,执行对所述第一存储器线的所述多个存储器块中的一或多个额外存储器块的背靠背读取。11.根据权利要求10所述的CMC,其经进一步配置以响应于确定所述存储器块包括所述经压缩数据而:将所述存储器块的所述经压缩数据解压缩成一或多个经解压缩存储器块;识别所述一或多个经解压缩存储器块中的包括所述需求字的经解压缩存储器块;以及在返回所述剩余一或多个经解压缩存储器块之前返回包括所述需求字的所述经解压缩存储器块。12.根据权利要求10所述的CMC,其经进一步配置以:接收存储器写入请求,所述存储器写入请求包括未经压缩写入数据和包括所述系统存储器中的多个存储器块的第二存储器线的物理地址;将所述未经压缩写入数据压缩成经压缩写入数据;确定所述经压缩写入数据的大小是否大于所述第二存储器线的所述多个存储器块中的每一存储器块的大小;响应于确定所述经压缩写入数据的所述大小不大于所述第二存储器线的所述多个存储器块中的每一存储器块的所述大小,将所述经压缩写入数据写入到所述第二存储器线的所述多个存储器块中的每一存储器块;响应于确定所述经压缩写入数据的所述大小大于所述第二存储器线的所述多个存储器块中的每一存储器块的所述大小,将所述未经压缩写入数据写入到所述第二存储器线的所述多个存储器块中的多者;以及设置所述第二存储器线的所述多个存储器块中的每一存储器块的对应CI以指示所述第二存储器线的所述多个存储器块中的每一存储器块的压缩状态。13.根据权利要求10所述的CMC,其进一步包括压缩监视器,所述压缩监视器经配置以基于所述经压缩数据的读取的数目、读取操作的总数目、所述经压缩数据的写入的数目和写入操作的总数目中的至少一者而跟踪压缩比。14.根据权利要求13所述的CMC,其中所述压缩监视器经配置以作为非限制性实例在每中央处理单元CPU基础、每工作负荷基础、每虚拟机VM基础、每容器基础中的一或多者上和在每服务质量QoS标识符QoSID基础上跟踪所述压缩比。15.根据权利要求13所述的CMC,其中所述压缩监视器包括用于跟踪以下各者中的所述至少一者的一或多个计数器:所述经压缩数据的读取的所述数目、所述读取操作的所述总数目、所述经压缩数据的写入的所述数目和所述写入操作的所述总数目。16.根据权利要求13所述的CMC,其经进一步配置以:响应于接收到所述存储器读请求而确定所述压缩比是否低于阈值;以及响应于确定所述压缩比低于...

【专利技术属性】
技术研发人员:科兰·比顿·韦里利马托伊斯·科内利斯·安东尼乌斯·阿德里安努·黑德斯布赖恩·乔尔·舒迈克尔·雷蒙德·特朗布利纳塔拉詹·瓦伊德亚纳坦
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1