EEPROM Variable Map Updates Without Full Data Rewrite
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing EEPROM systems face challenges in efficiently managing updates that involve changes in variable addresses, sizes, and values, leading to inefficiencies in software updates due to the need to rewrite all data during updates.
Innovation Solution
A system and method for managing EEPROM updates by comparing first and second maps of variable locations and sizes, allowing for selective updating of changed data while retaining unchanged data, and using offsets to rearrange variables as needed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all data is rewritten during EEPROM updates, then data consistency is ensured, but processing time and computational overhead increase
Solution Approach 1:
The patent extracts and stores a map data structure that records the location and size of each variable in the EEPROM. During updates, the system retrieves this map, compares it with the new software requirements, and identifies only the changed variables. This extraction of metadata enables selective updating rather than complete rewriting, resolving the contradiction between ensuring data consistency and reducing processing time.
Solution Approach 2:
Instead of performing excessive action by rewriting all data in the EEPROM during each software update, the patent implements partial action by updating only the specific variables that have changed. The system compares the current map with the updated software requirements, identifies changed variables through address or size differences, and performs updates only on those specific locations, thereby significantly reducing processing time while maintaining data consistency.
2Adaptability or versatility
If variable addresses and sizes change during updates, then software adaptability is improved, but the complexity of managing memory locations increases
Solution Approach 1:
The patent introduces a map data structure as an intermediary between the software and the physical EEPROM memory. This map records the address and size of each variable, serving as a translation layer that abstracts the physical memory locations. When software updates cause variable addresses or sizes to change, the system updates only the map entries rather than restructuring the entire memory management system, thereby reducing complexity while maintaining adaptability.
Solution Approach 2:
The system performs preliminary action by pre-calculating and storing the map data structure that defines variable locations and sizes before actual data storage or retrieval operations. This preliminary organization allows the system to quickly identify changed variables during updates by comparing map entries, eliminating the need for complex runtime memory management calculations and simplifying the handling of address and size changes.
Data Source
AI summary
A computer may store records at respective locations in the memory. The records may respectively include, for one of a plurality of variables, an identifier and a size. Responsive to a notification of a software update, the computer may retrieve from the memory a first map of the variables specifying their respective locations in the memory and respective sizes for each of the variables along with the identifiers. The computer may receive, from a remote device, a second map of the variables specifying respective second locations in the memory, and second sizes, for the respective variables along with the identifiers. The computer may store the variables to the respective second locations in memory and store the second map in place of the first map.


