Dynamic Debugging Message Configuration via Runtime Bitmask

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging firmware in a computing system is challenging due to the unavailability of debugging information during the execution of the release version, making it difficult to identify the root cause of functional issues, especially when rebuilding the firmware is not feasible or reproducible.

Innovation Solution

Implementing a dynamic configuration mechanism that allows for the selection and updating of debugging messages at runtime, using masks associated with modules or components, enabling precise control over the types of debugging messages available without rebuilding the firmware, and providing a debugging configuration service to manage these settings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If firmware is rebuilt for debugging mode to obtain debugging information, then debugging capability is improved, but firmware stability and operational consistency deteriorate because system conditions change after rebuilding

Engineering Contradiction:
Improvedebugging capabilityVSAvoidfirmware stability
Core Design Contradiction:
Difficulty of detecting and measuringVSReliability

Solution Approach 1:

The patent implements dynamic configuration of debugging message availability through a bitmask parameter that can be modified at runtime without rebuilding firmware. This allows the system to adapt debugging capabilities during operation while maintaining the original firmware image, thus preserving system stability while enabling debugging when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state of debugging messages from static (always unavailable in release mode) to dynamically controllable through a bitmask parameter. By modifying this parameter, the system can enable or disable specific debugging messages without altering the firmware code itself, resolving the contradiction between debugging access and system stability.

Inventive Principle:
Principle #35Parameter changes

2Loss of information

If all debugging messages are made available during firmware execution, then debugging information completeness is improved, but system resource consumption and output volume deteriorate

Engineering Contradiction:
Improvedebugging information completenessVSAvoiddebugging output volume
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The patent applies local quality by enabling debugging messages selectively based on their type and source module rather than uniformly for all messages. The bitmask parameter allows specific debugging message categories to be enabled or disabled independently, providing targeted debugging information while minimizing unnecessary output volume.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments debugging messages into different types and sources, each controllable through specific bits in the bitmask parameter. This segmentation allows the system to enable only the necessary debugging messages for a particular debugging task, reducing overall output volume while maintaining completeness for relevant information.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If debugging messages are configured at build-time, then firmware structure simplicity is improved, but flexibility and adaptability deteriorate because configuration cannot be changed without rebuilding

Engineering Contradiction:
Improvefirmware structure simplicityVSAvoiddebugging configuration flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic configurability through a bitmask parameter that can be modified at runtime. This single parameter provides flexible control over debugging message availability without adding complex configuration structures, maintaining firmware simplicity while enabling adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements configuration flexibility through parameter changes rather than structural modifications. The bitmask parameter can be changed without rebuilding firmware, allowing the system to adapt debugging behavior to different operational needs while maintaining a simple firmware structure.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10628285B1Dynamic configuration of availability of debugging messages
Publication Date: 2020.04.21 AMERICAN MEGATRENDS
  • US10628285B1 patent drawing
  • US10628285B1 patent drawing
  • US10628285B1 patent drawing

AI summary

Configuration of availability of debugging messages during the execution of a firmware in a debugging mode of operation is provided. The configuration can be updated without rebuilding the firmware. Thus, a selection of a group of available types of debugging messages can be updated dynamically, at various runtime instances of the firmware. The selection can be accomplished by configuring, at a runtime of the firmware, a level of recordation of debugging messages and one or more data structures associated with the level or recordation. Each of the one or more data structures includes elements indicative of respective types of debugging messages being enabled or disabled for presentation during the execution of the firmware in the debugging mode of operation. A debugging message can be provided based at least partially on at least one of the data structure(s) during the execution of the firmware in the debugging mode of operation.