Hash-Based Memory Search for Low-Power Packet Classification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Ternary Content Addressable Memory (TCAM) devices require a large die area and consume significant power due to their transistor-intensive design, which is inefficient for packet forwarding and classification operations in network switches and routers.

Innovation Solution

The Hash Content Addressable Memory (HCAM) system uses a hash function to calculate the location of stored search values, allowing for efficient matching detection and reducing the need for simultaneous comparison across all cells, thereby minimizing power consumption and die area.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If TCAM uses simultaneous comparison across all cells to achieve fast search, then search speed is improved, but power consumption increases

Engineering Contradiction:
Improvesearch speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent divides the TCAM into multiple banks, with each bank containing a subset of TCAM cells. Instead of activating all cells simultaneously across the entire TCAM, the search is segmented across different banks that can be activated selectively or in parallel groups, reducing the total number of simultaneously active comparison circuits and thus lowering power consumption while maintaining search functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs clock gating techniques where clock signals to TCAM cells are periodically enabled or disabled based on search requirements. During non-search periods or when certain banks are not needed, the clock signals are gated off, preventing unnecessary activation of comparison logic and reducing dynamic power consumption while preserving the ability to perform fast searches when needed.

Inventive Principle:
Principle #19Periodic action

2Measurement precision

If TCAM activates all compare logic transistors for search to ensure complete matching, then matching accuracy is improved, but heat dissipation increases

Engineering Contradiction:
Improvematching accuracyVSAvoidheat dissipation
Core Design Contradiction:
Measurement precisionVSTemperature

Solution Approach 1:

By segmenting the TCAM into multiple banks, the patent allows selective activation of only those banks that need to be searched for a given query. This reduces the total number of simultaneously active comparison operations, thereby reducing overall heat generation while maintaining complete matching accuracy within the activated banks through full comparison logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different operational states to different regions (banks) of the TCAM based on local search requirements. Instead of uniformly activating all cells, the system enables only the necessary banks for each search operation, creating local quality variations in activation states that reduce overall heat dissipation while preserving matching accuracy in the active regions.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If TCAM uses two SRAM cells and comparison logic per cell to enable ternary matching, then matching capability is improved, but die area increases

Engineering Contradiction:
Improvematching capabilityVSAvoiddie area
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The patent merges multiple TCAM cells into bank structures that share common control logic and memory resources. By combining cells into banks with shared read ports and control circuitry, the patent reduces redundant logic and achieves better resource utilization, thereby reducing the overall die area required while preserving the ternary matching capability (match, no-match, and don't-care states) across the TCAM array.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9851902B2Searching memory for a search key
Publication Date: 2017.12.26 XILINX INC
  • US9851902B2 patent drawing
  • US9851902B2 patent drawing
  • US9851902B2 patent drawing

AI summary

To produce output from a memory block, a first index is used to access a pointer, a mode select and a function select from a first memory. The pointer, the mode select and the function select are used to produce a second index. The pointer is used to produce the second index when the mode select is a first value. A function is used to produce the second index when the mode select is a second value. The function select identifies a function to be used to produce the second index. The second index is used to access output from a second memory.