Lookaside Buffer Conversion for Cache-Bypassed Data Streams

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital signal processors face challenges in efficiently processing real-time data streams due to memory bandwidth limitations and scheduling constraints, particularly in systems-on-chip (SoC) environments where multiple processors share memory resources.

Innovation Solution

Implementing an autonomous streaming engine that preloads a lookup table into a lookaside buffer, allowing data elements to be converted on the fly as they are fetched from memory, thereby bypassing cache levels and directly supplying converted data to the processor for processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is fetched from system memory through cache levels, then data can be supplied to the processor, but memory bandwidth is limited and cache miss stalls occur

Engineering Contradiction:
Improvedata processing throughputVSAvoidcache miss stalls
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The lookup table is preloaded into the lookaside buffer before data processing begins. This preliminary action allows the buffer to contain ready-to-use converted data elements, eliminating the need for real-time cache accesses during data streaming and preventing cache miss stalls.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The lookaside buffer acts as an intermediary component between system memory and the processor. It stores preloaded lookup table data and supplies converted data elements directly to the processor, bypassing the cache hierarchy and eliminating cache miss delays.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If lookup table data is stored in cache memory, then data conversion can be performed, but memory bandwidth is consumed and cache resources are utilized

Engineering Contradiction:
Improvedata conversion capabilityVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The lookaside buffer serves as a dedicated intermediary structure that holds lookup table data separately from the main cache hierarchy. This allows data conversion operations to proceed using buffer-stored data without consuming system memory bandwidth or occupying cache resources that would be used for general-purpose caching.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The memory system is segmented into distinct functional areas: the lookaside buffer for storing lookup table data, cache memory for general data caching, and system memory for data storage. This segmentation allows the lookup table data to reside in a dedicated buffer that does not compete for bandwidth or space with the cache system.

Inventive Principle:
Principle #1Segmentation

3Productivity

If data conversion is performed in real-time during data fetching, then processed data can be supplied to the processor, but additional processing overhead is introduced

Engineering Contradiction:
Improvereal-time data processingVSAvoidprocessing architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Data conversion is performed in advance during the data loading phase, when lookup table data is preloaded into the lookaside buffer. By the time actual data processing begins, the converted data elements are already available in the buffer, eliminating the need for complex real-time conversion logic during the critical processing path.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12461746B2Converting a stream of data using a lookaside buffer
Publication Date: 2025.11.04 TEXAS INSTRUMENTS INC
  • US12461746B2 patent drawing
  • US12461746B2 patent drawing
  • US12461746B2 patent drawing

AI summary

A stream of data is accessed from a memory system by an autonomous memory access engine, converted on the fly by the memory access engine, and then presented to a processor for data processing. A portion of a lookup table (LUT) containing converted data elements is preloaded into a lookaside buffer associated with the memory access engine. As the stream of data elements is fetched from the memory system each data element in the stream of data elements is replaced with a respective converted data element obtained from the LUT in the lookaside buffer according to a content of each data element to thereby form a stream of converted data elements. The stream of converted data elements is then propagated from the memory access engine to a data processor.