Fast arbitration scheme for a bus
Abstract
A distributed arbitration scheme includes arbiters with each agent. The arbiters receive request signals indicating which agents are arbitrating for the bus. Additionally, the agent currently using the bus broadcasts an agent identifier assigned to that agent. The arbiters receive the agent identifier and use the agent identifier as an indication of the winner of the preceding arbitration. Accordingly, the arbiters determine if the corresponding agent wins the arbitration, but may not attempt to calculate which other agent wins the arbitration. In one embodiment, the arbiter maintains a priority state indicative of which of the other agents are higher priority than the corresponding agent and which of the other agents are lower priority. In one implementation, the bus may be a split transaction bus and thus each requesting agent may include an address arbiter and each responding agent may include a data arbiter.
Claims
exact text as granted — not AI-modified1 - 16 . (canceled)
17 . A method comprising:
maintaining a state indicative of: (i) which of a plurality of agents coupled to a bus are higher priority than a first agent for an arbitration, and (ii) which of said plurality of agents are lower priority than said first agent for said arbitration; receiving an agent identifier indicative of a second agent using said bus, said agent identifier transmitted on said bus as part of a transaction; and updating said state responsive to said agent identifier.
18 . The method as recited in claim 17 wherein said updating comprises updating said state to indicate that said second agent is lower priority than said first agent if said second agent is different from said first agent.
19 . The method as recited in claim 17 further comprising:
receiving a plurality of request signals, each of said plurality of request signals corresponding to a respective agent of said plurality of agents and indicative of whether or not said respective agent is arbitrating for said bus; and determining if said first agent wins said arbitration responsive to said state and said plurality of request signals.
20 . The method as recited in claim 19 wherein said determining is further responsive to said agent identifier.
21 . The method as recited in claim 19 further comprising updating said state to indicate that each of said plurality of agents is higher priority than said first agent if said first agent wins said arbitration.
22 . An arbiter comprising:
one or more registers configured to store a state indicative of: (i) which of a plurality of agents coupled to a bus are higher priority than a first agent for an arbitration, and (ii) which of said plurality of agents are lower priority than said first agent for said arbitration; and a first circuit coupled to receive an agent identifier indicative of a second agent using said bus, said agent identifier transmitted on said bus as part of a transaction, wherein said first circuit is configured to update said state responsive to said agent identifier.
23 . The arbiter as recited in claim 22 wherein said first circuit is configured to update said state to indicate that said second agent is lower priority than said first agent if said second agent is different from said first agent.
24 . The arbiter as recited in claim 22 further comprising a second circuit coupled to said one or more registers and coupled to receive a plurality of request signals, each of said plurality of request signals corresponding to a respective agent of said plurality of agents and indicative of whether or not said respective agent is arbitrating for said bus, and wherein said second circuit is configured to determine if said first agent wins said arbitration responsive to said state and said plurality of request signals.
25 - 30 . (canceled)Join the waitlist — get patent alerts
Track US2005172060A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.