Hardware Platform Validation via Software-Driven Loop

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current hardware platform validation methods are inefficient, as they lack 'software-in-loop' validation and cannot fully test hardware components, leading to increased costs and time in identifying and fixing defects, especially in later stages like product silicon, where bugs are harder to isolate and fix.

Innovation Solution

A system and method that includes a database for test specifications, a device driver generator, a compiler, and a software-driven validation generator to create customized device drivers and test cases specific to the hardware platform, allowing for software-driven validation of hardware components and platforms, enabling early identification and isolation of defects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hardware platform is tested without software-in-loop validation, then hardware components cannot be fully tested, but validation time and cost increase in later stages

Engineering Contradiction:
Improvevalidation thoroughnessVSAvoiddefect isolation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary validation actions by integrating software-in-loop testing during the pre-si stage rather than waiting for post-si. The validation framework generates test cases and executes them against the hardware platform before final product silicon is available, enabling early defect detection when fixes are less costly and time-consuming.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary validation framework that acts as a mediator between hardware platform and final product software. This framework includes a validation driver, test case generator, and execution environment that enables software-driven validation without requiring the final product software, thus allowing thorough testing while maintaining efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If custom test software is used to test hardware platform, then hardware functionality can be tested, but software is not portable across different platforms

Engineering Contradiction:
Improvehardware functionality testingVSAvoidsoftware portability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal validation framework that can operate across multiple hardware platforms. The framework uses platform-agnostic test case generation and execution mechanisms, allowing the same validation infrastructure to test different hardware platforms without requiring platform-specific custom software development, thus achieving both thorough testing and software portability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent employs a virtualized or simulated hardware environment that copies essential hardware behaviors and interfaces. This allows software-driven validation to be performed on a standardized platform representation, enabling portability across different physical hardware platforms while maintaining accurate functionality testing through the copied hardware model.

Inventive Principle:
Principle #26Copying

3Reliability

If product software is used to test hardware platform, then complete use-cases can be tested, but defect isolation becomes tedious due to both platform and software potentially having bugs

Engineering Contradiction:
Improveuse-case coverageVSAvoiddefect isolation difficulty
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent segments the validation process into distinct components: hardware platform, validation framework, test case generator, and execution environment. By separating the validation infrastructure from both the hardware platform and final product software, the system can isolate defects more easily - bugs in the validation framework can be distinguished from hardware defects and software bugs, reducing the tedium of defect isolation while maintaining complete use-case coverage.

Inventive Principle:
Principle #1Segmentation

4Reliability

If validation is performed at post-si stage, then actual product silicon can be tested, but cost to identify and fix defects increases drastically

Engineering Contradiction:
Improveproduct silicon validationVSAvoiddefect fixing cost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent performs preliminary validation at the pre-si stage using the validation framework against hardware platforms before final product silicon is manufactured. This early validation identifies and allows fixing of defects when the cost of correction is minimal, avoiding the need for expensive post-si defect fixes while still validating against actual hardware rather than pure simulation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9372770B2Hardware platform validation
Publication Date: 2016.06.21 VAYAVYA LABS
  • US9372770B2 patent drawing
  • US9372770B2 patent drawing
  • US9372770B2 patent drawing

AI summary

A system for validating a hardware platform is provided. The system includes a database that stores one or more test specifications, a compiler that generates a target image based on (i) a device driver obtained from a device driver generator, (ii) a platform independent target application code, (iii) a kernel source, and (iv) a run time environment, and a software driven validation generator that analyzes the run time specification and the device programming specification and generates (i) one or more test cases based on (a) the one or more test specifications, and (b) the device programming specification, and (ii) a control software based on the test cases. The test cases include configurations that are specific to the hardware platform. The hardware platform is validated based on (i) an execution of the target image and the control software on the hardware platform, and (ii) the one or more test cases.