240 Hardware Reference Manual
Intel® IXP2800 Network Processor
SHaC — Unit Expansion
Equation 7. (48-bit hash operation)
Equation 8. (64-bit hash operation)
Equation 9. (128-bit hash operation)
The division results in a quotient Q(x), a polynomial of order-46, order-62, or order-126, and a
remainder R(x), and a polynomial of order-47, order-63, or order-127. The operands are related by
the equation:
Equation 10.
The generator polynomial has the property of irreducibility. As a result, for a fixed multiplier M(x),
there is a unique remainder R(x) for every input A(x). The quotient Q(x), can then be discarded,
since input A(x) can be derived from its corresponding remainder R(x). A given bounded set of
input values A(x) — for example, 8K or 16K table entries — with bit weights of an arbitrary
density function can be mapped one-to-one into a set of remainders R(x) such that the bit weights
of the resulting Hashed Arguments (a subset of all values of R(x) polynomials) are all
approximately equal.
In other words, there is a high likelihood that the low-order set of bits from the Hash Arguments are
unique, so they can be used to build an index into the table. If the hash algorithm does not provide
a uniform hash distribution for a given set of data, the programmable hash multiplier (M(x)) may
be modified to provide better results.
G48 x() 1x10 x25 x36 x48
++++=
G64 x() 1x17 x35 x54 x64
++++=
G128 x() 1x33 x69 x98 x128
++++=
Ax()Mx() Qx()Gx() Rx()+=