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

Method and apparatus for implementing a in-order termination bus protocol within a data processing system

Assignee: NXP USA Inc
•
Filing: 1994-12-22
•
Granted: 1997-12-16
•
Expires: 2014-12-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A bus protocol is provided for pipelined and/or split transaction buses (18,48) which have in-order data bus termination and which do not require data bus arbitration. The present invention solves the problem of matching the initial address request by a bus master (12, 13, 42) to the corresponding data response from a bus slave (14, 15, 44) when the bus (18, 48) used for master-slave communication is a split-transaction bus and/or a pipelined bus. Each bus master (12, 13, 42) and each bus slave (14, 15, 44) has a counter (30-33, 75-76) which is used to store a current pipe depth value (21, 51) from a central pipe counter (16, 72). A transaction start signal (20, 50) and a transaction end signal (22, 52) are used to selectively increment and decrement the counters (30-33, 75-76).

Inventors

  • 👤 Adi Sapir
  • 👤 James B. Eifert

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 09:47
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/38; G06F13/40; G06F13/14; G06F13/36

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 154 words
A data processing system, comprising: a bus, comprising a bus transaction start conductor for transferring a bus transaction start signal representing a request to start a transaction, a bus transaction end conductor for transferring a bus transaction end signal representing a request to complete a transaction, and at least one pipe depth conductor for transferring a pipe depth value; a bus master, coupled to said bus, said bus master providing the bus transaction start signal to said bus; a bus slave, coupled to said bus, said bus slave providing the bus transaction end signal to said bus; and a first counter, coupled to said bus, said first counter storing a first count value, the first count value being adjusted based upon both the bus transaction start signal and the bus transaction end signal, said first counter providing the first count value to said at least one pipe depth conductor as the pipe depth value.
Claim 2
Dependent Claim 154 words
A data processing system, comprising: a bus, comprising a bus transaction start conductor for transferring a bus transaction start signal representing a request to start a transaction, a bus transaction end conductor for transferring a bus transaction end signal representing a request to complete a transaction, and at least one pipe depth conductor for transferring a pipe depth value; a bus master, coupled to said bus, said bus master providing the bus transaction start signal to said bus; a bus slave, coupled to said bus, said bus slave providing the bus transaction end signal to said bus; and a first counter, coupled to said bus, said first counter storing a first count value, the first count value being adjusted based upon both the bus transaction start signal and the bus transaction end signal, said first counter providing the first count value to said at least one pipe depth conductor as the pipe depth value.
Claim 3
Dependent Claim 64 words
A data processing system as in claim 1, wherein said bus slave comprises: a second counter for receiving and storing the pipe depth value from said at least one pipe depth conductor during a first bus transaction which is addressed to said bus slave, said second counter adjusting the pipe depth value stored in said second counter based upon the bus transaction end signal.
Claim 4
Dependent Claim 44 words
A data processing system as in claim 2, wherein said bus slave uses the pipe depth value stored in said second counter to determine whether said bus slave has ownership of a data portion of said bus after initiation of the first bus transaction.
Claim 5
Dependent Claim 73 words
A data processing system as in claim 3, wherein after initiation of the first bus transaction, said bus slave has ownership of the data portion of said bus when the pipe depth value stored in said second counter is equal to zero, and wherein said bus slave does not have ownership of the data portion of said bus when the pipe depth value stored in said second counter is not equal to zero.
Claim 6
Dependent Claim 49 words
A data processing system as in claim 3, wherein after initiation of the first bus transaction, the pipe depth value stored in said second counter is not equal to zero, the pipe depth value stored in said second counter is decremented by assertion of the bus transaction end signal.
Claim 7
Dependent Claim 124 words
A data processing system as in claim 1, wherein said data processing system further comprises: a second bus slave, coupled to said bus; wherein said bus slave comprises: a second counter for receiving and storing the pipe depth value from said at least one pipe depth conductor during a first bus transaction which is addressed to said bus slave; wherein said second bus slave comprises: a third counter for receiving and storing the pipe depth value from said at least one pipe depth conductor during a second bus transaction which is addressed to said second bus slave; and wherein said bus further comprises: a plurality of address conductors for transferring an address value; and a plurality of data conductors for transferring a data value.
Claim 8
Dependent Claim 59 words
A data processing system as in claim 1, wherein said bus master comprises: a second counter for storing a second count value, the second count value being adjusted based upon both the bus transaction start signal and the bus transaction end signal, said bus master using the second count value to determine whether to initiate a new bus transaction.
Claim 9
Dependent Claim 19 words
A data processing system as in claim 1, wherein a maximum value for the pipe depth value is two.
Claim 10
Dependent Claim 40 words
A data processing system as in claim 1, wherein said bus further comprises: an address bus; and a data bus; wherein said address bus and said data bus are pipelined and split-transaction, and wherein said data bus uses in-order termination.
Claim 11
Independent Claim 257 words
A method for implementing a bus protocol having in-order termination in a data processing system, the data processing system having a bus master coupled to a bus slave by way of a bus, the method comprising the steps of: asserting a transaction start signal to begin a first bus transaction; providing a pipe depth value to the bus slave by way of the bus during the first bus transaction; storing the pipe depth value as a first transaction pipe depth value in the bus slave; if the first transaction pipe depth value is a predetermined value, granting ownership of the bus to the bus slave and providing a first data value from the bus slave to the bus; if the first transaction pipe depth value is not the predetermined value, withholding granting ownership of the bus to the bus slave; asserting the transaction start signal to begin a second bus transaction; in response to said step of asserting the transaction start signal to begin a second bus transaction, performing one of an incrementing operation and a decrementing operation on the first transaction pipe depth value stored in the bus slave to produce an adjusted first transaction pipe depth value; if the adjusted first transaction pipe depth value is a predetermined value, granting ownership of the bus to the bus slave and providing the first data value from the bus slave to the bus; and if the adjusted first transaction pipe depth value is not the predetermined value, withholding granting ownership of the bus to the bus slave.
Claim 12
Independent Claim 257 words
A method for implementing a bus protocol having in-order termination in a data processing system, the data processing system having a bus master coupled to a bus slave by way of a bus, the method comprising the steps of: asserting a transaction start signal to begin a first bus transaction; providing a pipe depth value to the bus slave by way of the bus during the first bus transaction; storing the pipe depth value as a first transaction pipe depth value in the bus slave; if the first transaction pipe depth value is a predetermined value, granting ownership of the bus to the bus slave and providing a first data value from the bus slave to the bus; if the first transaction pipe depth value is not the predetermined value, withholding granting ownership of the bus to the bus slave; asserting the transaction start signal to begin a second bus transaction; in response to said step of asserting the transaction start signal to begin a second bus transaction, performing one of an incrementing operation and a decrementing operation on the first transaction pipe depth value stored in the bus slave to produce an adjusted first transaction pipe depth value; if the adjusted first transaction pipe depth value is a predetermined value, granting ownership of the bus to the bus slave and providing the first data value from the bus slave to the bus; and if the adjusted first transaction pipe depth value is not the predetermined value, withholding granting ownership of the bus to the bus slave.
Claim 13
Dependent Claim 47 words
A method as in claim 10, further comprising a step of: in response to said step of asserting the transaction start signal to begin the first bus transaction, performing one of the incrementing operation and the decrementing operation on the pipe depth value stored in a counter.
Claim 14
Dependent Claim 47 words
A method as in claim 11, further comprising a step of: in response to said step of asserting the transaction start signal to begin the second bus transaction, performing one of the incrementing operation and the decrementing operation on the pipe depth value stored in the counter.
Claim 15
Dependent Claim 60 words
A method as in claim 10, further comprising steps of: asserting a transaction end signal to end the first bus transaction; and in response to said step of asserting the transaction end signal to end the first bus transaction, performing an opposite one of the incrementing operation and the decrementing operation on the pipe depth value stored in the counter.
Claim 16
Dependent Claim 60 words
A method as in claim 13, further comprising steps of: asserting the transaction end signal to end the second bus transaction; and in response to said step of asserting the transaction end signal to end the second bus transaction, performing the opposite one of the incrementing operation and the decrementing operation on the pipe depth value stored in the counter.
Claim 17
Dependent Claim 194 words
A data processing system, comprising: a bus, comprising a bus transaction start conductor for transferring a bus transaction start signal, a bus transaction end conductor for transferring a bus transaction end signal, at least one pipe depth conductor for transferring a pipe depth value, an address bus, and a data bus; a bus master, coupled to said bus, said bus master providing the bus transaction start signal to said bus; a first bus slave, coupled to said bus, said first bus slave providing the bus transaction end signal to said bus; and a second bus slave, coupled to said bus, said second bus slave providing the bus transaction end signal to said bus; wherein said first bus slave comprises: a first counter for determining the pipe depth value, the pipe depth value being incremented in response to assertion of the bus transaction start signal, the pipe depth value being decremented in response to assertion of the bus transaction end signal; and wherein said second bus slave comprises: a second counter for receiving the pipe depth value from said first counter and for calculating when said second bus slave has ownership of said data bus.
Claim 18
Dependent Claim 194 words
A data processing system, comprising: a bus, comprising a bus transaction start conductor for transferring a bus transaction start signal, a bus transaction end conductor for transferring a bus transaction end signal, at least one pipe depth conductor for transferring a pipe depth value, an address bus, and a data bus; a bus master, coupled to said bus, said bus master providing the bus transaction start signal to said bus; a first bus slave, coupled to said bus, said first bus slave providing the bus transaction end signal to said bus; and a second bus slave, coupled to said bus, said second bus slave providing the bus transaction end signal to said bus; wherein said first bus slave comprises: a first counter for determining the pipe depth value, the pipe depth value being incremented in response to assertion of the bus transaction start signal, the pipe depth value being decremented in response to assertion of the bus transaction end signal; and wherein said second bus slave comprises: a second counter for receiving the pipe depth value from said first counter and for calculating when said second bus slave has ownership of said data bus.

References Cited (Backward Citations)

US5050066A Cited
US5345578A Cited
US5513327A Cited
US5191649A Cited
US5255373A Cited
US5345562A Cited
US5588125A Cited
US5546546A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-12-15 2001-06-16 2001-12-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-12-15 2005-06-16 2005-12-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-12-15 2009-06-16 2009-12-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag