Parallel Multi-Lookup TCAM with Mask Circuits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current content addressable memory (CAM) systems, such as ternary CAM (TCAM), face inefficiencies in managing multiple search requests and rules, particularly in network devices, where shared TCAM arrays need to handle diverse criteria and actions efficiently, often leading to complex masking and encoding processes that can slow down packet processing.

Innovation Solution

A circuit and method that utilize a content addressable memory (CAM) array with mask circuits and encoders to generate and encode masked match results for multiple search keys, allowing parallel processing and efficient allocation of TCAM entries among multiple search clients, enabling simultaneous matching and action determination across various criteria.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a shared TCAM array is used to handle multiple search requests, then resource utilization is improved, but processing complexity increases due to complex masking and encoding processes

Engineering Contradiction:
Improveresource utilizationVSAvoidmasking and encoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the TCAM array into multiple banks, with each bank handling specific search clients or rule sets. This segmentation allows parallel processing of different search requests while maintaining manageable complexity within each bank, resolving the contradiction between resource utilization and processing complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a time dimension by implementing sequential access stages for different search clients, transforming the spatial sharing problem into a temporal multiplexing solution. This allows multiple search operations to occur in sequence without complex parallel masking and encoding, reducing device complexity while maintaining resource utilization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If multiple search clients share a TCAM array simultaneously, then processing speed is improved, but device complexity increases due to parallel masking and encoding requirements

Engineering Contradiction:
Improvepacket processing speedVSAvoidparallel processing complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The TCAM array is segmented into multiple banks that can operate independently or in parallel. Each bank handles specific search clients, enabling true parallel processing without requiring complex coordination between search clients. This segmentation maintains high processing speed while reducing the complexity of parallel masking and encoding operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary classification of search requests into different banks based on their requirements. This preliminary action allows the system to prepare appropriate masking and encoding strategies in advance, enabling parallel processing without requiring complex real-time coordination between multiple search clients.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If sequential processing is used for multiple search clients, then device complexity is reduced, but processing time increases

Engineering Contradiction:
Improveprocessing simplicityVSAvoidpacket processing time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the TCAM array into multiple banks that can be accessed in parallel by different search clients. This segmentation enables simultaneous processing of multiple search requests without requiring complex coordination, achieving both reduced device complexity and minimized processing time through simple parallel access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential time-multiplexed access to spatial parallel access by organizing multiple TCAM banks side-by-side. This dimensional change allows multiple search clients to access different banks simultaneously, eliminating the time loss of sequential processing while maintaining device simplicity through independent bank operation.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9619584B1Parallel multi-lookup TCAM
Publication Date: 2017.04.11 MARVELL ISRAEL (M L S L) LTD
  • US9619584B1 patent drawing
  • US9619584B1 patent drawing
  • US9619584B1 patent drawing

AI summary

Aspects of the disclosure provide a circuit that includes a content addressable memory (CAM) array, a first mask circuit and a first encoder. The CAM array has CAM entry lines to be compared with a search key. The CAM array is configured to output a match result indicative entry lines that match the search key. The first mask circuit is configured to selectively mask first one or more portions of the match result to generate a first masked match result indicative first entry lines among the entry lines that match the search key. The first encoder is configured to encode the first masked match result to identify a matching entry line in the first entry lines as a first search result.