用于选择性显示刷新的方法和设备的制造方法

文档序号:8323979阅读:351来源:国知局
用于选择性显示刷新的方法和设备的制造方法
【专利说明】用于选择性显示刷新的方法和设备
[0001]优先权
[0002]本申请是下列专利申请的非临时申请并要求其优先权:2012年9月5日提交的标题为 “METHOD AND DEVICE FOR SELECTIVE DISPLAY REFRESH” 的美国临时专利申请号61/697,261 和 2013年9 月 5 日提交的标题为“METHOD AND DEVICE FOR SELECTIVE DISPLAYREFRESH”的美国专利申请号14/018,869,这两个专利申请的公开特此通过引用被明确地并入。
[0003]本公开的领域
[0004]本公开涉及用于提供在用于显示的视觉数据的帧(例如图形一其包括视频数据一的帧)的处理期间的效率的方法和设备。本公开更具体地涉及用于选择性地更新帧的被更新的片段的方法和设备。
[0005]背景
[0006]双缓冲或基于交换链的OS图形接口使用软件和/或硬件加速混合和帧缓冲交换链的组合来产生待显示的最终帧缓冲区。交换链是用于向用户显示帧的一组缓冲区。每当应用显现新的帧用于显示时,在交换链中的下一缓冲区就取代当前显示的缓冲区(屏幕/前置缓冲区)。这个过程被称为交换或反转。因为图形处理器简单地使用表面的指针来代表前置缓冲区,所以简单的指针改变是将后置缓冲区设置为前置缓冲区的所有所需的东西。对于每个缓冲区反转,整个缓冲区被传递到显示控制器用于输出或显示。
[0007]然而在很多实例中,屏幕的较大部分不在连续的帧之间改变。因此对于这个较大部分,帧的读取、处理和公布/输出导致在显示设备(面板)上显现的内容中无改变。因此,在向显示设备提供帧时扩展的处理能力和能量(功率)的一部分未能导致对那个努力的可以感觉到的奖励。
[0008]在2004年公布的视频电子标准协会(VESA)数字分组视频链接(DVPL)标准提到有部分屏幕刷新的可能性,其中未改变部分不刷新,但该标准没有提供关于这将如何实现的细节或解释。
[0009]因此,存在对提供新的帧数据到显示设备的传输而不需要整个帧的传输的改进的方法和装置。
[0010]附图简述
[0011]图1是示出在本发明的某些方面的实施方案中的基于交换链的图形接口的架构的图;
[0012]图2是示出在本发明的某些方面的实施方案中的使用网格系统和写检测功能的基于交换链的图形接口的图;
[0013]图3是示出在本发明的某些方面的实施方案中的示例性缓冲区和由此保持的帧以及其通过图形接口的处理的图;以及
[0014]图4是示出在本发明的某些方面的实施方案中的由图1的架构执行的过程的流程图。
[0015]实施方案的详细描述
[0016]在示例性和非限制性实施方案中,在提供图像帧的方法中体现方面。方法包括输出第一帧的相对于一个或多个其它帧已改变的部分而不输出第一帧的相对于一个或多个其它帧未改变的部分。如果渲染引擎在每个部分的边界内的位置已写到帧缓冲区,则该部分被确定为有所改变。这个输出响应于第一帧的一个或多个部分相对于一个或多个其它帧已改变而完成。
[0017]简要地,在另一示例性实施方案中,提供显示刷新设备,其包括:操作来将图像信息写到一个或多个存储缓冲区的渲染引擎;多个存储缓冲区,每个存储缓冲区具有多个部分;多个存储缓冲区中的每个的多个部分中的每个的改变状态的指示器,如果渲染引擎在每个部分的边界内的位置已写到帧存储缓冲区,则该部分被确定为有所改变;以及显示控制器,其操作来解释指示器以选择性地从多个存储缓冲区的第一存储缓冲区读出部分。
[0018]在另一示例性实施方案中,提供了计算机可读介质,其上具有非临时指令。当指令由处理器解释时,它们使处理器:确定第一帧的一个或多个部分相对于一个或多个其它帧是否已改变;确定第一帧的一个或多个部分相对于一个或多个其它帧是否未改变,如果植染引擎在每个部分的边界内的位置已写到帧缓冲区,则该部分被确定为有所改变;以及输出第一帧的相对于一个或多个其它帧已改变的部分而不输出第一帧的相对于一个或多个其它帧未改变的部分。
[0019]在又一示例性实施方案中,提供显示内容的方法。该方法包括从接口接收视频信号数据,包括部分帧,部分帧是在帧缓冲区中的帧的那些部分,其中渲染引擎在部分的边界内的位置已写到帧缓冲区;以及将部分帧添加到另一帧的部分以创建组合帧。
[0020]图1示出用于向显示器(面板18)提供视频信息的架构。架构示出基于交换链的图形接口。接口包括改变确定器10、渲染引擎12、存储器14、显示控制器16和面板18。
[0021]渲染引擎12是将图像的规范转换成表示像素的数据的软件或硬件。在一个例子中,渲染引擎12不同于存储控制器。在另一实施方案中,渲染引擎12是也包括存储控制器的集成电路的子系统。显示控制器16是负责在计算或游戏系统中产生视频信号的集成电路。术语“显示控制器”的使用并不意欲排除显示处理器或图形处理单元。实际上,显示控制器16意欲包括能够从缓冲区20读出图像信息并引导它以显示在面板18上的任何软件和/或硬件。面板18是允许图像的像素的用户感知的任何显示设备。
[0022]“交换链”指位于存储器14内的多个虚拟帧缓冲区20。虚拟帧缓冲区20的序列用于帧率稳定化和几个其它功能。交换链被显示为存在于图形存储器中,但它也可存在于系统存储器中。在没有交换链的情况下,扫描残迹和/或不完整的图像更新渲染可产生。很多图形应用编程接口(API)需要交换链的存在和利用。
[0023]被称为屏幕缓冲区的帧缓冲区20之一是由显示控制器16读取以输出到面板18的缓冲区20。每当新帧被显示时,在交换链中的第一后置缓冲区取代屏幕缓冲区。这被称为显现或交换。一旦被显现,屏幕缓冲区就返回到交换链的后面用于进一步处理。缓冲区20的这个运动不是空间运动,而更确切地是概念运动和通过指定的运动。通过在显示控制器16中的参考来实现帧缓冲区20被指定为屏幕缓冲区。通过在显示控制器16中编程来实现改变,其中缓冲区20被指定为屏幕缓冲区。显示控制器16改变它指定哪个帧缓冲区20作为屏幕缓冲区,并依赖于该缓冲区20来使下一帧被显现到面板18。一旦帧从屏幕缓冲区20取回且渲染引擎12指示在交换链中的下一缓冲区20准备好,则屏幕缓冲区的内部指定就切换到交换链中的下一缓冲区20。图3示出在三缓冲区链中的缓冲区20的概念运动。在图3的每行中,最右边的缓冲区是指定的平面缓冲区。
[0024]在本公开的实施方案中,每个帧且因此每个缓冲区经由“掩码”分割(虚拟地)成有限的子区段。在本公开中,掩码子元素是矩形。图2示出在缓冲区20上的帧的概念子分区。作为例子,图2示出分成24个子区段22的每个帧。掩码假定提供具有相同的尺寸和位置的子区段22的每个缓冲区20。
[0025]在三缓冲区系统中,每个缓冲区操纵每第三个帧。数据源11引导渲染引擎以将像素写到缓冲区20。可以是处理器执行软件或可以是专用硬件的改变确定器10确定哪些像素(或如下讨论的存储缓冲区20的哪些部分)对于相对于存储缓冲区20上次被使用而渲染的当前帧被写入。(在三缓冲区系统中,这将是在当前帧之前的三个帧。)在另一实施方案中,改变确定器10确定在待渲染的当前帧和三个以前渲染的帧之间哪些像素(或部分)已改变。
[0026]在一个实施方案中,数据源11提供渲染引擎12只写入当前帧的相对于对缓冲区20的以前写入已改变(或在最后三个帧内已改变)的像素。虽然对缓冲区20的写入并不总是已知指示改变,但是任何写入被假设指示改变。
[0027]当像素经由渲染引擎12渲染到当前后置缓冲区20时,通过改变确定器10做出关于当前后置缓冲区20的哪些部分(子区段22)(图2)由渲染引擎12写入的确定。这个信息存储在存储器14中
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1