Natural-Language Design Verification for Hardware and Software Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Comprehensive design verification and security of IP cores and software libraries is challenging due to the difficulty in examining and verifying implementations, which is a time-consuming and costly manual process prone to errors, and existing methods like proof-carrying hardware and proof-based logic checking require complex logical descriptions that are not easily understood.

Innovation Solution

A computer system processes natural language descriptions to generate verification statements, extracts semantic expressions, and evaluates them against design implementations to determine satisfaction, thereby establishing trust without significant cost or delay, using techniques like layout reconstruction, table/figure detection, and semantic reasoning to automate the verification process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual verification methods are used to examine and verify IP core implementations, then verification accuracy can be maintained, but the process becomes time-consuming and costly

Engineering Contradiction:
Improveverification accuracyVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces an intermediary system comprising a processor and memory that automatically processes verification data, natural language descriptions, and design implementations. This intermediary automated verification system mediates between the verification requirements and the implementation, eliminating the need for manual verification while maintaining accuracy through systematic automated analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical manual verification process with an automated electronic verification system. The processor executes verification algorithms that automatically compare design implementations against natural language descriptions, substituting human manual examination with computational automation to reduce time while maintaining verification rigor.

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

2Reliability

If proof-carrying hardware and proof-based logic checking are used to verify designs, then verification reliability improves, but the complexity of logical descriptions increases significantly

Engineering Contradiction:
Improveverification reliabilityVSAvoidlogical description complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses natural language descriptions as simplified copies or representations of the complex verification requirements. Instead of requiring complex logical descriptions, the system processes natural language text that serves as an accessible copy of the verification criteria, making the verification process reliable without increasing description complexity.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the parameter of description complexity by transforming verification requirements from complex logical formalisms into natural language expressions. The processor translates and processes these natural language descriptions into verification criteria, maintaining verification reliability while significantly reducing the complexity of the description language required.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If comprehensive design verification is performed manually to ensure security, then verification thoroughness improves, but cost and expertise requirements increase

Engineering Contradiction:
Improvedesign securityVSAvoidverification process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The verification system performs self-service by automatically executing verification processes without requiring extensive human expertise. The processor and memory system independently handle the comprehensive verification of design implementations against natural language descriptions, enabling thorough security verification while reducing the complexity burden on human operators.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The automated verification system acts as an intermediary that handles the complex verification processes between the design implementation and security requirements. This intermediary system absorbs the complexity of comprehensive verification, providing design security without requiring users to manage the associated process complexity or expertise requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12423503B2Computer-implemented verification of a hardware design implementation against a natural language description of the hardware design or software code against a natural language description of a software application
Publication Date: 2025.09.23 GRAF RESEARCH CORP
  • US12423503B2 patent drawing
  • US12423503B2 patent drawing
  • US12423503B2 patent drawing

AI summary

A computer system obtains and/or assists in creation of a natural language description file corresponding to a design, where the design is a hardware design or a software design and processes the natural language description file to extract semantic expressions. One or more intermediate representation data structures is generated from selected ones of the semantic expressions. Each intermediate representation data structure includes natural language design objects, natural language design object properties, and relationships between natural language design objects and/or natural language design object properties. The computer system transforms each intermediate representation data structure into one or more corresponding design verification statements derived from the natural language description file. Those design verification statements are subsequently evaluated against one or more design implementation files corresponding to the design.