Method and apparatus for loop and branch instructions in a programmable graphics pipeline
    1.
    发明授权
    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.

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

    Method and apparatus for loop and branch instructions in a programmable graphics pipeline
    2.
    发明授权
    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 system for improving data coherency in a parallel rendering system
    4.
    发明授权
    Method and system for improving data coherency in a parallel rendering system 有权
    用于提高并行渲染系统中数据一致性的方法和系统

    公开(公告)号:US08379033B2

    公开(公告)日:2013-02-19

    申请号:US13399458

    申请日:2012-02-17

    IPC分类号: G06F15/80

    摘要: A method and system for improving data coherency in a parallel rendering system is disclosed. Specifically, one embodiment of the present invention sets forth a method for managing a plurality of independently processed texture streams in a parallel rendering system that includes the steps of maintaining a time stamp for a group of tiles of work that are associated with each of the plurality of the texture streams and are associated with a specified area in screen space, and utilizing the time stamps to counter divergences in the independent processing of the plurality of texture streams.

    摘要翻译: 公开了一种用于提高并行渲染系统中数据一致性的方法和系统。 具体地,本发明的一个实施例阐述了一种用于在并行渲染系统中管理多个独立处理的纹理流的方法,该方法包括以下步骤:维护与多个相关联的工作的一组瓦片的时间戳 的纹理流并且与屏幕空间中的指定区域相关联,并且利用时间戳来反复在多个纹理流的独立处理中的分歧。

    Generating event signals for performance register control using non-operative instructions
    5.
    发明授权
    Generating event signals for performance register control using non-operative instructions 有权
    使用非操作指令生成用于性能寄存器控制的事件信号

    公开(公告)号:US07809928B1

    公开(公告)日:2010-10-05

    申请号:US11313872

    申请日:2005-12-20

    IPC分类号: G06F9/30 G06F17/00 G09G5/02

    摘要: One embodiment of an instruction decoder includes an instruction parser configured to process a first non-operative instruction and to generate a first event signal corresponding to the first non-operative instruction, and a first event multiplexer configured to receive the first event signal from the instruction parser, to select the first event signal from one or more event signals and to transmit the first event signal to an event logic block. The instruction decoder may be implemented in a multithreaded processing unit, such as a shader unit, and the occurrences of the first event signal may be tracked when one or more threads are executed within the processing unit. The resulting event signal count may provide a designer with a better understanding of the behavior of a program, such as a shader program, executed within the processing unit, thereby facilitating overall processing unit and program design.

    摘要翻译: 指令解码器的一个实施例包括:指令解析器,被配置为处理第一非操作指令并产生对应于第一非操作指令的第一事件信号;以及第一事件多路复用器,被配置为从指令接收第一事件信号 解析器,以从一个或多个事件信号中选择第一事件信号,并将第一事件信号发送到事件逻辑块。 指令解码器可以在诸如着色器单元的多线程处理单元中实现,并且当在处理单元内执行一个或多个线程时,可以跟踪第一事件信号的出现。 所得到的事件信号计数可以使设计者更好地理解在处理单元内执行的诸如着色器程序之类的程序的行为,从而有助于整体处理单元和程序设计。

    Shader with cache memory
    6.
    发明授权
    Shader with cache memory 有权
    着色器具有缓存内存

    公开(公告)号:US07439979B1

    公开(公告)日:2008-10-21

    申请号:US10985285

    申请日:2004-11-10

    IPC分类号: G06T1/20 G09G5/36

    CPC分类号: G06T1/20

    摘要: A shader having a cache memory for storing program instructions is described. The cache memory beneficially stores both current programming instructions for a fragment program being run and “look-ahead” programming instructions. The cache memory supports a scheduler that forms program commands that control programmable processing stations. The cache memory can store multiple programming instructions for a plurality of shaders. If the cache memory does not include the desired programming instructions, a miss is asserted and a scheduler (instruction processor) recovers the programming instructions to be run. Beneficially, the scheduler recovers additional programming instructions to support the look-ahead programming. The cache memory stores program instructions by cachelines, where each cacheline comprises a plurality of programming instructions. The cache memory can also store program identifiers.

    摘要翻译: 描述了具有用于存储程序指令的高速缓冲存储器的着色器。 高速缓冲存储器有利地存储当前正在运行的片段程序和“先行”编程指令的当前编程指令。 高速缓冲存储器支持一个调度器,其形成控制可编程处理站的程序命令。 高速缓冲存储器可以存储多个着色器的多个编程指令。 如果高速缓冲存储器不包含所需的编程指令,则认定未命中,并且调度器(指令处理器)恢复要运行的编程指令。 有利地,调度器恢复附加的编程指令以支持预先编程。 缓存存储器通过高速缓存存储器存储程序指令,其中每个高速缓存行包括多个编程指令。 缓存存储器还可以存储程序标识符。

    Method for parallel fine rasterization in a raster stage of a graphics pipeline
    7.
    发明申请
    Method for parallel fine rasterization in a raster stage of a graphics pipeline 有权
    在图形管道的光栅阶段中并行精细光栅化的方法

    公开(公告)号:US20070296725A1

    公开(公告)日:2007-12-27

    申请号:US11474027

    申请日:2006-06-23

    IPC分类号: G06F15/80

    CPC分类号: G06T11/40 G06T15/005

    摘要: In a raster stage of a graphics processor, a method for parallel fine rasterization. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor. The graphics primitive is rasterized at a first level to generate a plurality of tiles of pixels. The titles are subsequently rasterized at a second level by allocating the tiles to an array of parallel second-level rasterization units to generate covered pixels. The covered pixels are then output for rendering operations in a subsequent stage of the graphics processor.

    摘要翻译: 在图形处理器的光栅阶段,一种并行精细光栅化的方法。 该方法包括在图形处理器的光栅级中接收用于光栅化的图形基元。 图形原语在第一级被光栅化以生成多个像素块。 随后通过将瓦片分配到并行的第二级光栅化单元的阵列来生成被覆盖的像素,随后将标题在第二级光栅化。 然后,在图形处理器的后续阶段输出被覆盖像素进行渲染操作。

    Method for parallel fine rasterization in a raster stage of a graphics pipeline
    8.
    发明授权
    Method for parallel fine rasterization in a raster stage of a graphics pipeline 有权
    在图形管道的光栅阶段中并行精细光栅化的方法

    公开(公告)号:US08928676B2

    公开(公告)日:2015-01-06

    申请号:US11474027

    申请日:2006-06-23

    IPC分类号: G06F15/80 G06T15/00 G06T11/40

    CPC分类号: G06T11/40 G06T15/005

    摘要: In a raster stage of a graphics processor, a method for parallel fine rasterization. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor. The graphics primitive is rasterized at a first level to generate a plurality of tiles of pixels. The titles are subsequently rasterized at a second level by allocating the tiles to an array of parallel second-level rasterization units to generate covered pixels. The covered pixels are then output for rendering operations in a subsequent stage of the graphics processor.

    摘要翻译: 在图形处理器的光栅阶段,一种并行精细光栅化的方法。 该方法包括在图形处理器的光栅级中接收用于光栅化的图形基元。 图形原语在第一级被光栅化以生成多个像素块。 随后通过将瓦片分配到并行的第二级光栅化单元的阵列来生成被覆盖的像素,随后将标题在第二级光栅化。 然后,在图形处理器的后续阶段输出被覆盖像素进行渲染操作。

    Shader performance registers
    9.
    发明授权
    Shader performance registers 有权
    着色器性能寄存器

    公开(公告)号:US08253748B1

    公开(公告)日:2012-08-28

    申请号:US11290764

    申请日:2005-11-29

    IPC分类号: G06F15/00

    摘要: One embodiment of a system for collecting performance data for a multithreaded processing unit includes a plurality of independent performance registers, each configured to count hardware-based and/or software-based events. Functional blocks within the multithreaded processing unit are configured to generate various event signals, and subsets of the events are selected and used to generate one or more functions, each of which increments one of the performance registers. By accessing the contents of the performance registers, a user may observe and characterize the behavior of the different functional blocks within the multithreaded processing unit when one or more threads are executed within the processing unit. The contents of the performance registers may also be used to modify the behavior of the program running on the multithreaded processing unit, to modify a global performance register or to trigger an interrupt.

    摘要翻译: 用于收集多线程处理单元的性能数据的系统的一个实施例包括多个独立性能寄存器,每个独立性能寄存器被配置为对基于硬件和/或基于软件的事件进行计数。 多线程处理单元中的功能块被配置为生成各种事件信号,并且事件的子集被选择并用于生成一个或多个功能,每个功能增加一个性能寄存器。 通过访问性能寄存器的内容,当在处理单元内执行一个或多个线程时,用户可以观察和表征多线程处理单元内的不同功能块的行为。 性能寄存器的内容也可用于修改在多线程处理单元上运行的程序的行为,修改全局性能寄存器或触发中断。

    Apparatus and method for serial save and restore of graphics processing unit state information
    10.
    发明授权
    Apparatus and method for serial save and restore of graphics processing unit state information 有权
    用于串行保存和恢复图形处理单元状态信息的装置和方法

    公开(公告)号:US08212824B1

    公开(公告)日:2012-07-03

    申请号:US11313086

    申请日:2005-12-19

    IPC分类号: G06F15/16

    CPC分类号: G06F9/461

    摘要: A graphics processing unit includes a first processing controller controlling a first set of multi-threaded processors. A second processing controller controls a second set of multi-threaded processors. A serial bus connects the first processing controller to the second processing controller. The first processing controller gathers first state information from the first set of multi-threaded processors in response to a context switch token and then passes the context switch token over the serial bus to the second processing controller. The second processing controller gathers second state information from the second set of multi-threaded processors in response to the context switch token.

    摘要翻译: 图形处理单元包括控制第一组多线程处理器的第一处理控制器。 第二处理控制器控制第二组多线程处理器。 串行总线将第一处理控制器连接到第二处理控制器。 第一处理控制器响应于上下文切换令牌从第一组多线程处理器收集第一状态信息,然后将串行总线上的上下文切换令牌传递给第二处理控制器。 响应于上下文切换令牌,第二处理控制器从第二组多线程处理器收集第二状态信息。