IP Library Granted Patent US 7,330,428
Granted Patent B2
US 7,330,428 · App. 10/420,017 · Granted Feb 12, 2008

Grooming switch hardware scheduler

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,330,428
App. No.
10/420,017
Granted
Feb 12, 2008
Kind
B2
Abstract

A hardware scheduler for a grooming switch with at least three switching stages accumulates a list of connection requests that cannot be granted given currently granted connection assignments. At a designated time, two data structures are dynamically built: an xRAM which records, for each output of a switch slice, which input is currently assigned to that output; and a yRAM which records, for each of the same outputs, the output of a second switch slice that is connected to a corresponding input of the second switch slice. Connections are assigned to satisfy the stored unassigned requests, by reassigning existing connection assignments using the xRAM and yRAM data structures.

Claims (38)

1. A switching method for a grooming switch having at least three switching stages comprising first, middle and last switch stages, the method comprising:

accumulating a list of connection requests which cannot be granted given currently granted connection assignments, said requests for connecting inputs of the first switch stage to outputs of the last switch stage; and

at a designated time, for each request in said list:

dynamically building a first data structure that, for each output of a first switch slice of the middle stage, records a first value representing a configured input of the first switch slice that is currently assigned to said output,

dynamically building a second data structure that records, for each output of the first switch slice of the middle stage, a second value representing an output of a second switch slice of said middle stage that is connected to an input of the second switch slice corresponding to said configured input of the first switch slice, and

assigning connections to satisfy the stored unassigned requests, by reassigning existing connection assignments using the values recorded in the first and the second data structures.

2. The method of claim 1 , the designated time being when the list holds a predetermined number of requests.

3. The method of claim 1 , the designated time being when all requests have been examined.

4. The method of claim 1 , the list being maintained in a buffer.

5. The method of claim 1 , odd-numbered stages comprising time switch slices and even-numbered stages comprising space switch slices.

6. The method of claim 1 , the grooming switch comprising a five-stage Clos network, stages one, three and five being time switches, and stages two and four being space switches.

7. The method of claim 6 , said first, middle and last stages corresponding respectively to stages three, four and five of the Clos network.

8. The method of claim 1 , the method providing rearrangeably non-blocking multicast connections for arbitrary fanouts.

9. The method of claim 1 , there being plural sets of first and second data structures, the method further comprising:

scheduling a connection using a first set of first and second data structures, while a second set of first and second data structures is being dynamically built.

10. The method of claim 1 , each method step being performed by hardware.

11. The method of claim 1 , further comprising:

supporting dual frame alignment.

12. A hardware scheduler for a grooming switch having at least three switching stages comprising first, middle and last switch stages, the hardware scheduler comprising:

a list which accumulates connection requests that cannot be granted given currently granted connection assignments, said requests for connecting inputs of the first switch stage to outputs of the last switch stage;

a first data structure, dynamically constructed for each request in the list at a designated time, that for each output of a first switch slice of the middle stage, records a first value representing a configured input of the first switch slice that is currently assigned to said output;

a second data structure, dynamically constructed for each request at the designated time, that records, for each output of the first switch slice of the middle stage, a second value representing an output of a second switch slice of said middle stage that is connected to an input of the second switch slice corresponding to said configured input of the first switch slice; and

a scheduling engine that assigns connections to satisfy the stored unassigned requests, by reassigning existing connection assignments using the values recorded in the first and the second data structures.

13. The hardware scheduler of claim 12 , the designated time being when the list holds a predetermined number of requests.

14. The hardware scheduler of claim 12 , the designated time being when all requests have been examined.

15. The hardware scheduler of claim 12 , the list being maintained in a buffer.

16. The hardware scheduler of claim 12 , odd-numbered stages comprising time switch slices and even-numbered stages comprising space switch slices.

17. The hardware scheduler of claim 12 , the grooming switch comprising a five-stage Clos network, stages one, three and five being time switches, and stages two and four being space switches.

18. The hardware scheduler of claim 17 , said first, middle and last stages corresponding respectively to stages three, four and five of the Clos network.

19. The hardware scheduler of claim 12 , the rearrangeably non-blocking multicast connections being provided for arbitrary fanouts.

20. The hardware scheduler of claim 12 , further comprising plural sets of first and second data structures, the scheduling engine scheduling a connection using a first set of first and second data structures, while a dynamically building a second set of first and second data structures.

21. The hardware scheduler of claim 12 , the hardware scheduler supporting dual frame alignment.

22. A hardware scheduler for a grooming switch having at least three switching stages comprising first, middle and last switch stages, the hardware scheduler comprising:

means for accumulating a list of connection requests which cannot be granted given currently granted connection assignments, said requests for connecting inputs of the first switch stage to outputs of the last switch stage;

means for dynamically building a first data structure that, for each output of a first switch slice of the middle stage, records a first value representing a configured input of the first switch slice that is currently assigned to said output;

means for dynamically building a second data structure that records, for each output of the first switch slice of the middle stage, a second value representing an output of a second switch slice of said middle stage that is connected to an input of the second switch slice corresponding to said configured input of the first switch slice; and

means for assigning connections to satisfy the stored unassigned requests, including means for reassigning existing connection assignments using the values recorded in the first and the second data structures.

23. The hardware scheduler of claim 22 , wherein at a designated time said first and said second data structures are built for each request in said list.

Assignments (12)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER PREVIOUSLY RECORDED AT REEL: 047357 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048674/0834 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED ON REEL 047195 FRAME 0658. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047357/0302 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047195/0658 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
CHANGE OF NAME Recorded Jun 6, 2014
From: LSI LOGIC CORPORATION
To: LSI CORPORATION
Reel/Frame 033102/0270 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
MERGER Recorded Mar 19, 2008
From: VELIO COMMUNICATIONS, INC.
To: LSI CORPORATION
Reel/Frame 020675/0291 →
MERGER Recorded Jun 2, 2004
From: VENUS ACQUISITION CORPORATION; VELIO COMMUNICATIONS, INC.; LSI LOGIC CORPORATION
To: LSI LOGIC CORPORATION
Reel/Frame 014681/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2003
From: HONG, BO
To: VELIO COMMUNICATIONS, INC.
Reel/Frame 013992/0669 →