Concurrent Event Data Record Writing in Microcontroller Non-Volatile Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current microcontroller units face challenges in efficiently storing event data records, as they require sufficient volatile memory capacity and time to copy data to non-volatile memory, during which backup power may fail, risking data loss.
Innovation Solution
The system concurrently captures and writes post-event data to non-volatile event data records while copying pre-event data, using a DMA controller and ferromagnetic random-access memory to shorten the data population time and ensure data integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is copied sequentially from volatile memory to non-volatile memory, then data integrity is maintained, but the time required to populate event data records increases and backup power may fail
Solution Approach 1:
The system pre-loads event data into volatile memory during the pre-event window before the actual event occurs. This preliminary action ensures that data is ready for immediate concurrent writing to non-volatile memory when the event is detected, eliminating the need for time-consuming sequential copying during the critical post-event period when backup power may fail.
Solution Approach 2:
The system implements concurrent writing operations where multiple data streams (pre-event data from volatile memory and post-event data from sensors) are written to non-volatile memory simultaneously in an interleaved manner. This continuous parallel operation maximizes the utilization of the non-volatile memory bandwidth and significantly reduces the total time required to populate complete event data records.
2Loss of information
If sufficient volatile memory capacity is allocated to store pre-event data, then complete event records can be captured, but the device complexity and memory requirements increase
Solution Approach 1:
The system segments event data storage into two distinct parts: volatile memory for pre-event data and non-volatile memory for post-event data. This segmentation allows each memory type to be optimized for its specific function, reducing the overall volatile memory capacity requirements while ensuring complete event data capture through the concurrent writing mechanism.
Solution Approach 2:
By pre-loading only the essential pre-event data into volatile memory for a limited time window before the event, the system minimizes the volatile memory buffer size requirements. The concurrent writing process then efficiently transfers this pre-loaded data to non-volatile memory while simultaneously capturing post-event data, reducing the need for large volatile memory capacity.
3Productivity
If concurrent writing of pre-event and post-event data is implemented, then data population time is reduced, but the risk of write conflicts and data corruption increases
Solution Approach 1:
The concurrent writing system segments the data stream into distinct pre-event and post-event portions with clear temporal boundaries. By maintaining separate data buffers and using synchronized interleaved writing with proper timing markers, the system enables parallel operations without write conflicts, ensuring data consistency while maximizing population speed.
Solution Approach 2:
The system introduces a control mechanism that acts as an intermediary between the volatile memory and sensor inputs, coordinating the concurrent writing operations to non-volatile memory. This mediator ensures proper synchronization, handles potential write conflicts, and maintains data integrity through structured interleaved writing with timing validation.
Data Source
AI summary
Systems, methods, and circuitries are disclosed for generating and storing event data records. In one example, a method includes, for each of a plurality of monitored parameters, controlling a memory controller to write pre-event system data from a controller memory to a buffer in a non-volatile memory. In response to detection of an event, for each of the plurality of monitored parameters, the method includes controlling the memory controller to write post-event system data occurring during a post-event time window from the controller memory to an event data record for the event in the non-volatile memory; and controlling the memory controller to copy pre-event system data for each monitored parameter from the buffer to the event data record for the event, wherein, writing of post-event system data and copying of pre-event system data are performed concurrently.


