Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ModelSim DE
Leading Single & Mixed Language Simulation
Verilog 1995, 2001, 2005 VHDL 1987/1993/2002/2008 !stemVerilog for "esign !stemVerilog an" # L assertions !stem$ %it& $V an" 'L(, $, $)) *o+tion,
$om+onent/mo".le instantiation ignal +!0 $ control, o/serve an" connect met&o"s 1nl! sim.lator a/le to s&are t!+e "efinitions %ritten in one +ackage in /ot& VHDL an" !stemVerilog
ModelSim DE
Leading Single & Mixed Language Simulation
$om+re&ensive root ca.se anal!sis $overage anal!sis an" re+orting $omman"s/342 consistent across lang.ages, H5 +latforms an" a/straction levels
ec.re2# s.++ort
ModelSim DE
Leading Assertion and Coverage technology
V8 an" # L assertions
8ssertion /ro%sing
Agenda
Reference Model
&
&
8-V "etects /.gs at t&e so.rce, saving val.a/le "e/.g time 8-V "etects /.gs misse" /! to+<level test /enc&es
Mentor Graphics ModelSim DE .!
W at is an Assertion!
8 concise "escri+tion of =.n>"esire" /e&avior
+ re# ac%
Example intended behavior
'
"After t e re#uest signal is asserted$ t e ac%no&ledge signal must come ' to ( c)cles later*
W o Uses Assertions!
1mm22 1mm22I Iassume assumet t ee 3S 3Sinputs inputsare are mutuall) e4clusive mutuall) e4clusive 5unctional 5unctionalspec specsa)s sa)s A36 &ill follo& RE7 A36 &ill follo& RE7 &it &it in in8-', 8-',cloc% cloc% c)cles c)cles Spec2 Spec2sa)s sa)st t at atRE7 RE7 must not drop /efore must not drop /efore A36 A36is isreceived2 received2
Must Mustremem/er0 remem/er0 TT is is a is is a''- ot otstate state mac ine mac ine Better Better&arn &arnot ot ers ers a/out t ose a/out t ose cc ec%sum ec%sumgotc gotc as as
W W at atI Ireall) reall)need needto to %no& is o& man) times %no& is o& man) times aatransfer transferD9ES:;T D9ES:;T complete complete
'
re# ac%
Example intended behavior
1D< Assertion
Reference Model
8-V reveals internal str.ct.ral coverage 8-V +ro".ces actiona/le metrics to im+rove coverage
Mentor Graphics ModelSim DE .!
Need ability to visualize the assertion Need ability for root cause analysis
Lists all assertions at current hierarchy S/W logic analyzer View assertion and its signals Clear indication of assertion status: active/inactive/ ass/fail !eco" oses assertion for best understanding Source code and gra hical dataflow
5aveform Vie%ing
8ssertion animation
Blue lo&-line indicates assertion is inactive Simpl) D>D Assertions from Assertion Bro&ser into Wave Windo& to vie& assertions Assertions can /e e4panded to vie& all signals associated &it t e assertion
$orner cases
(ake s.re test e7ercises "iffic.lt scenarios (ake s.re illegal sit.ations are &an"le" correctl!
5&at ot&er /locks are "oing 2n+.t ass.m+tions 5&at t&e test/enc& should /e "oing 8voi" "e/.gging false<negative test/enc& +ro/lems
Mentor Graphics ModelSim DE .!
Agenda
$onsistent look an" feel for all lang.ages :oot ca.se isolation $overage anal!sis an" re+orting
A.ll ca+a/ilities
Logical Vie%s
Virt.al 1/Cects
5aveform management
radi4 define States @ ''A/+++++++++++ B:9CUS1B$ ''A/++++++++++' BCUS1'B$ ''A/+++++++++'+ BCUS1,B$ 0 ''A/'++++++++++ BCUS1''B$ -default e4D
$reate m.lti+le +anes an" "rag an" "ro+ signals from one +ane to t&e ot&erD #o%erf.l 9"it an" earc& $a+a/ilities .n"er t&e 9"it (en.D $.rsors < m.lti+le, C.m+ to e"ge an" meas.rementD -ookmarks for marking m.lti+le %aveform vie%sD -alloon +o+.+ to "is+la! val.es
Wave Windo&
Source Annotation
Annotation can /e lin%ed to active cursor Signal transitions
=rap ical Dataflo&E Tracing Signals Ain" $a.se of 4nkno%n %it& $&ase6
4sers can also "irect "ataflo% %in"o% to com+.te an" "ra% +at&s /et%een one +oint an" anot&er
Mentor Graphics ModelSim DE .!
H!+erlinke" varia/les
#*
L.m+ to so.rce %in"o% an" &ig&lig&t varia/le "eclaration L.m+ t&ro.g& &ierarc&!
1rgani?e all sim.lation messages ort /! severit! or t!+e $ross links to ot&er %in"o%s for M.ick isolation of +ro/lems
Agenda
3ode 3overage
9asier to e7ercise co"e as+ects 9ns.res /locks are teste" ; rea"! for integration Lo% over&ea" 9as! to .se Hig& ca+acit! an" +erformance 4$D:ank 4$D- test files an" eliminate regression tests t&at "o not contri/.te to coverage metrics $om+re&ensive coverage e7cl.sion s.++ort
-.ilt<in
-est ca+acit! an" +erformance (ost com+re&ensive -ase tec&nolog! for N.esta Verification (anagement
ModelSim
Test 5unctional Assertion 3ode Engine 3overage 3overage +-in 5ormal User 3overage Test Specific Clan
U3DB
(erge an" anal!?e regression s.ite res.lts 2"entif! &ig&est !iel" coverage regression tests
3overage Totals
U3DBISimulation Details
2ntegrate" +latform availa/le to"a! 2m+rove verification effectiveness %it& assertions (ake ever! verification c!cle co.ntO
Crocessor-driven Verification
8llo%s test efforts to s+an m.lti+le stages of t&e "esign < test re.se across t&e +roCect
N.esta $o"elink +rovi"es t&e critical feat.res to s.++ort +rocessor<"riven, incl."ing m.lti<core verification
Mentor Graphics ModelSim DE .!
1ard&areISoft&are 3orrelation
Hig&est ca+acit! an" +erformance 97tensive Design t!le .++ort mart integration of formal verification %it& sim.lation '&e largest li/rar! of assertion 2# in t&e in".str! 2nt.itive gra+&ical anal!sis an" "e/.g N.esta $overage "ata/ase ena/le"
8.tomaticall! i"entifies all clocks an" clock<"omain crossings *$D$s, 8.tomaticall! +roves $D$ #rotocols im.late $D$ +rotocol assertions (imics t&e metasta/ilit! effects in s!nc&roni?ers #rovi"es a meas.re of com+leteness for t&e test/enc& as relate" to metasta/ilit! iss.es