calculated at the crc calculator at 506 in an embodiment at 506 the crc value is calculated based on the data block and an additional input it is noted that the additional value is zero or some other suitable value then at 508 the calculated crc value is provided to a next crc calculator a new data block of the message is also received at the next crc calculator at 510 a next crc value is calculated at the next crc calculator at 512 a determination of whether a last data block of the message is being processed is performed at 514 if the new data block processed at the next crc calculator is the last data block of the message then the next crc value is output as the crc code of the message at 516 if the last data block of the message has not been processed yet then the process continues in cascade to a following crc calculator until the last data block of the message has been processed fig6 shows a diagram of an example system 600 for selecting a processing core to process a message based on a crc code calculated for the message the example system 600 includes an integrated circuit 602 which receives an incoming data packet 604 from a network 606 a message generator 608 in the integrated circuit 602.