CN101866476B - 生成和解析图形处理流水线内的像素值 - Google Patents
生成和解析图形处理流水线内的像素值 Download PDFInfo
- Publication number
- CN101866476B CN101866476B CN201010167792.3A CN201010167792A CN101866476B CN 101866476 B CN101866476 B CN 101866476B CN 201010167792 A CN201010167792 A CN 201010167792A CN 101866476 B CN101866476 B CN 101866476B
- Authority
- CN
- China
- Prior art keywords
- pixel value
- resolution
- graphics
- memory
- piplined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 74
- 230000015654 memory Effects 0.000 claims abstract description 121
- 230000004044 response Effects 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 30
- 238000012805 post-processing Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 8
- 238000003672 processing method Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000009877 rendering Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4023—Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/40068—Modification of image resolution, i.e. determining the values of picture elements at new relative positions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
本发明提供生成和解析图形处理流水线内的像素值。图形处理装置2包括图形处理流水线8。图形处理流水线8包括可编程硬件段12、流水线存储器22和写回电路16。可编程解析电路18由在每个流水线内的可编程硬件段12提供并且响应于一个或多个图形程序指令以读取由像素值生成电路18(其由可编程硬件段12提供)在流水线存储器22内生成的以第一分辨率的像素值并且对这些像素值执行解析操作以便生成以第二分辨率的像素值。这些以第二分辨率的像素值然后写回到帧缓冲存储器6。
Description
技术领域
本发明涉及图形处理系统。更特别地,本发明涉及在图形处理流水线内提供的处理电路。
背景技术
提供例如图形处理单元(GPU)等图形处理系统是已知的,其包括图形处理流水线(其具有用于执行例如提取输入数据、处理输入数据和将输出数据写回到帧缓冲存储器等功能的多个处理段)。图形处理流水线可典型地提供有一些流水线存储器(例如,方块存储器),用于在将像素值写回到帧缓冲处理器(其中组装完整帧的像素值)之前支持图形处理流水线内的这样的操作。
这样的图形处理系统的领域内执行解析(resolving)操作(其中输入像素值的分辨率与输出像素值的分辨率不同)也是已知的。这样的解析操作的示例是下降采样(down-sampling),其中图像以比它将显示的分辨率高的分辨率生成,因此被下降采样到显示分辨率。典型地这样的操作要求图像处理流水线首先生成以较高分辨率的像素值的帧并且将这些存储在帧缓冲存储器内。这些高分辨率像素值然后从帧缓冲存储器读回并且在显示之前将较低分辨率像素值写入帧缓冲存储器之前经受下降采样。以高分辨率的像素值写出到帧缓冲存储器,接着将这些像素值读回到图像处理流水线使得它们可被下降采样并且以较低分辨率写出,这在存储器带宽和能量消耗方面是浪费的。
一些图形处理流水线是已知的,其提供图形处理流水线内的固定功能性的下降采样器。这样的图形处理器的示例是由英国剑桥ARM有限公司设计的Mali图形处理单元。
随着伴随有要求降低功率消耗和增加运行速度的更高级的图形处理要求的出现,当使用支持高级图形处理所需要的可编程解析操作时将数据以第一分辨率写到帧缓冲存储器然后将该数据从帧缓冲存储器中读回用于转换到第二分辨率同时还要避免存储器带宽和能量消耗限制的要求是难以容许的。
发明内容
从一个方面看,本发明提供用于生成待存储在帧缓冲存储器中的像素数据值的帧的图形处理装置,所述图形处理装置包括:
图形处理流水线,其包括:
(i)响应于一个或多个第一输入参数以生成所述帧内的区域的以第一分辨率的像素值的像素值生成电路;
(ii)耦合于所述处理流水线并且配置成存储以所述第一分辨率的所述像素值的流水线存储器;和
(iii)耦合于所述流水线存储器并且配置成将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器的写回电路;其中
所述图形处理流水线还包括:
(iv)响应于一个或多个图形程序指令和一个或多个第二参数从所述流水线存储器以所述第一分辨率读取所述像素值并且执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由所述写回电路写到所述帧缓冲存储器的以第二分辨率的像素值的可编程解析电路,所述第二分辨率与所述第一分辨率不同。
本技术认识到,在许多情况下,待执行的分辨率改变解析操作将要求作为输入的像素值是输出像素值的本地的。从而,当较高分辨率像素值生成并且存储在图形处理流水线的流水线存储器内时,在许多现实世界解析操作中,生成不同分辨率的输出像素值所需要的输入像素值将已经在流水线存储器内存在并且不需要对帧缓冲存储器的插入写回和从帧缓冲存储器的读取。本技术认识到图形处理流水线的能力可以扩展到允许它既生成以第一分辨率的在流水线存储器中的像素值并且然后使用由一个或多个图形程序指令指定的解析操作进一步处理这些在流水线存储器中的像素值以生成以不同于第一分辨率的第二分辨率的输出像素值。然后这些输出像素值可以由写回电路写回到帧缓冲存储器。
将意识到第一分辨率和第二分辨率一般意义上是不同的。然而,在本技术的许多有用的实施例中,第二分辨率低于第一分辨率。
在第二分辨率低于第一分辨率的上下文中,解析电路可读取以第一分辨率的多个像素值作为对于解析操作的输入以形成以第二分辨率的一个或多个像素值。
由一个或多个图形程序指令指定并且将分辨率改变结合到由像素值生成电路在流水线存储器中生成和存储的像素值的可编程解析操作可以采取多种不同形式,包括:例如多采样抗锯齿(anti-aliasing)操作;多采样高动态范围渲染操作;线性混合操作;延迟阴影化操作;格式转换操作;YUV-转换操作;和像素值压缩。
像素值生成电路将典型地包括可编程图形处理电路使得它能够支持不同类型的像素值生成。在该上下文中,像素值生成电路和可编程解析电路可设置成对流水线存储器内的数据值执行各自的图形处理线程而不要求写回和从帧缓冲存储器读取。
像素值生成电路和可编程解析电路可提供为独立的电路元件。然而,如本技术领域内那些技术人员将意识到的,如果该电路至少部分用共享的可编程图形处理电路构成则它常常是更有效率的。作为示例,可能需要像素值生成电路和可编程解析电路二者以执行加法运算并且如果加法器硬件在像素值生成电路和可编程解析电路之间共享则它将是效率高的。像素值生成电路和可编程解析电路可包括相同的物理电路模块(其被不同地编程以充当像素值生成电路和可编程解析电路),这也是可能的。
解析操作的运行可通过在具有第二分辨率的像素值写到帧缓冲存储器之前使用可编程图形处理电路执行一个或多个图形处理线程实现。从而,在图形处理流水线内生成并且存储在流水线存储器中的像素值进一步由解析操作处理以使用由该图形处理流水线执行的图形处理线程形成不同的分辨率输出而不要求写回到帧缓冲存储器。
当解析操作支持多渲染目标输入和多渲染目标输出中的至少一个时,本技术的效用进一步增强。当支持这样的多渲染目标操作时,解析电路的可编程性质具有提高的能力以执行现实世界期望的解析操作。
在一些实施例中,解析操作可用于接收多个输入参数并且生成单一输出参数,由此充当多到一类型的处理操作。解析操作常常是该形式并且将由这些技术实现的优势的大部分可通过支持该类型的操作而实现。
将意识到图形处理流水线将典型地包括指令解码器,其响应于图形程序指令以执行它的处理操作。根据本技术,该指令解码器可修改成控制操作,其用于:(i)生成以所述第一分辨率的所述像素值;(ii)存储以所述第一分辨率的所述像素值;(iii)从所述流水线存储器读取以所述第一分辨率的所述像素值和执行所述解析操作以生成以第二分辨率的像素值;以及(iv)将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器。
将意识到流水线存储器可以采用多种不同方式形成。在一些实施例中流水线存储器可存储指令信息以及像素值。流水线存储器可专用于支持某些区域的像素值,它们正采用连续方式被处理(例如在基于方块的图形处理单元内),或可以更灵活地提供作为将由图形处理流水线使用的随机存取存储器资源以适当地用于当时执行的特定操作。然而,当流水线存储器专用于存储由像素值生成电路和可编程解析电路生成的像素值时可提高效率,因为这易于允许流水线存储器和图形处理流水线之间更直接的耦合。
从另一个方面来看,本发明提供用于生成待存储在帧缓冲存储器中的像素数据值的帧的图形处理装置,所述图形处理装置包括:
图形处理流水线部件,其包括:
(i)像素值生成部件,响应于一个或多个第一输入参数,用于生成在所述帧内的区域的以第一分辨率的像素值;
(ii)耦合于所述处理流水线用于存储以所述第一分辨率的所述像素值的流水线存储器部件;和
(iii)耦合于所述流水线存储器用于将存储在所述流水线存储器部件中的像素值写到所述帧缓冲存储器的写回部件;其中
所述图形处理流水线部件还包括:
(iv)可编程解析部件,响应于一个或多个图形程序指令和一个或多个第二参数,用于从所述流水线存储器部件读取以所述第一分辨率的所述像素值和用于执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由所述写回部件写到所述帧缓冲存储器的以第二分辨率的像素值,所述第二分辨率与所述第一分辨率不同。
从另外的方面来看,本发明提供在图形处理流水线内生成待存储在帧缓冲存储器中的像素数据值的帧的图形处理方法,所述图形处理方法包括步骤:
(i)响应于一个或多个第一输入参数,生成所述帧内的区域的以第一分辨率的像素值;
(ii)在所述图形处理流水线内的流水线存储器内存储以所述第一分辨率的所述像素值;
(iii)响应于一个或多个图形程序指令和一个或多个第二参数,从所述流水线存储器读取以所述第一分辨率的所述像素值和执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由所述写回部件写到所述帧缓冲存储器的以第二分辨率的像素值,所述第二分辨率与所述第一分辨率不同;以及
(iv)将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器。
从另外的方面来看,本发明提供存储用于控制图形处理装置执行图形处理方法的计算机程序的计算机程序存储介质,所述图形处理方法在图形处理流水线内生成待存储在帧缓冲存储器中的像素数据值的帧,所述图形处理方法包括步骤:
(i)响应于一个或多个第一输入参数,生成所述帧内的区域的以第一分辨率的像素值;
(ii)在所述图形处理流水线内的流水线存储器内存储以所述第一分辨率的所述像素值;
(iii)响应于一个或多个图形程序指令和一个或多个第二参数,从所述流水线存储器读取以所述第一分辨率的所述像素值和执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由所述写回部件写到所述帧缓冲存储器的以第二分辨率的像素值,所述第二分辨率与所述第一分辨率不同;以及
(iv)将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器。
本发明的上述和其他的目的、特征和优势将从说明性实施例(其要连同附图一起阅读)的下列详细说明是明显的。
附图说明
图1示意地图示耦合于存储器的图形处理装置;
图2示意地图示生成流水线存储器内的像素值然后在到帧缓冲器的写回操作之前对流水线存储器内的那些像素值执行解析操作的操作;
图3是示意地图示根据图2的处理图形的方法的流程图;以及
图4示意地图示流水线存储器的使用以执行延迟阴影化(deferedshading)操作。
具体实施方式
图1图示图形处理单元,其包括并行设置的多个图形处理流水线8。图形处理单元2耦合于主存储器4,其将像素值的帧存储在帧缓冲存储器6中。主存储器4还存储顶点数据和纹理数据用于在生成代表图形图像的像素值以及图形处理单元程序指令中作为输入。
在图1中图示的图形处理流水线8每个包括多个流水线段。这些段包括提取段(fetchstage)10、可编程硬件段12和写回段16。可编程硬件段12可以由适当的图形程序指令配置以提供像素值生成电路14和解析电路18。可编程硬件段12支持多线程处理并且因此可以既起这些功能又起其他功能。图形指令解码器20响应于从主存储器4提取的图形程序指令以控制流水线段12、14以执行期望的图形处理操作。图形程序指令可以包括组合的生成程序,其用于控制可编程硬件段12以生成以第一分辨率的像素值,它们然后存储在流水线存储器22中之后解析操作控制可编程硬件段12以读取那些像素值并且执行解析操作以生成以第二分辨率的像素值,它们然后由写回段16(直接或在首先存储在流水线存储器22中之后)写回到帧缓冲存储器6。
执行像素生成程序的可编程硬件段12(即像素生成电路14)用于从主存储器4读取的顶点数据和纹理数据生成像素值。这些像素值存储在流水线存储器22内。此刻存储的生成的像素值具有第一分辨率(例如高分辨率)。执行如由图形指令解码器20控制的解析程序的可编程硬件段12然后从流水线存储器22读取以第一分辨率的像素值并且对这些像素值执行解析操作。解析操作可包括多采样抗锯齿操作、多采样高动态范围渲染操作、线性混合操作、延迟阴影化操作、格式转换操作、YUV转换操作和/或像素值压缩(例如当执行渲染到纹理时和当随后纹理化使用那个数据时,帧缓冲器可以采用压缩的形式以节省带宽)中的一个或多个。上文是执行的解析操作的示例并且其他这样的操作对于本技术领域内技术人员将是熟悉的。由解析程序执行的解析操作的结果是以第二分辨率(其不同于第一分辨率)的像素值。这些像素值可写回到流水线存储器22或直接传送到写回电路16。写回电路16将以第二分辨率的像素值写到帧缓冲器6用于后续显示。
解析操作的示例是抗锯齿操作,其中图形对象的边缘在抗锯齿操作(其中以第一高分辨率的四个像素值读取并且用于生成以较低第二分辨率的每个像素值)中平滑。从而,存在由执行解析程序的可编程硬件段12(即解析电路18)执行的四到一的下降采样连同抗锯齿操作。解析操作可以是与上述多到一的操作相比不同的形式,这是可能的。
解析操作利用在流水线存储器22中的由像素值生成操作产生的生成像素值作为它的输入而不要求那些像素值写回到帧缓冲存储器6然后通过图形处理流水线8读回以执行解析操作。当图形处理单元正生成有关的图像的部分的较高分辨率代表(或至少不同的分辨率代表)并且将该代表存储在流水线存储器22内时,根据本技术执行的解析操作识别出数据要求常常是本地的使得对解析操作的输入将已经存在在流水线存储器22内。由于解析操作实际上不必访问除了那些在流水线存储器22内已经存在的之外的像素值,不需要对帧缓冲存储器6的插入写回,因为能够使用来自那个帧缓冲器的任何地方的输入像素值以便执行解析操作的灵活性实际上是不必要的。可编程硬件段12从而可以执行多种具有减小的存储器带宽和能量消耗的解析操作。
图形处理电路14和可编程解析电路18实际上可由采用可编程硬件段12形式的共享硬件提供。该可编程硬件段12由图形指令解码器20响应于接收的图像程序指令生成的控制信号控制。可编程硬件段12可以执行图形处理线程序列以首先生成然后后处理流水线存储器22内的像素值。
图2示意地图示执行的处理操作。例如定义顶点24和纹理26的数据等输入参数从主存储器4读入图形处理流水线8。采用可编程硬件段12形式的像素生成电路然后生成像素值,它们在基于一个方块接着一个方块地存储进入流水线存储器22。将意识到该示例涉及基于方块的图形处理单元。
由像素生成电路14(如上文提供的)生成的像素值当它们写入流水线存储器22时具有第一分辨率(例如最终要求的分辨率的四倍)。解析电路18(由可编程硬件段12的程序控制操作提供)然后读取这些以第一分辨率的像素值作为它的输入并且使它们经受解析操作,解析操作例如之前讨论的那些中的一个。在该示例中,所得的被解析的像素值然后以第二分辨率(例如以第一分辨率的四分之一)写回到流水线存储器22。写回过程然后将以第二分辨率(期望的下降采样的分辨率)的像素值写出到帧缓冲存储器6,来自其中的像素值可用于驱动以期望分辨率的适当显示器。
图3是示意地图示上文描述的处理的流程图。在步骤28,从主存储器4提取顶点和纹理数据。在步骤30,像素生成电路14将由顶点和纹理数据定义的图形对象栅格化以形成以期望的分辨率的四倍(4x)的像素值,其中这些像素值正以该4x分辨率写入流水线存储器22。步骤32然后从流水线存储器22读取以4x分辨率的像素值作为解析电路18的输入并且步骤34对这些输入像素值执行解析操作以产生以期望的1x分辨率的像素值。在步骤36,以该1x分辨率的像素值写出到帧缓冲存储器6。
步骤38确定是否还有任何对应于需要处理的图形数据的区域的方块。如果有还有要处理的方块,那么步骤40选择下一个方块,并且处理回到步骤28,否则处理结束。
图4示意地图示正写到流水线存储器28和从流水线存储器28读取的作为延迟阴影化操作的部分的数据。第一渲染操作(图形处理线程)用于在流水线存储器22中写以4x分辨率的像素值42的区域。第二渲染操作然后用于生成在流水线存储器22内以该4x分辨率的像素值44的第二区域。上文的两种图形处理操作可根据图形处理流水线8的能力连续地或并行执行。
在处理中的下一段是像素值42、44的区域都读取作为输入并且用于计算颜色值以便使像素值46的颜色缓冲区仍然以4x分辨率。最终,执行解析操作,其读取在颜色缓冲器46内以4x分辨率的像素值作为输入并且生成以1x分辨率的像素值48的缩小尺寸的输出区。像素值48的缩小尺寸区域写回到帧缓冲存储器6。
在图4中图示的缩小尺寸操作是可由解析电路14执行的许多不同的可编程解析操作中的一个。
在一般水平,上文描述的技术可以视为将采用直接从流水线存储器22的解析操作的形式的新的可编程能力加入图形处理流水线8,其用于解决例如存储器带宽和存储器存取能量消耗等许多问题。这样,改变像素值的分辨率的解析操作可以在写回之前添加以便实现生成的像素值的后处理而不要求对帧缓冲存储器的插入写回。解析操作可以包括例如,具有在下降采样之前应用于每个样本的具有色调映射的多样本缓冲器解析,由此产生高动态范围渲染的提高的抗锯齿结果。
控制该新的硬件的一种方法是通过用新的阴影化器类型和新的内建变量扩展OpenGLES阴影化语言。从而,对该新的硬件的支持可配备在现有的阴影化器编程模型内。该OpenGLES接口可以用新的阴影化器类型(其不附加到程序对象而附加到帧缓冲器对象)扩展。
在基于方块的图形处理单元内的像素值的方块(如存储在流水线存储器22内)写回到帧缓冲存储器6之前,可以执行许多图形处理线程的重调度。这些重调度的图形处理线程中的每个然后可以产生将写回到帧缓冲存储器6的物理像素。编程模型可以是多到一的模型,其中多样本作为参数传送进入到这些重调度的图形处理线程并且单个参数写回到帧缓冲存储器6。到这些重调度的图形处理线程的输入和来自这些重调度的图形处理线程的输出都可形成以便支持多渲染目标,从而提高该技术的使用的灵活性。
引入以支持解析电路14的控制的新的阴影化器类型可以是现有的片段阴影化器的变体。该新的阴影化器类型可具有一组内建变量:“float2gl_SamplePosition[]”、“float4gl_SampleColor[]”、“intgl_SampleCount”。
这样形成阴影化器类型为已经内建的片段阴影化器特征(例如纹理等)提供准备好的支持,其可对包括伽玛校正的操作有用。新的阴影化器类型通过引入使阴影化器附加到帧缓冲器对象的机制扩展现有阴影化器类型。因此,本技术像这样变换机制:
-渲染到4xMSAA(glBindFrameBuffer,glDrawTexture)
-将4xMSAA解析到无MSAA(glCopyTexSubImage2D)
-使用无MSAA作为纹理(glBindTexture)
到此:
-内部地渲染到4xMSAA,但是直接解析(glBindFrameBuffer,glDrawTexture)
-使用无MSAA作为纹理(glBindTexture)
这暗示具有高于外部格式的精确度的纹理的内部格式,并且去除明确的解析传递。
为了添加多渲染目标支持到输入,在上文的机制中内建的样本位置和样本颜色可扩展到二维阵列和第四内建添加的“intgl_SampleBufferCount”,其指示之前阵列的第二维度的方向。多渲染目标支持使例如延迟照明等机制能够明确地执行。为了支持渲染到ETCDXT作为特征,在整数上的逐位操作可添加至图形处理流水线8的处理能力。
尽管本发明的说明性实施例在本文中已经参考附图详细描述,但是要理解本发明不限于那些精确的实施例,并且各种改变和改动可以由本领域内技术人员在其中实现而不偏离附上的权利要求限定的本发明的范围和精神。
Claims (13)
1.一种用于生成待存储在帧缓冲存储器中的像素数据值的帧的图形处理装置,所述图形处理装置包括:
图形处理流水线,其包括:
(i)响应于一个或多个第一输入参数以生成所述帧内的区域的具有第一分辨率的像素值的像素值生成电路;
(ii)耦合于所述处理流水线并且配置成存储具有所述第一分辨率的所述像素值的流水线存储器;和
(iii)耦合于所述流水线存储器并且配置成将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器的写回电路;其中
(iv)响应于一个或多个图形程序指令和一个或多个第二参数从所述流水线存储器读取具有所述第一分辨率的所述像素值并且执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由所述写回电路写到所述帧缓冲存储器的具有第二分辨率的像素值的可编程解析电路,所述第二分辨率与所述第一分辨率不同,
其中具有所述第一分辨率的所述帧内的区域由第一数量的像素所代表,并且具有所述第二分辨率的所述帧内的区域由第二数量的像素所代表。
2.如权利要求1所述的图形处理装置,其中所述第二分辨率低于所述第一分辨率。
3.如权利要求2所述的图形处理装置,其中所述可编程解析电路读取具有所述第一分辨率的多个像素值作为所述解析操作的输入以形成一个或多个具有所述第二分辨率的像素值。
4.如权利要求2所述的图形处理装置,其中所述解析操作是以下中的一个或多个:
多采样抗锯齿操作;
多采样高动态范围渲染操作;
线性混合操作;
延迟阴影化操作;
格式转换操作;
YUV转换操作;和
像素值压缩。
5.如权利要求1所述的图形处理装置,其中所述像素值生成电路包括可编程图形处理电路,并且所述像素值生成电路和所述可编程解析电路执行各自的图形处理线程。
6.如权利要求5所述的图形处理装置,其中所述像素值生成电路和所述可编程解析电路共享所述可编程图形处理电路中的至少一部分。
7.如权利要求6所述的图形处理装置,其中所述可编程图形处理电路在软件控制下配置成充当所述像素值生成电路或充当所述可编程解析电路。
8.如权利要求5所述的图形处理装置,其中一个或多个图形处理线程由所述可编程图形处理电路在具有所述第一分辨率的所述像素值上执行以执行所述解析操作以生成具有所述第二分辨率的所述像素值,之后具有所述第二分辨率的像素值写到所述帧缓冲存储器。
9.如权利要求1所述的图形处理装置,其中所述解析操作支持以下中的至少一个:
多渲染目标输入;和
多渲染目标输出。
10.如权利要求1所述的图形处理装置,其中所述解析操作接收多个输入参数并且生成单个输出参数。
11.如权利要求1所述的图形处理装置,其中所述图形处理流水线包括指令解码器,其响应于组合的生成和解析图形指令以控制所述图形流水线以:
(i)生成具有所述第一分辨率的所述像素值;
(ii)存储具有所述第一分辨率的所述像素值;
(iii)从所述流水线存储器读取具有所述第一分辨率的所述像素值和执行所述解析操作以生成具有第二分辨率的像素值;和
(iv)将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器。
12.如权利要求1所述的图形处理装置,其中所述流水线存储器专用于存储由所述像素值生成电路和所述可编程解析电路生成的像素值。
13.一种在图形处理流水线内生成待存储在帧缓冲存储器中的像素数据值的帧的图形处理方法,所述图形处理方法包括步骤:
(i)响应于一个或多个第一输入参数,生成所述帧内的区域的具有第一分辨率的像素值;
(ii)在所述图形处理流水线内的流水线存储器内存储具有所述第一分辨率的所述像素值;
(iii)响应于一个或多个图形程序指令和一个或多个第二参数,从所述流水线存储器读取具有所述第一分辨率的所述像素值和执行由所述图形程序指令和所述一个或多个第二参数指定的解析操作以生成待由写回部件写到所述帧缓冲存储器的具有第二分辨率的像素值,所述第二分辨率与所述第一分辨率不同;以及
(iv)将存储在所述流水线存储器中的像素值写到所述帧缓冲存储器,
其中具有所述第一分辨率的所述帧内的区域由第一数量的像素所代表,并且具有所述第二分辨率的所述帧内的区域由第二数量的像素所代表。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0906691.1 | 2009-04-17 | ||
GB0906691.1A GB2469526B (en) | 2009-04-17 | 2009-04-17 | Generating and resolving pixel values within a graphics processing pipeline |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101866476A CN101866476A (zh) | 2010-10-20 |
CN101866476B true CN101866476B (zh) | 2016-04-27 |
Family
ID=40774602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010167792.3A Active CN101866476B (zh) | 2009-04-17 | 2010-04-16 | 生成和解析图形处理流水线内的像素值 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8059144B2 (zh) |
JP (1) | JP5460438B2 (zh) |
CN (1) | CN101866476B (zh) |
GB (1) | GB2469526B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8884963B2 (en) * | 2011-05-04 | 2014-11-11 | Qualcomm Incorporated | Low resolution buffer based pixel culling |
CN102932645B (zh) * | 2012-11-29 | 2016-04-20 | 济南大学 | 一种图形处理器与视频编解码器融合的电路结构 |
US9741089B2 (en) | 2013-05-02 | 2017-08-22 | Arm Limited | Graphics processing systems |
US9070200B2 (en) | 2013-05-02 | 2015-06-30 | Arm Limited | Graphics processing systems |
US9767595B2 (en) | 2013-05-02 | 2017-09-19 | Arm Limited | Graphics processing systems |
US9607356B2 (en) | 2013-05-02 | 2017-03-28 | Arm Limited | Graphics processing systems |
US9514563B2 (en) | 2013-08-30 | 2016-12-06 | Arm Limited | Graphics processing systems |
US9659393B2 (en) * | 2013-10-07 | 2017-05-23 | Intel Corporation | Selective rasterization |
KR102315280B1 (ko) * | 2014-09-01 | 2021-10-20 | 삼성전자 주식회사 | 렌더링 장치 및 방법 |
US9779471B2 (en) | 2014-10-01 | 2017-10-03 | Qualcomm Incorporated | Transparent pixel format converter |
US9633452B2 (en) * | 2014-12-18 | 2017-04-25 | Intel Corporation | Resolving multi-sampled anti-aliasing buffers into single sampled buffers |
CN106815800B (zh) * | 2015-12-02 | 2020-12-08 | 谷歌有限责任公司 | 用于在计算机系统中控制空间分辨率的方法和装置 |
US10026153B2 (en) | 2016-09-15 | 2018-07-17 | Intel Corporation | Varying image quality rendering in a sort middle architecture |
KR102545172B1 (ko) * | 2017-12-28 | 2023-06-19 | 삼성전자주식회사 | 샘플링 기반의 렌더링을 수행하는 그래픽 프로세서 및 그 동작방법 |
US10643369B2 (en) * | 2018-05-30 | 2020-05-05 | Advanced Micro Devices, Inc. | Compiler-assisted techniques for memory use reduction in graphics pipeline |
US20230105401A1 (en) * | 2020-04-08 | 2023-04-06 | Qualcomm Incorporated | High dynamic range (hdr) video rotation animation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614448B1 (en) * | 1998-12-28 | 2003-09-02 | Nvidia Corporation | Circuit and method for displaying images using multisamples of non-uniform color resolution |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044178A (en) * | 1998-03-10 | 2000-03-28 | Seiko Epson Corporation | LCD projector resolution translation |
GB0426170D0 (en) * | 2004-11-29 | 2004-12-29 | Falanx Microsystems As | Processing of computer graphics |
US8199825B2 (en) * | 2004-12-14 | 2012-06-12 | Hewlett-Packard Development Company, L.P. | Reducing the resolution of media data |
US8269788B2 (en) * | 2005-11-15 | 2012-09-18 | Advanced Micro Devices Inc. | Vector graphics anti-aliasing |
US7660486B2 (en) * | 2006-07-10 | 2010-02-09 | Aten International Co., Ltd. | Method and apparatus of removing opaque area as rescaling an image |
US7948500B2 (en) * | 2007-06-07 | 2011-05-24 | Nvidia Corporation | Extrapolation of nonresident mipmap data using resident mipmap data |
-
2009
- 2009-04-17 GB GB0906691.1A patent/GB2469526B/en active Active
-
2010
- 2010-03-03 US US12/659,285 patent/US8059144B2/en active Active
- 2010-04-16 CN CN201010167792.3A patent/CN101866476B/zh active Active
- 2010-04-16 JP JP2010094976A patent/JP5460438B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614448B1 (en) * | 1998-12-28 | 2003-09-02 | Nvidia Corporation | Circuit and method for displaying images using multisamples of non-uniform color resolution |
Also Published As
Publication number | Publication date |
---|---|
GB2469526A (en) | 2010-10-20 |
US8059144B2 (en) | 2011-11-15 |
JP5460438B2 (ja) | 2014-04-02 |
JP2010250831A (ja) | 2010-11-04 |
US20100265259A1 (en) | 2010-10-21 |
CN101866476A (zh) | 2010-10-20 |
GB2469526B (en) | 2015-06-24 |
GB0906691D0 (en) | 2009-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101866476B (zh) | 生成和解析图形处理流水线内的像素值 | |
US11200724B2 (en) | Texture processor based ray tracing acceleration method and system | |
CN102460503B (zh) | 显示源图像的变形版本的设备和方法 | |
KR100648293B1 (ko) | 그래픽 시스템 및 그것의 그래픽 처리 방법 | |
CN103003839B (zh) | 反锯齿样本的拆分存储 | |
JP2011515751A (ja) | タイル・ベース・レンダリング・システムにおける変換されていない表示リスト | |
CN111324294B (zh) | 存取张量数据的方法和装置 | |
EP1721298A2 (en) | Embedded system with 3d graphics core and local pixel buffer | |
KR101427408B1 (ko) | 스케일링가능하고 통합된 컴퓨팅 시스템 | |
CN111028136B (zh) | 一种人工智能处理器处理二维复数矩阵的方法和设备 | |
CN111402369B (zh) | 互动广告的处理方法、装置、终端设备及存储介质 | |
CN103544678A (zh) | 一种视频图像处理装置及方法 | |
CN111383314A (zh) | 一种验证着色器函数的方法、装置及计算机存储介质 | |
WO2021070303A1 (ja) | 演算処理装置 | |
CN110928610A (zh) | 验证着色器函数的方法、装置及计算机存储介质 | |
CN112837256B (zh) | 一种用于Harris角点检测的电路系统及检测方法 | |
US8219371B1 (en) | Computing inter-atom forces between atoms in a protein | |
US20230377086A1 (en) | Pipeline delay elimination with parallel two level primitive batch binning | |
EP2169623A1 (en) | Semiconductor device, graphics controller, and information processing method | |
JP3971448B2 (ja) | 描画装置及び描画方法 | |
CN111813480A (zh) | Gpgpu中的2d桌面拉伸方法、装置及图形处理器 | |
JP4974127B2 (ja) | 半導体メモリ装置及び情報処理方法 | |
CN111813481A (zh) | Gpgpu中2d桌面位图扩展方法、装置及图形处理器 | |
CN101859330B (zh) | 验证集成电路效能模型的方法 | |
CN117788666A (zh) | 一种计算机特效生成方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |