TCAM NOT Logic Using Range Masks and Exception Priority
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing ternary content addressable memory (TCAM) systems face inefficiencies in storage compression, particularly in representing both continuous ranges and exceptions within those ranges, leading to high energy consumption and heat dissipation due to the need to compare thousands of ternary values during searches.
Innovation Solution
A NOT logic circuit and method utilizing memory devices to store continuous sequences of X-state values representing ranges and exception values, allowing for efficient comparison and prioritization using comparator and priority encoder logic to reduce the number of necessary comparisons and storage requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If traditional TCAM stores each ternary value individually, then complete coverage of all possible values is achieved, but storage space and comparison complexity increase significantly
Solution Approach 1:
The patent segments the search space by dividing it into continuous ranges represented by X-state ternary values. Instead of storing each individual ternary value, the TCAM stores range definitions that segment the overall value space, reducing the number of stored entries while maintaining complete coverage through hierarchical range decomposition.
Solution Approach 2:
The patent introduces a new dimension of representation by using X-state ternary values to define continuous ranges rather than discrete individual values. This dimensional shift from point-based storage to range-based storage in ternary space enables compact representation of large value sets without losing search capability.
2Quantity of substance
If TCAM stores continuous ranges using X-state values, then storage compression is achieved, but handling exceptions within ranges becomes complex
Solution Approach 1:
The patent segments ranges into sub-ranges by inserting exception values that split continuous X-state sequences. When an exception value exists within a range, the range is divided into multiple contiguous sub-ranges, each stored as a separate TCAM entry. This segmentation approach maintains exception handling capability while preserving the compression benefits of range representation.
Solution Approach 2:
The patent performs preliminary identification of exception values within ranges before finalizing range storage. By detecting and marking exceptions in advance, the system can pre-segment ranges into appropriate sub-ranges, avoiding complex runtime exception handling logic and enabling straightforward TCAM search operations.
3Measurement precision
If thousands of ternary values are compared during search, then complete accuracy is maintained, but energy consumption and heat dissipation increase
Solution Approach 1:
The patent segments the comparison operation by using hierarchical range matching instead of individual value comparison. The TCAM first compares against range definitions using X-state values, which inherently match all values within that range in a single comparison operation. This segmentation reduces the number of comparison operations from thousands of individual value comparisons to a manageable number of range comparisons.
Solution Approach 2:
The patent merges multiple individual ternary values into a single range representation using X-state values. By combining all values within a continuous range into one TCAM entry, the system performs a single comparison operation that effectively compares against all merged values simultaneously, dramatically reducing total comparison count and associated energy consumption while maintaining search accuracy.
Data Source
AI summary
A NOT logic circuit is provided comprising: one or more memory devices; wherein a first memory address location of the one or more memory devices stores first content data, wherein the first content data includes a first ternary value and a corresponding first priority value, wherein the first ternary value includes a continuous sequence of X-state values that represent a first range of non-X ternary values; wherein a second memory address of the one or more memory device stores second content data that includes a second ternary value and a corresponding second priority value, wherein the second ternary value includes a continuous sequence of non-X state values represent a non-X ternary value that is within the first range of non-X ternary values; an interface is coupled to receive a ternary value from a processing device; comparator circuitry operable to compare a received ternary key with the outputted first ternary value and to compare the received ternary key with the outputted second ternary value; priority encoder logic operable to, return the outputted first priority value on a condition that the received ternary key matches the first ternary value and the received ternary key does not match second ternary value, and return the outputted second priority value on a condition that the received ternary key matches the first ternary value and that the received ternary key matches the second ternary value; and detection logic operable to send a return to the processing device on a condition of a return of the first priority value.


