Memory Allocation for DDR System-Level Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In DDR system-level testing, traditional memory allocation methods lead to inefficient test times due to allocating multiple small memory segments to the same operation core, resulting in slower test speeds and increased total test time.

Innovation Solution

A memory allocation method that determines first-capacity and second-capacity memory segments based on the number of operation cores, allocating small segments to each core individually and then allocating the larger segment according to remaining capacities, ensuring even distribution and reducing test time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If multiple small memory segments are allocated to the same operation core, then memory allocation is simple, but test time increases and test efficiency decreases

Engineering Contradiction:
Improvetest timeVSAvoidtest efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent segments memory allocation into two distinct phases: first allocating small memory segments to operation cores individually, then allocating the large memory segment based on remaining capacities. This segmentation of the allocation process itself enables balanced distribution of workloads across cores, preventing any single core from being overloaded with multiple small segments, thereby reducing overall test time and improving test efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different allocation strategies to different types of memory segments based on their characteristics. Small memory segments are allocated one-by-one to ensure even distribution, while the large memory segment is allocated based on remaining capacities. This localized quality approach optimizes the allocation process for each segment type, achieving both reduced test time and maintained simplicity

Inventive Principle:
Principle #3Local quality

2Productivity

If memory segments are allocated evenly across operation cores, then test efficiency improves, but allocation complexity increases

Engineering Contradiction:
Improvetest efficiencyVSAvoidallocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the memory allocation process into two clear stages: first stage allocates small segments sequentially to cores, second stage allocates the large segment based on remaining capacities. This segmentation creates a simple, two-step algorithm that achieves even distribution without complex optimization routines, maintaining allocation simplicity while improving test efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The allocation method allows the system to self-regulate by automatically adjusting the second-capacity memory segment allocation based on the remaining capacities of operation cores after first-capacity segment allocation. This self-service mechanism achieves balanced workload distribution without requiring external intervention or complex control logic, thereby improving efficiency without significantly increasing complexity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11989420B2Memory allocation method and apparatus, electronic device, and storage medium
Publication Date: 2024.05.21 CHANGXIN MEMORY TECH INC
  • US11989420B2 patent drawing
  • US11989420B2 patent drawing
  • US11989420B2 patent drawing

AI summary

The present disclosure relates to the technical field of system-level memory test, and in particular, to a memory allocation method and apparatus, an electronic device, and a computer-readable storage medium. The method includes: obtaining a plurality of memory segments corresponding to a to-be-processed task, and determining a plurality of operation cores in an operation platform that executes the to-be-processed task; determining a first-capacity memory segment and a second-capacity memory segment in the plurality of memory segments according to the plurality of operation cores, wherein a memory capacity of the second-capacity memory segment is larger than a memory capacity of the first-capacity memory segment; allocating each first-capacity memory segment one by one to the operation cores, and determining remaining memory capacities corresponding to the operation cores respectively; and allocating the second-capacity memory segment to the operation cores according to the remaining memory capacities, to obtain a memory allocation result.