US 7,538,694 B2
Network device with improved storage density and access speed using compression techniques
Peter D. Geiger, Austin, Tex. (US); Manuel J. Alvarez, II, Austin, Tex. (US); and Thomas A. Dye, Austin, Tex. (US)
Assigned to Mossman Holdings LLC, Wilmington, Del. (US)
Filed on Jul. 25, 2002, as Appl. No. 10/205,590.
Application 10/205590 is a continuation in part of application No. 09/491343, filed on Jan. 26, 2000, granted, now 6,822,589.
Application 09/491343 is a continuation in part of application No. 09/239659, filed on Jan. 29, 1999, granted, now 7,190,284.
Claims priority of provisional application 60/307964, filed on Jul. 26, 2001.
Prior Publication US 2003/0058873 A1, Mar. 27, 2003
Int. Cl. H03M 7/00 (2006.01)
U.S. Cl. 341—51  [341/87] 28 Claims
OG exemplary drawing
 
1. A network device, comprising:
a port for coupling to a network;
network logic coupled to the port, wherein the network logic is operable to perform processing on packets received from and/or provided to the port;
a parallel compression/decompression engine coupled to at least one of the port and the network logic, wherein the parallel compression/decompression engine is operable to compress and/or decompress data comprised in at least a portion of the packets;
wherein the parallel compression/decompression engine comprises a parallel compression engine for compressing uncompressed data, wherein the parallel compression engine comprises:
an input for receiving uncompressed data, wherein the uncompressed data comprises a plurality of symbols;
a history table comprising entries, wherein each entry comprises at least one symbol;
a plurality of comparators for comparing the plurality of symbols with entries in the history table in a parallel fashion, wherein the plurality of comparators produce compare results;
match information logic coupled to the plurality of comparators for determining match information for each of said plurality of symbols based on the compare results; and
an output coupled to the match information logic for outputting compressed data in response to the match information, wherein said compressed data includes a count value and an entry pointer for a contiguous match, wherein the entry pointer points to the entry in the history table which produced the contiguous match, wherein the count value indicates a number of matching symbols in the contiguous match.