IP Library › Granted Patent US 11,176,083
Granted Patent B2
US 11,176,083 · App. 16/847,781 · Granted Nov 16, 2021

Switching crossbar for graphics pipeline

Inventors: Joydeep Ray (Folsom, CA); James A. Valerio (Hillsboro, OR); Altug Koker (El Dorado Hills, CA); Abhishek R. Appu (El Dorado Hills, CA); Vasanth Ranganathan (El Dorado Hills, CA)
Assignee: Intel Corporation
G06F15/8007G06T1/20
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 11,176,083
App. No.
16/847,781
Granted
Nov 16, 2021
Kind
B2
Abstract

A shared local memory data crossbar may be implemented in multiple stages. With this approach, the number of multiplexer cells can be reduced by fifty percent (50%) or more in some embodiments.

Claims (37)

1. A graphics processor comprising:

a register file to store information;

a plurality of arithmetic logic units coupled to the register file;

a plurality of texture units coupled to the register file; and

a crossbar switch array coupled between a plurality of input ports and a plurality of output ports, wherein the crossbar switch array comprises:

a first crossbar level having n×m crossbar switches coupled to the plurality of input ports;

a second crossbar level having r×p crossbar switches, wherein each of the r×p crossbar switches has only one connection to each of the n×m crossbar switches of the first crossbar level; and

a third crossbar level having m×k crossbar switches, wherein each of the m×k crossbar switches has only one connection to each of the r×p crossbar switches of the second crossbar level, wherein k, m, n, p and r are positive integers.

2. The graphics processor of claim 1 , wherein r is the number of crossbar switches in the first crossbar level, m is the number of crossbar switches in the second crossbar level and p is the number of crossbar switches in the third crossbar level.

3. The graphics processor of claim 1 , wherein the crossbar switch array comprises a fully non-blocking crossbar switch array.

4. The graphics processor of claim 3 , wherein the fully non-blocking crossbar switch array includes only 144 multiplexer cells.

5. The graphics processor of claim 3 , wherein the fully non-blocking crossbar switch array includes only three levels.

6. The graphics processor of claim 1 , wherein each of the n×m crossbar switches, the r×p crossbar switches and the m×k crossbar switches is implemented as a fully connected crossbar switch.

7. The graphics processor of claim 1 , further comprising a multiplexer selection circuit to route any one of the plurality of input ports to any one of the plurality of output ports.

8. The graphics processor of claim 1 , wherein each of the plurality of input ports is assigned to one of the r×p crossbar switches of the second crossbar level.

9. The graphics processor of claim 1 , further comprising a shared local memory coupled to the plurality of input ports.

10. The graphics processor of claim 9 , wherein the shared local memory includes slots and b banks, wherein s is equal to r×n and b is equal to p×k and m is equal to n+k−1.

11. The graphics processor of claim 1 , wherein n, m, r and k are equal to one another.

12. The graphics processor of claim 1 , further comprising at least one single instruction multiple data processor coupled to the plurality of output ports.

13. A processor comprising:

a shared local memory having a plurality of memory banks;

a crossbar switch coupled between the shared local memory and a plurality of single instruction multiple data processors, the crossbar switch comprising:

a first crossbar level having n×m crossbar switches coupled to the shared local memory;

a second crossbar level having r×p crossbar switches, wherein each of the r×p crossbar switches has only one connection to each of the n×m crossbar switches of the first crossbar level; and

a third crossbar level having m×k crossbar switches, wherein each of the m×k crossbar switches has only one connection to each of the r×p crossbar switches of the second crossbar level; and

the plurality of single instruction multiple data processors coupled to the crossbar switch, wherein k, m, n, p and r are positive integers.

14. The processor of claim 13 , wherein r is the number of crossbar switches in the first crossbar level, m is the number of crossbar switches in the second crossbar level and p is the number of crossbar switches in the third crossbar level.

15. The processor of claim 13 , wherein each of the n×m crossbar switches, the r×p crossbar switches and the m×k crossbar switches is implemented as a fully connected crossbar switch.

16. The processor of claim 13 , wherein n, m, r and k are equal to one another.

17. An apparatus comprising:

a plurality of shader cores; and

a cache having a plurality of ports, wherein the plurality of shader cores is coupled to the cache via a crossbar switch comprising: a first crossbar level having n×m crossbar switches coupled to the plurality of shader cores;

a second crossbar level having r×p crossbar switches, wherein each of the r×p crossbar switches has only one connection to each of the n×m crossbar switches of the first crossbar level; and

a third crossbar level having m×k crossbar switches coupled to the cache, wherein each of the m×k crossbar switches has only one connection to each of the r×p crossbar switches of the second crossbar level, wherein k, m, n, p and r are positive integers.

18. The apparatus of claim 17 , wherein r is the number of crossbar switches in the first crossbar level, m is the number of crossbar switches in the second crossbar level and p is the number of crossbar switches in the third crossbar level.

19. The apparatus of claim 17 , wherein each of the n×m crossbar switches, the r×p crossbar switches and the m×k crossbar switches is implemented as a fully connected crossbar switch.

20. The apparatus of claim 17 , wherein n, m, r and k are equal to one another.

Continuity (2)
Continuation 15476987 · Apr 1, 2017
Related Publication 20200341942A1 · Oct 29, 2020