Method and system for implementing programmable texture lookups from texture coordinate sets
    11.
    发明授权
    Method and system for implementing programmable texture lookups from texture coordinate sets 有权
    从纹理坐标集实现可编程纹理查找的方法和系统

    公开(公告)号:US07109999B1

    公开(公告)日:2006-09-19

    申请号:US10449322

    申请日:2003-05-29

    IPC分类号: G09G5/00 G06F12/06

    CPC分类号: G06T15/04

    摘要: A method and system for implementing programmable texture lookups from texture coordinate sets. The method includes the step of generating a plurality of texture coordinates using a shader module. The shader module executes floating point calculations on received pixel data to generate the texture coordinates. A plurality of texture values are fetched using the texture coordinates. The fetching is performed by a texture unit coupled to receive the texture coordinates from the shader module. The fetching of the texture values is programmable with respect to the texture coordinates such that the number of texture coordinates are decoupled from the number of textures.

    摘要翻译: 一种用于从纹理坐标集实现可编程纹理查找的方法和系统。 该方法包括使用着色器模块生成多个纹理坐标的步骤。 着色器模块对接收到的像素数据执行浮点计算以生成纹理坐标。 使用纹理坐标获取多个纹理值。 通过耦合以从着色器模块接收纹理坐标的纹理单元执行提取。 纹理值的获取可以相对于纹理坐标进行编程,使得纹理坐标的数量与纹理数量分离。

    Method and apparatus for modifying depth values using pixel programs
    12.
    发明授权
    Method and apparatus for modifying depth values using pixel programs 有权
    使用像素程序修改深度值的方法和装置

    公开(公告)号:US06864893B2

    公开(公告)日:2005-03-08

    申请号:US10302464

    申请日:2002-11-22

    摘要: A method and apparatus for generating depth values in a programmable graphics system. Depth values are calculated under control of a pixel program using a variety of sources as inputs to programmable computation units (PCUs) in the programmable graphics systems. The PCUs are used to compute traditional interpolated depth values and modified depth values. Th PCUs are also used to compute arbitrary depth values which, unlike traditional interpolated depth values and modified depth values, are not dependent on the coordinates of the geometry primitive with which the arbitrary depth values are associated. Several sources are available as inputs to the PCUs. Clipping with optional clamping is performed using either interpolated depth values or calculated depth values, where calculated depth values are arbitrary depth values or modified depth values. Final depth values, used for depth testing, are selected from interpolated depth values and arbitrary depth values after clipping is performed.

    摘要翻译: 一种用于在可编程图形系统中生成深度值的方法和装置。 在可编程图形系统中使用各种源作为可编程计算单元(PCU)的输入的像素程序的控制下计算深度值。 PCU用于计算传统的插值深度值和修改的深度值。 PCU还用于计算任意深度值,其与传统的内插深度值和修改的深度值不同,不依赖于与任意深度值相关联的几何图元的坐标。 多个来源可用作PCU的输入。 使用插值的深度值或计算的深度值执行可选夹紧的剪切,其中计算的深度值是任意的深度值或修改的深度值。 用于深度测试的最终深度值是从内插深度值和任意深度值中选出的。

    System, method and computer program product for programmable shading using pixel shaders
    13.
    发明授权
    System, method and computer program product for programmable shading using pixel shaders 有权
    使用像素着色器的可编程阴影的系统,方法和计算机程序产品

    公开(公告)号:US06664963B1

    公开(公告)日:2003-12-16

    申请号:US09977522

    申请日:2001-10-12

    IPC分类号: G06T1560

    摘要: A system, method and computer program product are provided for performing shader calculations in a graphics pipeline. Initially, a shading calculation is performed in order to generate output. Thereafter, an additional shading calculation is carried out. Such additional shading calculation includes converting the output of the shading calculation into a floating point format. Further, a dot product is calculated utilizing the converted output and texture coordinates. The dot product is then clamped. Next, the clamped dot product is stored in a plurality of color components.

    摘要翻译: 提供了一种用于在图形管线中执行着色器计算的系统,方法和计算机程序产品。 最初,执行阴影计算以产生输出。 此后,进行附加的阴影计算。 这种附加阴影计算包括将阴影计算的输出转换为浮点格式。 此外,使用转换的输出和纹理坐标来计算点积。 然后将点产品夹紧。 接下来,夹着的点积被存储在多个颜色分量中。

    Method and apparatus for loop and branch instructions in a programmable graphics pipeline
    14.
    发明授权
    Method and apparatus for loop and branch instructions in a programmable graphics pipeline 有权
    可编程图形管道中循环和分支指令的方法和装置

    公开(公告)号:US07911471B1

    公开(公告)日:2011-03-22

    申请号:US10962042

    申请日:2004-10-08

    IPC分类号: G06T15/00

    摘要: A method and apparatus for executing loop and branch program instructions in a programmable graphics shader. The programmable graphics shader converts a sequence of instructions comprising a portion of a shader program and selects a first set of fragments to be processed. Subsequent sequences of instructions are converted until all of the instructions comprising the shader program have been executed on the first set of fragments. Each remaining set of fragments is processed by the shader program until all of the fragments are processed in the same manner. Furthermore, the instructions can contain one or more loop or branch program instructions that are conditionally executed. Additionally, when instructions within a loop as defined by a loop instruction are being executed a current loop count is pipelined through the programmable graphics shader and used as an index to access graphics memory.

    摘要翻译: 一种用于在可编程图形着色器中执行循环和分支程序指令的方法和装置。 可编程图形着色器转换包括着色器程序的一部分的指令序列,并选择要处理的第一组片段。 随后的指令序列被转换,直到包括着色器程序的所有指令已经在第一组碎片上被执行。 每个剩余的片段由着色器程序处理,直到所有片段以相同的方式处理。 此外,指令可以包含有条件地执行的一个或多个循环或分支程序指令。 另外,当正在执行由循环指令定义的循环内的指令时,当前循环计数通过可编程图形着色器流水线并用作访问图形存储器的索引。

    Method and apparatus for multithreaded processing of data in a programmable graphics processor
    16.
    发明授权
    Method and apparatus for multithreaded processing of data in a programmable graphics processor 有权
    用于可编程图形处理器中数据的多线程处理的方法和装置

    公开(公告)号:US07015913B1

    公开(公告)日:2006-03-21

    申请号:US10608346

    申请日:2003-06-27

    摘要: A graphics processor and method for executing a graphics program as a plurality of threads where each sample to be processed by the program is assigned to a thread. Although threads share processing resources within the programmable graphics processor, the execution of each thread can proceed independent of any other threads. For example, instructions in a second thread are scheduled for execution while execution of instructions in a first thread are stalled waiting for source data. Consequently, a first received sample (assigned to the first thread) may be processed after a second received sample (assigned to the second thread). A benefit of independently executing each thread is improved performance because a stalled thread does not prevent the execution of other threads.

    摘要翻译: 一种用于执行图形程序作为多个线程的图形处理器和方法,其中由程序处理的每个样本被分配给线程。 虽然线程在可编程图形处理器内共享处理资源,但每个线程的执行可以独立于任何其他线程进行。 例如,第二线程中的指令被调度为执行,而第一线程中的指令的执行被停止等待源数据。 因此,可以在第二个接收到的样本(分配给第二个线程)之后处理第一个接收到的样本(分配给第一个线程)。 独立执行每个线程的好处是提高了性能,因为停滞的线程不会阻止其他线程的执行。

    Method and apparatus for generation of programmable shader configuration information from state-based control information and program instructions
    17.
    发明授权
    Method and apparatus for generation of programmable shader configuration information from state-based control information and program instructions 有权
    用于从基于状态的控制信息和程序指令生成可编程着色器配置信息的方法和装置

    公开(公告)号:US06809732B2

    公开(公告)日:2004-10-26

    申请号:US10318560

    申请日:2002-12-13

    IPC分类号: G06F1516

    CPC分类号: G06T15/80

    摘要: A graphics subsystem having a programmable shader controllable by both state-based control information, such as DirectX 8 control information, and program instructions, such as DirectX 9 shader program instructions. The programmable shader translates state-based control information received from a host computer into native control information. The programmable shader translates into native control information program instructions fetched from memory locations identified by a received memory reference and program instructions received from the graphics subsystem. Native control information configures computation units of the programmable shader. The programmable shader optimizes the generated native control information by combining certain operations. The graphics subsystem detects memory references sent from the host computer and pre-fetches program instructions for transmission to the programmable shader. Native control information from multiple control sources is concurrently used in the programmable shader.

    摘要翻译: 具有可由两个基于状态的控制信息(例如DirectX 8控制信息)和诸如DirectX 9着色器程序指令的程序指令控制的可编程着色器的图形子系统。 可编程着色器将从主计算机接收的基于状态的控制信息转换为本机控制信息。 可编程着色器转换为从由接收到的存储器引用识别的存储器位置和从图形子系统接收的程序指令获取的本地控制信息程序指令。 本地控制信息配置可编程着色器的计算单位。 可编程着色器通过组合某些操作来优化生成的本机控制信息。 图形子系统检测从主计算机发送的存储器参考,并且预取程序指令以传送到可编程着色器。 来自多个控制源的本地控制信息同时用于可编程着色器。

    Method and apparatus for loop and branch instructions in a programmable graphics pipeline
    20.
    发明授权
    Method and apparatus for loop and branch instructions in a programmable graphics pipeline 有权
    可编程图形管道中循环和分支指令的方法和装置

    公开(公告)号:US06825843B2

    公开(公告)日:2004-11-30

    申请号:US10302411

    申请日:2002-11-22

    IPC分类号: G06T1500

    摘要: A method and apparatus for executing loop and branch program instructions in a programmable graphics shader. The programmable graphics shader converts a sequence of instructions comprising a portion of a shader program and selects a first set of fragments to be processed. Subsequent sequences of instructions are converted until all of the instructions comprising the shader program have been executed on the first set of fragments. Each remaining set of fragments is processed by the shader program until all of the fragments are processed in the same manner. Furthermore, the instructions can contain one or more loop or branch program instructions that are conditionally executed. Additionally, when instructions within a loop as defined by a loop instruction are being executed a current loop count is pipelined through the programmable graphics shader and used as an index to access graphics memory.

    摘要翻译: 一种用于在可编程图形着色器中执行循环和分支程序指令的方法和装置。 可编程图形着色器转换包括着色器程序的一部分的指令序列,并选择要处理的第一组片段。 随后的指令序列被转换,直到包括着色器程序的所有指令已经在第一组碎片上被执行。 每个剩余的片段由着色器程序处理,直到所有片段以相同的方式处理。 此外,指令可以包含有条件地执行的一个或多个循环或分支程序指令。 另外,当正在执行由循环指令定义的循环内的指令时,当前循环计数通过可编程图形着色器流水线并用作访问图形存储器的索引。