Arithmetic Processing Device Memory Corruption Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in detecting and preventing memory corruption caused by bugs or erroneous codes in programs, which leads to data overwriting outside intended memory areas, and current methods either incur high overhead or performance degradation.

Innovation Solution

An arithmetic processing device with an address range check unit that parallelly performs address range checks during the pipeline stage of address translation, using an address range table and register to verify if memory access instructions fall within allocated memory areas, and embedding management area identification information in virtual addresses to enable efficient detection of memory corruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If address range checks are performed to detect memory corruption, then memory corruption detection capability is improved, but processing overhead increases and execution performance deteriorates

Engineering Contradiction:
Improvememory corruption detection capabilityVSAvoidprogram execution performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The address range check unit is merged with the TLB (Translation Lookaside Buffer) unit, combining memory address translation functionality with address range validation. This integration allows the system to perform both address translation and corruption detection in a unified structure, sharing hardware resources and reducing overhead.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Address range information is pre-loaded into the address range register before memory access operations occur. The check unit compares actual memory access addresses against these pre-established ranges, enabling proactive detection of potential corruption before it affects program execution, rather than requiring post-execution validation.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If address range check unit is integrated with TLB unit, then device complexity is reduced, but detection precision may be affected

Engineering Contradiction:
Improvesystem structure complexityVSAvoidaddress range validation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The integrated unit serves multiple functions: address translation via TLB, address range validation via the check unit, and memory corruption detection. By making the system multi-functional, we reduce overall device complexity without sacrificing detection precision, as each function operates with dedicated logic within the unified structure.

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

Data Source

PatentEP2851804B1Arithmetic processing device, information processing device, control method for information processing device, and control program for information processing device
Publication Date: 2019.08.07 FUJITSU LTD
  • EP2851804B1 patent drawingFigure 1
  • EP2851804B1 patent drawingFigure 2
  • EP2851804B1 patent drawingFigure 3

AI summary

An arithmetic processing device having an allocation unit configured to reserve a memory allocation area in a memory and register address range information indicating an address range of the memory allocation area in an address range table, in response to an execution of a memory area allocation function requesting memory area allocation, and a determination unit configured to refer to the address range table and perform determination processing as to whether or not an access destination address of a memory access instruction is within an address range indicated by the address range information registered in the address range table, in response to an execution of the memory access instruction relating to the memory allocation area.