Several aspects of the present invention include a pixel source that generates data for a rendered surface divided into multiple regions. A mapping identifies multiple memory segments that store pixel data for each area on the surface. This mapping can identify memory segments that store pixel data from a previously rendered surface pointing to unchanged areas in the rendering process. Such changed/unchanged states are tracked on a region-by-region basis. A counter can be maintained for each memory segment to track how many surfaces use the pixel data stored therein. A free memory segment pool can be maintained. Reading a surface (for example, to display a rendered surface through a display controller) includes identifying and reading such mappings to identify each memory segment storing pixel data for multiple areas of the surface, reading them, and updating counters for those memory segments being read.
【技术实现步骤摘要】
用于部分帧缓冲区更新的系统和方法本申请是申请日为2013年9月25日、申请号为201310401067.1、专利技术名称为“用于部分帧缓冲区更新的系统和方法”的专利技术专利申请的分案申请。
技术介绍
专利
:以下内容涉及图形处理、图形处理系统,如图形处理器单元(GPU),并且在示例具体方面涉及影像合成和图像生产技术。相关领域:用于存储等待被输出至显示器的数据的缓冲区通常被称为“帧缓冲区”,引发了显示一个帧时间序列中的一帧的概念,其中“帧”为一个完整的像素数据集合。在一些计算架构中,帧缓冲区还可以用作有待如被GPU进一步处理的数据源。在这种情况下,GPU可以从帧缓冲区(例如,存储图像数据的存储器中的一个位置,如位图)上读取数据,并使用该数据和其他数据一起形成一张合成图像。然后该GPU将展现整个合成图像的数据写出至输出帧缓冲区。显示控制器可以从该输出帧缓冲区上读取该合成图像并引起显示该合成图像。因此,存储整个像素数据集以展现每个可显示帧。作为一个更加具体的示例,可以设置一个常规渲染和显示系统以执行三倍缓冲方法,其中,预留了存储器的三个部分,每个部分能够保存一个全分辨率可显示帧(例如,缓冲区0、1和2),并且被安排在一条翻转链(flipchain)内。例如,图形处理器可以将有待显示的连续帧写到缓冲区0、1和2并从0重新开始。类似地,在再次返回读取缓冲区0之前,显示控制器读取缓冲区0、1和2。当缓冲区0、1和2中的任一个或多个之间像素数据相同时,在该像素数据出现的所有缓冲区内重复该像素数据。
技术实现思路
在根据本披露的实现方式中,展现多个渲染表面的数据(例如,有待显 ...
【技术保护点】
1.一种存储用于渲染表面的区域的像素图像数据的方法,包括:提供多个渲染表面,每个渲染表面包括像素图像数据的多个区域;以及针对每个渲染表面:确定所述多个区域中的哪些区域具有与来自先前的渲染表面的像素图像数据的相应的对应区域中的值不同的像素图像数据值、以及所述多个区域中的哪些区域具有与来自所述先前的渲染表面的像素图像数据的相应的对应区域中的值相同的像素图像数据值,其中用于所述先前的渲染表面的每个区域的像素图像数据被存储在相应的存储器区段之中;响应于确定区域具有与来自所述先前的渲染表面的像素图像数据的所述相应的对应区域中的值不同的像素图像数据值,将用于所述区域的所述像素图像数据存储到所述存储器的相应的存储器区段之中,并且存储指向用于所述区域的所述存储器区段的参引项;以及响应于确定区域具有与来自所述先前的渲染表面的像素图像数据的所述相应的对应区域中的值相同的像素图像数据值,存储指向用于存储用于所述先前的渲染表面的所述区域的所述像素图像数据的所述存储器区段的参引项。
【技术特征摘要】
2012.09.06 US 61/697,7851.一种存储用于渲染表面的区域的像素图像数据的方法,包括:提供多个渲染表面,每个渲染表面包括像素图像数据的多个区域;以及针对每个渲染表面:确定所述多个区域中的哪些区域具有与来自先前的渲染表面的像素图像数据的相应的对应区域中的值不同的像素图像数据值、以及所述多个区域中的哪些区域具有与来自所述先前的渲染表面的像素图像数据的相应的对应区域中的值相同的像素图像数据值,其中用于所述先前的渲染表面的每个区域的像素图像数据被存储在相应的存储器区段之中;响应于确定区域具有与来自所述先前的渲染表面的像素图像数据的所述相应的对应区域中的值不同的像素图像数据值,将用于所述区域的所述像素图像数据存储到所述存储器的相应的存储器区段之中,并且存储指向用于所述区域的所述存储器区段的参引项;以及响应于确定区域具有与来自所述先前的渲染表面的像素图像数据的所述相应的对应区域中的值相同的像素图像数据值,存储指向用于存储用于所述先前的渲染表面的所述区域的所述像素图像数据的所述存储器区段的参引项。2.根据权利要求1所述的方法,进一步包括对与每个存储被确定与所述渲染表面和所述先前的渲染表面中相同的像素图像数据区域的存储器区段相关联的相应计数进行增值。3.根据权利要求2所述的方法,进一步包括响应于消耗来自每个存储器区段的所述像素图像数据,对与所述存储器区段相关联的相应计数进行减值。4.根据权利任意前述权利要求所述的方法,其中指向所述存储器区段的所述参引项包括所述相应的存储器区段的存储器地址。5.一种被配置为存储用于渲染表面的区域的像素数据的计算机图形系统,包括:像素数据源,所述像素数据源用于提供各自具有像素数据的多个区域的渲染表面,其中所述像素数据源被配置为:针对每个渲染表面,确定用于所述渲染表面的像素数据的所述多个区域中的哪些区域具有与来自先前的渲染表面的像素数据的相应的对应区域中的值不同的像素数据值、以及所述多个区域中的哪些区域具有与来自所述先前的渲染表面的像素数据的相应的对应区域中的数据相同的像素数据值,其中用于所述先前的渲染表面的每个区域的像素数据被存储在相应的存储器区段之中;响应于确定区域具有与来自所述先前的渲染表面的像素数据的所述相应的对应区域中的值不同的像素数据值,将用于所述区域的所述像素数据存储到所述存储器的相应的存储器区段之中,并且存储指向用于所述区域的所述存储器区段的参引项;以及响应于确定区域具有与来自所述先前的渲染表面的像素数据的所述相应的对应区域中的值相同的像素数据值,存储指向用于存储用于所述先前的渲染表面的所述区域的所述像素数据的所述存储器区段的参引项。6.根据权利要求5所述的计算机图形系统,其中所述系统被配置为对与每个存储被确定与所述渲染表面和所述先前的渲染表面中相同的像素数据区域的存储器区段相关联的相应计数进行增值。7.根据权利要求6所述的计算机图形系统,其中所述系统被配置为响应于消耗来自每个存储器区段的所述像素数据,对与所述存储器区段相关联的相应计数进行减值。8.根据权利要求5所述的计算机图形系统,其中所述像素源包括3-D图形处理器和视频编码器中的一项或多项。9.根据权利要求5-8中任一项所述的计算机图形系统,所述计算机图形系统还包括用于读取用于所选择的渲染表面的像素图像数据值的像素数据汇,所述像素数据汇被配置为:读取所选择的所述渲染表面的每个区域与指向存储用于所述区域的像素图像数据的存储器区段的参引项之间...
【专利技术属性】
技术研发人员:J·A·梅特卡夫,
申请(专利权)人:想象技术有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。