Processing unit incorporating instruction-based persistent vector multiplexer control
    43.
    发明授权
    Processing unit incorporating instruction-based persistent vector multiplexer control 失效
    包含基于指令的持久矢量多路复用器控制的处理单元

    公开(公告)号:US07904699B2

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

    申请号:US12045221

    申请日:2008-03-10

    IPC分类号: G06F9/00

    摘要: Persistent vector multiplexer control is used in a vector-based execution unit to control the shuffling of words in operand vectors processed by the execution unit. In addition, a persistent swizzle instruction is defined in an instruction set for the vector-based execution unit and is used to cause state information to be persisted such that the operand vectors processed by subsequent vector instructions executed by the vector-based execution unit will be selectively shuffled using the persisted state information. As a result, when multiple vector instructions require a common custom word ordering for one or more operand vectors, a single persistent swizzle instruction may be used to select the desired custom word ordering for all of the vector instructions.

    摘要翻译: 持续矢量复用器控制在基于矢量的执行单元中用于控制由执行单元处理的操作数向量中的字的混洗。 此外,在用于基于向量的执行单元的指令集中定义持续转换指令,并且用于使状态信息被持久化,使得由基于向​​量的执行单元执行的后续向量指令处理的操作数向量将被 使用持久状态信息选择性地进行混洗。 因此,当多个向量指令需要一个或多个操作数向量的公共自定义单词排序时,可以使用单个持续旋转指令来选择所有向量指令的期望的定制单词排序。

    Operand multiplexor control modifier instruction in a fine grain multithreaded vector microprocessor
    44.
    发明授权
    Operand multiplexor control modifier instruction in a fine grain multithreaded vector microprocessor 失效
    精细多线程向量微处理器中的操作数多路复用器控制修改器指令

    公开(公告)号:US07868894B2

    公开(公告)日:2011-01-11

    申请号:US11564072

    申请日:2006-11-28

    IPC分类号: G06T1/00

    CPC分类号: G06T1/20

    摘要: The present invention is generally related to the field of image processing, and more specifically to an instruction set for processing images. Vector processing may involve rearranging vector operands in one or more source registers prior to performing vector operations. Typically, rearranging of operands in source registers is done by issuing a plurality of permute instructions that require excessive usage of temporary registers. Furthermore, the permute instructions may cause dependencies between instructions executing in a pipeline, thereby adversely affecting performance. Embodiments of the invention provide a level of muxing between a register file and a vector unit that allow for rearrangement of vector operands in source registers prior to providing the operands to the vector unit, thereby obviating the need for permute instructions.

    摘要翻译: 本发明通常涉及图像处理领域,更具体地涉及用于处理图像的指令集。 矢量处理可以包括在执行向量操作之前在一个或多个源寄存器中重新排列向量操作数。 通常,通过发出需要临时寄存器过度使用的多个置换指令来完成源寄存器中操作数的重新排列。 此外,置换指令可能导致在流水线中执行的指令之间的相关性,从而不利地影响性能。 本发明的实施例提供了一种在寄存器文件和向量单元之间的复用水平,其允许在将操作数提供给向量单元之前重新排列源寄存器中的向量操作数,从而避免了对置换指令的需要。

    Processing unit incorporating vectorizable execution unit
    45.
    发明授权
    Processing unit incorporating vectorizable execution unit 有权
    具有可向量化执行单元的处理单元

    公开(公告)号:US07809925B2

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

    申请号:US11952193

    申请日:2007-12-07

    IPC分类号: G06F15/80

    摘要: A vectorizable execution unit is capable of being operated in a plurality of modes, with the processing lanes in the vectorizable execution unit grouped into different combinations of logical execution units in different modes. By doing so, processing lanes can be selectively grouped together to operate as different types of vector execution units and/or scalar execution units, and if desired, dynamically switched during runtime to process various types of instruction streams in a manner that is best suited for each type of instruction stream. As a consequence, a single vectorizable execution unit may be configurable, e.g., via software control, to operate either as a vector execution or a plurality of scalar execution units.

    摘要翻译: 可矢量化执行单元能够以多种模式操作,可矢量化执行单元中的处理通道被分组成不同模式的逻辑执行单元的不同组合。 通过这样做,处理通道可以选择性地组合在一起以作为不同类型的向量执行单元和/或标量执行单元来操作,并且如果需要,在运行时期间以最适合于以下方式处理各种类型的指令流的方式进行动态切换 每种类型的指令流。 因此,单个可矢量化执行单元可以例如通过软件控制来配置,以作为向量执行或多个标量执行单元来操作。

    Implied Storage Operation Decode Using Redundant Target Address Detection
    46.
    发明申请
    Implied Storage Operation Decode Using Redundant Target Address Detection 有权
    隐藏存储操作使用冗余目标地址检测进行解码

    公开(公告)号:US20100191937A1

    公开(公告)日:2010-07-29

    申请号:US12360975

    申请日:2009-01-28

    IPC分类号: G06F9/312 G06F9/30

    摘要: A logic arrangement and method to support implied storage operation decode uses redundant target address detection, whereby target addresses of previous instructions are compared with the target address of the current instruction, and if equal, and the target addresses of previous instructions are not used as sources, the current instruction is decoded as a store instruction. This allows a redundant operation in an instruction set architecture to be redefined as a store instruction, freeing up opcodes normally used for store instructions to be used for other instructions.

    摘要翻译: 支持隐含存储操作解码的逻辑布置和方法使用冗余目标地址检测,由此将先前指令的目标地址与当前指令的目标地址进行比较,如果相等,并且先前指令的目标地址不被用作源 ,当前指令被解码为存储指令。 这允许将指令集架构中的冗余操作重新定义为存储指令,释放通常用于存储指令的操作码以用于其他指令。

    Updating Ray Traced Acceleration Data Structures Between Frames Based on Changing Perspective
    47.
    发明申请
    Updating Ray Traced Acceleration Data Structures Between Frames Based on Changing Perspective 有权
    基于不断变化的视角,更新帧之间的光线跟踪加速数据结构

    公开(公告)号:US20100188396A1

    公开(公告)日:2010-07-29

    申请号:US12361019

    申请日:2009-01-28

    IPC分类号: G06T15/00

    CPC分类号: G06T15/06 G06T17/005

    摘要: A method, program product and system for conducting a ray tracing operation where the rendering compute requirement is reduced or otherwise adjusted in response to a changing vantage point. Aspects may update or reuse an acceleration data structure between frames in response to the changing vantage point. Tree and image construction quality may be adjusted in response to rapid changes in the camera perspective. Alternatively or additionally, tree building cycles may be skipped. All or some of the tree structure may be built in intervals, e.g., after a preset number of frames. More geometric image data may be added per leaf node in the tree in response to an increase in the rate of change. The quality of the rendering algorithm may additionally be reduced. A ray tracing algorithm may decrease the depth of recursion, and generate fewer cast and secondary rays. The ray tracer may further reduce the quality of soft shadows, resolution and global illumination samples, among other quality parameters. Alternatively, tree rebuilding may be skipped entirely in response to a high camera rate of change. Associated processes may create blur between frames to simulate motion blur.

    摘要翻译: 一种用于执行光线跟踪操作的方法,程序产品和系统,其中响应于不断变化的有利位置来减少或以其他方式调整渲染计算要求。 响应于不断变化的有利位置,方面可以更新或重新使用帧之间的加速度数据结构。 可以根据相机视角的快速变化来调整树木和图像施工质量。 或者或另外,可以跳过建树循环。 树结构的全部或一些可以以间隔内置,例如在预设数量的帧之后。 响应于变化率的增加,可以在树中的每个叶节点添加更多的几何图像数据。 还可以减少渲染算法的质量。 光线跟踪算法可以减少递归深度,并产生更少的投射和二次光线。 光线跟踪器可以进一步降低软阴影,分辨率和全局照明样本的质量以及其他质量参数。 或者,可以根据高摄像机的变化率来完全地跳过树重建。 相关过程可能会在帧之间产生模糊以模拟运动模糊。

    Processing Unit Incorporating Special Purpose Register for Use with Instruction-Based Persistent Vector Multiplexer Control
    48.
    发明申请
    Processing Unit Incorporating Special Purpose Register for Use with Instruction-Based Persistent Vector Multiplexer Control 失效
    包含专用寄存器的处理单元,用于基于指令的持续矢量复用器控制

    公开(公告)号:US20090228682A1

    公开(公告)日:2009-09-10

    申请号:US12045222

    申请日:2008-03-10

    IPC分类号: G06F9/30 G06F15/76

    摘要: A software-accessible special purpose register is architected into a processing unit in order to implement persistent vector multiplexer control of a vector-based execution unit. A persistent swizzle instruction is defined in an instruction set for the vector-based execution unit and is used to cause state information to be stored in the special purpose register such that the operand vectors processed by subsequent vector instructions executed by the vector-based execution unit will be selectively shuffled using the persisted state information. As a result, when multiple vector instructions require a common custom word ordering for one or more operand vectors, a single persistent swizzle instruction may be used to select the desired custom word ordering for all of the vector instructions.

    摘要翻译: 软件可访问专用寄存器被设计成处理单元,以便实现基于向量的执行单元的持久矢量多路复用器控制。 在基于向量的执行单元的指令集中定义持续转换指令,并且用于使状态信息存储在专用寄存器中,使得由基于向​​量的执行单元执行的后续向量指令处理的操作数向量 将使用持久状态信息选择性地进行混洗。 因此,当多个向量指令需要一个或多个操作数向量的公共自定义单词排序时,可以使用单个持续旋转指令来选择所有向量指令的期望的定制单词排序。

    Optimized specular highlight generation
    49.
    发明授权
    Optimized specular highlight generation 失效
    优化镜面高光生成

    公开(公告)号:US07542044B2

    公开(公告)日:2009-06-02

    申请号:US12049319

    申请日:2008-03-15

    IPC分类号: G06T1/00

    CPC分类号: G06T15/506

    摘要: An approach to optimize specular highlight generation is presented. A single microprocessor instruction is used to generate an intensity value based upon a viewing angle value. An application stores a viewing angle value in an input register. When called, the “intensity instruction” retrieves the viewing angle value from the input register, and calculates an intensity value using three distinct steps. In turn, the intensity instruction stores the intensity value in an output register for the application to retrieve and further process. In one embodiment, the invention may be implemented using PowerPC™ assembly and VMX™ or Altivec™ instructions. In this embodiment, the intensity instruction may be represented as a “vspecefp” instruction, which stands for a “vector specular estimate floating point” instruction.

    摘要翻译: 介绍了优化镜面高光生成的方法。 单个微处理器指令用于基于视角值产生强度值。 应用程序将视角值存储在输入寄存器中。 当被调用时,“强度指令”从输入寄存器检索视角值,并使用三个不同的步骤计算强度值。 反之,强度指令将强度值存储在用于检索和进一步处理的应用的输出寄存器中。 在一个实施例中,本发明可以使用PowerPC TM组件和VMX TM或Altivec TM指令来实现。 在本实施例中,强度指令可以表示为“vspecefp”指令,其代表“矢量镜面估计浮点”指令。

    Method and Apparatus Implementing a Floating Point Weighted Average Function
    50.
    发明申请
    Method and Apparatus Implementing a Floating Point Weighted Average Function 有权
    实现浮点加权平均函数的方法和装置

    公开(公告)号:US20090083357A1

    公开(公告)日:2009-03-26

    申请号:US11861518

    申请日:2007-09-26

    IPC分类号: G06F7/38

    CPC分类号: G06F7/483

    摘要: A method, computer-readable medium, and an apparatus for implementing a floating point weighted average function. The method includes receiving an input containing 2N input values, 2N weights, and an opcode, where N is a positive integer number and each of the input values corresponds to one of the weights. Furthermore, the method also includes using existing dot product circuit function to generate 2N addends by multiplying each of the input values with the corresponding weight. In addition, the method includes generating a sum value by adding the 2N addends, where the sum value includes an exponent value, and generating the weighted average value based on the sum value by decreasing the exponent value by N. In this fashion, the same circuit area may be used to carry out both dot product and weighted average calculations, leading to greater circuit area savings and performance advantages.

    摘要翻译: 一种用于实现浮点加权平均函数的方法,计算机可读介质和装置。 该方法包括接收包含2N个输入值,2N个权重和操作码的输入,其中N是正整数,并且每个输入值对应于其中一个权重。 此外,该方法还包括使用现有的点积电路函数,通过将每个输入值与相应的权重相乘来产生2N个加数。 此外,该方法包括通过加上2N加数来产生和值,其中和值包括指数值,并且通过将指数值减小N来基于和值生成加权平均值。以这种方式,相同 电路面积可用于进行点积和加权平均计算,从而实现更大的电路面积节省和性能优势。