Firmware Development via External Silicon Register Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing firmware development process for silicon chips is time-consuming and inefficient, requiring repeated burning of firmware onto memory and restarting the silicon chip for each revision, which hinders rapid testing and debugging.
Innovation Solution
A system and method that allows firmware development on a central processing unit (CPU) by accessing configuration space registers of a silicon chip via an external physical interface, enabling efficient testing and debugging without actual runtime on the silicon chip, using a software compiler to compile firmware source code that interacts with hardware logic as if it were running on an embedded firmware processor.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware is repeatedly burned onto memory and silicon chip is restarted for each revision, then firmware testing can be performed, but development time increases significantly
Solution Approach 1:
The patent creates a virtual copy of the firmware execution environment by running emulated firmware on a CPU rather than physically programming the silicon chip. This virtualization allows multiple firmware revisions to be tested without physical re-burning or restarts, resolving the time loss issue while maintaining testing reliability
Solution Approach 2:
The patent introduces an intermediary emulated firmware layer that sits between the developer's source code and the physical silicon chip. This intermediary allows testing through software simulation rather than direct hardware programming, eliminating the need for repeated physical burning and restarting
2Ease of repair
If firmware source code is updated and recompiled repeatedly, then bug fixing is enabled, but the complexity of the development process increases
Solution Approach 1:
The patent replaces the mechanical process of physical firmware burning and chip restarting with a software-based emulated firmware execution system. This substitution simplifies the development process by allowing code changes to be tested through software compilation and execution rather than complex physical reprogramming operations
3Reliability
If firmware is tested on silicon chip with embedded firmware processor, then actual hardware operation is verified, but the need for repeated powering down and powering up increases time consumption
Solution Approach 1:
The patent creates a virtual copy of the firmware execution environment by running emulated firmware on a CPU rather than physically programming the silicon chip. This virtualization allows multiple firmware revisions to be tested without physical re-burning or restarts, resolving the time loss issue while maintaining testing reliability
Solution Approach 2:
The patent performs preliminary firmware testing in an emulated environment before actual hardware deployment. This preliminary virtual testing eliminates the need for repeated physical powering cycles during development, as all testing occurs in the emulated firmware environment
Data Source
AI summary
In one embodiment, a computing device includes a data interface to connect to and share data with configuration space registers of a silicon chip via an external physical interface of the silicon chip, a processing unit to execute a procedure to update parts of firmware source code configured to access the configuration space registers from a firmware processor embedded on the silicon chip via an internal physical interface of the silicon chip to access the configuration space registers via the data interface and via the external physical interface of the silicon chip, yielding modified firmware source code, and execute a software compiler to compile the modified firmware source code yielding compiled software.


