Patents by Inventor Richard J. Selvaggi

Richard J. Selvaggi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8255665
    Abstract: A single instruction, multiple data (SIMD) processor including a plurality of addressing register sets, used to flexibly calculate effective operand source and destination memory addresses is disclosed. Two or more address generators calculate effective addresses using the register sets. Each register set includes a pointer register, and a scale register. An address generator forms effective addresses from a selected register set's pointer register and scale register; and an offset. For example, the effective memory address may be formed by multiplying the scale value by an offset value and summing the pointer and the scale value multiplied by the offset value.
    Type: Grant
    Filed: August 29, 2008
    Date of Patent: August 28, 2012
    Assignee: Broadcom Corporation
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Patent number: 7941649
    Abstract: A SIMD processor responds to a single min/max instruction to find the minimum or maximum valued data unit in an array of data units. The determined minimum/maximum value and an associated index value thereto may be output. Alternatively, the value of a data unit in another array may be output at a corresponding location. A further single instruction executable by the SIMD processor, may be applied to results obtained using such a single min/max instruction, to allow such instructions to operate on two dimensional arrays.
    Type: Grant
    Filed: September 5, 2008
    Date of Patent: May 10, 2011
    Assignee: Broadcom Corporation
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Patent number: 7864201
    Abstract: A method for processing video image data including a plurality of different image data types begins by providing tasks to be performed on each different image data type. The image data is divided into a plurality of groups based on the image data type. A set of arithmetic operations required to accomplish the tasks provided for the corresponding image data type is determined. Each arithmetic operation is assigned to one of a plurality of commonly used arithmetic units which performs the arithmetic operation, whereby each image data type is transformed in accordance with the corresponding provided tasks. The transformed image data of each group is combined, completing the processing.
    Type: Grant
    Filed: October 14, 2005
    Date of Patent: January 4, 2011
    Assignee: Broadcom Corporation
    Inventors: Richard J. Selvaggi, Gary W. Root
  • Patent number: 7743376
    Abstract: In a multiprocessor system, a task control processor may be placed in the path connecting each execution processor to a system bus. Such task control processors may detect the completion of a first task on an associated execution processor and, responsively, generate commands to lead to the initiation of a second task on the same, or another, execution processor. Such task completion detection and task initiation by the task control processors removes, from a central processor or the execution processors, the burden of performing such tasks, thereby improving the efficiency of the entire system.
    Type: Grant
    Filed: September 13, 2004
    Date of Patent: June 22, 2010
    Assignee: Broadcom Corporation
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Patent number: 7555513
    Abstract: A SIMD processor includes an ALU having data interconnects facilitating the concurrent processing of overlapping data portions of at least one operand store. Such interconnects facilitate the calculation of shift-invariant convolutions, and sum of absolute differences between an operand in the operand store and another operand.
    Type: Grant
    Filed: September 13, 2004
    Date of Patent: June 30, 2009
    Assignee: Broadcom Corporation
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Publication number: 20090132785
    Abstract: A SIMD processor responds to a single min/max instruction to find the minimum or maximum valued data unit in an array of data units. The determined minimum/maximum value and an associated index value thereto may be output. Alternatively, the value of a data unit in another array may be output at a corresponding location. A further single instruction executable by the SIMD processor, may be applied to results obtained using such a single min/max instruction, to allow such instructions to operate on two dimensional arrays.
    Type: Application
    Filed: September 5, 2008
    Publication date: May 21, 2009
    Applicant: ATI Technologies ULC
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Publication number: 20090125702
    Abstract: A single instruction, multiple data (SIMD) processor including a plurality of addressing register sets, used to flexibly calculate effective operand source and destination memory addresses is disclosed. Two or more address generators calculate effective addresses using the register sets. Each register set includes a pointer register, and a scale register. An address generator forms effective addresses from a selected register set's pointer register and scale register; and an offset. For example, the effective memory address may be formed by multiplying the scale value by an offset value and summing the pointer and the scale value multiplied by the offset value.
    Type: Application
    Filed: August 29, 2008
    Publication date: May 14, 2009
    Applicant: ATI Technologies Inc.
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Patent number: 7434034
    Abstract: The result of eight find_min_16 of lookup-min_16, find_max_l6x, lookup_max_16 instructions may be stored in memory storage units of operand storage 24, using SIMD at addressing techniques detailed in U.S. patent application Ser. No. 10/929,992, filed Aug. 30, 2004 and entitled SIMD PROCESSOR AND ADDRESSING METHOD.
    Type: Grant
    Filed: September 13, 2004
    Date of Patent: October 7, 2008
    Assignee: ATI Technologies Inc.
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Patent number: 7434024
    Abstract: A single instruction, multiple data (SIMD) processor including a plurality of addressing register sets, used to flexibly calculate effective operand source and destination memory addresses is disclosed. Two or more address generators calculate effective addresses using the register sets. Each register set includes a pointer register, and a scale register. An address generator forms effective addresses from a selected register set's pointer register and scale register; and an offset. For example, the effective memory address may be formed by multiplying the scale value by an offset value and summing the pointer and the scale value multiplied by the offset value.
    Type: Grant
    Filed: August 30, 2004
    Date of Patent: October 7, 2008
    Assignee: ATI Technologies, Inc.
    Inventors: Richard J. Selvaggi, Larry A. Pearlstein
  • Publication number: 20080231482
    Abstract: An apparatus for processing variable length coded data includes a coefficient buffer unit and several lookup tables. The coefficient buffer unit includes a coefficient memory and an index register for storing an indication of a non-zero nature of coefficients stored in the coefficient memory. Advantageously, the lookup tables may be altered to adapt the apparatus for processing variable length coded data to handle encoding or decoding video adhering to a specific standard. Furthermore, the lookup tables may be adapted to accelerate the determination of the presence of escape codes and the subsequent handling of the escape codes.
    Type: Application
    Filed: June 5, 2008
    Publication date: September 25, 2008
    Applicant: ATI Technologies Inc.
    Inventors: Larry A. Pearlstein, Richard Sita, Richard J. Selvaggi
  • Patent number: 7385534
    Abstract: An apparatus for processing variable length coded data includes a coefficient buffer unit and several lookup tables. The coefficient buffer unit includes a coefficient memory and an index register for storing an indication of a non-zero nature of coefficients stored in the coefficient memory. Advantageously, the lookup tables may be altered to adapt the apparatus for processing variable length coded data to handle encoding or decoding video adhering to a specific standard. Furthermore, the lookup tables may be adapted to accelerate the determination of the presence of escape codes and the subsequent handling of the escape codes.
    Type: Grant
    Filed: October 3, 2006
    Date of Patent: June 10, 2008
    Assignee: ATI Technologies Inc.
    Inventors: Larry A. Pearlstein, Richard Sita, Richard J. Selvaggi
  • Patent number: 7103226
    Abstract: A video processor integrates the processing of video and graphics data by restructuring the discrete blocks of luminance and chrominance component data associated with video image data (Y,U,V) into composite pixel values (YUYV), and performing the subsequent processing, in particular motion compensation, upon this composite data form. The discrete blocks of video image data are queue and processed in parallel to form a composite pixel value associated with each pixel within the image areas represented by the discrete blocks. By forming composite pixel values for reference data and error term data, common processing elements can be optimized and used for both video and graphics image processing. For example, the trilinear interpolator commonly used for 3-D graphics filtering and texturing can be used to form predicted macroblocks for motion compensation, and the specular adder used for graphics lighting effects can be used to process the motion compensation error terms.
    Type: Grant
    Filed: March 23, 1998
    Date of Patent: September 5, 2006
    Assignee: ATI Technologies, Inc.
    Inventors: Michael Frank, Gary Root, Richard J. Selvaggi
  • Patent number: 6963347
    Abstract: Multi-thread video data processing for use in a computer video display system. The parameters of vertex data are grouped into a plurality of groups. The computation needs of each group are broken down into several arithmetic operations to be performed by corresponding arithmetic units. The units concurrently process the vertex data.
    Type: Grant
    Filed: August 4, 2000
    Date of Patent: November 8, 2005
    Assignee: ATI International, SRL
    Inventors: Richard J. Selvaggi, Gary W. Root
  • Patent number: 6501479
    Abstract: An apparatus and method allows efficient processing of vertex data received in any suitable format. The method and apparatus accesses stored vertex data that may be stored in a plurality of different formats. A single copy of the received vertex data is stored in memory so that the system does not require a block of memory containing differing formats of the vertex data. The apparatus and method utilizes a universal vertex data fetching mechanism which controls retrieval of vertex data stored in the first format in memory based on multi-format description data. As such, the vertex data that may be received in one of a plurality of formats, is effectively coded so that a data fetcher may appropriately fetch vertex parameter data from suitable addresses independent of the format in which the vertex data was received.
    Type: Grant
    Filed: June 21, 1999
    Date of Patent: December 31, 2002
    Assignee: ATI International SRL
    Inventors: Gary W. Root, Richard J. Selvaggi
  • Patent number: 6438675
    Abstract: A memory access device is presented that synchronously transfers data between contiguous memory locations and a set of potentially non-contiguous registers, via a single load, or move, command. An address generator generates a series of contiguous memory addresses and a corresponding set of potentially non-contiguous register addresses in dependence upon the contents of a variable format command. In this manner, the data transfer efficiencies achievable by a block transfer of contiguous data elements can be achieved while simultaneously transferring the data to and from non-contiguous register locations. The memory access device may also include a data converter which optionally converts the data elements contained in memory to and from another form, such as from integer to floating point, during the data transfer process.
    Type: Grant
    Filed: March 23, 1998
    Date of Patent: August 20, 2002
    Assignee: ATI Technologies, Inc.
    Inventors: Gary Root, Richard J. Selvaggi
  • Patent number: 6317133
    Abstract: A graphics processing device includes a variable performance setup engine that processes vertexes of polygons to create surface coefficients, and a rasterizer that processes the surface coefficients to create pixel values corresponding to each pixel location within each polygon. The variable performance setup engine is structured so as to provide the surface attributes of each polygon within a time that is correlated to the size of the polygon. In this manner, the overall polygon processing rate will be substantially related to the size of the polygon. By providing a short processing time for small polygons, and a longer processing time for larger polygons, the image processing rate is shown to be less dependent upon the sizes of the polygons that comprise the image. The invention thereby provides for an overall image processing rate that is substantially independent of the complexity of the image being rendered.
    Type: Grant
    Filed: September 18, 1998
    Date of Patent: November 13, 2001
    Assignee: ATI Technologies, Inc.
    Inventors: Gary Root, Richard J. Selvaggi
  • Patent number: 5940089
    Abstract: A display list contains a plurality of entries which each point to a block of data to be displayed on a display screen. An attribute field associated with each entry defines the type of data in the block, so that the data may be properly processed and converted to a displayable image. The display list allows for multiple windows of different data types to be quickly processed and simultaneously displayed on the display screen.
    Type: Grant
    Filed: November 12, 1996
    Date of Patent: August 17, 1999
    Assignee: ATI Technologies
    Inventors: Stephen C. Dilliplane, Gary J. Lavelle, James G. Maino, Richard J. Selvaggi, Jack Tseng