USRE39103EExpiredUtility
Timing reference for scheduling data traffic on multiple ports
Est. expiryJun 27, 2017(expired)· nominal 20-yr term from priority
H04L 2012/5679H04L 12/5602H04Q 11/0478H04J 3/0685
58
PatentIndex Score
4
Cited by
13
References
23
Claims
Abstract
Data traffic such as cell streams in an ATM communication network frequently contain data destined for multiple output ports having different transmission data rates. In order to accurately schedule such traffic a clocking signal unique to each output data rate is required. This invention provides systems and methods for generating the necessary clock signals utilizing a single timing reference.
Claims
exact text as granted — not AI-modified1. In a data traffic management system having a plurality of output ports for servicing data traffic of different data rates and a scheduling device having a plurality of data calendars for shaping data traffic destined for each of said output ports, a single timing reference to schedule transmission of data to appropriate output ports comprising:
timing means to generate a clock pulse based on the data rate of the output port having the fastest data rate; counter means to continually count the clock pulses following an initialization event; increment means to dynamically compare the accumulated number of clock pulses with predetermined increments for each calendar based on the data rate assigned thereto; and threshold means responsive to inputs from said increment means to control transmission of data traffic from each of said calendars.
2. A timing reference as defined in claim 1 wherein said clock pulse is equal to the data rate of the data traffic of the output port having the fastest data rate.
3. A timing reference as defined in claim 2 wherein said threshold means controls said calendar means to prevent transmission of data traffic in response to an input from said increment means.
4. A timing reference as defined in claim 1 further comprising a first-in-first-out buffer between said calendars and said output ports.
5. A timing reference as defined in claim 1 wherein an input from said increment means causes said counter means to be re-initialized.
6. A timing reference as defined in claim 1 wherein said clock pulse is n times faster than the data rate of the output port having the fastest data rate.
7. A timing reference as defined in claim 6 wherein said threshold means controls said calendar means to transmit data traffic in response to an input from said increment means.
8. A timing reference as defined in claim 7 wherein said clock pulse is at least 10 times faster than the data rate of the fastest output port.
9. A method of providing a timing reference to a data traffic management system, the system having a plurality of output ports each configured to transmit data at a different data rate and a scheduling system having a calendar for shaping data traffic for delivery to each of said output ports, the method comprising:
continually generating a clock pulse based on the data rate of the output port having the fastest data rate; counting the accumulated clock pulses following an initialization event; dynamically comparing the accumulated clock pulses with predetermined increment values for each calendar based on an assigned data rate for each calendar; and controlling transmission of data from said calendars to appropriate output ports in response to the accumulated clock generated by threshold means when the accumulated clock pulses and increment value reaching a threshold respecting each calendar.
10. A method as defined in claim 9 wherein the clock pulse equals the fastest data rate and the data transmitted from the output ports is controlled such that no data is transmitted in response to an input signal.
11. A method as defined in claim 9 wherein the clock pulse rate is ‘n’ times faster than the fastest data rate and the data transmitted from the output port is controlled such that data is transmitted in response to an input signal.
12. A method as defined in claim 11 wherein ‘n’ is at least 10.
13. A communication system having a plurality of ports with respective data rates, each one of said ports being associated with a calendar having a plurality of successive calendar time slots for indicating data, or absence thereof, to be transmitted; a pointer pointing to one of the time slots; and a calendar clock pulse for effecting transmission of data, in accordance with the calendar time slot pointed to by the pointer, the transmission of data being onto the port associated with the calendar, and advancing the pointer to a next calendar time slot, the system comprising:
means for generating a master clock pulse at a rate greater than or equal to the highest of the respective data rates of the plurality of ports; and means for deriving the calendar clock pulse for each calendar based on said master clock pulse, so as to have a rate not higher than the data rate of the port associated with the calendar.
14. A communication system as defined in claim 13 , wherein said means for generating a master clock pulse relies on a clock signal received from the port having the highest data rate.
15. A communication system as defined in claim 14 , wherein the rate of the calendar clock pulse for each calendar is approximately equal to the date rate of its associated port.
16. A communication system as defined in claim 15 having means to calculate an increment value and a tick threshold value based on the calendar clock pulse and data rate of each port and said means for deriving said calendar clock pulse for each calendar based on said master clock pulse further has:
a port counter having means to accumulate said calculated increment value; means for generating said calendar clock pulse, if said accumulated increment value is lower than said calculated tick threshold value; and means for decrementing said port counter by a predetermined decrement value, if said accumulated increment value is greater than or equal to said calculated tick threshold value.
17. A communication system as defined in claim 13 , wherein said means for generating a master clock pulse generates a pulse n times faster than the date rate of the port having the highest data rate.
18. A communication system as defined in claim 17 wherein said means for deriving the calendar clock pulse for each calendar based on the master clock pulse further comprises:
a global counter that is incremented by one unit value for each master clock pulse; and means for generating said calendar clock pulse and subsequently incrementing a port counter by a predetermined increment value if a value of said global counter is equal to or greater than said port counter.
19. A method for transmitting data on multiple ports having different data rates, each of said ports being associated with a calendar having a pointer pointing to one of a plurality of calendar time slots which indicate data, if any, to be transmitted, and a calendar clock pulse for triggering the transmission of said data, if any, onto one of said ports and thereafter advancing the pointer to a next calendar time slot, the method comprising the steps of:
generating a master clock pulse having a rate that is equal to or greater than the data rate of the port having the highest data rate; and deriving a calendar clock pulse based on the master clock pulse, such that the rate of transmission from the calendar is less than or equal to the data rate of the port associated with the calendar.
20. The method as defined in claim 19 wherein said master clock pulse is derived from the data rate of the port having the fastest rate.
21. The method as defined in claim 20 wherein the step of deriving a calendar clock pulse based on the master clock pulse further comprises:
incrementing a port counter by a predetermined increment value; generating said calendar clock pulse if said port counter has a value lower than a predetermined tick threshold; and decrementing said port counter by a predetermined decrement value if said port counter has a value greater than or equal to said predetermined tick threshold.
22. The method as defined in claim 21 wherein said master clock pulse is n times greater faster than the data rate of the port having the fastest data rate.
23. The method as defined in claim 22 wherein said step of deriving a calendar clock pulse based on the master clock pulse further comprises the steps of:
incrementing a global counter by a unit value; and generating said calendar clock pulse, if said said global counter is greater than or equal to a port counter, and subsequently incrementing said port counter by a predetermined increment value.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.