���������������� � ����������������� � ����������������� � ����������������� � ������������������������������������������������������������������������������������������� ��������������� ��������������� ��������������� �
Brian BaileyBrian BaileyEmail: [email protected]: 503 632 7448Cell: 503 753 6040Web: brianbailey.us
Copyright © 2008 Brian Bailey Consulting �
�������
� ������������� ��
� ��� ������������������
� ����������������
� �� ������� �� �����
� ������ �������� ��
Copyright © 2008 Brian Bailey Consulting �
���������������������
� Verification is all about answering the question:
Have we implemented something correctly ?
����������������������������� � ������������������������� ������������������� ������������������� �
������������������ ��������
Copyright © 2008 Brian Bailey Consulting �
���������������������
� !�"������� �
� ��������������������� #������$���%&������������ �����������������������������
� ���� � �������������������� '������ ��� ������������������������������
� ������������������� � (�� �������� �������� ��������������� ������������������ ������������������
� ������������������� '������ �������������������������� �������)����������������� ������
Copyright © 2008 Brian Bailey Consulting �
Design
������������������ �����
Bug
Stimulus
1. Activate
Propagation failure
Propagation success
Checker
2. Propagate 3. Detect
'�������*#������$���%������ $��������������#������� $������������������� �� ���������������&��������� $����� �)����
+������������ ������ �� �����������%��
Copyright © 2008 Brian Bailey Consulting �
������ ����� �� �������
� (��������������������)����� �������� �� �����&�����,��&�����������
��������������� ��
� -�������������� ���������������������
� .�������������� ������������� ������
� .������������������� ��������������/������������������������� ����� ����0
� (������� �������)�������������� � ���������
� (������� � ����� ��� �� ����� ���������
� 1 ���������������� ������������2���������������������������� � �������������������3
� (�� �������������������&����������������������� ����������������� ���� �
Copyright © 2008 Brian Bailey Consulting �
����������������
� (�� �� ������������ ��������� ��������
� �����������
� 4����������
� 5������������
� ����� ���������
� 6
� 7�����������
� (������������
� ��1��������
� �����
� (�� ���
Copyright © 2008 Brian Bailey Consulting �
����������������
� (�� �������� ������������������������������������������������ ����� �� ������������
� ������������)����� ��� ��
� (����������������� �������)� �8�������$� 9����������
� 9����� �����
� 9� ����
� (������������������������)� �������������������������
� (������������������������������������������������������
Copyright © 2008 Brian Bailey Consulting �
Design
�����������������
Bug
Stimulus
1. Activate
Propagation failure
Propagation success
Checker
!" �������!��������!�����������������!���� ���� �������
"!������#���� ���#�
$� ���� !" �����!����!�#���"����!����#��������������������%&������������
Copyright © 2008 Brian Bailey Consulting
����������� �����
� 7�����������
�(�� �� ����� ���������������� �������������
�#���������� ������ ���������������������
��������������������� �������������
����� ����������������
� 4������������ �� �������������������������� �
�:� �������������������� ���������������������
� .���������������������#�����7����� ������� �)� ���������������� �����'+1
Copyright © 2008 Brian Bailey Consulting
Design
'��!��������
Bug
Stimulus
1. Activate
Propagation failure
Propagation success
Checker
2. Propagate
!" �������!����������������� �#������! �����!���� ���� �������
$� ���� !" �����!����!�#���"����!����#������������
Copyright © 2008 Brian Bailey Consulting �
������������������( ������" ��
� .������� ��������������������������������)��;� :���������� � �������� ������������������
� ������������������)� �������������)����������������
� 9��������� ������<� ���=������������� >��������������� ������������������
� >��������)������ �����������������������)� ���������
� (�� �����������������)� ���� (������ ������)���)���� �������������������������������������� ���
� ?�� �� ������� � ����
� 5�������� �� �����)��������� �����������
Copyright © 2008 Brian Bailey Consulting �
�����������������
� #������� �������� �������������
� 9�����������
� 9� �������� ����
� 9� ��������� ����
� ���
�#���� �������������������������������� �������
� ������������ ���������������� ����)����� �� ��������
� ������ ����� ��������� ���������� �� ������������
Copyright © 2008 Brian Bailey Consulting �
�����������������
� #��� ����������������������
� :� ��������������������������� &��� ������������� ������ ������������������
� :���������������
� @��������
�>�)������������������
� #������������ � ���������
� �� � ������������������� �������������
� ���� ���������� ���������������
� -������� ������ �����������������
� 9�������������������
� ��) ��)� �������
� 9��� � ������ �� ��� ���
������������������%&������������
Copyright © 2008 Brian Bailey Consulting �
�����
� 9�� ������ �������������������������������������������������
� 7������� �������� ������������������� �������������������)
� 9���������� ����������� ��������� �������������� �����������/����� �0��������� ��
� 5� ����2��������3 ����� � (��������������������������� � :����������
�(�%� ����������������� �� ���� �����
�9��)������,�������%�� �������������������������������������
Copyright © 2008 Brian Bailey Consulting �
�������������
� 1������������� )�� *
� -)�������������� ���� �8������$ ���� ����
� 9 ���� �������� ���-:4
� :���������� � ����������� ��������������������� ����
� .����� ���� ���������
� .� ����������������������
� .� ������ ��������������
� -)������ ��������� ������������� �����)���������� ��
� :��������������������������������������
� ? ������������� ������������������
Copyright © 2008 Brian Bailey Consulting �
�� � ��������������� ��!�
>
>
A�
A�
A�
+��������
-���
1�����
1�����
-���
4)
5�����
;B
;B
1�����
-���
4)
�������
�� �����1�����1������������
9��� � #�����
���
� ����
�������
� �����������
:������������-���-���9 ����
1������#��4)4)(����
1������#��4)4)7���
:��������#��4)4)���
)�*��������" ������ �� ��������
Copyright © 2008 Brian Bailey Consulting �
������'��������
� 7�����������
� 9����������%�����������
� +��+1 �+� ����������=�� ��������+������ 1����� �0
� � ������������������������� ������ � ����� !
� ������ ������������������������������������������)����������������
� :���������� ��������C �������� �����������
� 7 �������������������� ������ ��
� #���� ������ ��� ���&���� ����� ������ ��������������������������� �����������
Copyright © 2008 Brian Bailey Consulting �
�������� ���
� >�� *� ��) ����������� �)���������������������������������������
� ��) ������������������������������� � �� �������������� (�� �� ������)�)��������������
� �����������)������������� �������� �)������%����� ������)� �
Copyright © 2008 Brian Bailey Consulting �
'���������( ������������ �
� ������������������������ �
� 4% ������������������� � �����������
� ����%=�������� *�)���������������� �������������������� ��������� ;
� 1������������������� �����)������� � *
� �������������� ��������� �)��������������� ��� ���������������
� ��������� ��������� ����� �� ����������� ������������ ������ �� ��� � � �����������������������
� 7���������������������������
� �����������������DEFD
� ��� �������������������DEGH
Copyright © 2008 Brian Bailey Consulting �
������������ �
� Principles� Induce mutations (or faults) in the HDL code and
show that the verification suite detects those mutations by executing testcases
Original program code:a = b or c;
Faulty program code:a = b and c;
Copyright © 2008 Brian Bailey Consulting ��
+�������� ������
� ���������������
� '������������5���� ������� � )�������� ������ �
� '������������������������������)�����������&�� � �I�)����B&�= ���<
� '������������5�����������)�����������&�� � �J�)����JK&�KK����LK
� '���������������������)���������������������������������� ���� ����/������������� � ������������ ���0
Copyright © 2008 Brian Bailey Consulting ��
������������� �
� 7����� ��������� ������������������������� �
� 9���� � �==
� #������$���%������ $��������������
� 5�����C
� #������� $������������������� �� ���������������&��������� $����� �)����
� (�� �� ����� ����� ��������������� �
� #��� �������������%)������ �������)� ���������
� 1� ���������������������������)� �������
Copyright © 2008 Brian Bailey Consulting ��
$�������
� (���-���@����;
� ������������������������������������������ � ��������&�������������������;
� # �������������������������������������� ���� ������ ������������;
� +������ �������������� ���������M��������������������
Copyright © 2008 Brian Bailey Consulting ��
����������,�����������
� 5� ��������������� �
� ����������������� *
� ��������M����������������� ���������������� � ��������������������������������� �����������%������ ������������ ������ ��� ������
� ���������������������� ������������������������������������ �:�������� ����� �)��������� ����
� ? � ��������������������������� � ����� �������������������� ��� ��� ���
� 9�������������)����� ������� ��)���
��© Certess, Inc. – 2008
Report
Detect phase
Report
Report
Static analysis of the design
Analysis of the verification environment behavior
Measure the ability of the verification environment to detect mutations
Iterate if needed
Qualification Steps
Model phase
Activate phase
Copyright © 2008 Brian Bailey Consulting ��
,������������ ���
� 1����7�� �
� ����������� � �������������������������������� ��������
� 9��������7�� �
� �������)������� � ����������)����������
� :������7�� �
� 7�����������)���� ������������� ���������� ��� ���������� ��� �
Copyright © 2008 Brian Bailey Consulting ��
,��������������"
(�����)��� ����� *
D #����������� ���������� ������� ������������������������� �
� 5������������������������������������
N '��������� ��� ��������� �������������������������������� ��
! ������������������������������
O #����������� ������������������������,���)������ ����%�����������������
P ����������� �� ������� ��� � ������������ �����������
F #����������� ���������� ��� ������������������� �� ���)������ ���%������������
G #�������� ��� ������ ������� ����E��� ���� ����F
E '������� ����O������ �� �������������������)��%� � ��������������
Copyright © 2008 Brian Bailey Consulting ��
� � �������� ���(� �
��� �Q����������*������������,�R��������K�DR<<��� ��������� ���QG� �� ��������������� ���QG�K�DRS/� �������%0R����%/��������&D&����������0R�� ���QG�K�HR<<��� ��������� ���Q� �� ��������������� ���Q� K�DRS/� �������%0R����%/��������&D&����������0R�� ���Q� K�HR�� R��
� ������������K�������;�/�����)0�*�DT�HR�
-+.
� ���������������/���������0������������0��������� ���120�������� ���1�0����������#��0����������������34
��� �����"0������4
��"�� �5/� ��������3�#�������/������&&�67#63�#����������" �8&�67#94���������8&�67#94����� ��#�������/�� ���12�&&�67#63�#���������" �8&�67#64������/�� ���1� &&�67#63�#����������8&�67#64������
���
� ��������������&����#����/�����"3�:�6;#94
�!�����
�� ���!���4������ �����4������������4������<299:9=� �����4#������/ ����� %&�������3�#����>�� ����/>��� �0?� @���:�@���������A ���#��A#�#���� �
A#?0 �����0������0 �����34>���� !4����������� �
Copyright © 2008 Brian Bailey Consulting �
-� ���
Copyright © 2008 Brian Bailey Consulting �
��������!���� ���������� �#���!#�������(� �
��� �Q����������*������������,�R��������K�DR<<��� ��������� ���QG�������� ��������������� ���QG�K�DRS/� �������%0R����%/��������&D&����������0R�� ���QG�K�HR<<��� ��� �����������*�����������������������)��������)���<<��������� � <<�����=J������K�DRS/� �������%0R������K�HR<<�����L=<<��� ��������� ���Q� ������� ��������������� ���Q� K�DRS/� �������%0R����%/��������&D&����������0R�� ���Q� K�HR�� R��
�����!��-+.
� ��������������&����#�����/�����" �B������3�:�67#94
�����!���!����������!���!����������!���!����������!���!�����
��/ ����� %&&�������3�#����>�� ����/>��� �0?� @���:�@���������A ���#��A#�#���� �
A#?0 �����0������0 �����34
���������������������:� ���#7DAC’2008 - Anaheim
����������������� �����������
Global MetricRepresenting the overall quality of the Verification EnvironmentST reference : 75%, but usually higher
Activation ScoreMeasures the ability of the test suite to exercise all the RTL of the IPSimilar to code coverageST reference : 95%, & 100% explainedMissing % should deeply studied & fixed or explained
Propagation ScoreMeasures the ability of the test suite to propagate mutations to the outputs of the IPST reference : 80%, but should probably be enhanced by adding more test scenarios to reach 90%
Detection ScoreMeasures the ability of the environment to catch errorsST reference : 90%, but usually higher
���������������������:� ���#7DAC’2008 - Anaheim
�������������������������� ���������������
• Case study 1:• Application: 3rd party IP• HDL Directed Environment• ~300 tests, 30 minutes• Code Coverage ~100%
• Challenges• Convince 3rd Party IP provider • High revenue, high visibility chip;
reduce respin risk
• Results• Helped us to push IP provider to improve verification environment
• and monitor progress • Low detection score highlighted manual waveform checks
60%65%70%75%80%85%90%95%
Activation Score (A/F)
Propagation Score (P/A)
Global Metric (D/F)
Detection Score (D/P)
ST Ref
ST Avg
3rd Party IP
IP ST Ref ST Avg 3rd Party IPActivation Score (A/F) 95% 97% 97%Propagation Score (P/A) 80% 90% 80%Global Metric (D/F) 75% 80% 66%Detection Score (D/P) 90% 93% 85%
Copyright © 2008 Brian Bailey Consulting ��
�����������!���������� ���
� (�� ������������ � ���� ��� ����������� ������� �����
� #��� ����������������� ��
� (�� ���%� ���������������� ���������������������
� #51���������� ���������������������� ��%������� �������������� � ������ ��������������������������
� 9����� ���������������� ���������������� �� ������������������������� ���� ���� ����������
Copyright © 2008 Brian Bailey Consulting ��
-�� �������C ��
� 7���������)������)�� ������� ��
� #��� ���������)����������������������
� '+#������������ ������� �����
� ��������� � ��������� �������
� ��������,�������������
� .������������������������ ������������ ���������� ��
� :����������� �������������� ����������� ��
� 4� � �����)���� ���������������������
� 5� ��� ��������
� ������������� ��������������� ������������%
+!����D�
,�� ��� �
�����*�����Q������S��� ��(��*�����OHN�PN��F!!G����*����OHN�FON�PH!H.��*������������� �