APPARATUS AND METHOD FOR PERFORMING CYCLIC REDUNDANCY CHECK (CRC) ON PARTIAL PROTOCOL DATA UNITS (PDUS)
First Claim
1. An apparatus for processing protocol data units (PDUs), comprising:
- a cyclic redundancy check (CRC) controller;
a direct memory access (DMA) controller coupled to the CRC controller; and
a memory coupled to the CRC controller and the DMA controller, the memory storing a plurality of partial inbound PDUs;
wherein the DMA controller transfers each of the plurality of inbound partial PDUs to the memory as each of the plurality of inbound PDUs is received; and
wherein the CRC controller calculates a first intermediate CRC value for a first inbound partial PDU, and further calculates one or more subsequent intermediate CRC values for each of the plurality of partial inbound PDUs remaining, as each of the plurality of inbound PDUs is received.
4 Assignments
0 Petitions
Accused Products
Abstract
The present invention discloses an apparatus and method for performing cyclic redundancy check (CRC) on partial protocol data units (PDUs). The disclosed apparatus is designed to off-load the CRC calculation for transmit or receive from a host computer. According to the disclosed method, when generating CRC for partial PDUs, for each such PDUs a decision is made to determine whether a CRC action is required, i.e., if CRC should be calculated, checked or placed in the outgoing byte stream. When partial CRC calculation is performed the intermediate value is saved into memory and later is used for calculating the CRC for a consecutive partial PDU. In accordance with a preferred embodiment of the invention, the need to re-calculate the CRC in a case of a re-transmit request is eliminated.
22 Citations
9 Claims
-
1. An apparatus for processing protocol data units (PDUs), comprising:
-
a cyclic redundancy check (CRC) controller; a direct memory access (DMA) controller coupled to the CRC controller; and a memory coupled to the CRC controller and the DMA controller, the memory storing a plurality of partial inbound PDUs; wherein the DMA controller transfers each of the plurality of inbound partial PDUs to the memory as each of the plurality of inbound PDUs is received; and wherein the CRC controller calculates a first intermediate CRC value for a first inbound partial PDU, and further calculates one or more subsequent intermediate CRC values for each of the plurality of partial inbound PDUs remaining, as each of the plurality of inbound PDUs is received. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for processing protocol data units (PDUs), comprising:
-
a direct memory access (DMA) controller storing a plurality of partial inbound PDUs as each of the plurality of inbound PDUs is received, an inbound PDU comprising the plurality of partial inbound PDUs; and a cyclic redundancy check (CRC) controller calculating a first intermediate CRC value for a first inbound partial PDU, and further calculating one or more subsequent intermediate CRC values for each of the plurality of partial inbound PDUs remaining, as each of the plurality of partial inbound PDUs is received. - View Dependent Claims (7, 8, 9)
-
Specification