Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
329 words
In a switching system, a method of scheduling requests from N input ports to N output ports where no two input ports can have a request serviced for the same output port at the same time, where N is a positive integer, and no two output ports can have requests serviced for the same input port at the same time, and further each input port is comprised of N queues, one per each output port, that store requests, said method comprising the steps of: (a) establishing a request matrix with each entry indicating whether there is a request for service between a corresponding pair of one of said input ports and one of said output ports; (b) establishing a set of D diagonal service patterns on said matrix with no two elements of the same diagonal request pattern being in the same row and column of said matrix, where D is a positive integer; (c) establishing a pattern sequence matrix PM that specifies a sequence of said D diagonal service patterns for each of K consecutive time slots, where K is a positive integer; (d) sequencing said D diagonal service patterns for each time slot of said K time slots, where D is greater than 1, in accordance with the sequence in said pattern sequence matrix PM; (e) servicing requests in each time slot in accordance with a sequenced set of diagonal service patterns by overlaying each diagonal service pattern on the request matrix and servicing an underlying request indicated on the request matrix if it does not conflict with a request indicated on said request matrix and overlain by a previous diagonal service request pattern in said sequenced set of diagonal service patterns for said each time slot, with a sequenced set for each time slot being defined in step (d); and (f) repeating the previous step (e) for any subsequent set of K time slots using the same sequence of diagonal service patterns defined in step (d).
Claim 2
Dependent Claim
329 words
In a switching system, a method of scheduling requests from N input ports to N output ports where no two input ports can have a request serviced for the same output port at the same time, where N is a positive integer, and no two output ports can have requests serviced for the same input port at the same time, and further each input port is comprised of N queues, one per each output port, that store requests, said method comprising the steps of: (a) establishing a request matrix with each entry indicating whether there is a request for service between a corresponding pair of one of said input ports and one of said output ports; (b) establishing a set of D diagonal service patterns on said matrix with no two elements of the same diagonal request pattern being in the same row and column of said matrix, where D is a positive integer; (c) establishing a pattern sequence matrix PM that specifies a sequence of said D diagonal service patterns for each of K consecutive time slots, where K is a positive integer; (d) sequencing said D diagonal service patterns for each time slot of said K time slots, where D is greater than 1, in accordance with the sequence in said pattern sequence matrix PM; (e) servicing requests in each time slot in accordance with a sequenced set of diagonal service patterns by overlaying each diagonal service pattern on the request matrix and servicing an underlying request indicated on the request matrix if it does not conflict with a request indicated on said request matrix and overlain by a previous diagonal service request pattern in said sequenced set of diagonal service patterns for said each time slot, with a sequenced set for each time slot being defined in step (d); and (f) repeating the previous step (e) for any subsequent set of K time slots using the same sequence of diagonal service patterns defined in step (d).
Claim 3
Dependent Claim
34 words
The method of scheduling requests recited in claim 1 wherein D=N and K=N and each queue is guaranteed to receive at least one time slot of service during every period of N time slots.
Claim 4
Dependent Claim
39 words
The method of scheduling recited in claim 2 further comprising the step of storing said pattern sequence matrix PM after step (c) and wherein step (d) is performed by a state machine accessing the stored pattern sequence matrix PM.
Claim 5
Dependent Claim
34 words
The method of scheduling requests recited in claim 1 wherein D=N×N and K=N×N and each queue is guaranteed to receive at least one time slot of service during every period of 2N-1 time slots.
Claim 6
Dependent Claim
154 words
The method of scheduling recited in claim 4 wherein said N input ports are connected to N output ports using an N×N switching matrix composed of cells arranged in rows and columns, further comprising the step of storing said pattern sequence matrix PM after step (c) in a plurality of row controllers on a row basis, there being one row controller for each row of said N×N switching matrix, said controllers performing step (d) in two phases, a broadcast phase and a calculation phase, wherein during the broadcast phase one of said row controllers broadcasts to all other row controllers an entry of said pattern sequence matrix PM stored locally and during the calculation phase each row controller calculates an index which is active during a time interval, said index being broadcast to all cells of a row and identifying the column in which a cell in that row activated for the time interval.
Claim 7
Dependent Claim
72 words
The method of scheduling requests recited in claim 1 wherein step (c), establishing a pattern sequence matrix PM, is performed according to the following pseudocode procedure for generating the pattern sequence matrix, PM[0 . . . N-1, 0 . . . N-1], where a modulus M is the smallest prime number that is greater than or equal to N+1, where M is a positive integer greater than or equal to 2: ##EQU7##
Claim 8
Dependent Claim
39 words
The method of scheduling recited in claim 6 further comprising the step of storing said pattern sequence matrix PM after step (c) and wherein step (d) is performed by a state machine accessing the stored pattern sequence matrix PM.
Claim 9
Dependent Claim
155 words
The method of scheduling recited in claim 6 wherein said N input ports are connected to N output ports using an N×N switching matrix composed of cells arranged in rows and columns, further comprising the step of storing said pattern sequence matrix PM after step (c) in a plurality of row controllers on a row basis, there being one row controller for each row of said N×N switching matrix, said controllers performing step (d) in two phases, a broadcast phase and a calculation phase, wherein during the broadcast phase one of said row controllers broadcasts to all other row controllers an entry of said pattern sequence matrix PM stored locally and during the calculation phase each row controller calculates an index which is active during a time interval, said index being broadcast to all cells of a row and identifying the column in which a cell in that row is activated for the time interval.
Claim 10
Dependent Claim
359 words
A switching system operative to schedule requests from N input ports to N output ports where no two input ports can have a request serviced for the same output port at the same time, where N is a positive integer, and no two output ports can have requests serviced for the same input port at the same time, and further each input port is comprised of N queues, one per each output port, that store requests, said switching system comprising: (a) a controller storing a request matrix having a plurality of entries, each entry indicating whether there is a request for service between a corresponding pair of one of said input ports and one of said output ports; (b) said controller further storing a pattern sequence matrix PM having a plurality of entries specifying a sequence of said D diagonal service patterns for each of K consecutive time slots, where D and K are positive integers, said pattern sequence matrix defining a set of D diagonal service patterns on said request matrix with no two elements of the same diagonal request pattern being in the same row and column of said matrix; (c) means, in said controller, for sequencing said D diagonal service patterns for each time slot of said K time slots, where D is greater than 1, in accordance with the sequence in said pattern sequence matrix PM; and (d) means, responsive to said means for sequencing, for servicing requests in each time slot in accordance with a sequenced set of diagonal service patterns by overlaying each diagonal service pattern on the request matrix and servicing an underlying request indicated on the request matrix if it does not conflict with a request indicated on said request matrix and overlain by a previous diagonal service request pattern in said sequenced set of the diagonal service patterns for said each time slot, with a sequenced set for each time slot being defined by said means for sequencing, said means for servicing repeating the servicing of requests for any subsequent set of K time slots using the same sequence of diagonal service patterns defined in by said means for sequencing.
Claim 11
Dependent Claim
359 words
A switching system operative to schedule requests from N input ports to N output ports where no two input ports can have a request serviced for the same output port at the same time, where N is a positive integer, and no two output ports can have requests serviced for the same input port at the same time, and further each input port is comprised of N queues, one per each output port, that store requests, said switching system comprising: (a) a controller storing a request matrix having a plurality of entries, each entry indicating whether there is a request for service between a corresponding pair of one of said input ports and one of said output ports; (b) said controller further storing a pattern sequence matrix PM having a plurality of entries specifying a sequence of said D diagonal service patterns for each of K consecutive time slots, where D and K are positive integers, said pattern sequence matrix defining a set of D diagonal service patterns on said request matrix with no two elements of the same diagonal request pattern being in the same row and column of said matrix; (c) means, in said controller, for sequencing said D diagonal service patterns for each time slot of said K time slots, where D is greater than 1, in accordance with the sequence in said pattern sequence matrix PM; and (d) means, responsive to said means for sequencing, for servicing requests in each time slot in accordance with a sequenced set of diagonal service patterns by overlaying each diagonal service pattern on the request matrix and servicing an underlying request indicated on the request matrix if it does not conflict with a request indicated on said request matrix and overlain by a previous diagonal service request pattern in said sequenced set of the diagonal service patterns for said each time slot, with a sequenced set for each time slot being defined by said means for sequencing, said means for servicing repeating the servicing of requests for any subsequent set of K time slots using the same sequence of diagonal service patterns defined in by said means for sequencing.
Claim 12
Dependent Claim
32 words
The switching system recited in claim 9 wherein D=N and K=N and each queue is guaranteed to receive at least one time slot of service during every period of N time slots.
Claim 13
Dependent Claim
32 words
The switching system recited in claim 9 wherein D=N×N and K=N×N and each queue is guaranteed to receive at least one time slot of service during every period of 2N-1 time slots.