Processor Test Pattern Re-execution for Timing Scenario Coverage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The test pattern build stage in processor verification is the most time-consuming process, overshadowing the test pattern execution and validation/verification stages, resulting in insufficient time for these critical phases.

Innovation Solution

Re-executing test patterns in varying timing scenarios by varying the initial cache line memory states, which reduces test pattern build time and increases system test coverage, while ensuring the same final state of memory and processor registers for simplified error checking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test patterns are rebuilt for each verification run, then test coverage can be maximized, but test pattern build time increases significantly

Engineering Contradiction:
Improvetest coverageVSAvoidtest pattern build time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by varying initial cache line memory states before test pattern execution. By pre-configuring different cache states (hit, miss, partial hit) for test pattern re-execution, the system eliminates the need to rebuild test patterns while still achieving diverse timing scenario coverage. This preliminary state preparation allows the same test pattern to be reused multiple times with different initial conditions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes parameters by varying initial cache memory states rather than changing the test pattern code itself. By modifying the initial state parameters of cache lines (present, absent, partial presence), the system creates different timing scenarios during test pattern re-execution, achieving diverse verification coverage without requiring new test pattern generation.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If more time is allocated to test pattern execution and validation, then verification quality improves, but test pattern build time must be reduced

Engineering Contradiction:
Improveverification qualityVSAvoidtest pattern build efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system uses copying by re-executing the same test pattern multiple times with different initial cache states. Instead of creating new test patterns for each verification scenario, the system copies and reuses the original test pattern with modified initial memory states, significantly reducing build time while maintaining comprehensive verification coverage.

Inventive Principle:
Principle #26Copying

3Reliability

If test patterns are re-executed with varying initial cache states, then timing scenario coverage increases, but test pattern execution complexity increases

Engineering Contradiction:
Improvetiming scenario coverageVSAvoidtest execution control complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system applies segmentation by dividing the verification process into distinct phases: initial cache state configuration, test pattern execution, and result validation. By segmenting the control of initial cache states from the test pattern execution itself, the system manages complexity through modular organization while achieving comprehensive timing scenario coverage.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7647539B2System and method of testing using test pattern re-execution in varying timing scenarios for processor design verification and validation
Publication Date: 2010.01.12 SIEMENS INDUSTRY SOFTWARE INC
  • US7647539B2 patent drawing
  • US7647539B2 patent drawing
  • US7647539B2 patent drawing

AI summary

A system and method processor testing using test pattern re-execution is presented. A processor re-executes test patterns using different timing scenarios in order to reduce test pattern build time and increase system test coverage. The invention described herein varies initial states of a processor's memory (cache, TLB, SLB, etc.) that, in turn, varies the timing scenarios when re-executing test patterns. By re-executing the test patterns instead of rebuilding new test patterns, verification quality is improved since more time is available for execution, verification and validation. In addition, since the test patterns result in the same final state, the invention described herein also simplifies error checking.