Medical Device Bootloader In-Memory Update
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing two-stage bootloading process for medical devices is complex, prone to errors, and requires increased storage space and longer booting times, making it difficult to update bootloader software efficiently.
Innovation Solution
A single-stage bootloading method where a bootloader is loaded into a volatile memory during the booting sequence, allowing for in-memory updating without the need for a secondary bootloader, reducing memory requirements and code complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a two-stage bootloading process is used to enable bootloader updates, then bootloader upgradability is improved, but device complexity and storage requirements increase
Solution Approach 1:
The patent divides the bootloader into two functional parts: a fixed initial bootloader that cannot be updated, and a secondary bootloader that can be updated. This segmentation allows the system to achieve upgradability while keeping the critical initial boot code secure and immutable, resolving the contradiction between upgradability and complexity.
Solution Approach 2:
The patent introduces an intermediary mechanism where the initial bootloader acts as a mediator that loads and executes the secondary bootloader. This intermediary approach enables updates without requiring the entire bootloading process to be complex, as the initial bootloader remains simple and fixed while handling the update of the secondary part.
2Adaptability or versatility
If a two-stage bootloading process is used to enable bootloader updates, then bootloader upgradability is improved, but storage space requirements increase
Solution Approach 1:
By segmenting the bootloader into fixed and updateable portions, the patent optimizes storage usage. The initial bootloader is stored in read-only memory or protected areas, while the secondary bootloader occupies updateable memory space, reducing the need for excessive storage capacity compared to storing entirely duplicable bootloading code.
Solution Approach 2:
The patent applies partial action by updating only the necessary secondary bootloader portion rather than requiring storage for complete duplicate bootloader instances. This selective updating approach reduces storage requirements while maintaining full upgradability functionality.
3Adaptability or versatility
If a two-stage bootloading process is used to enable bootloader updates, then bootloader upgradability is improved, but booting time increases
Solution Approach 1:
The patent implements preliminary action by having the initial bootloader pre-configured and ready to immediately load the secondary bootloader without requiring complex verification or setup procedures. This preliminary preparation minimizes the time penalty associated with the two-stage process while maintaining upgradability.
Solution Approach 2:
The patent employs skipping by allowing the bootloading process to quickly transition through the two stages without unnecessary delays. The initial bootloader rapidly loads and transfers control to the secondary bootloader, minimizing the time spent in the transition phase while preserving the benefits of the staged approach.
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
A method for booting a medical device (1) comprises: executing a bootloader software (PBL) stored in a first memory (146) of a memory device (14) of the medical device (1) for booting the medical device (1); loading, during execution of the bootloader software (PBL), the bootloader software (PBL) or a portion of the bootloader software (PBL) into a second memory (147) of the memory device (14) of the medical device (1); executing the bootloader software (PBL) or said portion of the bootloader software (PBL) from the second memory (147); receiving a software update of the bootloader software (PBL) or said portion of the bootloader software (PBL); and storing the software update of the bootloader software (PBL) or said portion of the bootloader software (PBL) in the first memory (146).