amit - ibm research · title: microsoft powerpoint - amit.ppt author: harry created date:...

30
Oct. 19, 2003 MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other product or service names are the property of their respective owners. © Motorola, Inc. 2003. SC140 DSP Platform Verification Methodology

Upload: others

Post on 07-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Oct. 19, 2003MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other

product or service names are the property of their respective owners. © Motorola, Inc. 2003.

SC140 DSP Platform Verification Methodology

Page 2: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 2

TopicsTopics

• Project short Overview.

• Verification goals and strategy.

• Methodology: – Flow

– tools

• Management:– resources + org. chart.

– schedule: results, problems

– Status graphs.

Page 3: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 3

TopicsTopics

• Conclusions:– Tools development.– Direct tests. Where to stop?– Code vs. Functional coverage. – Management control.– Weaknesses.

• Questions.

Page 4: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 4

Project overviewProject overview

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

�������

�������

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

Page 5: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 5

Project overviewProject overview

• Total of 19 blocks with stand alone Testbenchs.

• 6 blocks are reused (with changes in all of them).

• 5 sub-systems with stand alone Testbenchs.

Page 6: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 6

Project Verification GoalsProject Verification Goals

• Maximum verification coverage, as pre-

defined (code + functional).

• Reuse as a VC for different chips/platforms.

• Motorola standard compliant.

Page 7: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 7

Project verification StrategyProject verification Strategy

• Bottom up verification:I. Block levelII. Sub-system levelIII. System level

• Directed tests then random tests.• Coverage:

– Code coverage.– Functional coverage.

• SystemC golden models:– Written for architecture exploration and golden model for

verification.– Cycle accurate with the RTL. – Port accurate with the RTL.

Page 8: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 8

MethodologyMethodology

Page 9: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 9

Verification flowVerification flow

Block level

Verificationrequirements+plan documents

Done in 2 stages. Requirements then plan.

Write TestbenchCore: support assembly.Other blocks: SystemC

Run lint + rule checkers on RTL

Page 10: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 10

Verification flow cont.Verification flow cont.

Write Level 0,1,2 direct tests Core: assemblyOther blocks: SystemC

Write random constrains + configurations and Run.

Core: random assemblyOther blocks: signal based random

Check coverage

1. =%goal2. Stuck

<%goal

Code: HDLScore vector expression Functional: Motorola tool.

DebugDebugDebug

Page 11: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 11

Final review onblock level verification

Verification flow cont.Verification flow cont.

Run all direct tests on gate-level If the block has a gate-level hierarchy

If the block has a gate-level hierarchyRun equivalence checking gate-level vs. RTL

Use formal methods to prove un covered.

Formal tools + block signal constraints + un-covered report.

Page 12: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 12

Verification flow cont.Verification flow cont.

• Same flow for sub-system level and system level.

• System level additions:– Real applications with expected results.

– XZ detection.

– Connectivity coverage.

– Convert block random constraints to monitors.

– monitors on Synthesis Multi cycle paths+false paths.

Page 13: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 13

• For core and system:

– Compare core register update, RTL vs. ISA Simulator.

– Compare memory maps at end of test.

• For other blocks and sub-systems:

– Compare RTL and SystemC behavioral model.

– Protocol checkers/Monitors.

– Translate constraints to monitors.

Checking methodsChecking methods

Page 14: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 14

Tools for verificationTools for verification

• Bug tracking tool. ( ClearDDTS???)

• Verilog simulators. ( NC-verilog, VCS)

• Debug + waveform viewers. (Debussy)

• Tools for C++ development.(gcc, gmake, purify, quantify,DDD).

• DSP software tools. (simulator, assembler, compiler).

• Random+regression management tool. (symphony)

• PLI interfaces to Perl, SystemC etc. (vesymix, perlrc, vs)

Page 15: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 15

ManagementManagement

Page 16: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 16

Org. Chart And ResourcesOrg. Chart And Resources

• Who should be responsible for the verification?

– Central verification leader: the design leader will not be responsible for

bugs.

– Design leader: the central verification leader will not be responsible for

the implementation of the methodology. (done in this project)

– Each team will have 2 leaders. (recommended)

• The ratio between design and verification, per block – 1 : 1.5

• The total ratio - 1 : 1.9

Page 17: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 17

Org. Chart And ResourcesOrg. Chart And Resources

• Central verification team for the project:

– Definition and inspection of the methodology.

– Write methodology documents.

– Write Drivers+monitors for standard interfaces.

– Tools+scripts pilots and support.

– System level verification plan.

