The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Apr. 25, 1995
Filed:
Nov. 01, 1993
Keith G Boyer, Northglenn, CO (US);
Kenneth R Burns, Bloomington, MN (US);
Thomas H Gohl, Westminster, CO (US);
Terry R Gottehrer, Louisville, CO (US);
Bernie R Marasco, Lafayette, CO (US);
Michael R Stephens, Westminster, CO (US);
Robert D Thompson, Loveland, CO (US);
Storage Technology Corporation, Louisville, CO (US);
Abstract
The present invention discloses a method and apparatus for computing CRC codes for fixed length page buffers of user data where the user data arrives from a transmission device in variable length packets with the packet contents being out of sequential order. The received data is written to a storage device after being restored to the correct sequential order. The data packets are comprised of a header portion and a data portion. The transmission and compression methods commonly employed by the transmission device dictates that the header portion of each packet follows the data portion. The present invention computes a complete CRC code for the data stored in a page buffer in real time as the packets are received by using several registers for saving intermediate CRC codes and circuitry to combine partial CRC codes for those packet portions received out of order. Additional circuitry is provided which reorders the data packet portions received out of order back into sequential order as the data is stored in a page buffer memory in real time. Computing the CRC codes in real time permits the saving of costs associated with other approaches that significantly buffer the incoming packets to permit subsequent reordering and CRC computation. The present invention assures data integrity of data from the time it is received from the compression unit until the time it is sent to the storage device. In addition, the present inventions ability to compute the CRC codes real time maintains optimal performance of data throughput of the storage subsystem. The present invention alleviates problems relating to delaying new data packet transmissions as deferred CRC computations are performed on previous packets reordered in temporary buffer memory.