Automated Firmware Code Generation for Programmable Integrated Circuit Menu Hierarchies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for coding menu data for electronic devices are labor-intensive, costly, and prone to errors due to manual hand coding, especially with complex menu hierarchies.

Innovation Solution

A method and system for generating firmware code using a configurable menu hierarchy displayed in a graphical user interface, allowing users to interactively configure menu structures and automatically generate data structures for implementation on programmable integrated circuits, reducing manual effort and error.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hand coding is used to define menu hierarchy and functionality, then the menu can be implemented, but the process becomes labor-intensive and time-consuming

Engineering Contradiction:
Improvemenu implementation accuracyVSAvoidcode generation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent replaces the manual mechanical process of hand-coding menu hierarchies with an automated graphical user interface system. Users visually configure menu structures through drag-and-drop operations and graphical editors, which then automatically generate the corresponding firmware code. This substitution eliminates tedious manual coding while maintaining implementation accuracy, directly resolving the contradiction between reliability and time consumption.

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

Solution Approach 2:

The patent introduces an intermediary graphical user interface and code generation system between the user's design intent and the final firmware code. This intermediary layer automatically translates visual menu configurations into structured firmware code, reducing both the time required for code generation and the potential for human error, thereby simultaneously improving reliability and reducing time loss.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If hand coding is used to define complex menu hierarchies with numerous nodes, then the menu functionality can be achieved, but the cost and labor intensity increase significantly

Engineering Contradiction:
Improvemenu hierarchy flexibilityVSAvoidcode generation ease
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent replaces manual coding mechanics with automated graphical configuration tools. The GUI enables users to build complex, flexible menu hierarchies through visual operations rather than writing code manually. This automation maintains full adaptability for complex menu structures while dramatically improving ease of manufacture by eliminating repetitive coding tasks.

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

Solution Approach 2:

The patent employs template-based copying mechanisms where standard menu nodes and hierarchical structures can be replicated and reused. This allows complex menu hierarchies to be built efficiently by copying and adapting existing patterns, maintaining versatility while reducing the effort required for implementation.

Inventive Principle:
Principle #26Copying

3Ease of operation

If manual entry of code is used to define menu organization and node relationships, then the menu can be implemented, but errors are more likely to occur

Engineering Contradiction:
Improvemenu configuration simplicityVSAvoidcode accuracy
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent replaces manual code entry with automated graphical configuration and code generation. The system automatically translates visual menu definitions into accurate firmware code, eliminating transcription errors and syntax mistakes inherent in manual coding. This maintains operational simplicity while significantly improving code accuracy and reliability.

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

Solution Approach 2:

The patent incorporates automated validation and error checking mechanisms that provide immediate feedback during menu configuration. The system validates the graphical menu definitions and generates appropriate feedback or error messages, preventing incorrect configurations from propagating into the final code, thereby enhancing both reliability and ease of operation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7966345B1Method, system, and graphical user interface for generating firmware code for a programmable integrated circuit
Publication Date: 2011.06.21 MONTEREY RESEARCH LLC
  • US7966345B1 patent drawing
  • US7966345B1 patent drawing
  • US7966345B1 patent drawing

AI summary

A method, computer system, and graphical user interface for generating firmware code for a programmable integrated circuit are disclosed. Embodiments are directed to a configurable menu hierarchy which is displayed as part of a graphical user interface, and therefore may be configured on-screen by a user interacting with elements or regions of the graphical user interface. Once the hierarchy of the menu is configured, a data structure for implementing menu functionality associated with the displayed menu hierarchy may be automatically generated. Firmware may be generated based upon the data structure and stored within a programmable integrated circuit. The firmware may enable the programmable integrated circuit to implement the menu functionality external to the programmable integrated circuit using at least one component of the programmable integrated circuit. The menu functionality may operate in conjunction with at least one user interface device of the electronic device.