US5615343A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for performing deferred transactions
Assignee: Intel Corp
•
Filing: 1994-09-08
•
Granted: 1997-03-25
•
Expires: 2014-09-08
Abstract
Abstract A method and apparatus of performing bus transactions on the bus of the computer system. The present invention includes a method and apparatus for permitting out-of-order replies in a pipelined bus system. The out-of-order responses include the sending of tokens between both the requesting agents and the responding agents in the computer system without the use of dedicated token buses.
Inventors
- 👤 Nitin V. Sarangdhar
- 👤 Konrad K. Lai
- 👤 Gurbir Singh
- 👤 Peter D. MacWilliams
- 👤 Stephen S. Pawlowski
- 👤 Michael W. Rhodehamel
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 05:05
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/36; G06F13/368; G06F13/37; G06F13/38; G06F13/42; G06F13/4204; G06F13/4208; G06F13/4213
Claims Analysis
Total Claims: 39
Claim 1
Independent Claim
225 words
A method for performing bus operations in a computer system having an address bus and a data bus that allows a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: initiating a bus request as part of a bus operation, wherein the step of initiating a bus request comprises driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a first token on the address bus after the address, wherein the step of driving the first token is performed by the first agent, providing a first response to the first agent indicating that a second agent is to provide a deferred reply in response to the address; receiving the first token from the address bus, wherein the first token is received by the second agent; driving a second token on the address bus, wherein the second token is driven by the second agent; sending the deferred reply to the first agent, wherein the deferred reply is sent by the second agent; receiving the second token from the address bus, wherein the second token is received by the first agent, such that the first agent identifies the second token as corresponding to the address; and receiving the deferred reply by the first agent to complete the bus operation.
Claim 2
Independent Claim
225 words
A method for performing bus operations in a computer system having an address bus and a data bus that allows a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: initiating a bus request as part of a bus operation, wherein the step of initiating a bus request comprises driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a first token on the address bus after the address, wherein the step of driving the first token is performed by the first agent, providing a first response to the first agent indicating that a second agent is to provide a deferred reply in response to the address; receiving the first token from the address bus, wherein the first token is received by the second agent; driving a second token on the address bus, wherein the second token is driven by the second agent; sending the deferred reply to the first agent, wherein the deferred reply is sent by the second agent; receiving the second token from the address bus, wherein the second token is received by the first agent, such that the first agent identifies the second token as corresponding to the address; and receiving the deferred reply by the first agent to complete the bus operation.
Claim 3
Dependent Claim
53 words
The method defined in claim 1 wherein the second token is the same as the first token, such that the first agent identifies the second token as corresponding to the address by comparing the first token and the second token to determine if the first token and the second token are the same.
Claim 4
Dependent Claim
35 words
The method defined in claim 1 wherein the step of driving the first token comprises the step of driving the first token onto the address bus after the address is driven onto the address bus.
Claim 5
Dependent Claim
29 words
The method defined in claim 3 wherein the first token is driven onto the address bus in the clock immediately after the address is driven onto the address bus.
Claim 6
Dependent Claim
28 words
The method defined in claim 1 wherein the step of driving the second token comprises asserting at least one signal indicating that the address bus contains token information.
Claim 7
Dependent Claim
25 words
The method defined in claim 1 wherein the step of sending the deferred reply comprises sending at least one completion signal to the first agent.
Claim 8
Dependent Claim
21 words
The method defined in claim 1 wherein the step of sending the deferred reply comprises driving data on the data bus.
Claim 9
Dependent Claim
32 words
The method defined in claim 1 wherein the step of receiving the deferred reply comprises matching the second token with the first token to associate the deferred reply with the bus request.
Claim 10
Independent Claim
200 words
A method for performing bus operations in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a first token on the address bus after the address, wherein the step of driving the first token is performed by the first agent, providing a response to the first agent indicating that the address is to receive a deferred reply; receiving the first token from the address bus, wherein the first token is received by the second agent; driving a second token on the address bus, wherein the second token is driven by the second agent; sending a deferred reply that corresponds to the address, wherein the deferred reply is sent by the second agent; receiving the second token from the address bus, wherein the second token is received by the first agent; comparing the second token to the first token; and receiving the deferred reply if the second token and the first token match, such that the bus operation completes.
Claim 11
Independent Claim
200 words
A method for performing bus operations in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a first token on the address bus after the address, wherein the step of driving the first token is performed by the first agent, providing a response to the first agent indicating that the address is to receive a deferred reply; receiving the first token from the address bus, wherein the first token is received by the second agent; driving a second token on the address bus, wherein the second token is driven by the second agent; sending a deferred reply that corresponds to the address, wherein the deferred reply is sent by the second agent; receiving the second token from the address bus, wherein the second token is received by the first agent; comparing the second token to the first token; and receiving the deferred reply if the second token and the first token match, such that the bus operation completes.
Claim 12
Dependent Claim
28 words
The method defined in claim 9 wherein the step of driving the second token comprises asserting at least one signal indicating that the address bus contains token information.
Claim 13
Dependent Claim
25 words
The method defined in claim 9 wherein the step of sending the deferred reply comprises sending at least one completion signal to the first agent.
Claim 14
Dependent Claim
21 words
The method defined in claim 9 wherein the step of sending the deferred reply comprises driving data on the data bus.
Claim 15
Dependent Claim
32 words
The method defined in claim 9 wherein the step of receiving the deferred reply comprises matching the second token with the first token to associate the deferred reply with the bus request.
Claim 16
Dependent Claim
228 words
A computer system comprising: a bus means for communicating address information; at least one requesting agent coupled to the bus, wherein said at least one requesting agent is capable of generating a bus request to start a first bus transaction and provides a first token on the bus with each request; at least one responding agent coupled to the bus, wherein said at least one responding agent is capable of responding to a request from said at least one requesting agent; wherein said at least one responding agent provides a response indicating that a deferred reply is to be made by said at least one responding agent to satisfy said request when the said at least one responding agent is not ready to complete the request, such that the first bus transaction completes, and wherein said at least one responding agent receives the first token from the bus means; and wherein said at least one responding agent drives a second token on the bus means and the deferred reply as a second bus transaction when ready, wherein said at least one requesting agent receives the second token from the bus means, wherein said at least one requesting agent identifies the second token as corresponding to the request, such that said at least one requesting agent receives the deferred reply and completes the second transaction and the bus operation.
Claim 17
Dependent Claim
228 words
A computer system comprising: a bus means for communicating address information; at least one requesting agent coupled to the bus, wherein said at least one requesting agent is capable of generating a bus request to start a first bus transaction and provides a first token on the bus with each request; at least one responding agent coupled to the bus, wherein said at least one responding agent is capable of responding to a request from said at least one requesting agent; wherein said at least one responding agent provides a response indicating that a deferred reply is to be made by said at least one responding agent to satisfy said request when the said at least one responding agent is not ready to complete the request, such that the first bus transaction completes, and wherein said at least one responding agent receives the first token from the bus means; and wherein said at least one responding agent drives a second token on the bus means and the deferred reply as a second bus transaction when ready, wherein said at least one requesting agent receives the second token from the bus means, wherein said at least one requesting agent identifies the second token as corresponding to the request, such that said at least one requesting agent receives the deferred reply and completes the second transaction and the bus operation.
Claim 18
Dependent Claim
15 words
The computer system defined in claim 14 wherein the bus means comprises an address bus.
Claim 19
Dependent Claim
37 words
The computer system defined in claim 14 wherein said at least one responding agent is not ready to respond because the data corresponding to a request from one of the plurality of requesting units is not available.
Claim 20
Dependent Claim
13 words
The method defined in claim 14 wherein the first token comprises the address.
Claim 21
Independent Claim
206 words
A method for performing bus transactions in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising the steps of: driving an address and a first token on the address bus as part of a request to initiate a first bus transaction, wherein the step of driving the address is performed by a first agent; sending a deferral response in response to the request, wherein the step of sending a deferral response is performed by a second agent, wherein the step of sending the deferral response includes latching the first token; receiving the deferral response to complete the first bus transaction, wherein the deferral response is received by the first agent; sending a deferred reply as part of a second bus transaction, wherein the deferred reply is sent by the second agent, and wherein the step of sending a deferred reply comprises sending a second token on the address bus; and identifying the deferred reply corresponding to the request, wherein the step of identifying comprises the first agent receiving the deferred reply to complete the second bus transaction, such that the request is completed in two bus transactions.
Claim 22
Independent Claim
206 words
A method for performing bus transactions in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising the steps of: driving an address and a first token on the address bus as part of a request to initiate a first bus transaction, wherein the step of driving the address is performed by a first agent; sending a deferral response in response to the request, wherein the step of sending a deferral response is performed by a second agent, wherein the step of sending the deferral response includes latching the first token; receiving the deferral response to complete the first bus transaction, wherein the deferral response is received by the first agent; sending a deferred reply as part of a second bus transaction, wherein the deferred reply is sent by the second agent, and wherein the step of sending a deferred reply comprises sending a second token on the address bus; and identifying the deferred reply corresponding to the request, wherein the step of identifying comprises the first agent receiving the deferred reply to complete the second bus transaction, such that the request is completed in two bus transactions.
Claim 23
Dependent Claim
33 words
The method defined in claim 18 wherein the step of identifying includes comparing the first token and the second token and receiving the deferred reply if the first token and the second match.
Claim 24
Dependent Claim
28 words
The method defined in claim 18 further comprising the step of buffering the address and the first token for use as a reference when receiving the deferred reply.
Claim 25
Independent Claim
188 words
A method for performing bus transactions in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a token on the address bus following the address, wherein the step of driving the token is performed by the first agent; receiving the token from the address bus; driving a deferral response in response to the address, wherein the step of driving the deferral response is performed by a second agent; receiving the deferral response, wherein the deferral response is received by the first agent to complete a first bus transaction; sending a deferred reply as part of a second bus transaction; resending the token on the address bus, wherein the deferred reply and the token are sent by the second agent; receiving the token from the address bus, wherein the token is received by the first agent; and receiving the deferral reply to complete a second bus transaction.
Claim 26
Independent Claim
188 words
A method for performing bus transactions in a computer system having an address bus and a data bus that allow a plurality of bus transactions to be performed in a pipelined manner, the method comprising steps of: driving an address on the address bus, wherein the step of driving the address is performed by a first agent; driving a token on the address bus following the address, wherein the step of driving the token is performed by the first agent; receiving the token from the address bus; driving a deferral response in response to the address, wherein the step of driving the deferral response is performed by a second agent; receiving the deferral response, wherein the deferral response is received by the first agent to complete a first bus transaction; sending a deferred reply as part of a second bus transaction; resending the token on the address bus, wherein the deferred reply and the token are sent by the second agent; receiving the token from the address bus, wherein the token is received by the first agent; and receiving the deferral reply to complete a second bus transaction.
Claim 27
Dependent Claim
108 words
A computer system comprising: an address bus; a data bus; a control bus; a first bus agent coupled to the address bus, the data bus, and the control bus for performing a bus operation wherein the first bus agent initiates the bus operation by initiating a first bus transaction by driving a request address of a request onto the address bus during a first clock cycle and request identification information during a second clock cycle, and terminates the first bus transaction upon receiving an immediate response to satisfy the request or a deferral response indication on the control bus indicating response to the request is to be deferral.
Claim 28
Dependent Claim
108 words
A computer system comprising: an address bus; a data bus; a control bus; a first bus agent coupled to the address bus, the data bus, and the control bus for performing a bus operation wherein the first bus agent initiates the bus operation by initiating a first bus transaction by driving a request address of a request onto the address bus during a first clock cycle and request identification information during a second clock cycle, and terminates the first bus transaction upon receiving an immediate response to satisfy the request or a deferral response indication on the control bus indicating response to the request is to be deferral.
Claim 29
Dependent Claim
23 words
The computer system defined in claim 22 further comprising a second bus agent for providing the immediate response to the first bus agent.
Claim 30
Dependent Claim
23 words
The computer system defined in claim 22 further comprising a second bus agent for providing the deferral response to the first bus agent.
Claim 31
Dependent Claim
45 words
The computer system defined in claim 24 wherein the second bus agent is further used for performing a second bus transaction, wherein the second bus agent initiates the second bus transaction by driving the request identification information onto the address bus and a deferral reply.
Claim 32
Dependent Claim
37 words
The computer system deferred in claim 25 wherein the first bus agent received the request identification information deferred reply and associates the deferred reply with the request of the first bus transaction to complete the bus operation.
Claim 33
Dependent Claim
24 words
The computer system defined in claim 27 wherein the first bus agent associates the deferred reply with the request using the request identification information.
Claim 34
Dependent Claim
21 words
The computer system defined in claim 22 wherein the first clock cycle and the second clock cycle are consecutive clock cycles.
Claim 35
Dependent Claim
15 words
The computer system defined in claim 22 wherein the request identification information comprises a token.
Claim 36
Independent Claim
232 words
A method of performing bus transactions in a computer system having a requesting agent and a responding agent each coupled to a bus which includes a response bus, and address bus, and a data bus, wherein the bus is ordered and pipelined such that each bus transaction has a predetermined response phase and such that the bus transactions complete in a same order in which requested, the method comprising the steps of: the requesting agent requesting a first bus transaction by issuing an address onto the address bus in a first clock cycle of the first transaction and a token onto the address bus in a second clock cycle of the first transaction; and if the responding agent is ready to perform the first bus transaction, the responding agent driving an in-order completion response onto the response bus in a response phase of the first bus transaction; and if the responding agent is not ready to perform the first bus transaction, then the responding agent driving a deferral response onto the response bus in the response phase of the first bus transaction, and when the responding agent becomes ready to respond, then the responding agent initiating a second bus transaction and driving a deferred reply onto the address bus, a second token onto the address bus, and any requested data onto the data bus, in response phase of the second bus transaction.
Claim 37
Independent Claim
232 words
A method of performing bus transactions in a computer system having a requesting agent and a responding agent each coupled to a bus which includes a response bus, and address bus, and a data bus, wherein the bus is ordered and pipelined such that each bus transaction has a predetermined response phase and such that the bus transactions complete in a same order in which requested, the method comprising the steps of: the requesting agent requesting a first bus transaction by issuing an address onto the address bus in a first clock cycle of the first transaction and a token onto the address bus in a second clock cycle of the first transaction; and if the responding agent is ready to perform the first bus transaction, the responding agent driving an in-order completion response onto the response bus in a response phase of the first bus transaction; and if the responding agent is not ready to perform the first bus transaction, then the responding agent driving a deferral response onto the response bus in the response phase of the first bus transaction, and when the responding agent becomes ready to respond, then the responding agent initiating a second bus transaction and driving a deferred reply onto the address bus, a second token onto the address bus, and any requested data onto the data bus, in response phase of the second bus transaction.
Claim 38
Dependent Claim
106 words
A computer system comprising: a bus including: an address bus; a response bus; a data bus; a requesting agent coupled to the bus, wherein the requesting agent issues a token onto the address bus for each address request and handles deferral responses in response to requests, and maintains the request as pending until receiving a deferred reply; and a responding agent coupled to the bus, wherein the responding agent generates the deferral response when unable to complete a transaction during a predetermined time of the first transaction, and generates the deferred reply including the token, when the responding agent is subsequently able to complete the transaction.
Claim 39
Dependent Claim
106 words
A computer system comprising: a bus including: an address bus; a response bus; a data bus; a requesting agent coupled to the bus, wherein the requesting agent issues a token onto the address bus for each address request and handles deferral responses in response to requests, and maintains the request as pending until receiving a deferred reply; and a responding agent coupled to the bus, wherein the responding agent generates the deferral response when unable to complete a transaction during a predetermined time of the first transaction, and generates the deferred reply including the token, when the responding agent is subsequently able to complete the transaction.
References Cited (Backward Citations)
US4181974A
Cited
US4488232A
Cited
US4841436A
Cited
EP0275135A2
Cited
US5235684A
Cited
US5006982A
Cited
US5197137A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2000-03-24 | 2000-09-23 | 2001-03-25 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2004-03-24 | 2004-09-23 | 2005-03-25 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2008-03-24 | 2008-09-23 | 2009-03-25 | $7700.00 | Window Closed / Lapsed |