Multi-Core Data Loading and Storage System

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing coarse-grained reconfigurable architectures cannot meet various computing requirements and fail to support data loading and storage for multi-core processor arrays.

Innovation Solution

A data loading and storage system comprising a storage module, buffering module, control module, data loading modules, multi-core processor array module, and data storage modules, which buffer and process configuration instructions and data, generate addresses, and perform indirect or direct addressing to support efficient data loading and storage in a multi-core processor array.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a coarse-grained reconfigurable architecture is used to achieve parallel processing capability, then computing performance is improved, but the ability to support data loading and storage for multi-core processor arrays deteriorates

Engineering Contradiction:
Improvecomputing performanceVSAvoiddata loading and storage support
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system is divided into multiple independent data loading modules (one for each processing core) and multiple data storage modules. Each data loading module can independently read configuration instructions and generate data addresses, while each data storage module can independently store computed results. This segmentation enables parallel data loading and storage operations that support multi-core processor arrays while maintaining the coarse-grained reconfigurable architecture's computing performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The data loading modules are designed with universal functionality to handle both configuration instruction reading and data address generation for multiple processing cores. The system uses a unified address generation mechanism that can serve different data loading scenarios (direct addressing, indirect addressing, circular buffering) across all cores, making the architecture versatile enough to support various data loading and storage requirements while maintaining high computing performance.

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

2Productivity

If multiple data loading modules are provided for each processing core to enable parallel data loading, then data loading efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvedata loading efficiencyVSAvoidsystem structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Multiple data loading modules share common functional components including the configuration instruction buffer, address generating module, and control logic. Instead of providing completely independent loading paths for each core, the system merges these functions at the buffer and control levels, allowing parallel data loading operations while reducing the overall system complexity and resource requirements.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If direct memory access and advanced synchronization techniques are implemented to enhance computing performance, then data access speed is improved, but control complexity increases

Engineering Contradiction:
Improvedata access speedVSAvoidcontrol mechanism complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The address generating module automatically generates data addresses based on configuration instructions without requiring complex external control mechanisms. The system uses self-service approaches where the data loading modules autonomously read configuration instructions, generate their own addresses, and perform data loading operations, thereby achieving fast data access while minimizing control complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12124853B2Data loading and storage system and method
Publication Date: 2024.10.22 BEIJING TSINGMICRO INTELLIGENT TECH CO LTD
  • US12124853B2 patent drawing
  • US12124853B2 patent drawing
  • US12124853B2 patent drawing

AI summary

A data loading and storage system includes a storage module, a buffering module, a control module, a plurality of data loading modules, a plurality of data storage modules and a multi-core processor array module. The data is continuously stored in a DDR, and the data computed by the multi-core processor may be arranged continuously or be arranged according to a certain rule. After DMA reads the data into the DATA_BUF module by a BURST mode, in order to support fast loading of the data into the multi-core processor array, the data loading modules (i.e., load modules) are designed. In order to quickly store the computed result of the multi-core processor array into the (DATA_BUF module according to a certain rule, the data storage modules (i.e., store module) are designed.