Claims
- 1. A method for maintaining a relative wrap state between registers, comprising:
maintaining a first register that keeps track of a first time corresponding to the occurrence of an event; maintaining a second register that keeps track of a second time, the second time indicating a theoretical time at which the event complies with a predetermined usage parameter; monitoring most significant bits of a binary time count; updating a wrap state between the first register and the second register whenever the most significant bits reach a specified value; and determining based on the wrap state whether either of the first register or the second register has wrapped relative to the other prior to comparing the values stored in the registers.
- 2. The method of claim 1 further comprising the additional step of, if either the first register or the second register has wrapped relative to the other, adding a predetermined correction factor to one of the registers prior to comparing the registers.
- 3. The method of claim 1 wherein the determining step comprises the steps of:
maintaining the wrap state in a storage element; and reading the wrap state.
- 4. The method of claim 3 wherein the storage element is RAM.
- 5. The method of claim 3 wherein the updating step comprises the step of updating the wrap state whenever a portion of the binary time count excluding the most significant bits of the current time counter wraps.
- 6. The method of claim 5 wherein the updating step comprises the following steps for each of the wrap states to be updated:
if the wrap state indicates that the first register and second register are not wrapped relative to one another, setting the wrap state to indicate that the first register has wrapped ahead of the second register; if the wrap state indicates that the first register is wrapped ahead of the second register, maintaining the same wrap state; and if the wrap state indicates that the second register is wrapped ahead of the first register, setting the wrap state to indicate that the first register and second register are not wrapped relative to one another.
- 7. A method for determining if an event complies with at least one predetermined usage parameter, comprising:
maintaining a wrap state between a first register and a second register; monitoring most significant bits of a binary time count; updating the wrap state whenever the most significant bits reach a specified value; determining an occurrence time at which an event occurs; storing the occurrence time in the first register; storing a theoretical time at which the occurrence of the event complies with a predetermined usage parameter from the second register; if the wrap state indicates that the second register has wrapped ahead of the first register, checking whether the sum of the occurrence time and a predetermined compliance factor is greater than the theoretical time plus a predetermined correction factor; and if the sum of the occurrence time and a predetermined compliance factor is greater than the theoretical time plus the predetermined correction factor, accepting the cell as complying with the at least one usage parameter.
- 8. The method of claim 7 further comprising the steps of:
recalculating the theoretical time by adding a predetermined number; storing the recalculated theoretical time in the second register; determining whether the second register has wrapped; and setting the wrap state in accordance with the determination of whether the second register has wrapped.
- 9. The method of claim 8 wherein the predetermined number is a function of the at least one parameter.
- 10. The method of claim 7 further comprising the step of if the sum of the occurrence time and a predetermined compliance factor is less than the theoretical time plus the predetermined correction factor, taking a remedial measure.
- 11. The method of claim 10 wherein:
the event comprises receiving information; and the remedial measure comprises discarding the information from a buffer.
- 12. The method of claim 10 wherein:
the event comprises receiving information; and the remedial measure comprises tagging the information with an indication that the information does not comply with the at least one predetermined usage parameter.
- 13. The method of claim 7 wherein the correction factor is 2n, where n is the number of bits in the second register.
- 14. The method of claim 10 wherein the correction factor is 2n, where n is the number of bits in the second register.
- 15. A method for determining if an event is in compliance with at least one usage parameter, comprising:
maintaining a wrap state between a first register and a second register; monitoring most significant bits of a binary time count; updating the wrap state whenever the most significant bits reach a specified value; determining an occurrence time for an event; storing the occurrence time in a first register; storing a theoretical time at which the event complies with the at least one usage parameter from the second register; if the wrap state indicates that the first register has wrapped ahead of the second register, determining that the event complies with the at least one usage parameter.
- 16. The method of claim 15 further comprising the steps of:
recalculating the theoretical time by adding a predetermined number to the arrival time; storing the recalculated theoretical time in the second register; determining whether the second register has wrapped; and setting the wrap state in accordance with the determination of whether the second register has wrapped.
- 17. The method of claim 16 wherein the predetermined number is a function of the at least one parameter.
- 18. A method for comparing a first register storing a first value that increases over time to a second register storing a second value that increases over time, comprising:
maintaining a wrap state between a first register and a second register; monitoring most significant bits of a binary time count; updating the wrap state whenever the most significant bits reach a specified value; and determining whether either of the first register or the second register has wrapped relative to the other prior to comparing the registers.
- 19. The method of claim 18 where the first value is a cell arrival time and the second value is a theoretical arrival time.
- 20. The method of claim 18 further comprising the additional step of, if either the first register or the second register has wrapped relative to the other, adding a predetermined correction factor to one of the values prior to comparing the registers.
- 21. The method of claim 18 wherein the updating step comprises the steps of:
if the wrap state indicates that the first register and second register are not wrapped relative to one another, setting the wrap state to indicate that the first register has wrapped ahead of the second register; if the wrap state indicates that the first register is wrapped ahead of the second register, maintaining the same wrap state; and if the wrap state indicates that the second register is wrapped ahead of the first register, setting the wrap state to indicate that the first register and second register are not wrapped relative to one another.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a continuation of U.S. patent application Ser. No. 09/144,289 filed Aug. 31, 1998 and entitled “Usage Parameter Control Device for Asynchronous Transfer Mode System” now U.S. Pat. No. ______.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09144289 |
Aug 1998 |
US |
Child |
10260174 |
Sep 2002 |
US |