Patents Assigned to X-Engines, Inc.
  • Patent number: 8572140
    Abstract: An input lookup key is hashed and the hashed key divided into stride bits into a multi-level Trie structure. A compression function logically combines the stride bits to generate the compressed index bits into the stride tables. The bucket in the last stride table found by the hashed key may have several keys that collide at the same hash value. Discriminant bits are read from the key and select a stored key in the bucket table for verification of its result. Since the hashed key is a compression of the longer input key, more information is contained per bit of the hashed key than in the long key. The multi-stride lookup is performed first on the hashed key, allowing a faster convergence to the lookup result. The first stride can index a single hash table, with the remaining hash bits and discriminant bits used to select from among colliding keys.
    Type: Grant
    Filed: October 1, 2010
    Date of Patent: October 29, 2013
    Assignee: X-Engines, Inc.
    Inventor: Millind Mittal
  • Patent number: 7921088
    Abstract: Compressed stride tables in a multi-bit Trie structure perform lookups. An input lookup key is divided into strides including a current stride of S bits. A valid entry in a current stride table is located by compressing the S bits, forming a compressed index of D bits into the current stride table. A compression function logically combines the S bits to generate the D compressed index bits. An entry in a prior-level table points to the current stride table and has an opcode field indicating which compression function and mask to use. Compression functions can include counts of leading-repeated bits, and very complex functions such as hashes, CRC, encryption. A function table stores results of the complex functions that are addressed by the S bits of the current stride. The opcode field in the stride entry selects from among several tables, each storing results for a different function.
    Type: Grant
    Filed: March 7, 2007
    Date of Patent: April 5, 2011
    Assignee: X-Engines, Inc.
    Inventor: Millind Mittal
  • Patent number: 7827218
    Abstract: An input lookup key is hashed and the hashed key divided into stride bits into a multi-level Trie structure. A compression function logically combines the stride bits to generate the compressed index bits into the stride tables. The bucket in the last stride table found by the hashed key may have several keys that collide at the same hash value. Discriminant bits are read from the key and select a stored key in the bucket table for verification of its result. Since the hashed key is a compression of the longer input key, more information is contained per bit of the hashed key than in the long key. The multi-stride lookup is performed first on the hashed key, allowing a faster convergence to the lookup result. The first stride can index a single hash table, with the remaining hash bits and discriminant bits used to select from among colliding keys.
    Type: Grant
    Filed: April 25, 2007
    Date of Patent: November 2, 2010
    Assignee: X-Engines, Inc.
    Inventor: Millind Mittal
  • Publication number: 20090024643
    Abstract: A lookup is performed using multiple levels of compressed stride tables in a multi-bit Trie structure. An input lookup key is divided into several strides including a current stride of S bits. A valid entry in a current stride table is located by compressing the S bits to form a compressed index of D bits into the current stride table. A compression function logically combines the S bits to generate the D compressed index bits. An entry in a prior-level table points to the current stride table and has a field indicating which compression function and mask to use. Compression functions can include XOR, shifts, rotates, and multi-bit averaging. Rather than store all 2S entries, the current stride table is compressed to store only 2D entries. Ideally, the number of valid entries in the current stride table is between 2D?1 and 2D for maximum compression. Storage requirements are reduced.
    Type: Application
    Filed: August 13, 2008
    Publication date: January 22, 2009
    Applicant: X-ENGINES, INC
    Inventor: Millind Mittal
  • Patent number: 7430560
    Abstract: A lookup is performed using multiple levels of compressed stride tables in a multi-bit Trie structure. An input lookup key is divided into several strides including a current stride of S bits. A valid entry in a current stride table is located by compressing the S bits to form a compressed index of D bits into the current stride table. A compression function logically combines the S bits to generate the D compressed index bits. An entry in a prior-level table points to the current stride table and has a field indicating which compression function and mask to use. Compression functions can include XOR, shifts, rotates, and multi-bit averaging. Rather than store all 2S entries, the current stride table is compressed to store only 2D entries. Ideally, the number of valid entries in the current stride table is between 2D?1 and 2D for maximum compression. Storage requirements are reduced.
    Type: Grant
    Filed: July 3, 2006
    Date of Patent: September 30, 2008
    Assignee: X-Engines, Inc.
    Inventor: Millind Mittal