A combination error detector to detect errors in an InfiniBand packet. The detector
includes registers that stores fields of an InfiniBand packet as the packet is
being received and comparison logic that, as the fields are stored in the registers,
compares the fields with check values and when an error is detected sets a flag
corresponding to the error. After the packet has been completely received and all
checks have been complete, all of the error flags are prioritized in accordance
with the InfiniBand Architecture Specification.