片上系统中的动态存储器利用技术方案

技术编号:16388474 阅读:29 留言:0更新日期:2017-10-16 08:54
本文公开了用于动态地管理片上系统(“SoC”)中的存储器组件的容量利用的方法和系统的各种实施例。在某些实施例中,通过在存储器子系统内的动态压缩和解压缩来优化存储器利用。基于指示服务质量(“QoS”)水平的SoC的参数,存储器控制器可以确定写请求中的数据的格式应该被转换并被存储在重新链接的存储器地址中。随后,可以释放与数据相关联的主存储器地址用于存储不同的数据。类似地,各个实施例可以以与请求了的格式不同的格式返回在写请求中请求的数据。

【技术实现步骤摘要】
【国外来华专利技术】片上系统中的动态存储器利用
技术介绍
便携式计算设备(“PCD”)正成为个人和专业人员的必需品。这些设备可以包括蜂窝电话、便携数字助理(“PDA”)、便携游戏控制台、掌上电脑和其它便携式电子设备。PCD通常包含集成电路或片上系统(“SoC”),其包括被设计为协同工作以向用户递送功能的许多组件。例如,SoC可以包含任何数量的主组件,例如,调制解调器、显示器、中央处理单元(“CPU”)、图形处理单元(“GPU”)等,其向和/或从SoC上的存储器组件读取和/或写入数据和/或指令。数据和指令通常可以被称为“事务”,并且通过已知为总线的线路集合在设备之间发送。值得注意地是,在主组件和诸如双倍数据速率(“DDR”)存储器设备的存储器组件之间的读写事务消耗了SoC的有价值的电量资源。此外,多个事务互相争用总线带宽,并且当总线上的事务业务拥塞时,针对服务关键事务(例如,某些调制解调器处理任务)的高得不可接受的等待时间水平可能导致系统崩溃。现有技术的解决方案采用通过主组件的静态压缩和解压缩方法,以尝试减少DDR限制事务业务,并且通过扩展来降低总线上的电耗。然而,现有技术的解决方案遭受由多个主处理器共享存储器空间导致的存储器争用问题、低效存储器利用、不必要的大存储器子系统的高电耗、以及主组件的复杂的软件/硬件设计和编程。通过响应于读和写事务而动态地压缩和解压缩存储器子系统内的数据和指令,主组件和共享存储器设备之间的往返事务业务可以优于现有技术解决方案,使得存储器争用问题被最小化。此外,经由更好地优化带宽分配,事务的等待时间可以相比现有技术的解决方案而得以改进。此外,与现有技术的解决方案相比,与总线和存储器设备大小相关联的电耗可以被最小化。此外,与现有技术的解决方案相比,与压缩和解压缩要求相关的软件和硬件编程考虑可以当不能全部被缓解时被相对简化。因此,本领域需要通过在存储器子系统内的动态压缩和解压缩来优化存储器利用的系统和方法。具体地说,本领域需要一种系统和方法,该系统和方法基于运行时(run-time)QoS参数来动态地执行响应于事务请求的关于是压缩还是解压缩数据的决定。
技术实现思路
本文公开了用于动态地管理片上系统(“SoC”)中的存储器组件的容量利用的方法和系统的各种实施例。在示例性实施例中,指示服务质量(“QoS”)水平的SoC的一个或多个参数被监测。包含在存储器子系统内的存储器控制器接收从第一主组件通过总线发送的第一事务请求。第一事务请求可以是例如一名本领域普通技术人员将理解的写请求。存储器控制器可以确定针对与第一事务请求相关联的数据的主存储器地址。主存储器地址可以位于存储器组件的第一数据存储体内。接下来,可以将与第一事务请求相关联的数据的格式确定为压缩或解压缩。不是以数据存在所用的格式简单地将数据写入主存储器地址,存储器控制器可以确定转换数据的格式。可以根据所监测的参数进行转换的确定。随后,数据可以以其所转换的格式存储在位于存储器组件的第二数据存储体内的重新链接的存储器地址处。然后可以释放主存储器地址,用于存储与后续的事务请求相关联的数据。在示例性实施例的不同方面,存储器控制器可以接收从第二主组件通过总线发送的第二事务请求。如一名本领域普通技术人员将理解地,对于在重新链接的存储器处存储的数据,第二事务请求可以是读请求。取决于所监测的参数,存储器控制器可以以数据存储在所重新链接的存储器地址处所用的格式将数据返回给第二主组件,或者可以在返回数据之前转换数据的格式。附图说明在附图中,除非另有说明,否则,相同的附图标记指贯穿各种视图的相同部件。对于具有诸如“102A”或“102B”的字母字符名称的附图标记,字母字符名称可以区分相同的附图中存在的两个相似的部分或元件。当想要一附图标记涵盖所有附图中具有相同的附图标记的所有部分时,可以省略用于附图标记的字母字符名称。图1是以用于实现动态存储器利用(“DMU”)系统和方法的无线电话的形式示出便携式计算设备(“PCD”)的示例性非限制性方面的功能框图;图2是示出了用于存储器子系统上的处理器中的动态存储器利用(“DMU”)解决方案的片上系统的示例性实施例的功能框图;图3A是示出用于响应于指定了压缩存储格式或解压缩存储格式的双倍数据速率存储器限制写事务请求来执行动态存储器利用(“DMU”)的示例性方法的逻辑流程图;图3B是示出用于响应于指定了压缩返回数据格式或解压缩返回数据格式的双倍数据速率存储器限制读事务请求来执行动态存储器利用(“DMU”)的示例性方法的逻辑流程图;图3C是示出用于响应于具有未被指定的存储格式的双倍数据速率存储器限制写事务请求来执行动态存储器利用(“DMU”)的示例性方法的逻辑流程图;和图3D是示出用于响应于具有未被指定的返回数据格式的双倍数据速率存储器限制读事务请求来执行动态存储器利用(“DMU”)的示例性方法的逻辑流程图。具体实施方式词语“示例性”在本文中用于表示用作示例、实例或说明。本文中描述为“示例性”的任何方面不一定被解释为排除、优选于或优于其它方面。在本说明书中,术语“应用”还可以包括具有可执行内容的文件,诸如:目标代码、脚本、字节码、标记语言文件和补丁。此外,本文中提及的“应用”还可以包括本质上不可执行的文件,诸如可能需要打开的文档或需要访问的其它数据文件。在本说明书中,对双倍数据速率“DDR”存储器组件的引用将被理解为设想用于长期数据存储的更广泛类别的易失性随机存取存储器(“RAM”)中的任何一个,并且不会限制本文公开的解决方案的特定类型或一代的RAM。如本说明书中所使用地,术语“组件”、“数据库”、“模块”、“系统”、“控制器”等旨在表示计算机相关的实体,即,硬件、固件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于是在处理器上运行的处理过程、处理器、对象、可执行文件、执行中的线程、程序和/或计算机。作为示例,运行在计算设备上的应用和计算设备都可以是组件。一个或多个组件可以驻留在执行的处理过程和/或线程内,并且组件可以被本地位于在一个计算机上和/或分布在两个或更多个计算机之间。此外,这些组件可以从其上存储有各种数据结构的各种计算机可读介质执行。组件可以诸如根据具有一个或多个数据分组的信号(该一个或多个数据分组例如是来自在本地系统、分布式系统中、和/或在诸如与其它系统的互联网之类的网络上与另一组件通过所述信号交互的一个组件的数据),通过本地和/或远程处理过程进行通信。在本说明书中,术语“中央处理单元(‘CPU’)”、“数字信号处理器(‘DSP’)”、“图形处理单元(‘GPU’)”和“芯片”可互换使用。此外,CPU、DSP、GPU或芯片可以由通常称为“核”的一个或多个不同的处理组件组成。在本说明书中,使用术语“引擎”、“处理引擎”、“主处理引擎”、“主组件”等来指片上系统(“SoC”)内的任何组件,其经由总线生成去往存储器子系统的事务请求。因此,主组件可以指但不限于指CPU、DSP、GPU、调制解调器、控制器、显示器、照相机等。在本说明书中,术语“回写”和“刷新”是指关于基于存在于与一个或多个主组件相关联的经紧密耦合的存储器中的数据和/或指令的较新版本来更新在DDR中实例化的数据和/或指令的处理过程。一名本领域普通技术人员将理本文档来自技高网
...
片上系统中的动态存储器利用