– System level Testbench.

Page 18: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 18

Management trackingManagement tracking

• Gant charts.

• Bug reported on all components.

• Number of tests written.

• Number of random cycles.

• Coverage.

Page 19: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 19

ConclusionsConclusions

Page 20: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 20

Tools developmentTools development

• Automatic way from coverage results to tests. Can be done

by formal tools.

• Functional coverage inquiry tools.

• Management tools for regression tests and massive random.

Page 21: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 21

DirectDirect tests. Where to stop?tests. Where to stop?

• Direct tests are used for regression. Helpful for fast checking

and integration.

• L0+L1 direct tests was very useful. Due to that, first

integration was done very fast.

• The L2 direct tests efforts did not pay. Random got to all the

cases easily. It is better to work on functional coverage.

Page 22: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 22

Code vs. functional coverageCode vs. functional coverage

• Both contributed and are very important.

• Both were not enough. Even after 100% coverage (code

and functional) we found bugs.

• What completed the coverage picture:– Random constraints to become monitors at higher levels. found most of the

holes in block level verification.

– Many Random directions at block level. Play with the probabilities.

Page 23: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 23

Bugs per blockBugs per block

total bugs vs. the number of HDLScore expessions

y = �.����x + �.����R� = �.����

��

��

��

��

���

���

���

���

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

HDLS expressions

nu

mb

er o

f b

ug

s

block bugs

Linear (blockbugs)

Page 24: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 24

Management controlManagement control

• Enforce uniform methodology on all blocks and tools.

• Leader of the verification eng. Must be a methodology

expert.

• Define everything before the eng’ get to it:– Methodology.

– Tools and versions.

– Database hierarchy.

– Naming convention for everything (files, file headers variables, documents, …).

– Monitors massage formats.

BackupBackup

Page 25: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 25

WeaknessesWeaknesses

• The weaknesses:– Human factors:

• The weakest engineers.

• Distanced sites (geographic).

• Project Discipline.

– Technical factors:

• New tools.

• Complex or not-well defined architecture.

• Blocks with no random.

BackupBackup

Page 26: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 26

Ver’ eng’ 1

Des’ eng’

Ver’ eng’ 2

Des’+ ver’

Gant chartGant chart2002 2003OCT NOV DEC JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DECSEP38 41 44 47 50 1 3 5 7 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 1

06/10 30/10write verification requirements

31/10 17/11write verification plan + review

18/11 23/12Prel. testbench

03/12 23/12Run lint + rule checker

24/12 26/01L0 + L1 direct tests

24/12 02/02Final testbench + review

27/01 05/03L2 direct tests

17/12 19/02write random constraints

06/03 22/04random verification + prel. coverage

09/04 01/05run equivalance checking RTL vs. gate-level

24/04 22/06final coverage (including formal methods)

24/04 19/05Write functional coverage statements

24/04 30/04Translate constraints to monitors for system level

23/06 06/07Checklist for closing block + review

19

12

26

15

24

28

27

46

32

15

40

17

5

10

Duration

Page 27: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 27

��

��

��

��

���

���

# b

ug

s

�/�/� /�/� /��/� �/��/� /�/� /��/� �/��/� �/��/� �/�/� �/��/� �/��/�

Date

P�����Bugs Statistics Chart

Testbench comp'

Spec total

Model total

RTL total

Passovervacation

independnt dayvacation

shavuotvacation

Page 28: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 28

System direct tests

���

���

��

���

��

���

���

�/��/��� �/��/��� �/��/��� �/��/��� �/�/��� �/��/��� �/�/��� �/��/��� ��/�/��� ��/��/��� ��/�/���

Date

# te

sts

expected actual base-line

date

Page 29: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 29

System random cycles per week

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�.��E+��

�/��

/���

�/��

/���

�/��

/���

�/�

/���

�/��

/���

�/�

/���

�/��

/���

��

/�/���

��

/��/��

��

/�/��

��

/�/��

��

/��/��

time

# cy

cles

expeced actual base-line

date

Page 30: Amit - IBM Research · Title: Microsoft PowerPoint - Amit.ppt Author: harry Created Date: 10/30/2003 14:34:31

Page 30

System level Coverage

��

��

��

��

���

���

�/��

/���

�/��

/���

�/��

/���

�/�

/���

�/��

/���

�/�

/���

�/��

/���

��

/�/���

��

/��/��

��

/�/��

��

/�/��

��

/��/��

��

/��/��

��

/�/��

�/�

/����

�/��

/����

time

cove

rage

expected actual base line

date