Microprocessor Banked Registers for x86 ARM Architecture Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing competition between x86 and ARM processor architectures in computing devices poses a dilemma for manufacturers and users, as they need to support both architectures to preserve investments and adapt to changing user demands, with existing solutions like software translators offering insufficient performance.
Innovation Solution
A microprocessor that supports multiple processor modes and uses direct and indirect storage for architectural registers, allowing it to dynamically switch between modes and translate x86 and ARM instructions into microinstructions for efficient execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If software translators are used to enable both x86 and ARM architectures, then adaptability is improved, but execution speed deteriorates
Solution Approach 1:
The patent introduces banked registers as an intermediary mechanism that enables seamless switching between x86 and ARM architectures. The register bank select signal allows the processor to switch between different register sets (first bank for x86, second bank for ARM) without requiring software translation, thus maintaining execution speed while achieving architecture compatibility.
2Ease of manufacture
If a single configuration system is used to reduce costs, then manufacturing efficiency is improved, but adaptability deteriorates
Solution Approach 1:
The patent implements a universal processor design that can function as both x86 and ARM architectures through the banked register mechanism. The processor includes first registers for x86 mode and second registers for ARM mode, with a register bank select signal to switch between them, allowing a single configuration system to serve multiple architecture needs without requiring separate hardware for each architecture.
3Productivity
If investment is made in one architecture, then performance is improved, but flexibility deteriorates
Solution Approach 1:
The patent implements dynamic architecture switching capability through the banked register mechanism. The processor can dynamically switch between x86 and ARM architectures based on the execution needs, allowing the system to adapt to different workloads and preserve investments in either architecture while maintaining the ability to switch when needed.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A microprocessor supports an instruction set architecture that specifies: processor modes, architectural registers associated with each mode, and a load multiple instruction that instructs the microprocessor to load data from memory into specified ones of the registers. Direct storage holds data associated with a first portion of the registers and is coupled to an execution unit to provide the data thereto. Indirect storage holds data associated with a second portion of the registers and cannot directly provide the data to the execution unit. Which architectural registers are in the first and second portions varies dynamically based upon the current processor mode. If a specified register is currently in the first portion, the microprocessor loads data from memory into the direct storage, whereas if in the second portion, the microprocessor loads data from memory into the direct storage and then stores the data from the direct storage to the indirect storage.