Expansion ROM Code Retrieval for Updated Device Initialization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computer systems face challenges in initializing devices when expansion ROM code is missing or outdated, as they often rely solely on the expansion ROM code stored on the computer bus card, making it difficult to access and update, especially when replacement cards do not have the appropriate code and manual processes are required.
Innovation Solution
A method that allows a computer system to access and select a preferred ROM code from multiple local and remote repositories, prioritizing the most recent or highest-priority code, which can be downloaded and stored locally for future use, enabling automatic initialization and updating during the boot-up process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If expansion ROM code is stored on the computer bus card, then the computer system can easily access the code during power up, but it becomes difficult to update the code when the card needs replacement
Solution Approach 1:
The system separates the ROM code storage from the bus card hardware by implementing multiple storage locations including local system memory and remote network repositories. This segmentation allows the code to be accessed quickly from local memory while enabling easy updates from remote sources without requiring physical card replacement.
Solution Approach 2:
The patent introduces a BIOS-based intermediary system that manages ROM code retrieval and updates. The BIOS acts as a mediator between the bus card, local storage, and remote repositories, automatically fetching and validating ROM code without requiring user intervention or manual updates.
2Ease of repair
If manual update process is used to retrieve and flash ROM image, then the user can update the expansion ROM code, but the process becomes time-consuming and complex
Solution Approach 1:
The system implements self-service automation where the BIOS automatically performs ROM code updates without user intervention. The system autonomously retrieves ROM images from remote repositories, validates them, and flashes them to the appropriate storage locations, eliminating the need for manual user actions and significantly reducing update time.
Solution Approach 2:
The patent enables preliminary actions by allowing the system to pre-fetch and validate ROM codes from remote repositories before they are needed. The BIOS can proactively update ROM code during idle periods or system initialization, ensuring that updates are completed beforehand rather than interrupting user workflows.
3Device complexity
If the system only accesses ROM code from the bus card, then the initialization process is simple, but the system cannot access updated code from other locations
Solution Approach 1:
The patent implements a universal ROM code access architecture that supports multiple storage locations including the bus card, local system memory, and remote network repositories. The BIOS is designed to automatically search and retrieve ROM code from any of these locations, providing multi-functionality without significantly increasing initialization complexity.
4Adaptability or versatility
If replacement bus card is used, then the hardware can be updated, but it is not easy to determine whether the new card has appropriate ROM code
Solution Approach 1:
The system implements feedback mechanisms where the BIOS automatically verifies the ROM code on replacement bus cards by checking version information, signatures, and compatibility metadata. The system provides feedback about whether the new card has appropriate code and automatically retrieves replacement code if needed, eliminating the difficulty of manual verification.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Systems and methods are provided for updating expansion read-only memory (ROM) code to execute for device-specific initialization. An exemplary method comprises first accessing one or more copies of a ROM code in at least one of a plurality of repositories. The ROM code can be configured to execute an initialization process for a specific device in the computer system. The method can then select one of the one or more copies of the ROM code based on a selection criterion to yield a selected ROM code. The method can then copy the selected ROM code to a system memory of the computer system. The method can then execute the selected ROM code in the system memory to initialize the specific device.