IP Library Granted Patent US 7,274,709
Granted Patent B2
US 7,274,709 · App. 10/237,358 · Granted Sep 25, 2007

Asynchronous crossbar with deterministic or arbitrated control

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,274,709
App. No.
10/237,358
Granted
Sep 25, 2007
Kind
B2
Abstract

Methods and apparatus are described relating to a crossbar which is operable to route data from any of a first number of input channels to any of a second number of output channels according to routing control information. Each combination of an input channel and an output channel corresponds to one of a plurality of links. The crossbar circuitry is operable to route the data in a deterministic manner on each of the links thereby preserving a partial ordering represented by the routing control information. Events on different links are uncorrelated.

Claims (23)

1. A dispatcher for controlling a crossbar having a first number of input channels and a first number of output channels such that an ordered stream of instructions received on a set of the input channels are routed to a plurality of sets of the output channels according to instruction routing information, the dispatcher comprising dispatch circuitry which derives input channel control information and output channel control information from the instruction routing information, the input and output channel control information being for controlling routing of the instructions from the set of input channels to the plurality of sets of output channels such that a partial ordering defined in the ordered stream is preserved within each set of output channels wherein the dispatch circuitry further derives the input and output channel control information such that ordering is not necessarily maintained between different sets of output channels.

2. The dispatcher of claim 1 wherein the dispatch circuitry employs M by 1 of N encoding for the instructions where M is an integer greater than or equal to one and N is an integer greater than or equal to two.

3. The dispatcher of claim 1 wherein the dispatch circuitry employs 1 of N encoding for the instruction routing information where N is an integer greater than or equal to two.

4. The dispatcher of claim 1 wherein the input channel control information is encoded using 1 of A and 1 of B encoding where A*B is the second number, and the output channel control information is encoded using 1 of C and 1 of D encoding where C*D is the first number.

5. The dispatcher of claim 1 wherein the dispatch circuitry routes the instructions between each of the input channels and each of the output channels asynchronously.

6. The dispatcher of claim 5 wherein the dispatch circuitry routes the instructions asynchronously using a handshake protocol.

7. The dispatcher of claim 6 wherein the handshake protocol between a first sender and a first receiver on a link between a first input channel and a first output channel comprises:

the first sender sets a data signal valid when an enable signal from the first receiver goes high;

the first receiver lowers the enable signal upon receiving the valid data signal;

the first sender sets the data signal neutral upon receiving the low enable signal; and

the first receiver raises the enable signal upon receiving the neutral data signal.

8. The dispatcher of claim 6 wherein the handshake protocol is delay-insensitive.

9. The dispatcher of claim 1 wherein the dispatch circuitry is generates a request bit corresponding to each pair of the input and output channels with reference to the instruction routing information, each request bit indicating whether or not the corresponding input channel is to form a link with the corresponding output channel.

10. The dispatcher of claim 9 wherein the dispatch circuitry generates the output channel control information for the crossbar with reference to the request bits.

11. The dispatcher of claim 10 wherein the dispatch circuitry which generates the output channel control information comprises a binary tree structure.

12. The dispatcher of claim 10 wherein the dispatch circuitry which generates the output channel control information comprises a rippling ring circuit.

13. An integrated circuit comprising the dispatcher of claim 1 .

14. The integrated circuit of claim 13 wherein the integrated circuit comprises any of a CMOS integrated circuit, a GaAs integrated circuit, and a SiGe integrated circuit.

15. The dispatcher of claim 1 wherein the dispatch circuitry routes the instructions to at least one output channel based on at least one timing assumption.

16. The dispatcher of claim 15 wherein the at least one timing assumption comprises any of a pulse timing assumption, an interference timing assumption, and an implied-data-neutrality timing assumption.

17. The dispatcher of claim 16 wherein the pulse timing assumption is applied to an otherwise delay insensitive four-phase handshake.

18. The dispatcher of claim 16 wherein the implied-data-neutrality timing assumption is applied to an otherwise delay insensitive four-phase handshake.

19. The dispatcher of claim 16 wherein the interference timing assumes an adequate timing margin between interfering operators.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2012
From: FULCRUM MICROSYSTEMS, INC.
To: INTEL CORPORATION
Reel/Frame 028251/0449 →