Token Bucket Management Using Fixed-Point Arithmetic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing token bucket management systems face challenges in efficiently managing a large number of data flows due to limitations in shared RAM resources, leading to increased power consumption and access times, particularly when handling high data rates and requiring floating-point arithmetic for accuracy.

Innovation Solution

The implementation of a token bucket management apparatus using fixed-point arithmetic and a refresh packet generator, which optimizes memory usage and reduces computational complexity by employing a narrower data representation format and mitigating timestamp rollover issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If floating-point arithmetic is employed to maintain accuracy for high data rate flows, then measurement precision is improved, but device complexity and power consumption increase

Engineering Contradiction:
ImproveaccuracyVSAvoidcomputation logic complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent changes the numerical representation parameter from floating-point to fixed-point arithmetic. This allows the system to maintain sufficient accuracy for token bucket management while using simpler, more efficient hardware logic that consumes less power and has reduced complexity.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If large capacity RAM is used to store token bucket data for many flows, then quantity of substance is improved, but use of energy increases

Engineering Contradiction:
ImproveRAM capacityVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent changes the data representation parameter to fixed-point arithmetic, which reduces the number of bits required for storage. This allows the system to achieve the same functional capability with smaller RAM capacity, thereby reducing power consumption.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If wide counters are used to represent token bucket data, then measurement precision is improved, but area of stationary object increases

Engineering Contradiction:
ImproveaccuracyVSAvoiddie space
Core Design Contradiction:
Measurement precisionVSArea of stationary object

Solution Approach 1:

The patent changes from floating-point to fixed-point representation, which reduces the bit width requirements for counters and registers. This decreases the area occupied on the IC die while maintaining the necessary precision for token bucket management.

Inventive Principle:
Principle #35Parameter changes

4Adaptability or versatility

If shared RAM is used to manage many token buckets, then adaptability is improved, but access time increases

Engineering Contradiction:
Improveability to manage multiple flowsVSAvoidaccess time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent changes the data representation to fixed-point arithmetic, which reduces the data width and allows for more efficient memory access patterns. This maintains the ability to manage many flows while reducing access time through optimized memory operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8848537B2Token bucket management apparatus and method of managing a token bucket
Publication Date: 2014.09.30 NXP USA INC
  • US8848537B2 patent drawing
  • US8848537B2 patent drawing
  • US8848537B2 patent drawing

AI summary

A token bucket management apparatus comprises a processing resource having an input for receiving profile data associated with a classified data stream. The processing resource also comprises an arithmetic unit arranged to maintain a bucket status value for a token bucket associated with the classified data stream. The arithmetic unit is a fixed point arithmetic unit that is arranged to maintain the bucket status value in accordance with a fixed point representation of non-integer numbers having a first accuracy. The arithmetic unit calculates a fixed point non-integer increment value in accordance with a fixed point representation of non-integer numbers having a second accuracy. The arithmetic unit is arranged to manipulate the calculated non-integer increment value so as to bring the second accuracy into agreement with the first accuracy, and to increment the bucket status value by the manipulated non-integer increment value.