Memory Region Segmentation for Fast Boot in Autonomous Driving
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Autonomous driving systems face challenges in fast-boot requirements due to the time-consuming process of memory scrubbing, which is necessary for Error Correction Code (ECC) DRAM memory, impacting the timely initialization of critical applications like rear-view cameras.
Innovation Solution
A memory management system that designates memory regions into two types: one requiring scrubbing before system operation and another permitting scrubbing during operation, allowing system initialization to begin before completing memory scrubbing of the second type, utilizing additional processors for parallel scrubbing tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory scrubbing is performed before system operation, then memory reliability is improved, but system boot-up time increases
Solution Approach 1:
The patent divides memory into multiple regions (first type requiring pre-boot scrubbing, second type permitting post-boot scrubbing, and third type for scratchpad/temporary use). This segmentation allows critical memory to be scrubbed before boot while non-critical memory can be scrubbed afterward, resolving the contradiction between ensuring memory reliability and reducing boot-up time.
Solution Approach 2:
Different scrubbing policies are applied to different memory regions based on their specific requirements. Critical memory regions undergo strict pre-boot scrubbing, while non-critical regions allow post-boot scrubbing, optimizing the balance between reliability and speed for each local memory area.
2Reliability
If memory scrubbing is performed before system operation, then memory safety is improved, but application initialization time increases
Solution Approach 1:
The patent segments memory into regions with different scrubbing requirements, allowing applications to initialize using available memory regions while scrubbing continues in the background for non-critical regions, thereby reducing application initialization time while maintaining memory safety.
Solution Approach 2:
Critical memory regions are scrubbed in advance before system operation, ensuring safety for time-sensitive applications. Non-critical regions undergo scrubbing after boot, allowing applications to initialize without waiting for complete memory scrubbing.
3Reliability
If ECC DRAM memory is used, then error protection is improved, but memory scrubbing duration increases
Solution Approach 1:
The patent segments ECC DRAM memory into regions with different scrubbing priorities and policies, allowing the system to benefit from error protection while reducing overall scrubbing duration by not requiring all ECC memory to be scrubbed before boot.
Solution Approach 2:
Different scrubbing policies are applied to different ECC DRAM regions based on their criticality, with some regions requiring thorough scrubbing and others allowing faster or deferred scrubbing, optimizing the balance between error protection and scrubbing duration.
4Stability of the object's composition
If complete memory scrubbing is performed before boot, then system stability is improved, but fast-boot capability deteriorates
Solution Approach 1:
The patent divides memory into regions with different scrubbing requirements, enabling the system to achieve fast boot by skipping or deferring scrubbing of non-critical regions while maintaining stability through scrubbing of critical regions.
Solution Approach 2:
Different scrubbing policies are applied locally to different memory regions, with critical regions receiving thorough scrubbing to ensure stability and non-critical regions allowing deferred or reduced scrubbing to enable fast boot capability.
Data Source
AI summary
A system for managing memory resources related to boot, including a memory; a boot configuration circuit, configured to designate one or more memory regions as a first type or a second type, the first type requiring scrubbing before beginning system operation, and the second type permitting scrubbing after beginning system operation; one or more processors, configured to scrub the memory regions of the first type; define a first caching policy of one or more memory regions of the second type; and begin system operation before scrubbing memory regions of the second type.


