Differential Memory Real-Time Update Auxiliary Module

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for managing differential memories, such as phase-change memories (PCMs), require multiple memory cells to store redundant data, leading to increased costs and complexity, especially when testing multiple software versions for vehicles, as they need to maintain continuous reading accessibility without interrupting access to existing data.

Innovation Solution

A method and system for real-time updating of differential memories using an auxiliary memory module to store complementary data, allowing for single-ended reading and writing operations without interrupting access to existing data, thereby enabling efficient storage and testing of multiple software versions without additional memory modules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple memory modules are used to store different software versions, then storage capacity and reliability are improved, but device complexity and cost increase

Engineering Contradiction:
Improvestorage capacityVSAvoiddevice complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The memory module is segmented into two submodules (first submodule and second submodule), where each submodule stores complementary logic data. This segmentation allows the system to store multiple software versions within a single memory module by utilizing the complementary nature of the submodules, thereby increasing storage capacity without proportionally increasing device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The single memory module is designed to serve multiple functions: it can store different software versions, provide redundant storage for reliability, and support both differential and single-ended reading modes. The controller enables the memory module to adaptively switch between different operating modes based on the reading request, making the module universal and multi-functional.

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

2Reliability

If differential reading is used to improve reliability, then data accuracy is improved, but reading speed and simplicity deteriorate

Engineering Contradiction:
Improvedata accuracyVSAvoidreading speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The reading mode is made dynamic and adaptable. The controller determines whether to perform differential reading or single-ended reading based on the specific reading request and operational context. This dynamic switching capability allows the system to optimize between reliability (differential reading) and speed/simplicity (single-ended reading) depending on the situation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The reading operation parameters are changed based on the situation. When high reliability is needed, differential reading parameters are used. When speed or simplicity is prioritized, single-ended reading parameters are applied. This parameter change approach allows the system to flexibly adjust the trade-off between reliability and reading performance.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If real-time updating is implemented to improve productivity, then software update speed is improved, but data integrity and reliability may worsen

Engineering Contradiction:
Improvesoftware update speedVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The auxiliary memory module is pre-configured and ready to receive updated logic data before the actual update operation begins. The controller is pre-programmed with the logic to manage the update process, including the switching between submodules and the preservation of old data. This preliminary preparation enables real-time updating without compromising data integrity, as the system is already structured to handle the update atomically.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The controller acts as an intermediary between the auxiliary memory module and the main memory submodules during the update process. It manages the data flow, ensures proper timing, and coordinates the switching between submodules. This intermediary role protects data integrity by ensuring that updates are performed in a controlled and synchronized manner, preventing partial or corrupted updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If auxiliary memory module is added to enable real-time updates, then update capability and storage flexibility are improved, but device complexity increases

Engineering Contradiction:
Improveupdate capabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The auxiliary memory module is merged with the existing memory architecture in a way that creates a unified system. The controller integrates the auxiliary module with the first and second submodules, managing them as a cohesive unit. This merging approach allows the system to gain enhanced update capability and storage flexibility while minimizing the increase in device complexity, as the components work together as an integrated whole rather than separate add-ons.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10824417B2Real-time update method for a differential memory, differential memory and electronic system
Publication Date: 2020.11.03 STMICROELECTRONICS SRL
  • US10824417B2 patent drawing
  • US10824417B2 patent drawing
  • US10824417B2 patent drawing

AI summary

A method for management of a differential memory includes storing first logic data associated with a first informative content in an auxiliary memory module of the differential memory; storing third logic data associated with a second informative content in a second submodule of a main memory module by overwriting second logic data associated with the first informative content while maintaining the first logic data contained in a first submodule of the main memory module unaltered; when the third logic data is being stored, reading the first logic data from the auxiliary memory module in a single-ended mode in response to a request for reading the first informative content; otherwise, reading the first logic data from the first submodule; and reading the third logic data in single-ended mode.