functional verification questions
TRANSCRIPT
-
7/27/2019 Functional Verification Questions
1/22
FUNCTIONAL VERIFICATION QUESTIONS
(Qi1)Explaino ehowi tooinjectqare crcierroroq jinre aipacketowhichqhas
justzdatau yande ocrczx fields.Ans:
Crcierroro einjecttioni canobeqdonere byimodifyingoq jthere crcivalueoonly.q
Ifidatao eisi modifiedotoqinjectre crcierror,oq jthenre itimayoendqup
inz auysituatione othatzx the new modified packet may have the same crc.
Foriexampleo e,i aopacketqofre lengthi5oq jbitsre withi3obitsqof dataz andu y2eobitszx of
crc value.
Thenithereo ewilli beo8qpacketsre ofidifferentoq jdata.re Thereiareoonlyq4
possiblez crcu yvalues.e o
So,iforo eonei crcovalue,qtherere couldibeoq jmorere thanioneodataqvalues
whichz areu ycorrect.www.testbench.in
Ifiyouo emodifyi theodata,qthenre theinewoq jdatare mayihaveotheqsame
crczvalue,u ywhiche owillzx not be resulted as crc error.
Forioneo edatai field,othereqwillre oneionlyoq jonere crcivalue,obyqchanging
thezcrcu yvalue,e ocrczx error will be injected for sure.
(Qi2)o eHowi dooyouqknowre wheniverificationoq jcompleted?
Ans:i
Verificationiiso eneveri completedoasqperre me.i
Iicano eonlyi sayothatqmyre verificationitaskoq jisre completediwhenoIqverified
allz theu ypointse omentionszx in test plan.
(Qi3)o eHowi toodetectqdeadlockre conditionsiinoq jFSMsre ?
.....w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
(Qi4)o eHowi tooavoidqracere conditionibetweenoq jTestbenchre andiDUTo?www.testbench.in
Ans:
Iniverilogo eori VHDL,o
i
1)Theiclocko ewhichi isogivenqtore DUTiandoq jTestbenchre shouldihaveoaqphase
difference.z
2)DUTishouldo eworki oroposedgeqofre clockiandoq jtestbenchre shouldiworkoonqnegedgeofz clock.
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
2/22
3)Testbenchioutputo eandi DUTooutputqpinsre shouldialwaysoq jbere driveniusingononqbloc
king statements.
IniSV,o e
1)Theiaboveo edefinei 3otechniques.
2)Clockingiblocks.www.testbench.in
3)Programiblock.
(Qi5)o eWhati isomutex?
Ans:
Aimutualo eexclusioni oroMUTEXqre essentialifunctionoq jisre toimakeoitqpossible
forz au ymultiplee oprocesseszx to make use of a single resource.
Wheniao esinglei resourceoisqrequiredre byimultipleoq jprocesses,re MUTEXiwillomakeqsure
thatz onlyu yonee oprocesszx will be granted the access at a time.
Foriexample,
AiDUTo ehasi aomemoryqtore storeitheoq jconfigurationre registers.iTooaccessqthe
memory,z letsu ysay,e oazx protocol is defined to read the memory of one location at a
time......w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
Testbenchimayo erequirei tooaccessqthere configuration/status/interruptiregistersoq jatre ti
mesifromodifferentqplaces. Forz example,u yae omonitorzx is reading register location of
status bit, while the testcase is reading a configuration register.Toiaccesso ethei memory,oTestcaseqandre monitoriwilloq jsendre theiaddressoofqthe
locationsz andu yreade ocommand.zx But the DUT can accept only one read request at a
time. www.testbench.in
Byiusingo eMUTEX,i accessotoqmemoryre interfaceicanoq jbere grantedionceoatqa
time,z sou ythee oreadzx operations by monitor and testcases will not collide.
IniSV,o etoi createoaqMUTEX,re constructiaoq jsemaphorere withioneokey.
Aikeyo eisi giveno qtore eitherimonitoroq jorre testcaseitooreadqoperation
basedzonu ywhoe ocomeszx first. Once the key is returned, other waiting component can take
the key and start its operation.
Someitimes,o ethei keyowhichqisre consumedimayoq jnotre beiretunedowhichqleads
toz deadu ylocke ocondition.zx So if a key is not returned, then a timeout should happen and a
error message should be triggered.
(Qi6)o eWhati isosemaphore?
Ans:
Conceptually,iao esemaphorei isoaqbucket.re Wheniaoq jsemaphorere isiallocated,oaqbucke
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
3/22
t thatz containsu yae ofixedzx number of keys is created. Processes using semaphores must
first procure a key from the bucket before they can continue to execute. If a specific process
requires a key, only a fixed number of occurrences of that process can be in progress
simultaneously. All others must wait until a sufficient number of keys is returned to the
bucket. Semaphores are typically used for mutual exclusion, access control to shared
resources, and basic synchronization.www.testbench.in
(Qi7)o eWhati isotheqneedre ofiregression?
Ans:
1)iChangeso eini theoRTLq(re development,ienhancementoq jorre bugifix)omayqcause
existingz functionalityu ytoe obreak.zx
2)iToo ecreatei newoscenariosqbyre givingidifferentoq jseedsre toirandomizationoengine.q
(Qi8)o eWhati isorandomization?
Ans:
Itiiso enoti possibleotoqlistre outieveryoq jpossiblere realitimeoscenarioqwhile
verifyingz DUT......w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
Ifiweo etryi toolistqoutre theiscenarios,oq jthenre weimayomissqsome
ofz them.uySo,e ousingzx randomization, based on the specification, scenarios are generated
in a randomfashion.
Foriexample,o etoi generateoaqpacketre ofilengthoq jwhichre rangesifromoq0
toz9,u yine overilogzx {$random()} % 10 should be used.
Withithis,o epacketsi ofolengthqarere generatedirandomly.oq jwww.testbench.in
(Qi9)o eWhati isotheqsignificancere ofiseedoq jinre randomization?
Ans:
Seediiso eusedi toochangeqthere sequenceiofoq jrandomre numbersigenerated.
Theiseedo einitializesi otheqrandomre numberigenerator.oq j
Allitheo erandomi numbersowhichqarere generatedifromoq jre aiparticularoseedqvalue
canz beu yrecreatede ozx by giving the same seed.
Iniouro eregressions,i stimulusogenerationqisre doneirandomly.oq jRunningre theicompleteo
regressionqwill generatez sameu yrandome onumberszx if we use same seed.
Soiouro eregressioni usesotheqtimere ofitestoq jcasere simulationistartedoasqthe
seedz tou yrandome onumberzx generator, with this we are able to generate different stimulus
for each regressions.
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
4/22
(Qi10)o eWhati isotheqdifferencere betweenicodeoq jcoveragere andifunctionalocoverage?
Ans:www.testbench.in
Coverageiiso eusedi toocheckqwhetherre theiTestbenchoq jhasre satisfactoryiexercisedothe
qdesign orz not?u y
Codeicoverageo ewilli giveoinformationqaboutre howimanyoq jlinesre areiexecuted,ohowqm
any timesz expressions,u ybranchese oexecuted.zx This coverage is collected by the simulation
tools. Users use this coverage to reach those corner cases which are not hit by the random
testcases. Users have to write the directed testcases to reach the missing code coverage
areas.
Functionalicoverageo e,i byotheqnamere itselfi,oq jisre relateditootheqfunctionality
ofz theu ydesigne oandzx it is defined by the user. User will define the coverage points for the
functions to be covered in DUT. This is completely under user control.
Bothiofo ethemi haveoequalqimportancere initheoq jverification.re 100io0.000000unctional
qcoverage doesz notu ymeane othatzx the DUT is completely exercised and vice-versa.
Verification engineers will consider both coverages to measure the verification
progress......w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
(Qi11)o eIfi CodeoCoverageqisre 100%iandoq jfunctionalre coverageiisonot,qwhatdoesz itu ymeane o?
Ans:
Theireasono ecouldi beoanyqonere ofitheoq jfollowing.www.testbench.in
1)Userididnoto eexercisei allotheqscenarios.re Userineedoq jtore writeitestcasesotoqfill
thez functionalu ycoveragee oholes.
2)Thereicouldo ebei aobugqinre theifunctionaloq jcoveragere blockiwhichoisqnot
recordingz theu yexecutede oscenario.zx User need to debug to find and fix the issue.
(Qi12)o eIfi Functionalocoverageqisre 100%iandoq jcodere coverageiisonot,qthen
whatz doesu yite omean?
Ans:
1)iIfo etherei isoaqbugre initestoq jenvironment,re dueitoothisqtest
mayz falseuyPass.e oThezx functional coverage will hit due to this false pass but some of the
dut code may not get exercised.
2)iIfo ethei dutoisqare legacyicodeoq jre oriIP,oitqmay havez someu yusee olesszxblocks to
support extra functionality. Due to this code coverage will not be 100% achieved.
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
5/22
3)iIno emyi firstocompany,qre thereiwasoq jsomere useilessologicqwhich
didz notuygete oexercised.zx When I approached the RTL designer, he said that fixing this use
less code will break the whole design. So he did not fix it. In this situation , functional
coverage is 100%, but not the code coverage.
4)Myifriendso eexperience,i onceoRTLqdesignerre addediaoq jcodere foriaonewqfeature. z B
ecauseu yofe omisszx communication, my friend didnt know that RTL designer added this newfunctionality.
Whenimyo efriendi didotheqcodere coverage,iheoq jfoundre someiunexercisedologicqwhich
hez didntu yunderstoode oandzx approached RTL designer. Then they figured out that because
of miscommunication, they found a feature in the spec which was implemented, but not
verified.www.testbench.in
Iidonto ethinki ,opointq2)re canibeoq javoided.re Pointi1),o3)qand
4)z canu ybeeosolved.zx
(Qi13)o eWhati isotheqdifferencere betweenipassiveoq jmonitorre andiactiveomonitor.
Ans:
Monitorireportso ethei protocoloviolationqandre identifiesialloq jtheretransactions.iMonitors
oareqtwo types,z Passiveu yande oactive.zx Passive monitors do not drive any signals, all the
signals are inputs. Active monitors can drive the DUT signals. Sometimes this is also refered as
receiver. Monitor converts the state of the design and its outputs to a transaction abstraction
level so it can be stored in a 'score-boards' database to be checked later on. Monitor converts
the pin level activities in to high level......w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
(Qi14)o eIni simulationoenvironment,qunderre whaticonditionoq jthere simulationishouldoen
d?
Ans:
1)iPacketo ecounti match.
2)iError
3)iErroro ecountwww.testbench.in
4)iInterfaceo eidlei count
5)iGlobalo etimeout
(Qi15)o eWhati isoscoreboard?
Ans:
Theitermo eSCOREBOARDi isonotqwell-definedre initheoq jindustry.re Itisometimesorefersqto
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
6/22
thez storageu ydatae ostructurezx only, sometimes it includes the transfer function as well,
and sometimes it includes the comparison function. In vmm methodology, the term scoreboard
is used to refer to the entire dynamic response-checking structure.
(Qi16)o eHowi theotestqcasesre areiincludedoq jinre toisimulationoenvironment?Ans:
Thereiareo emultiplei waysotoqdore this.i
Twoiveryo esimplei stylesoareqdiscussedre inibelowoq jlink.Click on the below link
http://www.testbench.in/TB_29_HANDLING_TESTCASE_FILES.htmlwww.testbench.in
HANDLING TESTCASE FILES
A test case is a file that describes an input, action, or event and an expected response, to
determine if a feature of an application is working correctly. A test case should contain
particulars such as test case identifier, test case name, objective, test conditions/setup, input
data requirements, steps, and expected results.
Note that the process of developing test cases can help find problems in the requirements or
design of an application, since it requires completely thinking through the operation of the
application. For this reason, it's useful to prepare test cases early in the development cycle if
possible.
The following example contains testbench environment and has 2 test cases.
EXAMPLE: top.v
moduletop();
// DUT instance, clock generator and TB components
// some tasks
taskwrite()
begin
// some logic
end
endtask
taskread()
begin
// some logic
end
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/TB_29_HANDLING_TESTCASE_FILES.htmlhttp://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/TB_29_HANDLING_TESTCASE_FILES.htmlhttp://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
7/22
endtask
end
EXAMPLE: testcase_1.v
// Do 10 write operations
EXAMPLE: testcase_2.v
// Do 10 read operations
To test first test cases, We have to simulate the contents of top.v file and testcase_1.v file.
1) Take an instance of module TEST in top.v file. Define the module definition in test cases.
During compilation just use the following commands
for testcase_1.v file
comile_command top.v testcase_1.v
for testcase_2.v file
comile_command top.v testcase_2.v
EXAMPLE: top.v
moduletop();
// DUT instance, clock generator and TB components
// some tasks
taskwrite()
begin
// some logic
end
endtask
taskread()
begin
// some logic
end
-
7/27/2019 Functional Verification Questions
8/22
endtask
// TEST case instance
TESTtst();
end
EXAMPLE: testcase_1.v
// Do 10 write operations
moduleTEST();
initial
repeat(10)
top.write();
endmodule
EXAMPLE: testcase_2.v
// Do 10 read operations
moduleTEST();
initial
repeat(10)top.read();
endmodule
2) use `include test.v file. This needs a small script to copy the testcase file to test file. The
compilation command is same. But copy command which copies the testcase to test.v file is
different.
During compilation just use the following commands
for testcase_1.v file
cp testcase_1 test.v
comile_command top.v test.v
for testcase_2.v file
cp testcase_2 test.v
comile_command top.v test.v
-
7/27/2019 Functional Verification Questions
9/22
EXAMPLE: top.v
moduletop();
// DUT instance, clock generator and TB components
// some tasks
taskwrite()
begin
// some logic
end
endtask
taskread()
begin
// some logic
end
endtask
// incule test.v file
`includetest.v
end
EXAMPLE: testcase_1.v
// Do 10 write operations
initial
repeat(10)
top.write();
EXAMPLE: testcase_2.v
// Do 10 read operations
initial
repeat(10)
top.read();
2) With the above two approaches, for each test case, we have to do individual compilation. In
this method, compile once and use simulation command to test with individual test case.
This needs a small script to convert all the test cases to single intermediate file. compilation
command is same. During simulation by giving the test case file name, we can include
-
7/27/2019 Functional Verification Questions
10/22
particular testcase.
During compilation just give following command
cat testcase_1.v > test.v
cat testcase_2.v > test.vcompile_command top.v test.v
During simulation ,
for each test case, use
run_command +testcase_1
run_coomand +testcase_2
EXAMPLE: top.v
moduletop();
// DUT instance, clock generator and TB components
// some tasks
taskwrite()
begin
// some logic
end
endtask
taskread()
begin
// some logic
end
endtask
// incule test.v file
`includetest.v
end
EXAMPLE: testcase_1.v
// Do 10 write operations
repeat(10)
top.write();
EXAMPLE: testcase_2.v
-
7/27/2019 Functional Verification Questions
11/22
// Do 10 read operations
repeat(10)
top.read();
Intermediate file generated contains all the testcase contents with some extra logic as shown.
EXAMPLE: INTERMEDIATE FILE test.v
initial
begin
if($test$plusargs("testcase_1")
begin// testcase_1 contents
// Do 10 write operations
repeat(10)
top.write();
end
if($test$plusargs("testcase_2")
begin// testcase_2 contents
// Do 10 read operations
repeat(10)
top.read();end
end
(Qi17)o eWhati areotheqdifferentre waysitestcaseoq jarere includediforosimulationsq?
Ans:
1)Compileionce,o esimulatei multipleotimesqwithre differentitestcases:oq j.....w.....w......w......t.
....e.....s.....t......b.....e.....n.....c.....h......i.....n
CompileiTestbencho e+i Allotestcasesqatre onceiandoq jduringre theisimulation,ousingqthe
$plusargs,z selectu ythee ologiczx of a particular testcase and execute it.
Thisistyleo eisi suedoinqOVMre andiUVM.oq j
Thisistyleo eshouldi makeosureqthat,re whenitheoq jtestre isiexecutedofromqcommand
line,z u yonlye oTestbenchzx + required testcase should be compiled. Other wise, compiling all
the testcases will consume huge time.
Iniregression,o eCompilingi allotheqtestcasesre +itestbenchsoq jatre onceiwillosaveqtime.
2)Separateicompilation:www.testbench.in
iCompileo ethei testbenchoonce.qre Toirunoq jare testcase,icompileotheqtestcase
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
12/22
,z linku ythee otestcasezx to testbench compiled code and simulate.
3)Compileionce,o esimulatei once:o
iAllo etestcasesi withosimilarqconfigurationre settingiandoq jtestbenchre areicompiledoonce
qand simulatedz inu yonee osinglezx run. After executing each testcase logic, HARD reset
should be applied to DUT and BFMs, so that the simulation looks as if it started fresh for thenext testcase code.
Thisistyleo eisi usedoinqVMMre 1.2.ioq jThisre styleisavesolotqof timez inuyregressions.
4)Compileionce,o esimulatei multipleotimesqwithre differentidata:oq j
Inisomeo everificationi environments,otestcaseqcodere doesntineedoq jtore beicompiles.oT
estcaseqfile containsz someu ydatae owhichzx is read by testbench to create different
scenarios. Testcase file can be read using $fopen or $plusargs in Verilog.
Thereicouldo ebei manyomoreqwaysre toidooq jthis.re www.testbench.in
Ifiyouo eknowi somethingowhichqisre notimentionedoq jabovere ,ipleaseotakeqa
minutez tou ymaile oitzx [email protected]
.....w.....w......w......t.....e.....s.....t......b.....e.....n.....c.....h......i.....n
(Qi18)o eExplaini howomessagesqarere implementediinoq jyourre testbench?
Ans:
IniVMM/RVM/AVM/OVM/UVM/ERM/Truss&Tealo emethodologies,i omessageqhandlingre logicii
soq jpredefined.re Useicanouseqthese predefinedz messageuyservicese oandzx print
messages as required by testbench. If above methodology base classes are not used, then user
can define his own message handling logic.
Iihaveo edefinedi aosimpleqverilogre logic,ilookoq jforre MessageiControloSystemqtopic
inz theu ybelowe olinkClick on the below link
http://www.testbench.in/TB_23_DEBUGGING.htmlwww.testbench.in
(Qi19)o eWritei codeoforqclockre generator?
Ans:
regiclk;
initialiclko e=i 0;o
alwaysi#10o eclki =o~clk;q
(Qi20)o eHowi toopassqare valueitooq jtestbenchre fromicommandoline?Ans:Click on the below link
http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/mailto:[email protected]:[email protected]:[email protected]://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/TB_23_DEBUGGING.htmlhttp://www.testbench.in/TB_23_DEBUGGING.htmlhttp://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/TB_23_DEBUGGING.htmlhttp://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/mailto:[email protected]://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/http://www.testbench.in/ -
7/27/2019 Functional Verification Questions
13/22
http://www.testbench.in/TB_22_COMPILATION_N_SIMULATION_SWITCHS.html
COMPILATION N SIMULATION SWITCHS
Compilation And Simulation Directives:
Conditional Compilation directive switches vs Simulation directive switches
Verilog has following conditional compiler directives.
`ifdef
`else
`elsif
`endif
`ifndef
The `ifdef compiler directive checks for the definition of a text_macro_name. If the
text_macro_name is defined, then the lines following the `ifdef directive are included. If the
text_macro_name is not defined and an `else directive exists, then this source is
compiled. The `ifndef compiler directive checks for the definition of a text_macro_name. If
the text_macro_name is not defined, then the lines following the `ifndef directive are
included. If the text_macro_name is defined and an `else directive exists, then this source is
compiled. If the `elsif directive exists (instead of the `else) the compiler checks for the
definition of the text_macro_name. If the name exists the lines following the `elsif directive
are included. The `elsif directive is equivalent to the compiler directive sequence `else `ifdef
... `endif. This directive does not need a corresponding `