IP Library Granted Patent US 7,155,557
Granted Patent B2
US 7,155,557 · App. 10/949,851 · Granted Dec 26, 2006

Communication mechanism

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,155,557
App. No.
10/949,851
Granted
Dec 26, 2006
Kind
B2
Abstract

The invention provides an interconnection architecture for semiconductor devices. Cross bar switches are traditionally placed in the center of the IC. However, this location may also be the preferred location for the centralized logic in the IC. This invention, known as a cross bar ring or CBR, provides cross bar switch functionality in a manner that can be easily distributed around the chip. Typically, it can fit in the routing channels between other functional blocks, thereby allowing other centralized functions to be placed in the center of the IC. The CBR is defined so that it can be partitioned into separate modules, which greatly aids in the placement and routing of wires. Furthermore, the architecture is defined such that the CBR can use storage elements, allowing it to be pipelined so that the wire distances can be increased while still maintaining a high internal clock speed. The use of storage elements also allows the CBR to provide a deterministic delay between any two locations on the IC, and can, if desired, insure a constant delay regardless of source and destination.

Claims (33)

1. A switching device adapted to receive data from an input port, which is one of a plurality of input ports, and to transmit said data via an output port, selected from a plurality of output ports, comprising:

a plurality of cross bar ring elements, wherein each of said elements comprises at least one storage element and is in communication with one of said plurality of output ports, one of said plurality of input ports, and at least two other cross bar ring elements, such that each of said cross bar ring elements is adapted to receive data from said input port and at least one of said at least two other elements and adapted to transmit data to said output port and at least one of said at least two other elements, and said storage elements within said cross bar ring elements are configured such that the number of clock cycles required to transmit data from any of said plurality of input ports to any of said plurality of output ports is constant.

2. The switching device of claim 1 , wherein each of said cross bar ring elements further comprises multiplexers.

3. The switching device of claim 2 , wherein said multiplexers are controlled using control information transmitted concurrently with said data.

4. The switching device of claim 3 , wherein said control information comprises the destination ports via which said data will be transmitted.

5. The switching device of claim 2 , further comprising centralized scheduling logic, wherein said multiplexers are controlled by said centralized scheduling logic.

6. The switching device of claim 1 , further comprising routing channels, wherein said cross bar ring elements are located in said routing channels of said device.

7. The switching device of claim 1 , wherein each of said plurality of cross bar ring elements is in communication with two other cross bar ring elements so as to form a ring, such that data from any of said cross bar ring elements can be transmitted to any other of said cross bar ring elements via said ring.

8. A system for transferring data between a plurality of locations within a semiconductor device, wherein at least one of said plurality of locations is the source of said data and at least one of said plurality of said locations is the destination of said data, comprising a plurality of cross bar ring elements, wherein a first of said elements is in communication with said source, a second of said elements is in communication with said destination, and each of said elements is in communication with at least two other cross bar ring elements, and said plurality of elements is in communication with said plurality of locations, wherein each of said cross bar ring elements comprises at least one storage element and is adapted to receive data from at least one of said at least two other elements and adapted to transmit data to at least one of said at least two other elements such that said plurality of cross bar ring elements forms a ring, and said storage elements within said cross bar ring elements are configured such that the number of clock cycles required to transmit data from any of said plurality of source locations to any of said plurality of destination locations is constant.

9. The system of claim 8 , wherein at least one of said cross bar ring elements further comprises multiplexers.

10. The system of claim 9 , wherein said multiplexers are controlled using control information transmitted concurrently with said data.

11. The system of claim 10 , wherein said control information comprises the destination to which said data will be transmitted.

12. The system of claim 9 , further comprising centralized scheduling logic, wherein said multiplexers are controlled by said centralized scheduling logic.

13. The system of claim 8 , further comprising routing channels, wherein said cross bar ring elements are located in said routing channels of said semiconductor device.

14. The system of claim 8 , wherein each of said plurality of locations is in communication with a respective one of said cross bar ring elements.

