T o w a rds a F o rmal Semantics of V erilog using - - PDF document

t o w a rds a f o rmal semantics of v erilog using
SMART_READER_LITE
LIVE PREVIEW

T o w a rds a F o rmal Semantics of V erilog using - - PDF document

T o w a rds a F o rmal Semantics of V erilog using Duration Calculus Gera rdo Schneider VERIMA G, F rance Xu Qiw en International Institute fo r Soft w a re T echnology United Nations Universit y (UNU/I IST)


slide-1
SLIDE 1 T
  • w
a rds a F
  • rmal
Semantics
  • f
V erilog using Duration Calculus Gera rdo Schneider VERIMA G, F rance Xu Qiw en International Institute fo r Soft w a re T echnology United Nations Universit y (UNU/I IST) * Thanks: UNU/I IST 1
slide-2
SLIDE 2 Overview
  • f
the p resentation
  • WDCI
  • V
erilog
  • Example
  • Semantics
  • f
some commands
  • Conclusions
2
slide-3
SLIDE 3 Duration Calculus
  • f
W eakly Monotonic Time (WDC) System evolves b y Discrete steps Several steps at the same time

1 t2 t3 t1 2 3 4 4 4 5 6 6 Casual Time Real Time

Stepp ed Time P
  • int
(t; i) t real time p
  • int
(o r macro time) i causal time p
  • int
(o r micro time) WDCI: WDC with Innite Intervals and Least Fixp
  • int
Op erato r 3
slide-4
SLIDE 4 V erilog It's a HDL that has (among
  • thers):
  • sha
red states, up dated b y p
  • ssibly
instan- taneous assignments from dierent p ro cesses;
  • zero-time
computation
  • continuous
assignments
  • dela
y statements;
  • synchronisation
b y w aiting fo r some condi- tions to b ecome true;
  • recursion
(nite and innite). 4
slide-5
SLIDE 5 Example P 1 : #1; P 2 : #2; x = 1; y = 5; y = 3; x = x + 2; #3; x = y + x;

(*,*,*) (1, 3, 1) (3, 3, 1) (1, *,1) (8, 5, 1)

1 2 3 4

5
slide-6
SLIDE 6 Semantics
  • f
a VERILOG Program The semantics
  • f
a p rogram P (considered as a closed system) is: M(P ) ^ Ax 1 ^ Ax 2 where Ax 1 : 8x 2 V a r + : 2(cint ) b:x = e:x) Ax 2 : 9i 2 I P r
  • c
: 2(dint ) e:@ = i) 6
slide-7
SLIDE 7 Semantics
  • f
some Commands
  • Assignment
M(v = e) def = ` = ^ (idle i _ (dint ^ e:v = b:e ^ unchang ed V a rfv g ^ e:@ = i))
  • Sequential
Comp
  • sition
M(begin S 1 ; S 2 ; : : : ; S n end ) def = M(S 1 ) _ M(begin S 2 ; : : : ; S n end )
  • Iteration
M(while (eb) S ) def =
  • X
:((M(eb) _ M(S )) _ X ) _ M(:eb)) 7
slide-8
SLIDE 8
  • P
a rallel Comp
  • sition
M(P 1 k : : : k P n ) def = W n i=1 ((M(P 1 ) _ idle 1 ) ^ : : : ^ M(P i ) ^ : : : ^ (M(P n ) _ idle n ))
  • Bo
  • lean
Exp ressions M(eb) def = ` = ^ (idle i _ (b:eb ^ dint ^ unchang ed V a r ^ e:@ = i))
slide-9
SLIDE 9 Semantics
  • f
  • ther
commands
  • Dela
y M(#n) def = idle i ^ `
  • n
^ ( c n ) ` = n)
  • Conditionals
M(if (eb) S 1 else S 2 ) def = (M(eb) _ M(S 1 )) _ (M(:eb) _ M(S 2 ))
  • Continuous
assignment M(assign w = e) def = d dw = M(e)e e ^ inf 8
slide-10
SLIDE 10 Conclusions
  • W
e have given a fo rmal semantics
  • f
a sub- set
  • f
V erilog using WDCI
  • Some
features: { It is comp
  • sitional
{ It is maximal (vs p rex closed) { It has innite intervals (innite zero-time computations) { It allo ws to rep resent intermediate tran- sitions 9
slide-11
SLIDE 11 Conclusions
  • F
uture w
  • rks:
{ Extend the language (i.e. non-blo cking assignments) { Change the semantics fo r Hyb rid Sys- tems { Axiomatisation
  • f
WDCI 10