CNN Image Block Caching for Lower DRAM Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing size of input images in convolutional neural network (CNN) processing requires a significant increase in dynamic random-access memory (DRAM) bandwidth, which is inefficient and costly.

Innovation Solution

The proposed solution involves storing image groups and parts of images in the processing device during CNN modeling, allowing subsequent processing of input images with stored data to reduce the required DRAM bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the size of input images is increased to improve processing capability, then the CNN modeling accuracy is improved, but the required DRAM bandwidth is increased

Engineering Contradiction:
ImproveCNN modeling accuracyVSAvoidDRAM bandwidth
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent divides input images into multiple image blocks and processes them in a segmented manner. The CNN modeling process is split into multiple stages where different image blocks are processed using shared kernel weights, reducing the need to load entire large images into DRAM simultaneously. This segmentation allows accurate processing of large images while minimizing DRAM bandwidth requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-loading and caching kernel weights and intermediate processing results into on-chip memory buffers before actual image processing begins. This preliminary preparation reduces the need for repeated DRAM accesses during the modeling process, thereby reducing overall DRAM bandwidth requirements while maintaining accuracy for larger input images.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the size of input images is increased to improve processing capability, then the CNN modeling accuracy is improved, but the system cost is increased

Engineering Contradiction:
ImproveCNN modeling accuracyVSAvoidsystem cost
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The patent implements a universal kernel weight storage mechanism where the same kernel weights are reused across multiple image blocks and processing stages. This multi-functionality allows a single set of weights to serve multiple purposes, reducing the total memory capacity required and thereby lowering system cost while maintaining the ability to process large images for high accuracy.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent employs a nested memory hierarchy where on-chip buffers are nested within the processing unit, which is nested within the broader system architecture. This nested structure allows efficient use of limited on-chip memory resources to handle large image data, reducing the need for expensive high-bandwidth DRAM and associated system costs while maintaining CNN modeling accuracy.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS20250363642A1System and method of convolutional neural network
Publication Date: 2025.11.27 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US20250363642A1 patent drawing
  • US20250363642A1 patent drawing
  • US20250363642A1 patent drawing

AI summary

A method includes: generating, by a processing device, at least one first output image block based on a first image block group; storing stored image blocks corresponding to a first part of the first image block group in the processing device; and after the at least one first output image block is generated, generating, by the processing device, at least one second output image block based on a first image block and the stored image blocks, wherein the first image block group and the first image block are arranged in order along a first direction, and the at least one first output image block and the at least one second output image block are arranged in order along the first direction. A system is also disclosed herein.