0% found this document useful (0 votes)
77 views

Connecting Pre-Si and Post-Si Verification

This document discusses using formal pre-silicon analysis to facilitate post-silicon verification. It proposes determining post-silicon observation points through pre-silicon modeling to allow reasoning about the physical circuit. The goal is a methodology that provides high correctness assurance while balancing logic guarantees with on-chip instrumentation costs. An approach partitions trace analysis between an on-chip monitor and off-chip analyzer connected through formal guarantees.

Uploaded by

kvishakha
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views

Connecting Pre-Si and Post-Si Verification

This document discusses using formal pre-silicon analysis to facilitate post-silicon verification. It proposes determining post-silicon observation points through pre-silicon modeling to allow reasoning about the physical circuit. The goal is a methodology that provides high correctness assurance while balancing logic guarantees with on-chip instrumentation costs. An approach partitions trace analysis between an on-chip monitor and off-chip analyzer connected through formal guarantees.

Uploaded by

kvishakha
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

Connecting Pre-silicon and Post-silicon Verification

Sandip Ray and Warren A. Hunt, Jr.


Department of Computer Sciences
University of Texas at Austin
{sandip, hunt}@cs.utexas.edu
http://www.cs.utexas.edu/users/{sandip, hunt}

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 1 / 14
Motivation

Motivation

Formal analysis has shown promise in increasing reliability of computing


systems.
Can catch “high quality” bugs that are difficult to hit during
simulation.
Has been successfully applied to some industrial design components.
• FP execution units
• Control logic for out-of-order pipelines
But formal analysis has primarily been restricted to pre-silicon
Typical targets are RTL models and netlists.
Almost no connection with post-silicon verification.
How do we make use of formal analysis to facilitate post-silicon
design verification?

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 2 / 14
Post-Silicon Verification

Post-silicon Verification

Post-silicon verification is the use of pre-production, physical


circuits to determine logical bugs.
Simulation speed may be 1,000,000,000 times faster than pre-silicon.
Facilitates exploration of very deep states.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 3 / 14
Post-Silicon Verification

Post-silicon Verification

Post-silicon verification is the use of pre-production, physical


circuits to determine logical bugs.
Simulation speed may be 1,000,000,000 times faster than pre-silicon.
Facilitates exploration of very deep states.

BUT
Control is limited.
Observability is extremely limited.
Factors limiting observability:
• Limited number of pins
• Cost of additional DFD logic.
• ...

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 3 / 14
Post-Silicon Verification

Post-silicon Verification

Post-silicon verification is the use of pre-production, physical


circuits to determine logical bugs.
Simulation speed may be 1,000,000,000 times faster than pre-silicon.
Facilitates exploration of very deep states.

BUT
Control is limited.
Observability is extremely limited.
Factors limiting observability:
• Limited number of pins
• Cost of additional DFD logic.
• ...

Post-silicon verification is extremely expensive and tedious.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 3 / 14
Post-Silicon Verification

Post-silicon Debug Process


Start

Start in a known state


Intermediate Quickly get to a deep state
State
Continue until a bug occurs
Bug is unobserved
Bug! Bug may lay dormant
Observe Finally, observe a problem
Problem

It can take substantial effort to find and fix a bug.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 4 / 14
Post-Silicon Verification

Post-silicon Debug Process


Start

Start in a known state


Intermediate Quickly get to a deep state
State
Continue until a bug occurs
Bug is unobserved
Bug! Bug may lay dormant
Observe Finally, observe a problem
Problem

It can take substantial effort to find and fix a bug.


Typical Approach: Add extra hardware “hook” to improve observability.
But the hooks are added on-demand without analysis of design
invariants.
Once added, they are carried over from one design to next.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 4 / 14
Post-Silicon Verification

Post-silicon Debug Process


Start

Start in a known state


Intermediate Quickly get to a deep state
State
Continue until a bug occurs
Bug is unobserved
Bug! Bug may lay dormant
Observe Finally, observe a problem
Problem

It can take substantial effort to find and fix a bug.


Typical Approach: Add extra hardware “hook” to improve observability.
But the hooks are added on-demand without analysis of design
invariants.
Once added, they are carried over from one design to next.
A more disciplined process of on-chip instrumentation is necessary.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 4 / 14
Goals

Our Goal

Facilitate post-silicon verification by pre-silicon analysis.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 5 / 14
Goals

Our Goal

Facilitate post-silicon verification by pre-silicon analysis.

Pre-silicon Models
• Allow complete visibility of internal state.
• Can be mathematically formalized analyzed and reasoned about.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 5 / 14
Goals

Our Goal

Facilitate post-silicon verification by pre-silicon analysis.

Pre-silicon Models
• Allow complete visibility of internal state.
• Can be mathematically formalized analyzed and reasoned about.

We use pre-silicon analysis to determine post-silicon observation


points.
• Exploit the connection between pre- and post- silicon models.
• The number of observation points depends on the desired logical guarantee

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 5 / 14
Goals

Our Goal

Facilitate post-silicon verification by pre-silicon analysis.

Pre-silicon Models
• Allow complete visibility of internal state.
• Can be mathematically formalized analyzed and reasoned about.

We use pre-silicon analysis to determine post-silicon observation


