Microcontroller Program Updates with Segmented Protocol Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for updating microcontroller programs require excessive memory space, particularly when wireless updates are involved.
Innovation Solution
A method and microcontroller configuration that separates the program into regions, allowing the download protocol to be executed independently without relying on other program portions, enabling memory-efficient updates by erasing and replacing application versions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the download protocol and application are stored together in the same memory region, then the system can execute updates, but the memory space required is excessive
Solution Approach 1:
The patent divides the memory into distinct regions: a first region for storing the application and a second region for storing the download protocol. This segmentation allows the system to manage memory more efficiently by storing only necessary components in each region, reducing total memory requirements while maintaining update functionality.
Solution Approach 2:
The download protocol is extracted from the application binary and stored separately in a dedicated region. This extraction allows the protocol to be reused across different applications without duplicating its code, significantly reducing memory consumption while preserving the ability to perform wireless updates.
2Quantity of substance
If the entire program is updated at once, then the new version is complete, but the memory buffer required is large
Solution Approach 1:
The patent performs preliminary actions by first erasing the application region and then downloading the new application data. This staged approach allows the system to prepare memory space before receiving new data, enabling efficient memory utilization without requiring large buffers to hold both old and new versions simultaneously.
3Ease of operation
If the download protocol depends on other program portions, then the system can share code, but the protocol cannot execute independently during updates
Solution Approach 1:
The download protocol is extracted as a standalone component stored in a separate memory region, making it executable independently during update operations without requiring the application code to be present. This extraction resolves the dependency issue while maintaining code sharing benefits.
Solution Approach 2:
By segmenting the system into independent functional regions (application region and protocol region), the patent enables the protocol to execute autonomously during updates while still allowing code sharing when both components are present, thus improving ease of operation without significantly increasing complexity.
Data Source
AI summary
A microcontroller includes a memory storing a program which contains a first version of a first download protocol into the microcontroller and a first version of an application. The program is to be updated, with the update containing a second download protocol and a second version of the application. To perform the update, the first version of the application is erased from a first region of the memory. Then, the second download protocol is downloaded into the first region by using the first version of the first download protocol present in a second region of the memory. The content of the second region is then erased. The second version of the application is then downloaded by using the second download protocol.


