Patent ID: 7103822

Claim:
A method for allowing a Cyclic Redundancy Check (CRC) checking ‘N-bit at a time’ of a data frame having a length not necessarily a multiple of said N-bit wherein said N-bit is a predetermined number of bits and the length of the data frame is not initially known, said method comprising the steps of: (a) receiving N-bit of said data frame; (i) determining CRC on said received N-bit; (ii) updating a Field Check Sequence (FCS) register; (iii) determining if said length of said data frame is known, wherein when said length of said data frame is not yet known, repeating steps (a)(i)–(iii) ‘N-bit at a time’, and (b) simultaneously with step (a) receiving said data frame; (i) extracting a length from a protocol header of said data frame; (ii) determining a misalignment d between said length of said data frame and an N-bit boundary of said data frame, wherein said N-bit boundary is the least whole number of N-bits required to encompass said length of said data frame; and when said length of said data frame is known, comparing said extracted length of said data frame to a number of N-bits which have been processed for said data frame and determining whether more bits are to be processed, further wherein, when more bits are left to process, repeating steps (a)(i)–(iii) ‘N-bit at a time’, and when no more bits are left to process, comparing a current value of said FCS register to a pre-stored vector corresponding to said misalignment d, wherein when a match occurs checking of said data frame passes and said data frame is accepted, and when a match does not occur checking of said data frame fails and said data frame is rejected.