← Back to Patent Explorer
US5506958A Expired / Lapsed US ⏱️ 0.0 years remaining

Error detection for parallel data transfer between a processor and a peripheral device by comparing regisgers storing a sum of values in bytes of data transferred

Assignee: Seagate Technology LLC
•
Filing: 1993-02-10
•
Granted: 1996-04-09
•
Expires: 2013-02-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for performing error detection on data transfer through a parallel interface port at a substantially increased data transfer rate with a minimum of handshaking. Blocks of data are transferred between a sending device and a receiving device, and each of the respective devices maintains a checksum. Each checksum comprises an initial value, and added to that value is the value of each data byte transferred through the parallel port interface. After a block of data bytes has been transferred, the checksum maintained by the sending device and the receiving device are compared. If the checksums are equal, no error is assumed to have occurred during the data transfer. If the checksums are not equal, an error is assumed to have occurred during the data transfer, and the data is retransferred with the previously transferred block discarded.

Inventors

  • 👤 Mark Myran

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 23:17
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/38; G06F13/382; G06F13/385; G06F11/00; G06F11/07; G06F11/08

Claims Analysis

Total Claims: 8
Claim 1
Independent Claim 364 words
A computer system for transferring of data bytes in a number of data transfer modes and providing error detection during transfer of data bytes over parallel data lines, comprising: parallel data lines; a processing unit including: a parallel interface port connected to the parallel data lines; a first checkvalue register connected to receive the value of data bytes transferred from the parallel interface port to the parallel data lines, the first checkvalue register being initialized to store a predetermined value prior to transfer of data bytes from the processing unit over the parallel data lines and increased by a value of each data byte transferred from the processing unit after initialization; comparison means for comparing values stored in the first checkvalue register and a second checkvalue register after a predetermined number of data bytes have been transferred from the processing unit to a memory, the comparison means indicating when a match occurred, or when a match did not occur; an interface circuit including: said memory for storing a predetermined number of data bytes, the memory being connected to the parallel data lines; said second checkvalue register connected to the parallel data lines to receive data bytes transferred to the memory, the second checkvalue register being initialized to store a predetermined value prior to receipt of data bytes by the memory and increased by a value of each data byte received by the memory after initialization; a control status register storing a data transfer mode indication for controlling of a data transfer mode, the control status register being coupled to the processing unit; a peripheral device including a peripheral controller connected to the memory; and wherein the processing unit causes a transfer of the predetermined number of data bytes from the memory to the peripheral controller when the comparison means indicates a match occurred, retransfers the predetermined number of data bytes from the processing unit to the memory when the comparison means indicates a match did not occur, and causes the control status register to change the data transfer mode indication when the comparison means indicates a match did not occur after the predetermined number of data bytes are retransferred a predetermined number of times.
Claim 2
Dependent Claim 364 words
A computer system for transferring of data bytes in a number of data transfer modes and providing error detection during transfer of data bytes over parallel data lines, comprising: parallel data lines; a processing unit including: a parallel interface port connected to the parallel data lines; a first checkvalue register connected to receive the value of data bytes transferred from the parallel interface port to the parallel data lines, the first checkvalue register being initialized to store a predetermined value prior to transfer of data bytes from the processing unit over the parallel data lines and increased by a value of each data byte transferred from the processing unit after initialization; comparison means for comparing values stored in the first checkvalue register and a second checkvalue register after a predetermined number of data bytes have been transferred from the processing unit to a memory, the comparison means indicating when a match occurred, or when a match did not occur; an interface circuit including: said memory for storing a predetermined number of data bytes, the memory being connected to the parallel data lines; said second checkvalue register connected to the parallel data lines to receive data bytes transferred to the memory, the second checkvalue register being initialized to store a predetermined value prior to receipt of data bytes by the memory and increased by a value of each data byte received by the memory after initialization; a control status register storing a data transfer mode indication for controlling of a data transfer mode, the control status register being coupled to the processing unit; a peripheral device including a peripheral controller connected to the memory; and wherein the processing unit causes a transfer of the predetermined number of data bytes from the memory to the peripheral controller when the comparison means indicates a match occurred, retransfers the predetermined number of data bytes from the processing unit to the memory when the comparison means indicates a match did not occur, and causes the control status register to change the data transfer mode indication when the comparison means indicates a match did not occur after the predetermined number of data bytes are retransferred a predetermined number of times.
Claim 3
Dependent Claim 31 words
The computer system of claim 6, further comprising a means for overwriting in the memory the predetermined number of data bytes if the comparison means indicates a match did not occur.
Claim 4
Dependent Claim 17 words
The computer system of claim 1 wherein the data transfer mode indication indicates a data transfer rate.
Claim 5
Independent Claim 245 words
A method for determining if an error has occurred during the transfer of data bytes over parallel data lines in a computer system which includes a processor connected to the data lines, the processor including a first checkvalue register, the computer system further including an interface unit including a temporary memory and a second checkvalue register each connected to the parallel data lines, and a peripheral device including a peripheral controller connected to the parallel data lines, the method comprising the steps of: initializing the first checkvalue register to a predetermined value; initializing the second checkvalue register to the predetermined value; transferring data bytes from the processor to the memory; increasing the first checkvalue register by the value of each data byte transferred from the processor; increasing the second checkvalue register by the value of each data byte transferred to the memory; comparing the first and second checkvalue registers after a predetermined number of data bytes have been transferred from the processor to the memory to determine if a match has occurred; transferring the predetermined number of data bytes from the temporary memory to the peripheral controller if it is determined that a match occurred; retransferring the predetermined number of data bytes from the processor to the memory if it is determined that a match did not occur; and changing a mode of data transfer when a match does not occur after the predetermined number of data bytes are retransferred a predetermined number of times.
Claim 6
Independent Claim 245 words
A method for determining if an error has occurred during the transfer of data bytes over parallel data lines in a computer system which includes a processor connected to the data lines, the processor including a first checkvalue register, the computer system further including an interface unit including a temporary memory and a second checkvalue register each connected to the parallel data lines, and a peripheral device including a peripheral controller connected to the parallel data lines, the method comprising the steps of: initializing the first checkvalue register to a predetermined value; initializing the second checkvalue register to the predetermined value; transferring data bytes from the processor to the memory; increasing the first checkvalue register by the value of each data byte transferred from the processor; increasing the second checkvalue register by the value of each data byte transferred to the memory; comparing the first and second checkvalue registers after a predetermined number of data bytes have been transferred from the processor to the memory to determine if a match has occurred; transferring the predetermined number of data bytes from the temporary memory to the peripheral controller if it is determined that a match occurred; retransferring the predetermined number of data bytes from the processor to the memory if it is determined that a match did not occur; and changing a mode of data transfer when a match does not occur after the predetermined number of data bytes are retransferred a predetermined number of times.
Claim 7
Dependent Claim 28 words
The method defined by claim 4, further comprising the step of discarding the from the memory the predetermined number of data bytes if a match has not occurred.
Claim 8
Dependent Claim 17 words
The computer system of claim 4, wherein the mode of data transfer sets the data transfer rate.

References Cited (Backward Citations)

US4148098A Cited
US4413339A Cited
US4451884A Cited
US4864652A Cited
US5058110A Cited
GB2234093A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-04-09 1999-10-09 2000-04-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-04-09 2003-10-09 2004-04-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-04-09 2007-10-09 2008-04-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag