Memory Controller Burst Access for DSP Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital signal processors face limitations in memory access schemes, leading to inefficiencies in processing algorithms like FFT, beamforming, and neural networks due to restrictions on bandwidth, latency, and processing time, as existing bus standards only support consecutive word access and lack signals to specify memory bank access schemes.

Innovation Solution

A method for accessing memory in digital signal processors that involves generating burst transactions with programmable stride and specifying memory bank access schemes using user-available signals, such as AWUSER and ARUSER in the AXI standard, to group multiple memory accesses into a single transaction and optimize memory access patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional memory access schemes are used with standard bus protocols, then compatibility with existing systems is maintained, but processing efficiency and bandwidth utilization deteriorate due to restrictions on non-consecutive access patterns

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidmemory access scheme complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic memory access schemes where the memory controller can adaptively select between different access patterns (consecutive, strided, bank-interleaved) based on the specific algorithm requirements. This allows the system to optimize for processing efficiency when needed while falling back to standard patterns for compatibility, resolving the contradiction between productivity and complexity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes key parameters of memory access by introducing programmable stride values and bank selection signals that modify the standard sequential access pattern. By allowing these parameters to be dynamically adjusted based on algorithm requirements (e.g., FFT, beamforming), the system achieves higher processing efficiency without requiring a completely new access scheme.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If burst transactions are extended to support non-consecutive memory locations, then data transfer efficiency improves, but compatibility with existing bus standards deteriorates

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidbus standard compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a memory controller as an intermediary between the standard bus interface and the memory array. This intermediary translates standard bus transactions into optimized memory access patterns, including non-consecutive burst transactions. The intermediary maintains compatibility with existing bus standards while enabling advanced access patterns, thus resolving the contradiction between productivity and adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The invention segments the memory access function into distinct components: the standard bus interface layer, the memory controller translation layer, and the physical memory access layer. This segmentation allows each layer to operate independently, with the controller layer handling the complexity of non-consecutive burst transactions while presenting a standard interface to the bus, thereby maintaining compatibility while improving data transfer efficiency.

Inventive Principle:
Principle #1Segmentation

3Loss of time

If multiple memory accesses are grouped into single burst transactions, then computational latency reduces, but the requirement for complex address mapping and bank selection increases

Engineering Contradiction:
Improvecomputational latencyVSAvoidaddress mapping complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by pre-configuring memory bank assignments and access patterns based on the specific algorithm being executed. Before the actual data processing begins, the memory controller is programmed with the appropriate stride values, bank selections, and burst parameters. This preliminary setup enables efficient burst transactions during execution without requiring complex real-time address mapping, thus reducing computational latency while managing complexity through advance preparation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11620077B2Method of accessing a memory, and corresponding circuit
Publication Date: 2023.04.04 STMICROELECTRONICS SRL
  • US11620077B2 patent drawing
  • US11620077B2 patent drawing

AI summary

An embodiment method of accessing a memory for reading and/or writing data comprises generating a memory transaction request comprising a burst of memory access requests towards a set of memory locations in the memory, the memory locations having respective memory addresses. The method further comprises transmitting via an interconnect bus to a memory controller circuit coupled to the memory a first signal conveying the memory transaction request and a second signal conveying information for mapping the burst of memory access requests onto respective memory addresses of the memory locations in the memory. The method further comprises computing, as a function of the information conveyed by the second signal, respective memory addresses of the memory locations, and accessing the memory locations to read data from the memory locations and/or to write data into the memory locations.