High-Level Language Integrated Circuit Design

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer-aided design of integrated circuits requires significant time and effort to verify different models, as each model is developed using a different language, leading to inefficiencies in the verification process and potential errors.

Innovation Solution

A high-level language is introduced to generate a common database from which various models of an integrated circuit can be produced, including performance simulations, functional models, and synthesizable RTL code, optimizing for power savings and custom circuit layout, thereby reducing verification time and improving performance per watt of power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If different code databases are used to generate various models (architectural model, RTL model, cycle accurate performance model), then each model can be developed with specialized language features, but verification time and complexity increase significantly

Engineering Contradiction:
Improvemodel generation capabilityVSAvoidverification time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces a unified high-level language that serves multiple functions: generating architectural models, RTL models, and cycle-accurate performance models from a single source. This universal language eliminates the need to verify multiple separate models in different languages, directly reducing verification time while maintaining the ability to produce specialized models for different purposes.

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

Solution Approach 2:

The patent merges the verification process by generating all model types (functional, performance, verification environments) from a single common database. This consolidation combines what were previously separate verification tasks into one unified process, significantly reducing the time and effort required to verify integrated circuit functionality across different abstraction levels.

Inventive Principle:
Principle #5Merging (Combining)

2Ease of manufacture

If each model is developed using a different language, then language-specific optimizations can be applied, but the verification process becomes more complex and error-prone

Engineering Contradiction:
Improvemodel development efficiencyVSAvoidverification process complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The high-level language provides universal functionality to generate all types of models (architectural, RTL, performance) and verification environments from a single source. This eliminates the complexity of managing multiple language-specific development processes and verification workflows, while still allowing specialized optimizations through the unified language's structured approach.

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

Solution Approach 2:

The common database acts as an intermediary that mediates between the high-level language source code and various target models. This intermediary structure simplifies the verification process by providing a consistent interface and data structure that bridges all model types, reducing errors and complexity in the verification process.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If manual verification testbenches and assertions are written for each model, then thorough verification can be achieved, but significant man and machine hours are required

Engineering Contradiction:
Improveverification thoroughnessVSAvoidverification speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system enables self-service verification by automatically generating verification environments and testbenches from the unified high-level language source code. The verification components are generated automatically through the common database, eliminating the need for manual verification testbench writing while maintaining thorough verification coverage, thus significantly improving verification productivity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The verification environments and testbenches are prepared in advance through automatic generation from the common database before actual verification execution. This preliminary action of generating verification components automatically reduces the time required for manual verification setup while ensuring comprehensive verification coverage is maintained.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7483823B2Building integrated circuits using logical units
Publication Date: 2009.01.27 NVIDIA CORP
  • US7483823B2 patent drawing
  • US7483823B2 patent drawing
  • US7483823B2 patent drawing

AI summary

Systems and methods for designing and generating integrated circuits using a high-level language are described. The high-level language is used to generate performance models, functional models, synthesizable register transfer level code defining the integrated circuit, and verification environments. The high-level language may be used to generate templates for custom computation logical units for specific user-determined functionality. The high-level language and compiler permit optimizations for power savings and custom circuit layout, resulting in integrated circuits with improved performance per watt of power consumption.