15. A method of routing data within a semiconductor device from a source, selected from a plurality of source locations to a destination, selected from a plurality of destination locations, said method comprising the steps of:

providing a plurality of cross bar ring elements, wherein a first of said plurality of cross bar ring elements is in communication with said source, and each one of said plurality of cross bar ring elements comprises at least one storage element and is in communication with at least two others of said plurality of cross bar ring elements such that said plurality of cross bar ring elements forms a ring, and said plurality of cross bar ring elements is in communication with said plurality of source locations and said plurality of destination locations and said storage elements within said cross bar ring elements are configured such that the number of clock cycles required to transmit data from any of said plurality of source locations to any of said plurality of destination locations is constant;

supplying data from said source to said first of said plurality of cross bar ring elements in communication with said source location;

forwarding data from said first of said plurality of cross bar ring elements to at least one recipient, where said recipient is one of said two other cross bar ring elements in communication with said first cross bar ring element; and

transmitting data from said first of said plurality of cross bar ring elements to said destination location if said destination is in communication with said first cross bar ring element.

16. The method of claim 15 , further comprising the steps of:

forwarding said data received by said recipient of said forwarding step to at least one of said two other cross bar ring elements in communication with said recipient; and

transmitting data from said recipient to said destination location if said destination is in communication with said recipient.

17. The method of claim 16 , further comprising repeating said forwarding and transmitting steps until all of said plurality of cross bar ring elements have received said data.

18. A method of routing data within a semiconductor device from a source, selected from a plurality of source locations to a destination, selected from a plurality of destination locations, said method comprising the steps of:

providing a plurality of cross bar ring elements, wherein a first of said plurality of cross bar ring elements is in communication with said source, and each one of said plurality of cross bar ring elements comprises at least one storage element and is in communication with at least two others of said plurality of cross bar ring elements such that said plurality of cross bar ring elements forms a ring, and said plurality of cross bar ring elements is in communication with said plurality of source locations and said plurality of destination locations and said storage elements within said cross bar ring elements are configured such that the number of clock cycles required to transmit data from any of said plurality of source locations to any of said plurality of destination locations is constant;

supplying data from said source to said first of said plurality of cross bar ring elements in communication with said source location;

forwarding data from said first of said plurality of cross bar ring elements to at least one recipient, where said recipient is one of said two other cross bar ring elements in communication with said first cross bar ring element, if said destination is not in communication with said first element; and

transmitting data from said first of said plurality of cross bar ring elements to said destination location if said destination is in communication with said first cross bar ring element.

19. The method of claim 18 , further comprising the steps of:

forwarding said data received by said recipient of said forwarding step to at least one of said two other cross bar ring elements in communication with said recipient if said destination is not in communication with said recipient; and

transmitting data from said recipient to said destination location if said destination is in communication with said recipient.

20. The method of claim 19 , further comprising repeating said forwarding and transmitting steps until said data has reached said destination.

Assignments (6)
MERGER Recorded Jan 12, 2016
From: JINSALAS SOLUTIONS, LLC
To: CALLAHAN CELLULAR L.L.C.
Reel/Frame 037487/0249 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2009
From: DOLPHIN INTERCONNECT SOLUTIONS ASA
To: JINSALAS SOLUTIONS, LLC
Reel/Frame 023083/0394 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2009
From: DOLPHIN INTERCONNECT SOLUTIONS ASA
To: JINSALAS SOLUTIONS, LLC
Reel/Frame 022071/0967 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2008
From: DOLPHIN INTERCONNECT SOLUTIONS NORTH AMERICA INC.
To: DOLPHIN INTERCONNECT SOLUTIONS ASA
Reel/Frame 021912/0083 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2008
From: STARGEN, INC.
To: DOLPHIN INTERCONNECT SOLUTIONS NORTH AMERICA INC.
Reel/Frame 021658/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2004
From: MEIER, KARL
To: STARGEN, INC.
Reel/Frame 016040/0021 →