NPU Data Reuse Resizing Module Area Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current neural processing units (NPUs) face inefficiencies in supporting various resize operations during AI inference processes, requiring multiple modules that decrease implementation difficulty but reduce area efficiency.

Innovation Solution

A data reuse-based resizing device and method that utilizes a processor to resize input data using a preset number of input data, classified into groups based on reuse modes, with the option to read-skip unnecessary data, implemented with a specialized algorithm and valid-in table for efficient bilinear interpolation and other operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If multiple modules are used to support various resize operations, then ease of operation is improved, but area of stationary object increases

Engineering Contradiction:
Improveease of operationVSAvoidarea
Core Design Contradiction:
Ease of operationVSArea of stationary object

Solution Approach 1:

The patent implements a single resizing module that can perform multiple resize operations (e.g., different interpolation methods such as bilinear, bicubic, and nearest-neighbor interpolation) by configuring different kernel functions and parameters. This multi-functional design eliminates the need for separate dedicated modules for each resize operation, thereby reducing the overall area while maintaining operational versatility.

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

Solution Approach 2:

The resizing module employs dynamic configuration of kernel sizes and sampling patterns based on the specific resize operation required. By dynamically adjusting operational parameters rather than having fixed hardware for each operation type, the system achieves flexibility in supporting various resize operations within a single reconfigurable module, optimizing area utilization.

Inventive Principle:
Principle #15Dynamics

2Productivity

If data reuse is optimized through classification into groups, then productivity is improved, but device complexity increases

Engineering Contradiction:
ImproveproductivityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the input data and output data into multiple groups (e.g., first input group, second input group, first output group, second output group) based on their spatial relationships and reuse patterns. This segmentation enables the system to efficiently identify and reuse relevant data groups across different output calculations, improving productivity by reducing redundant data access while managing complexity through systematic organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary classification and organization of input data into groups before the actual resize operation. By pre-organizing data according to potential reuse patterns, the system prepares data structures that facilitate efficient access and reuse during processing, thereby improving productivity without requiring complex real-time decision-making during the main computation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12174858B1Device and method for data reuse-based resizing
Publication Date: 2024.12.24 MOBILINT INC
  • US12174858B1 patent drawing
  • US12174858B1 patent drawing
  • US12174858B1 patent drawing

AI summary

Provided are a device and a method for data reuse-based resizing. The device includes a memory that stores at least one process for performing data reuse-based resizing, and a processor that performs an operation according to the process. The processor resizes input data of (a×b) to output data of (a′×b′) (a and b being a natural number) and selects input data from the input data of (a×b) as much as a preset number necessary to output each output data, based on a reuse mode preset to each output data.