自刷新显示功能的控制技术 【技术领域】
本发明一般地涉及用于调节功耗的技术。
背景技术
在计算机系统中,多媒体操作是非常常见的。例如,个人计算机常被用于处理和显示视频。计算机的功耗是人们所关心的。调节个人计算机的功耗也是人们所期望的。
【附图说明】
在附图中,本发明的各实施方式是作为示例而示出的,而非作为限制,其中,相同的标号指代相似的元件。
图1A描绘了根据一个实施方式的系统。
图1B描绘了根据一个实施方式可控制其功耗的主机系统的各组件的示例。
图1C描绘了根据一个实施方式的显示设备的定时控制器的高级框图。
图2描绘了根据本发明一个实施方式的功率管理逻辑的框图。
图3描绘了是否调用显示自刷新模式的检测和决策过程所涉及的过程的流程图。
图4描绘了根据一个实施方式的显示器操作模式的状态图。
图5描绘了根据一个实施方式的操作示例。
【具体实施方式】
在本说明书中,所提到的“一个实施方式”或“实施方式”意味着结合该实施方式所描述的特定的特征、结构或特性被包括在本发明的至少一个实施方式中。由此,在本说明书的各个段落中出现的“在一个实施方式中”或“实施方式”这种表述并不必然全都指代同一实施方式。此外,在一个或多个实施方式中,上述特定的特征、结构或特性可以被组合起来。
图1A描绘了根据一个实施方式的系统100。系统100可以包括源设备(比如主机系统102)和目标设备150。主机系统102可以包括多核处理器110、主机存储器112、存储设备114和图形子系统115。芯片组105可以使主机系统102中的各个设备以通信的方式耦合起来。图形子系统115可以处理视频和音频。
根据各个实施方式,处理器110可以执行驱动器(未示出)从而确定是否启动以下动作:(1)指示目标设备150去捕获图像并重复地显示所捕获的图像;(2)使图形子系统115的各组件功率下降;以及(3)使目标设备150的各组件功率下降。该驱动器可以至少基于下列因素来确定是否启动上述动作(1)、(2)或(3):系统定时器周期的变化;三角形或多边形绘制;任何处理器核没有处于低功率模式中;任何鼠标活动;垂直消隐中断被使用;以及覆盖被启用。例如,使各组件功率下降可以包括使调压器减小到最低的工作电压电平。例如,当处理器110运行微软视窗兼容操作系统时,上述驱动器可以是内核模式驱动器。
例如,主机系统102可以通过用接口145发送扩展分组的方式,将捕获图像的命令和使各组件功率下降的命令发送给目标设备150。接口145可以包括主链路与AUX信道,这两者在视频电子标准协会(VESA)显示端口标准(版本1,修订1a,2008)中都有描述。在各实施方式中,主机系统102(比如图形子系统115)可以至少以参照共同待批的美国专利申请S/N.12/286,192所描述的方式(其标题是“Protocol Extensions in a Display Port CompatibleInterface”,发明人是Kwa等人,提交日是2008年9月29日)来形成各种通信并将这些通信发送给目标设备150。
目标设备150可以是能显示视觉内容和广播音频内容的显示设备。例如,目标设备150可以包括:像定时控制器(TCON)这样的控制逻辑,用于控制像素的写入;以及寄存器,用于引导目标设备150的操作。
图1B描绘了根据一个实施方式可控制其功耗的主机系统102的各组件的示例。这些组件可以是在芯片组、处理器或图形子系统中。例如,可以使主机102的显示锁相环路(PLL)160、显示平面162、显示管道164以及显示接口166功率下降或上升。PLL 160可以是用于显示平面162、显示管道164和显示接口166的系统时钟。例如,显示平面162可以包括数据缓冲器和RGB颜色映射器,用于将来自缓冲器的数据转变成RGB。显示平面162可以包括相关联的存储器控制器和存储器IO(未示出),也可以对它们进行功率管理。管道164可以包括将多层图像混合成复合图像的混合器、XY坐标光栅化器以及接口协议打包器。该接口协议打包器可以至少顺应显示端口或低电压差分信令(LVDS),LVDS可从ANSI/TIA/EIA-644-A(2001)获得。显示接口166可以包括显示端口或LVDS兼容型接口以及并入串出(PISO)接口。
图1C描绘了根据一个实施方式的显示设备的定时控制器的高级框图。定时控制器180能够响应于来自主机设备的指令,以进入自刷新模式(SRD),该模式可以包括使各组件功率下降和/或捕获图像并将所捕获的图像重复地输出给显示器。响应于来自主机的信号SRD_ON,SRD控制框激活帧缓冲器去捕获帧,并且SRD控制框控制多路复用器(MUX)将所捕获的帧传送到输出端口。在该帧缓冲器捕获帧之后,SRD控制框将信号SRD_Status激活,以通知该主机已经进行了捕获且定时控制器显示所捕获的图像。在信号SRD_ON停用之后,SRD控制框使上述帧缓冲器和相关联的逻辑停用,并使上述MUX将来自输入端口(在这种情况下就是LVDS RX)的传入视频传送到输出端口(LVDSTX)。定时控制器180可以使用更少的功率,因为当退出自刷新显示模式时上述帧缓冲器被关闭且逻辑时钟被选通。在各实施方式中,SRD_ON和SRD_STATUS可以是信号,或者是在寄存器中被配置。
图2描绘了根据本发明一个实施方式的功率管理逻辑200的框图。基于系统定时器变化、覆盖模式、是否使用垂直消隐中断、图形活动以及鼠标活动的输入,功率管理逻辑200可以确定是否使各组件功率下降以及使显示设备捕获静止图像并重复地显示所捕获的静止图像。功率管理逻辑200可以是由处理器执行的驱动器。
特征控制框202确定是否禁用功率管理逻辑200。内核定时器框204提供周期性轮询定时器,用于监控各种情况。例如,轮询周期可以是10或15.6毫秒,尽管其它轮询周期也是可以使用的。
系统定时器变化框206指示是否系统定时器周期已发生变化。当多媒体操作发生时,许多应用程序(通常是多媒体应用程序,比如视窗媒体播放器)将系统定时器改变成1毫秒。
覆盖处理框208指示微软XP的覆盖使用是否是活动的。
垂直消隐中断(VBI)框210指示是否使用VBI。像媒体播放器这样的应用程序有时候会利用API,这些API用于报告VBI以便协调媒体回放从而在监视器设备上进行尽可能流畅的回放。此外,视窗Vista桌面组成引擎(DCE)利用VBI通知来定时它对显示的更新。
图形(GFX)活动框212指示图形引擎是否绘制任何三角形或多边形。
鼠标活动框214指示是否已发生鼠标移动或按钮使用。鼠标移动或按钮使用指示所显示的图像的绘制将要发生。如果检测到鼠标活动和图形活动,则鼠标活动和图形活动可以被馈送到消息引擎222中,以产生优先级更高的消息。
尽管未示出,但是鉴别器框220也可以考虑是否该主机所有的处理器核都处于低功率状态。处在像C2或更高的状态中的Intel处理器核可以被认为处于低功率状态中。
如果有阈值时间段上述框206-214中的指示器都未指示有活动,则鉴别器框220可以请求使图形引擎功率下降、捕获图像并且让显示器重复地显示所捕获的图像。如果框206-214中的任何哪个框指示有活动,则鉴别器框220可以请求使图形引擎功率上升并且让显示器显示输入的图像。
在一个实施方式中,消息引擎222可以用扩展分组通过写入到显示设备的寄存器来发送来自鉴别器框220的指令。例如,可以用参照美国专利申请S/N.12/286,192所描述的格式的扩展分组来写上述寄存器(该申请的标题是“Protocol Extensions in a Display Port Compatible Interface”,发明人是Kwa等人,提交日是2008年9月29日)。
图3描绘了关于功耗与图像显示的检测和决策过程所涉及的过程的流程图。框301可以包括确定是否检测到任何图形相关活动。图形相关活动可以包括下列中的任何哪种:覆盖处理被使用;操作系统当前使用了VBI;任何图形处理正在发生;鼠标或光标移动已经发生了;以及任何处理器核没有处于低功率状态中。处在像C2或更高的状态中的Intel处理器核可以被认为处于低功率状态中。
框302可以包括:若在框301中没有检测到任何活动,则使计数器递增。然而,如果在框301中检测到任何活动,则框303可以使计数器复位。该计数器对那些没有检测到图形相关活动的系统定时器周期的个数进行计数。
框304可以包括确定计数器是否被复位。如果计数器被复位,则框305可以确定显示器的状态是否是“开”(比如自刷新显示模式)或“捕获”(比如捕获在自刷新模式中显示的图像)。如果该状态是“开”或“捕获”,则框306通过将该状态设为“关”(比如不处于自刷新显示模式中)来禁用自刷新显示模式。
如果在框307中确定图形引擎(GFX)被禁用,则框308启用GFX。被启用的图形引擎的各组件可以包括参照图1B所描述的那些组件。
如果框304确定计数器没有被复位,则框310确定该状态是否是“开”。如果该状态不是“开”,则框311跟在框310后面。如果该状态是“开”,则框320跟在框310后面。
框311可以包括确定计数器是否达到或超出阈值数字。该计数器对那些没有检测到任何活动的系统定时器周期的个数进行计数。如果没有检测到任何活动的系统定时器周期的个数超出阈值,则框320可以跟在框311后面。如果没有检测到任何活动的系统定时器周期的个数并未超出阈值,则该过程300可以结束。该过程300结束之后,在下一个系统定时器周期过程300可以重新开始。
框320可以包括确定该状态是否是“关”。如果框320确定该状态是“关”,则框340可以将该状态设为“捕获”。
如果框320确定显示器的状态不是“关”,则框330可以确定计数器是否达到第二阈值。该第二阈值是已流逝的足够数目的系统定时器周期该数目大到足以使得上述帧缓冲器具有充分的时间段来捕获图像从而响应于先前的将状态改为“捕获”的请求。如果计数不等于第二阈值,则该过程300结束。如果计数等于第二阈值,则框331将该状态设为“开”并且禁用上述图形引擎。被禁用的图形引擎的各组件可以包括参照图1B所描述的那些组件。
图4描绘了根据一个实施方式的显示器操作模式的状态图。在本示例中,变量SRD_ON可以表示准备好进入自刷新模式的指示,而变量SRD_Status则可以表示同一所捕获的图像的显示(即自刷新模式)正在进行之中。
状态“关”是指这样一种模式,其中图形处理器和显示设备如常工作以便应对图形处理活动。在状态“关”中,变量SRD_ON和SRD_Status被设为0。如果有阈值时间段没有发生下列情况,则变量SRD_ON被设为1,但SRD_Status保持为0,并且进入图像捕获状态(状态“捕获”):系统定时器周期的变化;图形处理器活动(比如三角形或多边形绘制);VBI被使用;覆盖被启用;任何鼠标活动;以及任何处理器核没有处于低功率模式中。
状态“捕获”是这样一种状态,其中定时控制器的帧缓冲器捕获图像。在捕获图像的时间段之后,接下来,变量SRD_ON保持为1,但SRD_Status被设为1,并且进入状态“开”。
状态“开”是一种自刷新显示模式状态,其中使各组件断电并且所捕获的图像重复地显示。如果上述情况中的任何哪种得到满足,则变量SRD_ON和SRD_Status被设为0,并且状态“关”跟在状态“开”后面。在从状态“开”转变到状态“关”期间,用传入的帧数据来更新上述定时控制器的帧缓冲器,并且显示面板显示来自远程帧缓冲器的图像。状态“关”允许当前的帧通过以便进行显示。
下面参照变量SRD_ON和SRD_Status描述图1A、1B的主机和图1C的定时控制器更详细的操作。当SRD_ON被设为逻辑1时,下面的活动可以发生在图1C的定时控制器180中:(1)帧缓冲器逻辑以及相关联的时钟和组件被激活;(2)被激活的帧缓冲器可以捕获全帧;(3)SRD控制逻辑将MUX从旁路模式切换成重复模式,使得自刷新逻辑用来自帧缓冲器的静态帧数据来驱动去往显示面板的输出端口;(4)SRD_Status被设为逻辑1,以指示自刷新模式正在进行中。
当SRD_Status被设为逻辑1时,软件关闭该主机的显示管道、显示引擎、各个端口、显示接口以及PLL(图1A和1B)。另外,定时控制器180(图1C)的自刷新逻辑驱动上述输出端口(比如LVDS或显示端口)以连续地显示来自本地帧缓冲器的静态帧数据。
对于状态“开”和“关”之间的转换,软件/驱动器可以让主机(比如CPU或PCH)将SRD_Status和SRD_ON设为0。另外,定时控制器180(图1C)的帧缓冲器存储每一个更新的帧,并且自刷新逻辑用来自帧缓冲器的更新的帧来驱动输出端口。在输入和输出端口之间获得定时同步之后,定时控制器180输出从接收端口(比如LVDS RX)中接收到的帧,并且禁用帧缓冲器以及相关联的时钟和内部定时发生器。然后,SRD_Status被设为0,以指示当前输入视频帧的显示。
下面的表格概括了定时控制器关于变量SRD_ON和SRD_Status的工作情况。
多路复用模 式 SRD_ON SRD_Status 状态
旁路 0 0 面板显示当前输入帧数据。
旁路 1 0 自刷新逻辑正获取新的全 帧。显示面板显示当前传入 的实况帧数据。
自刷新模式 1 1 显示面板显示来自帧缓冲 器的静态图像。传入的显示 数据可以被关闭。
自刷新模式 0 1 用传入的帧数据连续地更 新帧缓冲器。显示面板显示 来自帧缓冲器的图像。
图5描绘了根据一个实施方式的操作示例。每一个系统定时器周期,驱动器都确定各组件是否是空闲的。在501处,驱动器确定阈值数目个其中相关的系统处于空闲状态中的系统时间周期已流逝,并且该系统转变为“捕获”模式。在502处,驱动器确定让帧缓冲器捕获图像的时间段已流逝,并且该系统进入“开”模式。在503处,驱动器标识该系统是活动的并且使该系统进入“关”模式。
本文所描述的图形和/或视频处理技术可以被实现在各种硬件体系结构中。例如,图形和/或视频功能可以被集成到芯片组中。或者,也可以使用分立的图形和/或视频处理器。作为另一个实施方式,图形和/或视频功能可以由通用处理器来实现,其中包括多核处理器。在进一步的实施方式中,各种功能还可以被实现在消费者电子设备中。
本发明的各实施方式可以作为计算机程序产品来提供,该计算机程序产品可以包括一个或多个机器可读介质,这些介质上存储了机器可执行指令,当被一个或多个机器(比如计算机、计算机网络或其它电子设备)执行时,可以使一个或多个机器实现根据本发明各实施方式的操作。机器可读介质可以包括但不限于:软盘;光盘;CD-ROM(紧致盘只读存储器);磁光盘;ROM(只读存储器);RAM(随机存取存储器);EPROM(可擦式可编程只读存储器);EEPROM(电可擦式可编程只读存储器);磁卡或光卡;闪存;或适于存储机器可执行指令的其它类型的介质/机器可读介质。
附图和上面的描述给出了本发明的示例。尽管被描绘成许多全异的功能项,但是本领域技术人员应该理解,一个或多个这样的元件完全可以组合成单一的功能元件。或者,某些元件也可以被分成多个功能元件。来自一个实施方式的各个元件也可以被添加到另一个实施方式中。例如,本文所描述的各种过程的次序可以发生变化,并不限于本文所描述的方式。此外,任何流程图中的各动作不需要以所示的次序来实现,也并非所有的动作都必然要执行。此外,不依赖于其它动作的那些动作也可以与其它动作并行地执行。然而,本发明的范围决不受限于这些具体的示例。大量的变形不管有没有在说明书中明确地给出,都是可能的,比如结构、尺寸和材料使用等方面的差别。本发明的范围至少如权利要求书所给出的那样宽广。