Patents by Inventor Manuel J. Alvarez

Manuel J. Alvarez 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: 7538694
    Abstract: A network device, also referred to as the Compression Enhanced Network Processor (CENP), with embedded parallel (or fast serial) compression and/or decompression capability. The network device may be a network processor based multi-ported switch, bridge, router, hub, or other device. The CENP may provide improved data density, efficiency and bandwidth for each port of a multi-port network switch. In one embodiment, the CENP may comprise a network processor core, a memory management unit, a memory buffer (e.g., an SRAM memory buffer), and a system memory. The CENP may comprise a compression and decompression engine. In one embodiment, the memory management unit comprises the compression and decompression engine, and thus may be referred to as a Compression Enhanced Memory Controller Unit (CEMCU).
    Type: Grant
    Filed: July 25, 2002
    Date of Patent: May 26, 2009
    Assignee: Mossman Holdings LLC
    Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
  • Patent number: 7190284
    Abstract: An integrated memory controller (IMC) including MemoryF/X Technology which includes data compression and decompression engines for improved performance. The memory controller (IMC) of the present invention preferably selectively uses a combination of lossless, lossy, and no compression modes. Data transfers to and from the integrated memory controller of the present invention can thus be in a plurality of formats, these being compressed or normal (non-compressed), compressed lossy or lossless, or compressed with a combination of lossy and lossless. The invention also indicates preferred methods for specific compression and decompression of particular data formats such as digital video, 3D textures and image data using a combination of novel lossy and lossless compression algorithms in block or span addressable formats.
    Type: Grant
    Filed: January 29, 1999
    Date of Patent: March 13, 2007
    Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
  • Patent number: 7129860
    Abstract: A parallel decompression system and method that decompresses input compressed data in one or more decompression cycles, with a plurality of tokens typically being decompressed in each cycle in parallel. A parallel decompression engine may include an input for receiving compressed data, a history window, and a plurality of decoders for examining and decoding a plurality of tokens from the compressed data in parallel in a series of decompression cycles. Several devices are described that may include the parallel decompression engine, including intelligent devices, network devices, adapters and other network connection devices, consumer devices, set-top boxes, digital-to-analog and analog-to-digital converters, digital data recording, reading and storage devices, optical data recording, reading and storage devices, solid state storage devices, processors, bus bridges, memory modules, and cache controllers.
    Type: Grant
    Filed: March 28, 2001
    Date of Patent: October 31, 2006
    Assignee: Quickshift, Inc.
    Inventors: Manuel J. Alvarez, II, Peter Geiger, Thomas A. Dye
  • Patent number: 7089391
    Abstract: A system and method for managing a functional unit in a system using a data movement engine. An exemplary system may comprise a CPU coupled to a memory controller. The memory controller may include or couple to a data movement engine (DME). The memory controller may in turn couple to a system memory or other device which includes at least one functional unit. The DME may operate to transfer data to/from the system memory and/or the functional unit, as described herein. In one embodiment, the DME may also include multiple DME channels or multiple DME contexts. The DME may operate to direct the functional unit to perform operations on data in the system memory. For example, the DME may read source data from the system memory, the DME may then write the source data to the functional unit, the functional unit may operate on the data to produce modified data, the DME may then read the modified data from the functional unit, and the DME may then write the modified data to a destination in the system memory.
    Type: Grant
    Filed: August 23, 2002
    Date of Patent: August 8, 2006
    Assignee: Quickshift, Inc.
    Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
  • Patent number: 7047382
    Abstract: A method and system for allowing a processor or I/O master to address more system memory than physically exists are described. A Compressed Memory Management Unit (CMMU) may keep least recently used pages compressed, and most recently and/or frequently used pages uncompressed in physical memory. The CMMU translates system addresses into physical addresses, and may manage the compression and/or decompression of data at the physical addresses as required. The CMMU may provide data to be compressed or decompressed to a compression/decompression engine. In some embodiments, the data to be compressed or decompressed may be provided to a plurality of compression/decompression engines that may be configured to operate in parallel. The CMMU may pass the resulting physical address to the system memory controller to access the physical memory. A CMMU may be integrated in a processor, a system memory controller or elsewhere within the system.
    Type: Grant
    Filed: July 26, 2001
    Date of Patent: May 16, 2006
    Assignee: Quickshift, Inc.
    Inventors: Peter Geiger, Manuel J. Alvarez, II, Thomas A. Dye
  • Patent number: 7032158
    Abstract: A method and system for identifying and configuring device-enhanced memory modules at system startup is described. A driver is described that performs a wakeup procedure at startup to identify installed device-enhanced memory modules, detect memory implementations such as interleaving and striping on memory modules, detect error detection and correction (ECC) implementations, and to configure the identified device-enhanced memory modules to use the detected implementations. The method may include several phases including, but not limited to, a start block phase, an ECC configuration phase, an ECC check phase, an interleave detect and configuration phase, a buffer check phase, and a final configuration phase. One or more of the phases may be performed at system startup and/or during normal system operation. Methods for shutting down and providing a sleep mode for device-enhanced memory modules are also described.
    Type: Grant
    Filed: April 23, 2001
    Date of Patent: April 18, 2006
    Assignee: Quickshift, Inc.
    Inventors: Manuel J. Alvarez, II, Thomas A. Dye, Peter Geiger
  • Patent number: 6885319
    Abstract: Embodiments of a compression/decompression (codec) system may include a plurality of data compression engines each implementing a different data compression algorithm. A codec system may be designed for the reduction of data bandwidth and storage requirements and for compressing/decompressing data. Uncompressed data may be compressed using a plurality of compression engines in parallel, with each engine compressing the data using a different lossless data compression algorithm. At least one of the data compression engines may implement a parallel lossless data compression algorithm designed to process stream data at more than a single byte or symbol at one time. The plurality of different versions of compressed data generated by the different compression algorithms may be examined to determine an optimal version of the compressed data according to one or more predetermined criteria. A codec system may be integrated in a processor, a system memory controller or elsewhere within a system.
    Type: Grant
    Filed: January 11, 2002
    Date of Patent: April 26, 2005
    Assignee: Quickshift, Inc.
    Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
  • Patent number: 6879266
    Abstract: An memory module including parallel data compression and decompression engines for improved performance. The memory module includes MemoryF/X Technology. To improve latency and reduce performance degradations normally associated with compression and decompression techniques, the MemoryF/X Technology encompasses multiple novel techniques such as: 1) parallel lossless compression/decompression; 2) selectable compression modes such as lossless, lossy or no compression; 3) priority compression mode; 4) data cache techniques; 5) variable compression block sizes; 6) compression reordering; and 7) unique address translation, attribute, and address caches. The parallel compression and decompression algorithm allows high-speed parallel compression and high-speed parallel decompression operation. The memory module-integrated data compression and decompression capabilities remove system bottlenecks and increase performance.
    Type: Grant
    Filed: July 14, 2000
    Date of Patent: April 12, 2005
    Assignee: Quickshift, Inc.
    Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
  • Patent number: 6822589
    Abstract: A parallel decompression system and method which decompresses input compressed data in one or more decompression cycles, with a plurality of tokens typically being decompressed in each cycle in parallel. A parallel decompression engine may include an input for receiving compressed data, a history window, and a plurality of decoders for examining and decoding a plurality of tokens from the compressed data in parallel in a series of decompression cycles. A token may represent one or more compressed symbols or one uncompressed symbol. The parallel decompression engine may also include preliminary select generation logic for generating a plurality of preliminary selects in parallel. A preliminary select may point to an uncompressed symbol in the history window, an uncompressed symbol from a token in the current decompression cycle, or a symbol being decompressed in the current decompression cycle.
    Type: Grant
    Filed: January 26, 2000
    Date of Patent: November 23, 2004
    Assignee: Quickshift, Inc.
    Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
  • Patent number: 6819271
    Abstract: Embodiments of a compression/decompression (codec) system may include a plurality of parallel data compression and/or parallel data decompression engines designed for the reduction of data bandwidth and storage requirements and for compressing/decompressing data. The plurality of compression/decompression engines may each implement a parallel lossless data compression/decompression algorithm. The codec system may split incoming uncompressed or compressed data up among the plurality of compression/decompression engines. Each of the plurality of compression/decompression engines may compress or decompress a particular part of the data. The codec system may then merge the portions of compressed or uncompressed data output from the plurality of compression/decompression engines. The codec system may implement a method for performing parallel data compression and/or decompression designed to process stream data at more than a single byte or symbol at one time.
    Type: Grant
    Filed: January 11, 2002
    Date of Patent: November 16, 2004
    Assignee: Quickshift, Inc.
    Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
  • Patent number: 6567091
    Abstract: A graphics controller which performs display list-based video refresh operations that enable objects with independent frame rates to be efficiently assembled is disclosed. The graphics controller maintains a virtual display refresh list (VDRL) comprising a plurality of pointers to scan line segments in memory. The graphics controller also creates, maintains, and deletes draw display lists (DDLs) that comprise pointers to object display list subroutines (ODLs) that independently draw objects in memory. The ODLs may allocated one or more buffers in memory into which different frames of the objects are drawn. When an ODL has completed executing, the corresponding pointer in the DDL may be updated to point to the buffer location in memory that stores the newly completed object frame. The VDRL is maintained independently (and may be doubled-buffered) and is updated using the DDLs.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: May 20, 2003
    Assignee: Interactive Silicon, Inc.
    Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez, II
  • Publication number: 20030061457
    Abstract: A system and method for managing a functional unit in a system using a data movement engine. An exemplary system may comprise a CPU coupled to a memory controller. The memory controller may include or couple to a data movement engine (DME). The memory controller may in turn couple to a system memory or other device which includes at least one functional unit. The DME may operate to transfer data to/from the system memory and/or the functional unit, as described herein. In one embodiment, the DME may also include multiple DME channels or multiple DME contexts. The DME may operate to direct the functional unit to perform operations on data in the system memory. For example, the DME may read source data from the system memory, the DME may then write the source data to the functional unit, the functional unit may operate on the data to produce modified data, the DME may then read the modified data from the functional unit, and the DME may then write the modified data to a destination in the system memory.
    Type: Application
    Filed: August 23, 2002
    Publication date: March 27, 2003
    Applicant: Interactive Silicon, Incorporated
    Inventors: Peter D. Geiger, Manuel J. Alvarez, Thomas A. Dye
  • Publication number: 20030058873
    Abstract: A network device, also referred to as the Compression Enhanced Network Processor (CENP), with embedded parallel (or fast serial) compression and/or decompression capability. The network device may be a network processor based multi-ported switch, bridge, router, hub, or other device. The CENP may provide improved data density, efficiency and bandwidth for each port of a multi-port network switch. In one embodiment, the CENP may comprise a network processor core, a memory management unit, a memory buffer (e.g., an SRAM memory buffer), and a system memory. The CENP may comprise a compression and decompression engine. In one embodiment, the memory management unit comprises the compression and decompression engine, and thus may be referred to as a Compression Enhanced Memory Controller Unit (CEMCU).
    Type: Application
    Filed: July 25, 2002
    Publication date: March 27, 2003
    Applicant: Interactive Silicon, Incorporated
    Inventors: Peter D. Geiger, Manuel J. Alvarez, Thomas A. Dye
  • Patent number: 6523102
    Abstract: An ASIC device embedded into the memory subsystem of a computing device used to accelerate the transfer of active memory pages for usage by the system CPU from either compressed memory cache buffer or the addition of a compressed disk subsystem for improved system cost and performance. The Compression Enhanced Dual In-line Memory Module of the present invention uses parallel lossless compression and decompression engines embedded into the ASIC device for improved system memory page density and I/O subsystem data bandwidth. In addition, the operating system software optimizes page transfers between compressed disk partitions, compressed cache memory and inactive/active page memory within the computer system. The disclosure also indicates preferred methods for initialization, recognition and operation of the ASIC device transparently within industry standard memory interfaces and subsystems.
    Type: Grant
    Filed: April 14, 2000
    Date of Patent: February 18, 2003
    Assignee: Interactive Silicon, Inc.
    Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
  • Patent number: 6518965
    Abstract: A spanning based method for rendering and display of 3D graphical data on a display device. The method first parses the geometry data, generates independent vertex-sorted geometric primitives (e.g., triangles) and then performs setup on the geometric primitives. The method then computes horizontal segments that make up each triangle, performs a Y sort of the triangles for each span line, and performs an X sort of triangle segments and vertices for each span line. The method then performs a Z rules determination for each span line to discard or reject hidden segments. The method then constructs the 3-D VDRL list for each span line comprising pointers which reference viewed triangle spans. During execution, the 3-D VDRL is read and interpreted to generate pixel data. The pixel data includes the viewed triangle spans and may include texture data or other data referenced by the VDRL.
    Type: Grant
    Filed: October 4, 2001
    Date of Patent: February 11, 2003
    Assignee: Interactive Silicon, Inc.
    Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez, II
  • Publication number: 20020184579
    Abstract: A method and system for identifying and configuring device-enhanced memory modules at system startup is described. A driver is described that performs a wakeup procedure at startup to identify installed device-enhanced memory modules, detect memory implementations such as interleaving and striping on memory modules, detect error detection and correction (ECC) implementations, and to configure the identified device-enhanced memory modules to use the detected implementations. The method may include several phases including, but not limited to, a start block phase, an ECC configuration phase, an ECC check phase, an interleave detect and configuration phase, a buffer check phase, and a final configuration phase. One or more of the phases may be performed at system startup and/or during normal system operation. Methods for shutting down and providing a sleep mode for device-enhanced memory modules are also described.
    Type: Application
    Filed: April 23, 2001
    Publication date: December 5, 2002
    Inventors: Manuel J. Alvarez, Thomas A. Dye, Peter Geiger
  • Publication number: 20020158865
    Abstract: A video/graphics controller (IMC) which includes a novel spanning based method for rendering and display of 3D graphical data on a display device. The IMC first operates to construct a 3-D Virtual display refresh list (3D-VDRL) in memory. The IMC constructs the 3-D VDRL by first parsing the geometry data, generating independent vertex-sorted geometric primitives (e.g., triangles) and then performing setup on the geometric primitives. Setup includes assembling a list of parameters for each of the triangle vertices and determining slope values for the triangle edges. The IMC uses 3D vertex and slope information to compute horizontal segments that make up each triangle. The IMC then performs a Y sort of the triangles for each span line, and an X sort of triangles segments and vertices for each span line. For each span line, triangle segments are generated and X sorted based on starting X position of triangles for each segment.
    Type: Application
    Filed: October 4, 2001
    Publication date: October 31, 2002
    Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
  • Publication number: 20020145611
    Abstract: A graphics controller which performs display list-based video refresh operations that enable objects with independent frame rates to be efficiently assembled is disclosed. The graphics controller maintains a virtual display refresh list (VDRL) comprising a plurality of pointers to scan line segments in memory. The graphics controller also creates, maintains, and deletes draw display lists (DDLs) that comprise pointers to object display list subroutines (ODLs) that independently draw objects in memory. The ODLs may allocated one or more buffers in memory into which different frames of the objects are drawn. When an ODL has completed executing, the corresponding pointer in the DDL may be updated to point to the buffer location in memory that stores the newly completed object frame. The VDRL is maintained independently (and may be doubled-buffered) and is updated using the DDLs.
    Type: Application
    Filed: February 28, 2002
    Publication date: October 10, 2002
    Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
  • Publication number: 20020135585
    Abstract: A graphics controller which performs display list-based video refresh operations and compresses assembled scan lines or portions thereof is disclosed. The graphics controller maintains a virtual display refresh list (VDRL) comprising a plurality of pointers to scan line segments in memory. The graphics controller may also create, maintain, and delete draw display lists (DDLs) that comprise pointers to object display list subroutines (ODLs) that independently draw objects in memory. The ODLs may allocated one or more buffers in memory into which different frames of the objects are drawn. When an ODL has completed executing, the corresponding pointer in the DDL may be updated to point to the buffer location in memory that stores the newly completed object frame. The VDRL is maintained independently (and may be doubled-buffered) and is updated using the DDLs. The video data assembled as the VDRL is executed is output to the display device. The video data may also be compressed and stored into memory.
    Type: Application
    Filed: February 28, 2002
    Publication date: September 26, 2002
    Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
  • Patent number: RE43483
    Abstract: A method and system for allowing a processor or I/O master to address more system memory than physically exists are described. A Compressed Memory Management Unit (CMMU) may keep least recently used pages compressed, and most recently and/or frequently used pages uncompressed in physical memory. The CMMU translates system addresses into physical addresses, and may manage the compression and/or decompression of data at the physical addresses as required. The CMMU may provide data to be compressed or decompressed to a compression/decompression engine. In some embodiments, the data to be compressed or decompressed may be provided to a plurality of compression/decompression engines that may be configured to operate in parallel. The CMMU may pass the resulting physical address to the system memory controller to access the physical memory. A CMMU may be integrated in a processor, a system memory controller or elsewhere within the system.
    Type: Grant
    Filed: May 15, 2008
    Date of Patent: June 19, 2012
    Assignee: Mossman Holdings LLC
    Inventors: Peter Geiger, Manuel J. Alvarez, II, Thomas A. Dye