points.
• Exploit the connection between pre- and post- silicon models.
• The number of observation points depends on the desired logical guarantee

Eventual goal is a post-silicon verification methodology that


• provides high correctness assurance.
• helps comprehend post-silicon execution results.
• provides clear trade-offs between logical guarantees and DFD support.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 5 / 14
Goals

Overall Vision

External
Tools

ACL2 Modeling and Analysis


System
Guided
Proof
Design
AIG/BDD
AMS

RTL

Microcode Symbolic
Pre−silicon Post− Simulation
Verification silicon
Design Proof
Verification Representation Orchestration

Property/Annotation Information
Flow
Formal Design/Annotation
Database

Formal
Specification
Specification

We envision a single, unified, formal framework for specification,


evaluation, and verification of computing systems.
Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 6 / 14
Approach

An Approach: Partition Trace Analysis

Partition post-silicon trace analysis into two components.


small on-chip integrity unit that has full observability
an off-chip partial trace analyzer
The off-chip component can assume that in-silicon analysis has succeeded.
Formal analysis guarantees that the components together are
equivalent to a monitor that has full observability.
We applied the partitioning approach for post-silicon analysis of a
multiprocessor memory system.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 7 / 14
Approach

A Multiprocessor Memory System

CPU(0) CPU(1) ..... CPU(n−1) CPU(n)

Memory

Pre−silicon
Execution
Trace Monitor

The pre-silicon monitor checks for bounded coherence.


Has full observability of all bus transactions.
Obviously impractical for post-silicon.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 8 / 14
Approach

Post-silicon Analysis
A post-silicon trace is a subsequence of a pre-silicon trace with lossy
compression.

CPU(0) CPU(1) ..... CPU(n−1) CPU(n)

Memory
Integrity Unit Lossy Compression

Partial Execution Trace


Pre−silicon
Execution
Post silicon analyzer Trace Monitor

SAT solver

The integrity unit keeps track of internal bus transactions.


It is sufficient to externally observe only a small number of critical
events.
Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 9 / 14
Approach

Post-silicon Certification

Theorem. If the integrity unit does not interrupt, then any post-silicon
trace that passes the post-silicon analysis is a subsequence of a trace that
would pass pre-silicon analysis under full observability.
The theorem is proven is ACL2.
Makes use of underlying protocol invariants.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 10 / 14
Approach

Post-silicon Certification

Theorem. If the integrity unit does not interrupt, then any post-silicon
trace that passes the post-silicon analysis is a subsequence of a trace that
would pass pre-silicon analysis under full observability.
The theorem is proven is ACL2.
Makes use of underlying protocol invariants.
Proven by exploiting a decidable subclass of the logic.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 10 / 14
Approach

Post-silicon Certification

Theorem. If the integrity unit does not interrupt, then any post-silicon
trace that passes the post-silicon analysis is a subsequence of a trace that
would pass pre-silicon analysis under full observability.
The theorem is proven is ACL2.
Makes use of underlying protocol invariants.
Proven by exploiting a decidable subclass of the logic.

The theorem formally connects post-silicon verification with


pre-silicon analysis.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 10 / 14
Results

Using the System

The system can identify subtle design errors.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 11 / 14
Results

Using the System

The system can identify subtle design errors.

Processor 0 shared request


Processor 1 exclusive request

Processor 0 shared grant


Processor 2 exclusive request

Processor 1 exclusive grant

Such errors are very difficult to exercise in simulation because of the


non-determinism in the protocol.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 11 / 14
Results

Using the System

The system can identify subtle design errors.

Processor 0 shared request


Processor 1 exclusive request

Processor 0 shared grant

Such errors are very difficult to exercise in simulation because of the


non-determinism in the protocol.

The system identifies the error even under very poor observability.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 12 / 14
Related Work

Related Work

Gopalakrishnan and Chou: Limited observability checkers based on


constraint solving and abstract interpretation.
Aschlager and Wilkins: Model checking to generate a short trace
containing an observed bug.
Safarpour et al: SAT solving to automatically find and repair stuck-at
faults.
De Paula et al: SAT solving to develop a “backspace” from a crashed
state.
Our approach is to introduce some of the analysis or checking into
the silicon.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 13 / 14
Conclusion

Conclusion and Future Work

To our knowledge our work is the first effort on connecting


pre-silicon and post-silicon verification through formal proofs.
Provides a flexible mechanism for making use of pre-silicon analysis in
post-silicon verification.
Makes use of existing design artifacts to facilitate post-silicon
analysis.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 14 / 14
Conclusion

Conclusion and Future Work

To our knowledge our work is the first effort on connecting


pre-silicon and post-silicon verification through formal proofs.
Provides a flexible mechanism for making use of pre-silicon analysis in
post-silicon verification.
Makes use of existing design artifacts to facilitate post-silicon
analysis.
Of course, the results are preliminary.
Future work:
Exploit information flow for automatic signal winnowing.
Automate partitioning, given an observability and hardware bound.
Tighten connection between pre-silicon and post-silicon.
Exploit faster post-silicon simulation to facilitate pre-silicon analysis.

Ray and Hunt (UT Austin) Post-silicon Verification November 18, 2009 14 / 14

You might also like