External Priority Encoder for CAM Width Expansion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Combining two Content Addressable Memory (CAM) devices poses challenges such as synchronization of match information and control signals, handling different widths, and timing mismatches, which limit performance and make it difficult to differentiate between valid and invalid combinations without locking up.
Innovation Solution
A system that includes two CAM devices, global match lines, dummy match lines, and an External Priority Encoder module with an Interface Circuit and synchronizer circuit to integrate and synchronize match results, allowing for width expansion and handling of varying CAM widths and timing mismatches.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Length of moving object
If two CAMs are combined to achieve width expansion, then the CAM width and search capability are improved, but synchronization of match information and control signals becomes difficult
Solution Approach 1:
An External Priority Encoder is introduced as an intermediary component to receive and process match signals from multiple CAMs of different widths. The Priority Encoder acts as a mediator that standardizes the interface between CAMs and the control logic, handling synchronization and priority resolution without requiring direct complex interactions between the CAMs themselves.
Solution Approach 2:
The system divides the CAM functionality into separate modules (multiple CAMs of different widths) that can operate independently, each with its own match detection circuitry. These segmented CAMs feed their match signals to the External Priority Encoder, which coordinates their operation and resolves conflicts, thereby reducing the synchronization complexity that would exist in a single large CAM.
2Length of moving object
If CAMs of different widths are combined, then width expansion is achieved, but timing mismatches between the CAMs occur
Solution Approach 1:
The External Priority Encoder serves as a timing-coordinating intermediary that receives match signals from CAMs of different widths and speeds. It buffers and synchronizes these signals, ensuring that timing differences between the CAMs do not propagate to the control logic, thereby eliminating timing mismatches while maintaining the benefits of width expansion.
3Productivity
If match results from two CAMs are combined, then search capability is improved, but differentiation between valid and invalid combinations becomes difficult
Solution Approach 1:
The system incorporates feedback mechanisms through the External Priority Encoder that monitors the match signals from both CAMs. The encoder provides feedback about the validity of combinations by generating appropriate output signals based on which CAMs produced matches and their relative priorities, enabling clear differentiation between valid and invalid search results.
Solution Approach 2:
The External Priority Encoder acts as an intermediary that processes and interprets the match signals from both CAMs, providing a standardized output that clearly indicates valid combinations. It mediates between the raw match signals and the control logic, adding a layer of validation that makes it easy to distinguish between legitimate search results and invalid combinations.
4Length of moving object
If a single large CAM is used, then width expansion is achieved, but performance deteriorates
Solution Approach 1:
Instead of building a single large CAM, the system segments the CAM functionality into multiple smaller CAMs of different widths. Each smaller CAM operates faster and with lower complexity, while their combined search capability achieves the desired width expansion. The External Priority Encoder coordinates these segmented CAMs to function as a unified system.
Data Source
AI summary
A technique that provides width expansion of two CAMs of varying widths by combining match results from two CAMs by integrating the two CAMs. In one embodiment, a synchronizer circuit triggers the operation of an External Priority Encoder module which can be used to cascade two CAMs to form a wider CAM. When the External Priority Encoder module is used with the CAM, the External Priority Encoder module will receive MATCH signals and control signals from individual CAMs residing on either side, and will be triggered by the last arriving signal between two ports associated with two CAMs. In case one of the ports is disabled the External Priority Encoder module relies totally on the control signal from the other port for operation. The synchronizer circuit has the ability to handle mismatches between the CAMs as well as differentiating valid and invalid combinations between the CAMs.


