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: 7538694Abstract: 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: GrantFiled: July 25, 2002Date of Patent: May 26, 2009Assignee: Mossman Holdings LLCInventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
-
Patent number: 7190284Abstract: 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: GrantFiled: January 29, 1999Date of Patent: March 13, 2007Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
-
Patent number: 7129860Abstract: 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: GrantFiled: March 28, 2001Date of Patent: October 31, 2006Assignee: Quickshift, Inc.Inventors: Manuel J. Alvarez, II, Peter Geiger, Thomas A. Dye
-
Managing a codec engine for memory compression/decompression operations using a data movement engine
Patent number: 7089391Abstract: 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: GrantFiled: August 23, 2002Date of Patent: August 8, 2006Assignee: Quickshift, Inc.Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye -
Patent number: 7047382Abstract: 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: GrantFiled: July 26, 2001Date of Patent: May 16, 2006Assignee: Quickshift, Inc.Inventors: Peter Geiger, Manuel J. Alvarez, II, Thomas A. Dye
-
Patent number: 7032158Abstract: 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: GrantFiled: April 23, 2001Date of Patent: April 18, 2006Assignee: Quickshift, Inc.Inventors: Manuel J. Alvarez, II, Thomas A. Dye, Peter Geiger
-
Patent number: 6885319Abstract: 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: GrantFiled: January 11, 2002Date of Patent: April 26, 2005Assignee: Quickshift, Inc.Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
-
Patent number: 6879266Abstract: 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: GrantFiled: July 14, 2000Date of Patent: April 12, 2005Assignee: Quickshift, Inc.Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
-
Patent number: 6822589Abstract: 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: GrantFiled: January 26, 2000Date of Patent: November 23, 2004Assignee: Quickshift, Inc.Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
-
Patent number: 6819271Abstract: 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: GrantFiled: January 11, 2002Date of Patent: November 16, 2004Assignee: Quickshift, Inc.Inventors: Peter D. Geiger, Manuel J. Alvarez, II, Thomas A. Dye
-
Patent number: 6567091Abstract: 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: GrantFiled: February 28, 2002Date of Patent: May 20, 2003Assignee: Interactive Silicon, Inc.Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez, II
-
Publication number: 20030061457Abstract: 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: ApplicationFiled: August 23, 2002Publication date: March 27, 2003Applicant: Interactive Silicon, IncorporatedInventors: Peter D. Geiger, Manuel J. Alvarez, Thomas A. Dye
-
Publication number: 20030058873Abstract: 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: ApplicationFiled: July 25, 2002Publication date: March 27, 2003Applicant: Interactive Silicon, IncorporatedInventors: Peter D. Geiger, Manuel J. Alvarez, Thomas A. Dye
-
Patent number: 6523102Abstract: 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: GrantFiled: April 14, 2000Date of Patent: February 18, 2003Assignee: Interactive Silicon, Inc.Inventors: Thomas A. Dye, Manuel J. Alvarez, II, Peter Geiger
-
Patent number: 6518965Abstract: 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: GrantFiled: October 4, 2001Date of Patent: February 11, 2003Assignee: Interactive Silicon, Inc.Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez, II
-
Publication number: 20020184579Abstract: 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: ApplicationFiled: April 23, 2001Publication date: December 5, 2002Inventors: Manuel J. Alvarez, Thomas A. Dye, Peter Geiger
-
Publication number: 20020158865Abstract: 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: ApplicationFiled: October 4, 2001Publication date: October 31, 2002Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
-
Publication number: 20020145611Abstract: 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: ApplicationFiled: February 28, 2002Publication date: October 10, 2002Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
-
Publication number: 20020135585Abstract: 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: ApplicationFiled: February 28, 2002Publication date: September 26, 2002Inventors: Thomas A. Dye, Peter D. Geiger, Manuel J. Alvarez
-
Patent number: RE43483Abstract: 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: GrantFiled: May 15, 2008Date of Patent: June 19, 2012Assignee: Mossman Holdings LLCInventors: Peter Geiger, Manuel J. Alvarez, II, Thomas A. Dye