Microcode Assembler for Error-Protected Java Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current microprocessors lack mechanisms to protect against significant software errors such as array out-of-bounds accesses, null pointer dereferences, and uninitialized variable usage, which are major contributors to security faults and productivity drains in software applications.
Innovation Solution
A data processing apparatus that uses microcode techniques, allowing for the development of microcode instructions using high-level source languages, enabling error prevention and correction through self-defining microcode source code and native method calls to access platform-specific resources, thereby enhancing security and safety.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If microprocessors use conventional microcode implementation, then device complexity is reduced, but reliability deteriorates due to lack of error protection mechanisms
Solution Approach 1:
The patent introduces a microcode assembler as an intermediary tool that translates high-level source code into microcode instructions. This mediator enables developers to write error-prone high-level code while automatically generating the low-level microcode with built-in error protection mechanisms, thus improving reliability without directly increasing development complexity.
Solution Approach 2:
The patent replaces manual microcode programming with automated code generation from high-level source code. This substitution eliminates the need for developers to manually write complex microcode instructions, reducing the complexity burden while enabling sophisticated error protection features through the automated translation process.
2Reliability
If developers write extensive error checking code, then reliability improves, but productivity deteriorates due to time consumption
Solution Approach 1:
The patent performs error checking actions preliminarily by embedding validation logic within the microcode generation process itself. The microcode assembler automatically incorporates error detection mechanisms during code generation, so that error checking is performed as a preliminary step before the microcode executes, eliminating the need for separate manual error checking code.
Solution Approach 2:
The microcode generation system serves itself by automatically incorporating error protection and detection mechanisms into the generated microcode. The system monitors its own output for errors and generates appropriate validation instructions, eliminating the need for developers to manually add error checking functionality.
3Reliability
If microcode includes comprehensive error protection mechanisms, then reliability improves, but ease of operation worsens due to restricted access to platform resources
Solution Approach 1:
The patent introduces a controlled interface layer that acts as an intermediary between the high-level microcode and platform-specific resources. This mediator provides standardized, safe access mechanisms that maintain error protection while enabling necessary operations with platform resources through controlled abstraction.
Data Source
AI summary
Programming for a data processor to execute a data processing application is provided using microcode source code. The microcode source code is assembled to produce microcode that includes digital microcode instructions with which to signal the data processor to execute the data processing application.


