Hardware Emulator for Debugging Image Processing Control Collisions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In image processing apparatuses like MFPs, debugging application programs that control hardware resources is challenging due to short response times and high error occurrence probabilities, making it difficult to identify and resolve control collisions between multiple application programs.

Innovation Solution

An image processing apparatus with a hardware processor that includes a host controller, a guest controller, an emulator, and a changer, allowing the guest controller to control hardware resources through a device emulator and switching between direct control of the hardware and emulator control, facilitating debugging by modifying HDL programs and adding commands for delay, parameter, and variable checks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If execution time is shortened to increase error occurrence probability, then debugging capability is improved, but response time becomes too short to capture errors

Engineering Contradiction:
Improvedebugging capabilityVSAvoidresponse time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

An emulator is introduced as an intermediary between the guest controller and hardware resource. The emulator receives control signals from the guest controller, emulates the hardware resource's behavior including response delays, and returns simulated responses. This allows the system to maintain short execution cycles while still observing complete control-response sequences, thereby increasing error occurrence probability without sacrificing response time visibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If programmable hardware component is configured to accept response delay, then debugging accuracy is improved, but cost increases significantly

Engineering Contradiction:
Improvedebugging accuracyVSAvoidconfiguration cost
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

Instead of configuring expensive programmable hardware components to accept response delays, the patent creates a software-based emulator that copies the hardware resource's behavior. The emulator reads the HDL program describing the hardware resource and simulates its operation including timing characteristics, providing the same debugging accuracy at minimal cost.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces the need for specially configured programmable hardware with a software emulation system. The emulator executes HDL program interpretation in software, substituting the need for hardware configured to accept delays, thereby achieving the same effect at lower cost and complexity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If multiple application programs control one hardware resource, then functionality is improved, but control collision errors increase

Engineering Contradiction:
ImprovefunctionalityVSAvoidcontrol collision error rate
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The emulator serves as a mediator between multiple application programs and the hardware resource. Each application program sends control signals to the emulator, which manages the emulation of hardware resource access. This allows multiple programs to operate concurrently with proper coordination, maintaining functionality while reducing control collision errors through centralized management of hardware access.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10412251B2Image processing apparatus for debugging a hardware emulation process
Publication Date: 2019.09.10 KONICA MINOLTA INC
  • US10412251B2 patent drawing
  • US10412251B2 patent drawing
  • US10412251B2 patent drawing

AI summary

An image processing apparatus includes a host controller that controls a hardware resource, a guest controller, an emulator that is provided between the host controller and the guest controller and allows the guest controller to control the hardware resource, and a changer that changes an HDL program, wherein the guest controller includes a guest driver, the emulator includes a device emulator that emulates the hardware resource by executing the changed HDL program, and a switcher that switches control to any one of a first control for controlling the host controller in accordance with control of the hardware resource by the guest driver and allowing the hardware resource to be controlled, and a second control for controlling the device emulator in accordance with the control of the hardware resource by the guest driver.