Interrupt Register Saving Control Circuit for Microcomputer Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional microcomputer interrupt processing methods require saving all general-purpose registers, even if only a subset is necessary, leading to increased processing time and memory usage, especially during interrupt nesting, due to the lack of register pattern specificity and inefficient instruction handling.

Innovation Solution

A microcomputer with multiple register lists and a register data saving control circuit that designates specific registers for saving based on interrupt patterns, using microinstructions to save only the necessary registers, reducing data saved and processing time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all general-purpose registers are saved during interrupt processing, then data safety is ensured, but processing time and memory usage increase

Engineering Contradiction:
Improvedata safetyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by differentiating register saving based on interrupt type. Different register sets are saved for different interrupt categories (e.g., timer interrupts save different registers than I/O interrupts), rather than uniformly saving all registers. This selective approach ensures data safety for each interrupt type while reducing overall processing time and memory usage.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the register saving process into multiple predefined patterns (first register pattern, second register pattern, etc.) corresponding to different interrupt types. Each pattern specifies a subset of registers to save, allowing the system to divide the complete register saving task into manageable, type-specific segments rather than handling all registers uniformly.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all general-purpose registers are saved during interrupt processing, then data safety is ensured, but memory capacity required increases

Engineering Contradiction:
Improvedata safetyVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The patent applies local quality by differentiating register saving based on interrupt type. Different register sets are saved for different interrupt categories (e.g., timer interrupts save different registers than I/O interrupts), rather than uniformly saving all registers. This selective approach ensures data safety for each interrupt type while reducing overall processing time and memory usage.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the register saving process into multiple predefined patterns (first register pattern, second register pattern, etc.) corresponding to different interrupt types. Each pattern specifies a subset of registers to save, allowing the system to divide the complete register saving task into manageable, type-specific segments rather than handling all registers uniformly.

Inventive Principle:
Principle #1Segmentation

3Ease of manufacture

If a fixed register saving method is used for all interrupts, then implementation simplicity is maintained, but processing efficiency decreases

Engineering Contradiction:
Improveimplementation simplicityVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent introduces dynamics by making the register saving behavior adaptive rather than fixed. The system automatically selects which register pattern to apply based on the interrupt type, allowing the same hardware to efficiently handle different interrupt scenarios without manual reconfiguration. This dynamic selection maintains implementation simplicity while significantly improving processing efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies preliminary action by pre-defining multiple register saving patterns before interrupts occur. These patterns are prepared in advance and associated with different interrupt types, allowing the system to quickly select and apply the appropriate pattern without complex real-time analysis. This pre-preparation maintains implementation simplicity while improving response efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8959317B2Processor and method for saving designated registers in interrupt processing based on an interrupt factor
Publication Date: 2015.02.17 RENESAS ELECTRONICS CORP
  • US8959317B2 patent drawing
  • US8959317B2 patent drawing
  • US8959317B2 patent drawing

AI summary

A microcomputer includes: a plurality of register lists having a plurality of register patterns, respectively, wherein each of plurality of register patterns designates registers, data of which are to be saved in a data memory; an instruction fetch control circuit configured to fetch instruction code from an instruction memory in response to an interrupt request issued based on occurrence of an interrupt factor; and a register data saving control circuit configured to acquire one register pattern from one of the plurality of register lists in response to the interrupt request, and issue a microinstruction based on the acquired register pattern in response to the interrupt request. An instruction executing section is configured to execute the microinstruction prior to the fetched instruction code, to save the data of registers designated based on the acquired register pattern in the data memory.