【技术保护点】
一种用于动态地管理片上系统(“SoC”)中的存储器组件的容量利用的方法,所述方法包括:监测指示服务质量(“QoS”)水平的所述SoC的一个或多个参数;在包括在存储器子系统内的存储器控制器处接收从第一主组件通过总线发送的第一事务请求,其中,所述第一事务请求是写请求;确定针对与所述第一事务请求相关联的数据的主存储器地址,其中,所述主存储器地址位于所述存储器组件的第一数据存储体内;确定与所述第一事务请求相关联的所述数据的格式;基于所监测的一个或多个参数,确定转换与所述第一事务请求相关联的所述数据的所述格式;将所述数据以其所转换的格式存储在重新链接的存储器地址处,其中,所重新链接的存储器地址位于所述存储器组件的第二数据存储体内;以及释放所述主存储器地址,用于存储与后续的事务请求相关联的数据。

【技术特征摘要】
【国外来华专利技术】2015.02.12 US 14/620,7971.一种用于动态地管理片上系统(“SoC”)中的存储器组件的容量利用的方法,所述方法包括:监测指示服务质量(“QoS”)水平的所述SoC的一个或多个参数;在包括在存储器子系统内的存储器控制器处接收从第一主组件通过总线发送的第一事务请求,其中,所述第一事务请求是写请求;确定针对与所述第一事务请求相关联的数据的主存储器地址,其中,所述主存储器地址位于所述存储器组件的第一数据存储体内;确定与所述第一事务请求相关联的所述数据的格式;基于所监测的一个或多个参数,确定转换与所述第一事务请求相关联的所述数据的所述格式;将所述数据以其所转换的格式存储在重新链接的存储器地址处,其中,所重新链接的存储器地址位于所述存储器组件的第二数据存储体内;以及释放所述主存储器地址,用于存储与后续的事务请求相关联的数据。2.根据权利要求1所述的方法,其中,与所述第一事务请求相关联的所述数据的所述格式是压缩格式,并且所转换的格式是解压缩格式。3.根据权利要求1所述的方法,其中,与所述第一事务请求相关联的所述数据的所述格式是解压缩格式,并且所转换的格式是压缩格式。4.根据权利要求1所述的方法,还包括:在所述存储器控制器处接收从第二主组件通过所述总线发送的第二事务请求,其中,所述第二事务请求是请求所述数据的读请求;确定所述数据存储在所重新链接的存储器地址处;以及将所述数据返回给所述第二主组件。5.根据权利要求4所述的方法,其中,所述数据以压缩格式存储并以解压缩格式返回给所述第二主组件。6.根据权利要求4所述的方法,其中,所述数据以解压缩格式存储并以压缩格式返回给所述第二主组件。7.根据权利要求1所述的方法,其中,所述一个或多个参数是从包括事务等待时间值、电耗水平、温度水平、工作负载优先级值、电池电量可用性水平和存储器大小的组中选择的。8.根据权利要求1所述的方法,其中,所述SoC包括在移动电话内。9.一种用于动态地管理片上系统(“SoC”)中的存储器组件的容量利用的系统,所述系统包括:用于监测指示服务质量(“QoS”)水平的所述SoC的一个或多个参数的单元;用于在存储器子系统处接收从第一主组件通过总线发送的第一事务请求的单元,其中,所述第一事务请求是写请求;用于确定针对与所述第一事务请求相关联的数据的主存储器地址的单元,其中,所述主存储器地址位于所述存储器组件的第一数据存储体内;用于确定与所述第一事务请求相关联的所述数据的格式的单元;用于基于所监测的一个或多个参数,确定转换与所述第一事务请求相关联的所述数据的所述格式的单元;用于将所述数据以其所转换的格式存储在重新链接的存储器地址处的单元,其中,所重新链接的存储器地址位于所述存储器组件的第二数据存储体内;以及用于释放所述主存储器地址,用于存储与后续的事务请求相关联的数据的单元。10.根据权利要求9所述的系统,其中,与所述第一事务请求相关联的所述数据的所述格式是压缩格式,并且所转换的格式是解压缩格式。11.根据权利要求9所述的系统,其中,与所述第一事务请求相关联的所述数据的所述格式是解压缩格式,并且所转换的格式是压缩格式。12.根据权利要求9所述的系统,还包括:用于在所述存储器子系统处接收从第二主组件通过所述总线发送的第二事务请求的单元,其中,所述第二事务请求是请求所述数据的读请求;用于确定所述数据存储在所重新链接的存储器地址处的单元;以及用于将所述数据返回给所述第二主组件的单元。13.根据权利要求12所述的系统,其中,所述数据以压缩格式存储并以解压缩格式返回给所述第二主组件。14.根据权利要求12所述的系统,其中,所述数据以解压缩格式存储并以压缩格式返回给所述第二主组件。15.根据权利要求9所述的系统,其中,所述一个或多个参数是从包括事务等待时间值、电耗水平、温度水平、工作负载优先级值、电池电量可用性水平和...

【专利技术属性】
技术研发人员:S·D·程V·米特
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

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

1