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

Method and apparatus for reporting the status of asynchronous data transfer

Assignee: Sun Microsystems Inc
•
Filing: 1997-03-06
•
Granted: 1998-04-28
•
Expires: 2017-03-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus of reporting the status of data transfer between software and hardware in a computer system is disclosed. Software provides empty descriptors to the hardware for posting completion updates of transfers. More particularly, the software provides the number of the last available descriptor to a first storage field in a storage location which is accessible to the hardware. The hardware accounts for the number of the descriptors it has used for reporting completion updates by posting the number of used descriptors to a second storage field in the storage location. To determine if more descriptors are available, the hardware compares the contents of the first storage field to that of the second storage field. If the contents of the first and second storage fields are equal, the hardware has reached the last descriptor in the completion ring. If the fields are not equal, one or more descriptors are available for the hardware to use.

Inventors

  • 👤 Rasoul M. Oskouy

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 03:50
CPC Classifications
G; G06; G06F; G06F5/00; G06F5/06; H; H04; H04L; H04L9/00; H04L9/40; H04L69/00; H04L69/30; H04L69/32; H04L69/322

Claims Analysis

Total Claims: 23
Claim 1
Independent Claim 167 words
A computer system in a network for transferring data, comprising: a host device having a host memory, the host memory having at least one data structure having a plurality of entries for posting data, each entry including an entry number; a core circuit for transferring and tracking transfer of data between the host device and the network, in response to one of a condition and a command from the host device; a storage location coupled to the host device, the storage location having a first storage field and a second storage field, the first storage field for storing the entry number corresponding to an entry which is available for posting data by the host device, the second storage field for storing an entry number corresponding to an entry posted by the core circuit upon the transfer of data; and a circuit coupled to the storage location, for generating the condition by comparing the content of the first storage field to the content of the second storage field.
Claim 2
Dependent Claim 167 words
A computer system in a network for transferring data, comprising: a host device having a host memory, the host memory having at least one data structure having a plurality of entries for posting data, each entry including an entry number; a core circuit for transferring and tracking transfer of data between the host device and the network, in response to one of a condition and a command from the host device; a storage location coupled to the host device, the storage location having a first storage field and a second storage field, the first storage field for storing the entry number corresponding to an entry which is available for posting data by the host device, the second storage field for storing an entry number corresponding to an entry posted by the core circuit upon the transfer of data; and a circuit coupled to the storage location, for generating the condition by comparing the content of the first storage field to the content of the second storage field.
Claim 3
Dependent Claim 43 words
The system of claim 1, further comprising a second circuit for posting data, the second circuit being operative if the circuit for comparing determines that the content of the first storage field is not equal to the content of the second storage field.
Claim 4
Dependent Claim 39 words
The system of claim 1, further comprising a second circuit for posting data, the second circuit being operative when an entry number corresponding to an entry which is available for posting data is stored in the first storage field.
Claim 5
Dependent Claim 25 words
The system of claim 1, wherein the data structure is a descriptor ring comprising the plurality of entries, the entries being arranged in circular fashion.
Claim 6
Dependent Claim 14 words
The system of claim 1, wherein the circuit for comparing is an exclusive-OR gate.
Claim 7
Dependent Claim 21 words
The system of claim 1, wherein the data structure is a first data structure corresponding to transmit channels for transmitting data.
Claim 8
Dependent Claim 42 words
The system of claim 6, further comprising a second data structure and a second storage location, the second storage location having a third storage field and a fourth storage field, wherein the second data structure corresponds to receive channels for receiving data.
Claim 9
Dependent Claim 32 words
The system of claim 1, wherein the system is a network system and wherein data is transferred from the host device to the network and from the network to the host device.
Claim 10
Dependent Claim 168 words
A circuit for transferring data in a network, the circuit being responsive to a host device having a host memory, the host memory having at least one data structure having a plurality of entries for posting data, each entry including an entry number, the circuit comprising: a core circuit for transferring and tracking transfer of data between the host device and the network, in response to one of a condition and a command from the host device; a storage location coupled to the host device, the storage location having a first storage field and a second storage field, the first storage field for storing the entry number corresponding to an entry which is available for posting data by the host device, the second storage field for storing an entry number corresponding to an entry posted by the core circuit; and a circuit coupled to the storage location, for generating the condition by comparing the content of the first storage field to the content of the second storage field.
Claim 11
Dependent Claim 168 words
A circuit for transferring data in a network, the circuit being responsive to a host device having a host memory, the host memory having at least one data structure having a plurality of entries for posting data, each entry including an entry number, the circuit comprising: a core circuit for transferring and tracking transfer of data between the host device and the network, in response to one of a condition and a command from the host device; a storage location coupled to the host device, the storage location having a first storage field and a second storage field, the first storage field for storing the entry number corresponding to an entry which is available for posting data by the host device, the second storage field for storing an entry number corresponding to an entry posted by the core circuit; and a circuit coupled to the storage location, for generating the condition by comparing the content of the first storage field to the content of the second storage field.
Claim 12
Dependent Claim 49 words
The circuit of claim 9, further comprising a second circuit for posting data responsive to the circuit for comparing, the second circuit being operative if the circuit for comparing determines that the content of the first storage field is not equal to the content of the second storage field.
Claim 13
Dependent Claim 39 words
The circuit of claim 9, further comprising a second circuit for posting data, the second circuit being operative when an entry number corresponding to an entry which is available for posting data is stored in the first storage field.
Claim 14
Dependent Claim 25 words
The circuit of claim 9, wherein the data structure is a descriptor ring comprising the plurality of entries, the entries being arranged in circular fashion.
Claim 15
Dependent Claim 14 words
The circuit of claim 9, wherein the circuit for comparing is an exclusive-OR gate.
Claim 16
Dependent Claim 21 words
The circuit of claim 9, wherein the data structure is a first data structure corresponding to transmit channels for transmitting data.
Claim 17
Dependent Claim 42 words
The circuit of claim 14, further comprising a second data structure and a second storage location, the second storage location having a third storage field and a fourth storage field, wherein the second data structure corresponds to receive channels for receiving data.
Claim 18
Independent Claim 215 words
A method for coordinating data transfer in a computer with a network system, the computer having a host device, comprising the steps of: issuing a command to a core circuit to transfer data between the host device and the network system; tracking transfer of data between the host device and the network system using the core circuit in response to one of a condition and the command; storing a first entry number in a first storage field posted by the host device upon the transfer of data, the first entry number corresponding to a memory location available for posting data; storing a second entry number in a second storage field posted by the core circuit, the second entry number corresponding to a memory location containing posted data; comparing the content of the first storage field to the content of the second storage field; posting data to the memory location corresponding to the entry number stored in the first storage field if the content of the first storage field is not equal to the content of the second storage field and terminating the posting of data if the content of the first storage field is equal to the content of the second storage field; and generating a condition as a result of the step of posting.
Claim 19
Independent Claim 215 words
A method for coordinating data transfer in a computer with a network system, the computer having a host device, comprising the steps of: issuing a command to a core circuit to transfer data between the host device and the network system; tracking transfer of data between the host device and the network system using the core circuit in response to one of a condition and the command; storing a first entry number in a first storage field posted by the host device upon the transfer of data, the first entry number corresponding to a memory location available for posting data; storing a second entry number in a second storage field posted by the core circuit, the second entry number corresponding to a memory location containing posted data; comparing the content of the first storage field to the content of the second storage field; posting data to the memory location corresponding to the entry number stored in the first storage field if the content of the first storage field is not equal to the content of the second storage field and terminating the posting of data if the content of the first storage field is equal to the content of the second storage field; and generating a condition as a result of the step of posting.
Claim 20
Dependent Claim 40 words
The method of claim 16, further comprising the step of posting data to the memory location corresponding to the entry stored in the first storage field if the first entry number corresponds to a memory location available for posting data.
Claim 21
Dependent Claim 47 words
The method of claim 16, further comprising the step of providing a host device having a host memory, the host memory having at least one data structure having a plurality of entries for posting data, each entry including an entry number, prior to the first storing step.
Claim 22
Dependent Claim 33 words
The method of claim 18, wherein in the step of providing a host device, the data structure is a descriptor ring comprising a plurality of entries, the entries being arranged in circular fashion.
Claim 23
Dependent Claim 63 words
The method of claim 16, further comprising the steps of providing a second data structure and a second storage location, the second storage location having a third storage field and a fourth storage field, wherein the data structure is a first data structure which corresponds to transmit channels for transferring data and the second data structure corresponds to receive channels for receiving data.

References Cited (Backward Citations)

US3916385A Cited
USH513H Cited
US5477541A Cited
US5495482A Cited
US5544317A Cited
US5287476A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-04-27 2001-10-27 2002-04-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-04-27 2005-10-27 2006-04-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-04-27 2009-10-27 2010-04-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag