用于热功率预算编制的动态多媒体数据流控制的方法、设备和系统的制作方法

文档序号:9731855阅读:225来源:国知局
用于热功率预算编制的动态多媒体数据流控制的方法、设备和系统的制作方法
【专利说明】用于热功率预算编制的动态多媒体数据流控制的方法、设备 和系统
[0001] 对相关申请的交叉引用
[0002] 本申请要求享有于2013年8月28日递交的、名称为"Methods ,Devi ces And Systems For Dynamic Multimedia Data Flow Control For Thermal Power Budgeting" 的美国临时专利申请No. 61/870,856的优先权,以引用方式将其全部内容并入本文。
【背景技术】
[0003] 随着现代智能电话片上系统(SoC)在具有执行并发的多媒体应用或者会话的能力 的情况下变得更加集成和强大,并且随着对延长的电池寿命和更小的形状因子的要求变得 更加严格,对功率和电池管理问题的解决方案正变得更有挑战性。并发的多媒体应用的示 例包括游戏应用和视频会议应用两者在相同的设备上执行,并且例如在该设备的显示器上 的不同窗口中提供多媒体输出。多媒体输出可以由设备内的子系统(例如,照相机模块和图 形系统)生成。在并发的多媒体应用中的至少一些多媒体应用中,可以涉及多个设备。因此, 多媒体输出可以包括例如通过网络连接从其它设备接收的多媒体信息。
[0004] 由于各种原因,运行多个并发的多媒体应用的移动计算设备可能经历过度的功 耗。这样的功耗的显著部分可能可归因于提供高分辨率多媒体视频、图像和图形以及其它 并发的多媒体数据流。当运行并发的多媒体应用和进程时,移动计算设备及它们的片上系 统(SoC)可能不满足它们的热限制。由于该原因,随着环境条件超过功率预算和/或热限制, 在诸如分辨率、帧速率、细节层次(Level of Detail,L〇D)或者其它通常针对应用所指定的 参数设置之类的多媒体参数设置处,性能水平可能不可持续。
[0005] 当前的用于保持在限制内的方法在达到或者超过功耗和/或温度门限或者限制时 使用对有限数量的硬件子系统的硬件级频率节流。在当前的系统中,不论功耗的原因、热问 题或者正在使用的应用的类型是什么,整个设备的操作频率是有限的,并且从而处理功率 是有限的。当针对移动计算设备中的子系统的仅一些子系统节流或者限制频率时,应用的 关键性能方面可能变差,并且用户体验可能被损害。当前不存在用于控制与应用的其它处 理器密集方面相关联的多媒体参数(例如,并发的多媒体数据流的图像分辨率、帧素率、LoD 或者其它参数)的、操作系统(OS)级的集中式框架。
[0006] 当前的用于管理功耗和热预算编制问题的解决方案涉及使SoC的主要硬件系统子 块(例如,中央处理单元(CPU)和图形处理单元(GPU))上的频率节流。当所测量的温度和功 耗水平超过限制时,在硬件级发生对这些子块的频率节流。跨越主要处理子块的任意的频 率节流可以在不考虑每个应用或者多媒体数据流对用户体验或者热/功耗问题的各自的软 件级或者用户级贡献的情况下,降低并发的多媒体数据流的帧速率。进一步,基于其它硬件 模块继续以原始分辨率/帧速率/LoD来生成多媒体数据流,使主要的子块节流可能导致低 效率。具体说来,沿多媒体数据流路径出现在经频率节流的硬件系统子块之前或者之后的 未经节流的子块可以不必要地以完全频率处理多媒体数据流,导致不必要的功耗和低效率 的功率减少或者控制。
[0007] 在当前的系统中,每个应用决定诸如分辨率、帧速率和LoD之类的多媒体参数。不 存在用于基于例如每个数据流的功率预算和优先级来决定多媒体参数的集中式的、OS级的 过程。

【发明内容】

[0008] 各种方面提供了针对通过管理并发的多媒体应用的数据流来管理包括片上系统 (SoC)的设备的功率或者温度的方法和设备。一个方面方法可以包括:响应于确定温度超过 温度门限和功耗超过功率门限中的一项或多项,识别所述并发的多媒体应用中的最低优先 级数据流;跟踪与所识别的最低优先级数据流相关联的数据流的数据流路径;以及,降低沿 所跟踪的所述数据流的数据流路径的硬件模块的多媒体参数。一个方面方法可以进一步包 括:当温度和功耗中的所述一项或多项不再超过所述门限时,识别并发的多媒体应用中已 经使所述多媒体参数降低的的最高优先级数据流,并且跟踪与所识别的最高优先级数据流 相关联的数据流的数据流路径;以及,沿所跟踪的与所识别的最高优先级数据流相关联的 数据流的数据流路径,将所述多媒体参数恢复为原始值。
[0009] 在一个方面方法中,跟踪与所识别的最低优先级数据流相关联的数据流的数据流 路径可以包括识别沿所述数据流路径的使用所述多媒体参数操作的全部硬件子系统。在一 个方面方法中,降低沿所跟踪的数据流的数据流路径的任何硬件模块的多媒体参数可以包 括,降低沿所述数据流路径的所识别的硬件子系统的所述多媒体参数。
[0010] 在一个方面方法中,所述多媒体参数可以包括所述数据流的分辨率和帧速率中的 一项;以及,降低沿所跟踪的数据流的数据流路径的任何硬件模块的多媒体参数可以包括: 分析所述数据流的图像统计,以确定与所述数据流相关联的动态水平;当所述动态水平在 门限水平以上时,首先降低沿所述数据流路径的所识别的硬件子系统的所述分辨率;以及, 当所述动态水平在所述门限水平以下时,首先降低沿所述数据流路径的所识别的硬件子系 统的所述帧速率。
[0011] -个方面方法可以还包括:基于预定的应用优先级,建立所述并发的多媒体应用 的数据流之间的优先级。一个方面方法可以进一步包括:基于眼睛凝视统计,建立所述并发 的多媒体应用的数据流之间的优先级,所述眼睛凝视统计指示与所述并发的多媒体应用相 关联的被并发显示的窗口中正在被最经常地注视的窗口。一个方面方法可以进一步包括: 基于与所述并发的多媒体应用相关联的被并发显示的窗口中占用最大显示器区域的窗口, 建立所述并发的多媒体应用的数据流之间的优先级。
[0012] -个方面方法可以还包括:基于预定的应用优先级中的一个或多个预定的应用优 先级、基于眼睛凝视统计,所述眼睛凝视统计指示与所述并发的多媒体应用相关联的被并 发显示的窗口中正在被最经常地注视的窗口、以及基于与所述并发的多媒体应用相关联的 被并发显示的窗口中占用最大显示器区域的窗口来建立所述并发的多媒体应用的数据流 之间的优先级。一个方面方法可以还包括:基于与所述并发的多媒体应用中的一个或多个 多媒体应用的应用优先级相关联的权重,调整所建立的所述并发的多媒体应用的数据流之 间的优先级。
[0013] 在一个方面方法中,降低与所识别的最低优先级数据流相关联的数据流的多媒体 参数可以包括:分析所述数据流的内容的特性;以及,基于分析所述数据流的内容的特性的 结果,选择进行降低的所述多媒体参数。在一个方面方法中,所述多媒体参数可以包括与所 述数据流相关联的分辨率、帧速率和细节层次(LoD)中的一项。在一个方面方法中,所述并 发的多媒体应用可以包括至少电话会议应用和游戏应用。
[0014] 进一步的方面包括一种具有处理器或多个处理器的计算设备,所述处理器或多个 计算设备被配置为具有用于执行上文所描述的方法的操作的处理器可执行指令。进一步的 方面还包括具有用于执行上文所描述的方法的功能的单元的计算设备。进一步的方面包括 一种在上面存储了处理器可执行指令的非暂时性、处理器可读存储介质,所述处理器可执 行指令被配置为使处理器执行上文所描述的方法的操作。
【附图说明】
[0015] 被并入本文并且构成本说明书的部分的附图示出了发明的示例性方面,并且连同 上文给出的一般描述和下文给出的详细描述一起用来解释发明的特征。
[0016] 图IA是示出了适合于与各种方面一起使用的设备、网络、共享通信信道和并发的 多媒体应用的图。
[0017] 图IB是示出了设备配置和并发的多媒体应用的硬件块功耗的图。
[0018] 图IC是示出了用于使用频率节流来管理功耗的包括硬件设备和并发的多媒体应 用的系统配置的框图。
[0019] 图2A是示出了使用各种方面中的多媒体参数管理器和数据流跟踪器来管理功耗 的包括硬件设备和并发的多媒体应用的系统配置的框图。
[0020] 图2B是示出了各种方面中的通知、数据流跟踪和多媒体参数管理的硬件框图。
[0021 ]图3A是示出了各种方面中的硬件子系统和数据流路径的图。
[0022] 图3B是示出了各种方面中的硬件子系统和数据流路径以及高优先级数据流和包 括硬件子系统的数据流路径的图。
[0023] 图3C是示出了各种方面中的用于建立当前硬件子系统的多媒体参数设置的逻辑 单元的图。
[0024]图4A是示出了各种方面中的、包括用于设置窗口优先级的照相机和眼睛凝视检测 的设备和并发的多媒体应用的图。
[0025]如4B是示出了各种方面中的、包括用于设置窗口优先级的优先级提示的设备和并 发的多媒体应用的图。
[0026]图5A是示出了多媒体参数管理和数据流跟踪的一个方面方法的处理流程图。
[0027]图5B是示出了建立数据流优先级的一个方面方法的处理流程图。
[0028]图5C是示出了在多媒体参数之间选择用于覆盖的第一多媒体参数的一个方面方 法的处理流程图。
[0029]图5D是示出了基于应用优先级的调整数据流优先级的一个方面方法的处理流程 图。
[0030]图6是示出了适合于实现各种方面的示例性移动设备的框图。
[0031 ]图7是示出了适合于实现各种方面的示例性移动计算设备的框图。
【具体实施方式】
[0032] 将参照附图详细描述各种方面。在任何可能的地方,将贯穿附图使用相同的附图 标记,以指代相同或者相似的部分。对特定的示例或者实现方式做出的标记是出于说明的 目的,并且不旨在限制发明或者权利要求书的范围。
[0033] 术语"计算设备"在本文中被用于指以下各项中的任何一项或全部项:蜂窝电话、 智能电话、个人或者移动多媒体播放器、个人数字助理(PDA)、膝上型计算机、台式计算机、 平板型计算机、智能本、掌上计算机、无线电子邮件接收器、启用多媒体互联网的蜂窝电话、 电视、智能电视、智能电视机顶伙伴盒、集成智能电视、串流媒体播放器、智能电缆盒、机顶 盒、数字视频录像机(DVR)、数字媒体播放器以及包括可编程处理器(特别是包括SoC的那些 可编程处理器)的类似的个人电子设备。
[0034]本文所使用的术语"多媒体参数"可以指固定的或者可设置的参数,例如,分辨率、 帧速率(例如,每秒的帧)、细节层次(LoD)或者与多媒体数据相关联的其它参数,所述多媒 体数据可以在计算设备上被捕获、生成、显示、处理或者操作。多媒体数据可以与数据流 (flow)或者串流(stream)相关联,所述数据流或者串流通常与随时间生成数据的源(例如, 视频源、音频源、图形源或其它数据生成源)相关联。在各种方面中,多媒体数据可以包括图 像数据、视频数据、音频数据、组合的音频和视频或者图像数据、以及诸如用户交互数据之 类的其它数据。多媒体数据可以被包括在数据流中,所述数据流跨越沿数据流路径的多个 硬件块和子块以及甚至多个互连的设备。互连的设备可以包括诸如外部显示器之类的外部 设备,并且可以包括诸如通过网络来连接的通信设备之类的其它设备。多媒体数据进一步 可以由各种硬件块或者子块生成。在各种方面中,多媒体数据可以穿过跨越网络的共享通 信信道被发送到另一个多媒体设备。
[0035]本文所使用的术语"分辨率"和"帧速率"可以一般地指数据流中的每帧图像数据 的像素数和每给定时间段(例如,每秒)的帧数。分辨率和帧速率可以结合给定模式一起来 表述。例如,1080p30的视频模式可以指垂直分辨率为1080水平行的分辨率和每秒30帧的帧 速率。在16:9的常见宽屏高宽比时,1080p的视频模式将意味着像素或者像素组(例如,RGB 像素)为1920行的垂直分辨率。尽管特定分辨率和帧速率在本文中可以被描述为说明性和 示例性的,但是本文所公开的发明构思可以被应用到任何分辨率和帧速率。
[0036]本文所使用的术语"细节层次"或者"LoD"可以指与计算机图形相关联的参数或者 特性。细节层次或者LoD可以指,当物体被渲染和显示时,物体的表示(例如,3D表示)的细节 或者复杂度。在各种方面中,在各种情况(包括当被显示物体向着或者远离观看者移动时) 下,可以修改(包括提高或者降低)L 〇D。可以根据诸如物体重要性、视角相对速度或位置或 者其它度量之类的其它度量来修改(包括提高或者降低)L 〇D。例如当LoD被降低时,对LoD的 修改可以通过降低图形处理流水线级(通常是顶点变换)上的工作量来提高物体渲染的效 率。当物体距离远或者快速移动时,由于物体外观的较小影响,对应的该物体的降低视觉质 量通常是不被注意的。对LoD的修改通常可以被应用到几何细节。然而,如本文所使用的, LoD可以额外地指其它细节,例如阴影、纹理或者其它细节,对所述细节的管理可以有助于 对像素复杂度和物体渲染质量的控制。
[0037]在方面中,在正在执行并发的多媒体应用的设备或者多个设备中,当SoC温度或者 SoC功耗水平超过预定的限制或者门限时,可以采取行动以减少处理需求,同时维持或者提 供该情形下的最佳的可获得的用户体验。可以向多媒体参数管理器提供在传感器中测量到 的或者获得的SoC温度和SoC功率,所述多媒体参数管理器可以被配置为控制或者覆盖存在 于用于数据流或者多个数据流的对应的数据流路径或者多个路径中的每个硬件块中的多 媒体参数(例如,处理分辨率、帧速率、LoD或者其它参数)。多媒体参数管理器对多媒体参数 的控制可以基于针对每个数据流或者多媒体应用所建立的优先级。数据流跟踪器可以收集 全部数据流路径的信息,例如,关于存在于每个数据流路径中的硬件块或子块的信息。关于 数据流路径的信息可以从各种源来获得,所述各种源包括与数据流相关联的分组的分组报 头信息。数据流路径信息可以进一步包括关于正在共享通信信道的另一个用户的设备和并 发的多媒体应用(例如,多玩家游戏应用、电话会议应用或者其它多用户应用)中的至少一 个并发的多媒体应用的信息。这样的信息可以包括其他用户或者多个用户的目的地地址、 与数据流的至少通过网络延伸到其他用户或多个用户的部分相关联的服务质量(QoS)。
[0038] 多媒体参数调整可以由多媒体参数管理器在一个或多个低优先级数据流中做出, 同时保存与一个或多个高优先级数据流相关联的多媒体参数。通过调整低优先级数据流中 的多媒体参数,可以减少、最小化或者消除对高优先级数据流上的用户体验的降级。可以有 效地降低存在于低优先级数据流中的、由数据流跟踪器识别的全部硬件块或者子块(包括 耦合到共享通信信道上的设备中的硬件块或者子块)中的功耗。可以针对数据流路径中的 每个块或者子块提供逻辑单元,以决定例如用于模块的所调整的多媒体参数。所调整的多 媒体参数可以基于原始参数、覆盖参数和下游模块的参数。
[0039] 可以以各种方式来建立数据流中的每个数据流的优先级。例如,可以针对与显示 器上最经常被设备的用户查看的应用窗口相关联的数据流建立高优先级。通过分析由设备 上的照相机捕获的图像来获得的眼睛凝视识别可以被用于自动地检测和生成屏幕上或者 外部设备上的眼睛凝视位置的统计。具有凝视位置统计与窗口位置之间的最大相关性的窗 口和与这些窗口相关联的应用或者数据流可以被建立为高优先级应用或者数据流。替代 地,与占用最大量的屏幕区域的活跃的窗口相关联的数据流可以被指定为高优先级数据 流。进一步,应用可以提供与例如其优选的、需要的或者推荐的多媒体参数需求(例如,分辨 率、帧速率或者LoD)相关联的额外信息,所述额外信息可以被用于建立至少数据流的初始 优先级中。多媒体参数管理器和数据流跟踪器在决定将为数据流建立的优先级时可以使用 上文描述的信息中的任何或者全部信息,例如眼睛凝视信息、窗口区域信息、提示信息和其 它信息。
[0040] 如上文描述的,可以为数据流建立优先级,以用在调整沿低优先级数据流的数据 流路径的硬件模块的性能或者功率需求中。然而,应用层考虑可以导致与根据上文描述的 方面方法为数据流建立的优先级偏离或冲突的应用的优先级。表1示出了具有分配的优先 级的应用和数据流的示例。在示出的示例中,数据流A-UA-
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1