Partitioned "Eq" function

The basic principle here is that the basic (lowest, split) input data is compared (eq'd), then, depending on the partitions, those partial results are ANDed together, on the basis that these chains will tell if all bits in a particular partition are equal.

Boolean truth table

p2p1p0 o0 o1 o2 o3
++++++ ++++++++ ++++++++ ++++++++ ++
0 0 0 &(eq0-3) 0 0 0
0 0 1 eq0 &(eq1-3) 0 0
0 1 0 &(eq0-1) 0 &(eq2-3) 0
0 1 1 eq0 eq1 &(eq2-3) 0
1 0 0 &(eq0-2) 0 0 eq3
1 0 1 eq0 &(eq1-2) 0 eq3
1 1 0 &(eq0-1) 0 eq2 eq3
1 1 1 eq0 eq1 eq2 eq3