Formal Hardware and SoC Verification - Lecture Notes | ECE 598, Study notes of Electrical and Electronics Engineering

Material Type: Notes; Professor: Vasudevan; Class: Electrical Machine Design; Subject: Electrical and Computer Engr; University: University of Illinois - Urbana-Champaign; Term: Unknown 1989;

Typology: Study notes

Pre 2010

Uploaded on 03/10/2009

koofers-user-2r1
koofers-user-2r1 🇺🇸

10 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ECE 598 SV
Formal Hardware/SoC Verification
Lecture 3
Hardware Design Cycle
Specification
RTL
Gates
Transistors
Physical Design
Testing
Documentation/C/C++
P,A,T
P,A,T
Logic Sythesis
High level
Sythesis
HDL: Cycle-accurate
Concurrent
Non-terminating
Concurreny in hardware involves a notion of non-determinism, as there is no apriori
scheduling of the concurrent events. No interleaving/semaphores in this context.
RTL and Logic Synthesis stages of the cycle can be highly manual and requires
tweaking. Formal verification is needed the most here, to check if functionality is
maintained.
In Logic Synthesis, Equivalence Checking is commonly used.
Model Checking (1981) is almost never used in its explicit state-space form, eg. Intel
uses STE (Symbolic Trajectory Evaluation) for its microprocessors.
pf3

Partial preview of the text

Download Formal Hardware and SoC Verification - Lecture Notes | ECE 598 and more Study notes Electrical and Electronics Engineering in PDF only on Docsity!

ECE 598 SV

Formal Hardware/SoC Verification

Lecture 3

Hardware Design Cycle

Specification

RTL

Gates

Transistors

Physical Design

Testing

Documentation/C/C++

P,A,T

P,A,T

Logic Sythesis

High level Sythesis

HDL: Cycle-accurate Concurrent Non-terminating

Concurreny in hardware involves a notion of non-determinism, as there is no apriori scheduling of the concurrent events. No interleaving/semaphores in this context.

RTL and Logic Synthesis stages of the cycle can be highly manual and requires tweaking. Formal verification is needed the most here, to check if functionality is maintained.

In Logic Synthesis, Equivalence Checking is commonly used.

Model Checking (1981) is almost never used in its explicit state-space form, eg. Intel uses STE (Symbolic Trajectory Evaluation) for its microprocessors.

Model Checking and Temporal Logics

A Kripke structure, M, can be used to represent the system as a State-Transition Graph (STG)

M = (S, R, L)

where S: set of states R: set of state-transition relations, SxS L: set of labels/atomic propositions

Example: Traffic Light

S1 S2 S

Red (r) 1 0 0 Green (g) 0 1 0 Yellow (y) 0 0 1

The corresponding STG is shown below.

S

S3 S

The model checking query is expressed as

(M,s)╞ f

In words, does the state s of model M, satisfy the formula f? (Yes/No)

Find the set of states Z such that

Z={s: (M,s)╞ f }

The model checking query is now, Is s є Z?