IEEE 1850 PSL: overview and status

37
Forum on Specification & Design Languages 30 September 2005

Transcript of IEEE 1850 PSL: overview and status

Page 1: IEEE 1850 PSL: overview and status

������������� �� �������������

����� ��������� ��������������������

Forum on Specification & Design Languages

30 September 2005

Page 2: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 2

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ���

� !����������

� ������

Page 3: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 3

FDL '05

� ���� �����

" #����$��$�������%���������� �&���&���������&��&��������������

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

� �����&�������� ��&�(��������%�����&�� ��������%������������$��

� ������������ ���������

" ,��%�����&����� ��&��������-����������������������&�

" .��������&��������������$� �����&��������$����%��

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

" ������� �������������������0�����0����������

�������&����

Page 4: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 4

FDL '05

��!�� ���

� '�������������1����%������%�����������������'��

" ����)�������23*

" ��� ���)������435*

" ����� )������333*���66�������������������

" ������� ���)���������*

� #������������������1����%�7�������'��&�� �������$��$��)7'*

" %�� �88���������9����9��$8���������8����8����-:���8$��9 ��

Page 5: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 5

FDL '05

�������

� �� ���

� �� �������

� �������

�������

Page 6: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 6

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

Page 7: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 7

FDL '05

� ;��������� ������������&��(�������������%� �����$���$��������������$�9

� <%����������$�/�����$-��� ���;��������� �����������&��(����%�����������%�

=�$����#�������$����;����������������&���� �>�

! "�##$%%

� #�;��������� ������������������&��(��������������%� 9������������������

�%��%�������%�������%�����%����)������*9

;�������������

Page 8: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 8

FDL '05

� �+���&������&��(��(�%� ����� �������9

� !������ ��0���������&�����������

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

��

&&&&""-- . � ��(+/�0*-. � ��(+/�0*-

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

<�� ������������+���&��

Page 9: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 9

FDL '05

� ��� ���������������&��(��(�%� ����� �������9

� !������ ��0���������&�����������

��.����.��&&""-�123-�123&&$$'�'���--

��

��4����4�� "�##�$% "�##�$%

� <�� ����������� �������� �������;�������������� ���������������� � �� ����9

<�� �������������� ������

Page 10: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 10

FDL '05

� '�&�����������������) ����(��� ���������A��*���+���&����� �� ����9

�56�����$67�� 8��������56�����$67�� 8�������99::77%�2%�2&&99(+*�(+*�77-'-'

�56�����$69�� 8��������56�����$69�� 8�������99::77%�2%�2&&!9!9'' !7!7-'-'

;��;����$67�9��2�;��;����$67�9��2�

$67� $67� 9595::"<"<%�123�$69� %�123�$69� 9595::"<"<%�. � ��(+0*'%�. � ��(+0*'

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

=���6������<�2=���6������<�2��� ��<%��� ��<%''

<�� �����������'�&���������

Page 11: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 11

FDL '05

� '���&�� �������� �����&�����������%����������� �� ����9

� #������������&�� ���������%�� �����&�������������� �������%����� �� ����

%�����

����������������.����.�� "�11�$%' "�11�$%'

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

(�%� ���������%�&%��� �� �����%�����

:��:���6����6�����4����4�� "�##�$%' "�##�$%'

/�����&������������'���&�� ���

Page 12: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 12

FDL '05

� /�����&����������������&����������%�������$������������������&�9

/�����&������������/������

������������ ����)#0�;�B*CB���C

46� ��>� �>%�&

=���6������<� ��� ��<%'

�>�������4�� "���=�$%'

-

Page 13: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 13

FDL '05

� �'�&��������� �����&�����������&���(�����������������%��

�� ��������9

,������$�����

������������ ����)#0�;�B*CB���C

46� ��,� �>%�&

�������6����?�������2�@'

��6��A2���6�)>�.����"������6�B>�.����$������6�'

=���6������<� ��� ��<%'

�>�������4�� ��6��3�>@'

-

Page 14: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 14

FDL '05

����D���������#���������

FIFO FSM

Bridge

ArbiterAHBAHBBusBus

PCIPCIBusBus

RTL ImplementationRTL ImplementationAssertionsAssertions

InterfaceInterfaceAssertionsAssertions

ProtocolProtocolAssertionsAssertions

HighHigh--Level RequirementsLevel Requirements(Data(Data--Integrity Check)Integrity Check)

Page 15: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 15

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ����

� !����������

� ������

Page 16: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 16

FDL '05

������������������

Sugarcreated at IBM

Haifa Research Labs

1994 1998

FVTCformed in

Accellera (OVI)

2001

FVTC considers:Temporal e

ForSpecCBV

Sugar

Linear-timesemantics

Added to Sugar

Branching-timesemantics

plus regular expressions

Syntactic sugaring of

CTL

PSL 1.0defined

based onSugar 2.0

2002

Page 17: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 17

FDL '05

� ������������%�����������

PSL 1.0defined

based onSugar 2.0

2002

PSL 1.01Approved

2003

PSL/SVAalignment

2004

PSL 1.1Approved

2005

IEEE 1850PSL

PSL clarificationsand enhancements

Approved22 Sep 05

Page 18: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 18

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ����

� !����������

� ������

Page 19: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 19

FDL '05

������������E��1��$�7���

� �������������1��$�$��� �&%������

" F�����������%��&�#&&��������� �9�����&�����������������

� ��������1��$�$��� �$����

" ,�1�������������&�� ���(�����%��������������������'�

� �������23�/�'0�������435�/�����$

� ������333������G0����� ����������/�����$

IssuesSubcommittee

ExtensionsSubcommittee

LRMSubcommittee

IEEE 1850PSL Working Group

Page 20: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 20

FDL '05

������������E7,��(���

� �� �����8��

" #&&�������������

" G����&����������

" �;,�������������

" ���������

" �����

" H�� ������������

" ,������7�� %�&���

" I�1�������������

" ��

" ��� �����������

� C��B4� ������� 86��

" #����/�����&�����

" I���%�� �7������

" I� ��

" I/��������

" <����

Page 21: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 21

FDL '05

G���������������%���%����������

� /�'�:���

" �������23�/�'����1��$�$��� ���&����������&����������/�'�:���

" <%�������������&&�������%��#&&�������/�'�<�&%��&���G��������

� �����/�����$8/�����$

" ������������E7����&1��%�����1�������������������/�����$�E7

" 7�����������������8/#���$�����0����������/�����$���� �������

� �����G

" ������������E7����������������G���� �������

Page 22: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 22

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

Page 23: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 23

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

Page 24: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 24

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ���

� !����������

� ������

Page 25: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 25

FDL '05

F� ��&�������� ������������ �9��

� J!�����J��� ��&����������� �9����������&��&������ ������������ $��� ���� �� �������

�%��������� ��&�����&��K�����9��!������ ���

������&����������+�� �������

�%�&%������� ��&�����J���J���(�&�������������������������� �&������%���9

������������������L��4M��

�������)�N�O�-P�������(N�O*C

������������������L��4M��

�������)�N�O�-P�������(N�O*C

��������������)�N�O�-P������(N�O*C

��������������)�N:O�-P������(N:O*C�

��������������)�N4O�-P������(N4O*C�

��������������)�N�O�-P������(N�O*C

��������������)�N:O�-P������(N:O*C�

��������������)�N4O�-P������(N4O*C�

Page 26: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 26

FDL '05

I�������������A���� ��������)??*

� ����������A������8��� ��������$�������A���%�������&������&�9��!������ ���

����+�� �������

�%�&%��������&�� �����%�����������%��������� ������9������ ��0��� ��&������ �&�����$�

�%��??�� ���������1����%���� ���&%�����������(��0����������(��9

�����������������������L��4M�

??)�N�O�-P�������(N�O*C

�����������������������L��4M�

??)�N�O�-P�������(N�O*C

��������������))�N�O�-P������(N�O*

??)�N:O�-P������(N:O*

??)�N4O�-P������(N4O**C

��������������))�N�O�-P������(N�O*

??)�N:O�-P������(N:O*

??)�N4O�-P������(N4O**C

Page 27: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 27

FDL '05

I�������������A���� ��������)@@*�

� <%������������� ����%���&������(���� �����������$��������

� �������+�� �������

�����������������������L��4M�

@@��)�N�O�-P�������(N�O*C

�����������������������L��4M�

@@��)�N�O�-P�������(N�O*C

��������������))�N�O�-P������(N�O*

@@)�N:O�-P������(N:O*

@@)�N4O�-P������(N4O**C

��������������))�N�O�-P������(N�O*

@@)�N:O�-P������(N:O*

@@)�N4O�-P������(N4O**C

Page 28: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 28

FDL '05

����������A���� ������������+���&��

� ����������A���� ����������������1������+���&��9��!������ ���

���+�� ��������

��������������

)���������L��4M��??��L�N�OQQ(N4-�OM*@QP����&C

��������������

)���������L��4M��??��L�N�OQQ(N4-�OM*@QP����&C

��������������)

LL�N�OQQ(N4OM

??�L�N�OQQ(N:OM

??�L�N:OQQ(N�OM

??�L�N4OQQ(N�OMM@QP����&*C�

��������������)

LL�N�OQQ(N4OM

??�L�N�OQQ(N:OM

??�L�N:OQQ(N�OM

??�L�N4OQQ(N�OMM@QP����&*C�

Page 29: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 29

FDL '05

����������A���� ������������G� ���$�

� ����������A���� �������������+���&�������&� �������&�� �����(��������������

���������������������������&�����&� ���$��� ��&������9��!������� ���

� ��&%�&� �������&�� ���(� ���&��������(��0���$�������$���&� ���$�%��������������%��

��������� �������������%��9

'�RS��&� ���L��������L��SM��@�L����QQ�MMC

'��RSS��&� ���L��������L���SSM��@�L����QQ�MMC

'���RSSS��&� ���L��������L����SSSM��@�L����QQ�MMC

' ������&� ���L��������L:040�020��0�40�20�SM��@�L����QQ�MMC

'�RS��&� ���L��������L��SM��@�L����QQ�MMC

'��RSS��&� ���L��������L���SSM��@�L����QQ�MMC

'���RSSS��&� ���L��������L����SSSM��@�L����QQ�MMC

' ������&� ���L��������L:040�020��0�40�20�SM��@�L����QQ�MMC

Page 30: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 30

FDL '05

���������������� �9�

� ����������G�������0�;������0��+���&�0���� ����

� <%�����������%������������� ���������A�����&���������9

� !������� ��0��

� <%����+���&��������&��������(����� ������� ����������&�����(�����'�

������� ��9

��+���&������+)(������#0�;0�G*���L#0�;0�GMC

�����+)�����Q�0������Q:0������Q4*

��+���&������+)(������#0�;0�G*���L#0�;0�GMC

�����+)�����Q�0������Q:0������Q4*

Page 31: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 31

FDL '05

I����'�'����<� ������������

� � �������������(��� ���������A��������� �� �������������+���&�

" #���� �������������������� ��&����0�����'-� �&���&�������� �

� !������� ��0

��+���&������+)%���� ������R<� �0�#0�;0�G*���

LQ#0�Q;0�QGMC

�����+)�����0��0�:0�4*

��+���&������+)%���� ������R<� �0�#0�;0�G*���

LQ#0�Q;0�QGMC

�����+)�����0��0�:0�4*

Page 32: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 32

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ���

� !����������

� ������

Page 33: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 33

FDL '05

������������E��1��$�7���

� E����(�$��� ������$������������ �������������$�����&��(��

� <�� ����&� ���0�K�����%������-����������������&���0�(��������$���������

" ��K������T���9��$ ��(�&��(������-�����U���������������P

� ,�����$������������&&����������������������%������-����������&���

� !�������� ��&����&���$������������

� ��������%�����(��������������-����T���9��$

Page 34: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 34

FDL '05

/�����&������D������%��&������V

� 7������� �� ���� ��������&����������������(��� �����&��������

" <%���������������+���������%��&�����

� ���� ����(��������

" #����� �����&���������������%� �� ����������

" #����� �����&���������������(��������������

" 7� �� �����&������%�����&%�&���(��&1-����&������������ �&��

Page 35: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 35

FDL '05

�������

� � �� ��������

� ������������

� �����������

� ���� ���

� !����������

� ������

Page 36: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 36

FDL '05

������

� �%���� �� ���� ����%�� ������ �������������(�&����

" �� ����&� �(������$��$�

" �� ��������-�����������$��$�

" �%������������-����� �� ��������$��$�

" ����������������

� <%����&&������������������

" ������ ���(�������&���������� ���%�����������&�� ��������$��$��

" �� ����� �� ����

" ����-��-���

" �'#� �������� ���

� I�����������'#�&�� �������� ����������%���������

� �����������������&������������ �� ������� ���������������+���������

Page 37: IEEE 1850 PSL: overview and status

IEEE 1850 PSL: Overview and Status 37

FDL '05

!���,��������

� #&&��������� �9��F,

" ���9���9��$8 � 8��&�8�- �9�9 ��

� ������������(� �$�

" ���9���9��$8����-����