You are on page 1of 37

Forum on Specification & Design Languages

30 September 2005
FDL '05

IEEE 1850 PSL: Overview and Status 2


FDL '05
&

" # $ $ % && & &


' &( ( % )*% + $
& &( % & % $

" , % & & - &


" . & $ & $ %
" / 0& $ - $ (%
" 0 0

IEEE 1850 PSL: Overview and Status 3


FDL '05
!

' 1 % % '
" ) 23*
" ) 435*
" ) 333* 66
" ) *
# 1 %7 ' & $ $)
7' *
" % 88 9 9 $8 8 8 -: 8$ 9

IEEE 1850 PSL: Overview and Status 4


FDL '05

IEEE 1850 PSL: Overview and Status 5


FDL '05

• Boolean Expressions
– HDL expressions
– built-in functions rose(), fell(), prev(), ...

• Temporal Operators
– always, never, next, until, before, eventually, abort, ...
– @ ; : { } [* ] [= ] [-> ] && & | -> <->

• Verification Directives
– assert, assume, restrict, cover, ...

• Modeling Constructs
– HDL statements used to model the environment

IEEE 1850 PSL: Overview and Status 6


FDL '05
;

; &( % $ $ $9
<% $/ $- ; &( % %
= $ # $ ; & >

!" ##$%
%

#; &( %9
% % % % % ) *
9

IEEE 1850 PSL: Overview and Status 7


FDL '05
< + &

+ & &( ( % 9

! 0 &

&"' $(
)*' (
+,* -

&&"- . (
+/0*
-

+ & & (& ( %??0?0 @ 9

IEEE 1850 PSL: Overview and Status 8


FDL '05
<

&( ( % 9

! 0 &

. &"- 123 &$' -

4 " ## $%

< ;
9

IEEE 1850 PSL: Overview and Status 9


FDL '05
< '&

'& ) ( A * + & 9

56 $6 7 8 9:7%2 &9(
+* 7-'
56 $6 9 8 9:7%2 &!
9' !
7-'
; ; $6 7 9 2
$6 7 95:"<%123 $6 9 95:"<%. (
+0*
'

# &&
1 & & &&
1 ( $9

= 6 <2 <%
'

IEEE 1850 PSL: Overview and Status 10


FDL '05
/ & ' &

' & & % 9


# & % & %
%

. " 11$%
'

# & % & % (
(% %&
% %

: 6 4 " ## $%
'

IEEE 1850 PSL: Overview and Status 11


FDL '05
/ & /

/ & & % $ &9

46 > >%&

= 6 < <%
'

)
#0;B*
C > 4 " =$%
'
B
C -

IEEE 1850 PSL: Overview and Status 12


FDL '05
, $

' & & & ( %


9
46 , >%&

6 ? 2 @'

6 A2 6 )>. "
)
#0;B*
C 6 B>. $
B 6 '
C
= 6 < <%
'

> 4 6 3 >@'

-
IEEE 1850 PSL: Overview and Status 13
FDL '05
D #
Interface RTL Implementation High-Level Requirements
Assertions Assertions (Data-
(Data-Integrity Check)

Bridge
PCI
Bus

FIFO FSM
Arbiter
AHB
Bus

Protocol
Assertions
IEEE 1850 PSL: Overview and Status 14
FDL '05

IEEE 1850 PSL: Overview and Status 15


FDL '05

FVTC considers:
PSL 1.0
Temporal e
defined
Sugar FVTC ForSpec
based on
created at IBM formed in CBV
Sugar 2.0
Haifa Research Labs Accellera (OVI) Sugar

1994 1998 2001 2002

Branching-time
Syntactic Linear-time
semantics
sugaring of semantics
plus regular
CTL Added to Sugar
expressions

IEEE 1850 PSL: Overview and Status 16


FDL '05
%

PSL 1.0
defined PSL 1.01 PSL 1.1 IEEE 1850
based on Approved Approved PSL
Sugar 2.0 Approved
22 Sep 05

2002 2003 2004 2005

PSL/SVA PSL clarifications


alignment and enhancements

IEEE 1850 PSL: Overview and Status 17


FDL '05

IEEE 1850 PSL: Overview and Status 18


FDL '05
E 1 $7

IEEE 1850
PSL Working Group

Issues Extensions LRM


Subcommittee Subcommittee Subcommittee

1 $$ &
%
" F % & #&
& 9 &
1 $$ $
" ,1 & ( % '
23/ ' 0 435/ $
333 G0 / $

IEEE 1850 PSL: Overview and Status 19


FDL '05
E7, (

8 C B4 86
" #&
& " # / &
" G & " I % 7
" ;, " I
" " I/
" " <
" H
" , 7 %&
" I1
"
"

IEEE 1850 PSL: Overview and Status 20


FDL '05
G % %

/' :
" 23/ ' 1 $$ & & /' :
" <% &
& % #&
& / ' <&
%& G
/ $8/ $
" E7 &
1 % 1 / $E7
" 7 8 /# $ 0 / $
G
" E7 G

IEEE 1850 PSL: Overview and Status 21


FDL '05
G &
• Clock Context
– Clarification of clock context inheritance
– (New) Optional clock context parameter for built-in functions
• Prev/Stable/Rose/Fell
– Clarification of initial values
• Verification units
– Clarification of how vunits in any flavor can be used with any HDL
– Clarification of verification unit binding semantics
• Other Clarifications
– Simple Subset refinements
– HDL types of endpoints and built-in function results
– Clarification of forall 'replication' semantics

IEEE 1850 PSL: Overview and Status 22


FDL '05

• Parameterized and/or operators


– generalization of the 'forall' operator (AND of parameterized properties)
– supports both conjunction and disjunction, for both properties and sequences
• Endpoints
– new built-in function 'ended()'
– equivalent to endpoint ended(sequence r) = {r};
• Nondeterminism support
– new built-in nondet() and nondet_vector() functions
– provide more general non-determinism capabilities
• Synchronous Abort
– New operators for explicit synch or asynch abort
• Typed Parameters
– provide ability to use HDL data types for property/sequence parameters
• SystemC flavor of PSL
– extends the language to integrate well with SystemC syntax

IEEE 1850 PSL: Overview and Status 23


FDL '05

IEEE 1850 PSL: Overview and Status 24


FDL '05
F & 9

J
! J & 9 & & $
% & & K 9!

L
L4M
4M
)
)NNO
O-P
-P (
(N
NO
*
OC
*
C

& +

)
)NNO
O-P
-P (
(N
NO*
O
*C
C
)
)N:
N
:O
O-P
-P (
(N
:
NO
:*
O
*C
C
)
)N4
N
4O
O-P
-P (
(N
4
NO
4*
O
*C
C

%&
% & J J (& & % 9

IEEE 1850 PSL: Overview and Status 25


FDL '05
I A )
??*

A 8 $ A % & &9!

L
L4M
4M
?
??
?))N
NO
O-P
-P (
(N
NO
*
OC
*
C

)
)
)N
) NOO-P
-P (
(N
NO*
O*
?
??)
?)N:
N
:O
O-P
-P (
(N
:
NO
:*
O
*
?
??)
?)N4
N
4O
O-P
-P (
(N
4
NO
4*
O
**
*C
C

%&% & % % 9 0 & & $


% ?? 1 % &% (0 (9

IEEE 1850 PSL: Overview and Status 26


FDL '05
I A )
@@*

<% % & ( $

L
L4M
4M
@
@
@)
@ )N
NO
O-P
-P (
(N
NO
O*
C
*
C

)
))
)NNO
O-P
-P (
(N
NO*
O
*
@
@
@)
@ )N
N:
:O
O-P
-P (
(N
:
NO
:*
O
*
@
@
@)
@ )N
N4
4O
O-P
-P (
(N
4
NO
4*
O
**
*C
C

IEEE 1850 PSL: Overview and Status 27


FDL '05
A + &

A 1 + & 9!

)
) L
L4M
4M?
??
?LLN
NO
Q
OQQ
Q(
(N
4
N-- O
4 M
O
M*
*@
@Q
QP
P &
C
&C

)
)
L
LL
LNNO
OQ
QQ
Q(
(N
4
N4O
M
O
M
?
??
?LLNNO
OQ
QQ
Q(
(N
:
NO
:M
O
M
?
??
?LLN:
N
:O
OQ
QQ
Q(
(N
NOM
O
M
?
??
?LLN4
N
4O
OQ
QQ
Q(
(N
NOM
O
MM@
Q
QP
M@ P &
*
&C
*
C

IEEE 1850 PSL: Overview and Status 28


FDL '05
A G $

A + & & & (


& & $ & 9!

'
'RS
RS&
& L
L L
LSM
SM@
@L
L Q
QQ
QMM
M
MC
C
'
' R
RS
SS
S&& L
L L
L S
SS
SM
M@@L
L Q
QQ
QMM
M
MC
C
'
' R
RS
SS
SS
S&& L
L L
L S
SS
SS
SM
M@@L
L Q
QQ
QMM
M
MC
C
'
' &
& L
L L
:
L:0
4
0
40
00
02
20
0004
40
02
20
0S
SM
M@@L
L Q
QQ
QMM
M
MC
C

&
%& & ( & (0 $ $ & $% %
%9

IEEE 1850 PSL: Overview and Status 29


FDL '05
9

G 0; 0 + &0
<% % A & 9
! 0

+
+ &
& +)
(
+)
( #
#0
0;
;0
0G
G*
* L
#
L#0
0;
;0
0G
GM
MC
C

+
+)
) Q
Q 0
0 Q
Q:0
:0 Q
Q4*
4*

<% + & & ( & ( '


9
IEEE 1850 PSL: Overview and Status 30
FDL '05
I ' ' <

( A + &
" # & 0 '- &&
! 0

+
+ &
& +)
%
+)
% R
R<
< 0
0#
#0
0;
;0
0G
G*
*
L
LQQ#
#0
0QQ;
;0
0QQG
GM
MC
C

+
+)
) 0
0 0
0:0
:04
4*
*

IEEE 1850 PSL: Overview and Status 31


FDL '05

IEEE 1850 PSL: Overview and Status 32


FDL '05
E 1 $7

E ($ $ $ &(
< & 0K % - & 0( $
" K T 9$ (& ( - U P
, $ &
& % - &
! & & $
% ( - T 9$

IEEE 1850 PSL: Overview and Status 33


FDL '05
/ & D % & V

7 & ( &
" <% + % &
(
" # & %
" # & (
" 7 & % &
%& ( &
1- & &

IEEE 1850 PSL: Overview and Status 34


FDL '05

IEEE 1850 PSL: Overview and Status 35


FDL '05

% % (&
" & ( $ $
" - $ $
" % - $ $
"
<% &
&
" ( & % & $ $
"
" - -
" '#
I '#& %
& +

IEEE 1850 PSL: Overview and Status 36


FDL '05
! ,

#&
& 9 F,
" 9 9 $8 8 &8 - 99
( $
" 9 9 $8 -

IEEE 1850 PSL: Overview and Status 37

You might also like