Pseudo-FIFO Tag Group Replacement for DSP Memory Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital signal processors face challenges in managing memory bandwidth and scheduling for real-time data processing, particularly in systems with multiple data streams, leading to potential stalls and inefficiencies in data processing.

Innovation Solution

Implementing a pseudo-first-in-first-out (FIFO) tag line replacement policy in a tagged memory system, where tags are divided into non-overlapping groups, allowing for efficient allocation of tag lines across multiple clock cycles to manage data streams effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a traditional FIFO tag replacement policy is used in a tagged memory system, then the system maintains simple replacement logic, but it causes processing stalls and reduced throughput when handling multiple data streams in real-time DSP applications

Engineering Contradiction:
Improvedata processing throughputVSAvoidtag replacement policy complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the tag array into multiple independent tag groups, where each group can be searched and replaced independently. This segmentation allows parallel processing of tag replacements across different groups, eliminating the sequential bottleneck of traditional FIFO policies and improving throughput for multiple data streams without requiring a single complex replacement mechanism

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic tag group selection based on current processing needs and data stream priorities. Instead of a static FIFO order, the system dynamically determines which tag group to search or replace next, allowing adaptive response to varying workload conditions and preventing stalls by selecting available tag groups that can immediately accommodate new data streams

Inventive Principle:
Principle #15Dynamics

2Reliability

If the system searches all tag groups sequentially to find an available tag line, then it ensures thorough allocation, but it increases the time required for tag allocation and reduces memory bandwidth efficiency

Engineering Contradiction:
Improvetag line allocation reliabilityVSAvoidtag allocation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent maintains readiness information for each tag group that pre-indicates whether the group has available tag lines. This preliminary information is updated and maintained in advance, allowing the system to quickly determine tag group availability without performing a full sequential search, thus reducing allocation time while ensuring reliable tag line assignment

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Each tag group maintains its own availability status and can independently indicate whether it has free tag lines. This self-service mechanism allows any tag group to immediately respond to allocation requests if capable, eliminating the need for centralized sequential searching and reducing overall allocation time while maintaining allocation reliability

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12511241B2Pseudo-first in, first out (FIFO) tag line replacement
Publication Date: 2025.12.30 TEXAS INSTRUMENTS INC
  • US12511241B2 patent drawing
  • US12511241B2 patent drawing
  • US12511241B2 patent drawing

AI summary

A method is provided that includes searching tags in a tag group comprised in a tagged memory system for an available tag line during a clock cycle, wherein the tagged memory system includes a plurality of tag lines having respective tags and wherein the tags are divided into a plurality of non-overlapping tag groups, and searching tags in a next tag group of the plurality of tag groups for an available tag line during a next clock cycle when the searching in the tag group does not find an available tag line.