Patent US5088024A successfully refreshed from Google Patents.
US5088024A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Round-robin protocol method for arbitrating access to a shared bus arbitration providing preference to lower priority units after bus access by a higher priority unit
Assignee: Wisconsin Alumni Research Foundation
•
Filing: 1989-01-31
•
Granted: 1992-02-11
•
Expires: 2009-01-31
Abstract
Abstract A protocol is disclosed for the round-robin distributed arbitration of access to a common resource, such as a bus, in a multiprocessor system or machine. The protocol assigns identity values to each agent, or processor, which are compared during each arbitration to determine which agent is awarded control of the bus. To enhance fairness agents having an identity value lower than the winner of the last arbitration are favored over agents having a higher identity value in the next subsequent arbitration.
Inventors
- 👤 Mary K. Vernon
- 👤 Udi Manber
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 11:49
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/36; G06F13/368; G06F13/37
Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
259 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; each agent having an identity having a unique static portion and a dynamic portion having a round robin bit more significant than the most significant bit in the static portion, and each agent having a register capable of storing the static portion of an agent's identity; the bus being comprised of a plurality of data wires, a plurality of arbitration lines, and a control wire; comprising the steps of: (a) storing the static portion of the identity of the winning agent of each arbitration in each of the agent's register at the end of each arbitration; (b) any agent asserting the control line when it wants control of the bus; (c) each agent asserting the control line setting its round robin bit equal to one when the static portion of the asserting agent's identity is less than the identity stored in the asserting agent's register; d) each agent asserting the control line setting its round robin bit equal to zero when the static portion of the asserting agents identity is greater than or equal to the identity stored in the asserting agents register; (e) all agents presenting their identity on the arbitration lines during arbitration of the requests for control of the bus; (f) granting control of the bus to the agent with the greatest identity that is asserting the control line; and (g) the winning agent stopping asserting the control line when it gains control of the bus.
Claim 2
Independent Claim
259 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; each agent having an identity having a unique static portion and a dynamic portion having a round robin bit more significant than the most significant bit in the static portion, and each agent having a register capable of storing the static portion of an agent's identity; the bus being comprised of a plurality of data wires, a plurality of arbitration lines, and a control wire; comprising the steps of: (a) storing the static portion of the identity of the winning agent of each arbitration in each of the agent's register at the end of each arbitration; (b) any agent asserting the control line when it wants control of the bus; (c) each agent asserting the control line setting its round robin bit equal to one when the static portion of the asserting agent's identity is less than the identity stored in the asserting agent's register; d) each agent asserting the control line setting its round robin bit equal to zero when the static portion of the asserting agents identity is greater than or equal to the identity stored in the asserting agents register; (e) all agents presenting their identity on the arbitration lines during arbitration of the requests for control of the bus; (f) granting control of the bus to the agent with the greatest identity that is asserting the control line; and (g) the winning agent stopping asserting the control line when it gains control of the bus.
Claim 3
Dependent Claim
88 words
The method of claim 1 wherein the dynamic portion of each agent's identity further includes a priority bit having a greater significance than the round robin bit; further including the steps of: (a) an agent that asserts the control line, and has a priority request for control of the bus, sets the dynamic priority bit of its identity equal to one; (b) an agent that asserts the control line and does not have a priority request, sets the dynamic priority bit of its binary identity equal to zero.
Claim 4
Independent Claim
234 words
A method of arbitrating among a plurality of agents competing for control of a bus used by the agents to communicate with other agents; wherein each agent has a binary identity having a unique static portion, and each agent has a register capable of storing the static portion of an agent's identity; and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of: (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) each agent asserting the control line when it wants control of the bus; (c) each agent that asserts the control line also asserting the low request line only if the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agent's register; (d) if the low request line is asserted, granting control of the bus to the agent that has the greatest binary identity and is asserting the low request line; (e) if the low request line is not asserted, granting control of the bus to the agent that has the greatest binary identity and is asserting the control line; and (f) the winning agent stopping asserting the control line and the low request line when it gains control of the bus.
Claim 5
Independent Claim
234 words
A method of arbitrating among a plurality of agents competing for control of a bus used by the agents to communicate with other agents; wherein each agent has a binary identity having a unique static portion, and each agent has a register capable of storing the static portion of an agent's identity; and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of: (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) each agent asserting the control line when it wants control of the bus; (c) each agent that asserts the control line also asserting the low request line only if the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agent's register; (d) if the low request line is asserted, granting control of the bus to the agent that has the greatest binary identity and is asserting the low request line; (e) if the low request line is not asserted, granting control of the bus to the agent that has the greatest binary identity and is asserting the control line; and (f) the winning agent stopping asserting the control line and the low request line when it gains control of the bus.
Claim 6
Independent Claim
347 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; wherein each agent has a binary identity having a unique static portion and a dynamic priority bit more significant than the most significant bit in the static portion, and each agent has a register capable of storing the static portion of an agent's identity; and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of: (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) each agent asserting the control line when it wants control of the bus; (c) each agent that asserts the control line also asserting the low request line when the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agents register; (d) each agent that asserts the control line and has a priority request for control of the bus, setting the dynamic priority bit of its binary identity equal to one; (e) each agent that asserts the control line and does not have a priority request, setting the dynamic priority bit of its binary identity equal to zero; (f) when any agent has a priority request, granting control of the bus to the agent with the greatest binary identity that is asserting the control line; (g) when no agent has a priority request and the low request line is asserted, granting control of the bus to the agent that has the greatest binary identity that is asserting the low request line and is asserting the control line; (h) when no agent has a priority request and the low request line is not asserted, granting control of the bus to the agent with the greatest binary identity that is asserting the control line; and (i) an agent stopping asserting the control line and the low request line when it gains control of the bus.
Claim 7
Independent Claim
347 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; wherein each agent has a binary identity having a unique static portion and a dynamic priority bit more significant than the most significant bit in the static portion, and each agent has a register capable of storing the static portion of an agent's identity; and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of: (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) each agent asserting the control line when it wants control of the bus; (c) each agent that asserts the control line also asserting the low request line when the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agents register; (d) each agent that asserts the control line and has a priority request for control of the bus, setting the dynamic priority bit of its binary identity equal to one; (e) each agent that asserts the control line and does not have a priority request, setting the dynamic priority bit of its binary identity equal to zero; (f) when any agent has a priority request, granting control of the bus to the agent with the greatest binary identity that is asserting the control line; (g) when no agent has a priority request and the low request line is asserted, granting control of the bus to the agent that has the greatest binary identity that is asserting the low request line and is asserting the control line; (h) when no agent has a priority request and the low request line is not asserted, granting control of the bus to the agent with the greatest binary identity that is asserting the control line; and (i) an agent stopping asserting the control line and the low request line when it gains control of the bus.
Claim 8
Independent Claim
390 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; wherein each agent has a binary identity having a unique static portion and a dynamic priority bit more significant than the most significant bit in the static portion, and each agent has a register capable of storing the static portion of an agent's identity: and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) an agent asserting the control line when it wants control of the bus; (c) an agent asserting the control line also asserting the low request line when the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agent's register; (d) an agent asserting the control line and having a priority request for control of the bus also setting the dynamic priority bit of its binary identity equal to one; (e) an agent asserting the control line and not having a priority request setting the dynamic priority bit of its binary identity equal to zero; (f) when any agent has a priority request and an agent with a priority request asserts the low request line, the agent with the greatest binary identity asserting the low request line and asserting the control line gaining control of the bus; (g) when any agent has a priority request and no agent with a priority request asserts the low request line, the agent with the greatest binary identity that is asserting the control line gaining control of the bus; (h) when no agent has a priority request and the low request line is asserted, the agent that has the greatest binary identity asserting the low request line and asserting the control line gaining control of the bus; (i) when no agent has a priority request and the low request line is not asserted, the agent with the greatest binary identity asserting the control line gaining control of the bus; and (j) an agent stopping asserting the control line and the low request line when it gains control of the bus.
Claim 9
Independent Claim
390 words
A method of arbitrating among a plurality of agents competing for control of a common bus used by the agents; wherein each agent has a binary identity having a unique static portion and a dynamic priority bit more significant than the most significant bit in the static portion, and each agent has a register capable of storing the static portion of an agent's identity: and wherein the bus is comprised of a plurality of data lines, a plurality of arbitration lines, a control line, and a low request line; comprising the steps of (a) storing the static portion of the identity of the winning agent in each agent's register at the end of every arbitration; (b) an agent asserting the control line when it wants control of the bus; (c) an agent asserting the control line also asserting the low request line when the static portion of the asserting agent's binary identity is less than the binary identity stored in the asserting agent's register; (d) an agent asserting the control line and having a priority request for control of the bus also setting the dynamic priority bit of its binary identity equal to one; (e) an agent asserting the control line and not having a priority request setting the dynamic priority bit of its binary identity equal to zero; (f) when any agent has a priority request and an agent with a priority request asserts the low request line, the agent with the greatest binary identity asserting the low request line and asserting the control line gaining control of the bus; (g) when any agent has a priority request and no agent with a priority request asserts the low request line, the agent with the greatest binary identity that is asserting the control line gaining control of the bus; (h) when no agent has a priority request and the low request line is asserted, the agent that has the greatest binary identity asserting the low request line and asserting the control line gaining control of the bus; (i) when no agent has a priority request and the low request line is not asserted, the agent with the greatest binary identity asserting the control line gaining control of the bus; and (j) an agent stopping asserting the control line and the low request line when it gains control of the bus.
References Cited (Backward Citations)
US497148A
Cited
US3629854A
Cited
US3761879A
Cited
US3813651A
Cited
US4009470A
Cited
US4099233A
Cited
US4363094A
Cited
US4257095A
Cited
US4321669A
Cited
US4263649A
Cited
US4488217A
Cited
US4232294A
Cited
US4419724A
Cited
US4418386A
Cited
US4374414A
Cited
US4374413A
Cited
US4385350A
Cited
GB2110847A
Cited
US4375639A
Cited
US4554628A
Cited
US4463445A
Cited
US4600988A
Cited
US4620278A
Cited
US4926419A
Cited
US4908749A
Cited
US4809164A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1995-02-10 | 1995-08-12 | 1996-02-11 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1999-02-10 | 1999-08-12 | 2000-02-11 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2003-02-10 | 2003-08-12 | 2004-02-11 | $7700.00 | Window Closed / Lapsed |