US5440698A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Arbitration of packet switched busses, including busses for shared memory multiprocessors
Assignee: Xerox Corp
•
Filing: 1994-04-29
•
Granted: 1995-08-08
•
Expires: 2014-04-29
Abstract
Abstract An arbiter is provided for resolving contention on synchronous packet switched busses, including busses composed of a plurality of pipelined segments, to ensure that all devices serviced by such a bus are given fair, bounded time access to the bus and to permit such devices to fill all available bus cycles with packets. Flow control for shared memory multiprocessors is readily implemented with this arbiter because the arbiter supports different types of arbitration requests and the prioritization of such arbitration requests by type.
Inventors
- 👤 Pradeep S. Sindhu
- 👤 Jean-Marc Frailong
- 👤 Jean A. Gastinel
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 08:36
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/36; G06F13/362; G06F13/364
Claims Analysis
Total Claims: 7
Claim 1
Independent Claim
332 words
An arbiter for resolving bus contention in a system having a synchronous packet switched bus, and a plurality of client devices that are interfaced with said bus; said client devices being synchronously clocked at a predetermined frequency for synchronously exchanging packets of information via said bus on a contention basis; each of said packets having a duration spanning a plurality of consecutive clock cycles on said bus, such that each packet has an initial cycle and a final cycle; said arbiter comprising: a plurality of ports, each of said client devices being coupled to a respective one of said ports for registering arbitration requests with said arbiter and for receiving corresponding bus grants from said arbiter; said arbitration requests having a plurality of permissible encodings that said arbiter recognizes as representing requests for bus grants of differing durations, with at least some of said client devices having provision for registering arbitration requests with said arbiter for grants of different predetermined lengths to acquire control of said bus for packets spanning different numbers of clock cycles on said bus; and logic coupled to said ports for arbitrating said arbitration requests, in advance of each of said bus grants, in accordance with predetermined arbitration rules to provide bus grants spanning an appropriate number of clock cycles on said bus in response to one after another of said arbitration requests; each of said bus grants being time limited to give the client device to which a particular grant is communicated exclusive control of said bus for the duration of a single packet, with said control commencing and terminating concurrently with the initial cycle and the final cycle, respectively, of said packet; said arbitration requests being arbitrated sufficiently in advance of each of said bus grants based on control information provided by said logic that enables the client devices to anticipate and discriminate between bus grants for said different request types to enable said client devices to pack packets into consecutive clock cycles on said bus.
Claim 2
Dependent Claim
332 words
An arbiter for resolving bus contention in a system having a synchronous packet switched bus, and a plurality of client devices that are interfaced with said bus; said client devices being synchronously clocked at a predetermined frequency for synchronously exchanging packets of information via said bus on a contention basis; each of said packets having a duration spanning a plurality of consecutive clock cycles on said bus, such that each packet has an initial cycle and a final cycle; said arbiter comprising: a plurality of ports, each of said client devices being coupled to a respective one of said ports for registering arbitration requests with said arbiter and for receiving corresponding bus grants from said arbiter; said arbitration requests having a plurality of permissible encodings that said arbiter recognizes as representing requests for bus grants of differing durations, with at least some of said client devices having provision for registering arbitration requests with said arbiter for grants of different predetermined lengths to acquire control of said bus for packets spanning different numbers of clock cycles on said bus; and logic coupled to said ports for arbitrating said arbitration requests, in advance of each of said bus grants, in accordance with predetermined arbitration rules to provide bus grants spanning an appropriate number of clock cycles on said bus in response to one after another of said arbitration requests; each of said bus grants being time limited to give the client device to which a particular grant is communicated exclusive control of said bus for the duration of a single packet, with said control commencing and terminating concurrently with the initial cycle and the final cycle, respectively, of said packet; said arbitration requests being arbitrated sufficiently in advance of each of said bus grants based on control information provided by said logic that enables the client devices to anticipate and discriminate between bus grants for said different request types to enable said client devices to pack packets into consecutive clock cycles on said bus.
Claim 3
Dependent Claim
50 words
The arbiter of claim 1 wherein said bus comprises a plurality of pipelined segments, including unidirectional input and output segments that are interfaced with said client devices, and an intermediate bidirectional segment located between said input and output segments; said intermediate segment being the only bidirectional segment of said bus.
Claim 4
Dependent Claim
41 words
The arbiter of claim 1 wherein each of said client devices is coupled to said arbiter by a plurality of request lines for encoding said arbitration requests to register a plurality of different, predetermined types of arbitration requests with said arbiter.
Claim 5
Dependent Claim
40 words
The arbiter of claim 3 wherein at least some of said client devices register arbitration requests of varying priority with said arbiter; and said arbiter interprets said arbitration requests in accordance with said arbitration rules to prioritize said bus grants.
Claim 6
Dependent Claim
65 words
The arbiter of claim 4 wherein at least some of said client devices register arbitration requests with said arbiter for grants of different predetermined lengths to acquire control of said bus for packets having lengths spanning different numbers of bus cycles; and said arbiter further interprets said arbitration requests to provide bus grants spanning an appropriate number of bus cycles for each of said requests.
Claim 7
Dependent Claim
129 words
The arbiter of any of claims 1-3, 4 or 5, inclusive, wherein said bus is a memory bus of a computer system having a plurality of bus client devices, including a main memory, that are coupled to said bus for performing memory transactions within a memory space, said transactions being composed of request packets that are issued by bus client devices functioning as requestors and reply packets that are issued by bus client devices functioning as responders; said arbiter assigns a higher arbitration priority to arbitration requests for said reply packets than to arbitration requests for said request packets; and said arbiter reserves an even higher arbitration priority for permitting at least certain of said client devices to demand a modified behavior of said arbiter for flow control purposes.
References Cited (Backward Citations)
US4375639A
Cited
US4458314A
Cited
US4463445A
Cited
US4763249A
Cited
EP0138717A2
Cited
US4849965A
Cited
US4608685A
Cited
US4964034A
Cited
US5034883A
Cited
US5111424A
Cited
US4979100A
Cited
US5140680A
Cited
US4961140A
Cited
US5179667A
Cited
US5193193A
Cited
US4969120A
Cited
US5195089A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1998-08-07 | 1999-02-06 | 1999-08-08 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2002-08-07 | 2003-02-06 | 2003-08-08 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2006-08-07 | 2007-02-06 | 2007-08-08 | $7700.00 | Window Closed / Lapsed |