Image Data Compression for Lower SRAM and DRAM Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image processing systems face challenges in efficiently managing SRAM and DRAM resources, particularly in high-throughput applications, due to high bandwidth requirements and power consumption, necessitating the reduction of SRAM storage and optimizing DRAM bandwidth usage.

Innovation Solution

A method of compressing image data by determining representative values based on relationships between neighboring data positions, reducing the bit depth of each data value while preserving the number of data positions, thereby minimizing SRAM requirements and optimizing DRAM bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If SRAM is used to store image data for high throughput processing, then processing speed and latency are improved, but SRAM storage requirements and cost increase

Engineering Contradiction:
Improveprocessing speedVSAvoidSRAM storage requirements
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments image data into multiple sequences (e.g., by color channels or spatial regions) and processes each sequence independently with its own compression parameters. This allows selective compression of different data portions, reducing overall SRAM storage requirements while maintaining processing throughput by parallelizing sequence handling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically adjusts compression parameters (such as bit depth reduction from 12-bit to 8-bit, or compression ratios) based on image content characteristics and processing requirements. By changing these parameters adaptively, the system optimizes the balance between processing speed and SRAM storage usage, using higher compression for less critical data and lower compression for important regions.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If DRAM bandwidth is increased to handle high throughput applications, then data transfer capacity is improved, but power consumption and bandwidth availability for other components worsen

Engineering Contradiction:
Improvedata transfer capacityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent applies compression to image data before it is written to DRAM, reducing the total volume of data that needs to be transferred. This preliminary compression action decreases DRAM bandwidth requirements and associated power consumption, while still providing sufficient data throughput for high-performance processing by optimizing the compressed data flow.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If DRAM is used instead of SRAM for image data storage, then cost per bit is reduced, but latency and bandwidth availability worsen

Engineering Contradiction:
Improvestorage costVSAvoidlatency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent divides image data into multiple sequences that can be processed and compressed independently. This segmentation allows the system to use smaller, more frequent DRAM write operations rather than large bulk transfers, reducing the impact of DRAM latency and improving time-critical processing while still benefiting from lower storage costs compared to SRAM.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20260112064A1Methods and apparatus for image processing
Publication Date: 2026.04.23 ARM LTD
  • US20260112064A1 patent drawing
  • US20260112064A1 patent drawing
  • US20260112064A1 patent drawing

AI summary

Image data includes a plurality of data values arranged in two or more sequences, each sequence comprising a first number of data positions each having a data value of the plurality, and each data value comprising a second number of bits. Upon receiving each sequence of the two or more sequences, the data values of the sequence are processed to determine, for each given data position of the first number of data positions, a representative value for the given data position based on a relationship between the data value at the given data position and the data value at one or more neighbouring data positions.