Accueil
Explorer
Soumettre la recherche
Mettre en ligne
S’identifier
S’inscrire
Publicité
Chapter 6 testbench
Signaler
Ranjeet Mishra
Suivre
12 Dec 2014
•
0 j'aime
0 j'aime
×
Soyez le premier à aimer ceci
afficher plus
•
174 vues
vues
×
Nombre de vues
0
Sur Slideshare
0
À partir des intégrations
0
Nombre d'intégrations
0
Check these out next
Mathematical modelling
NandiniNandus
Resumen termoquimica1
Francisco Rodríguez Pulido
21 High-quality programming code construction part-ii
maznabili
Dielectrics lect28
Joao Tan
Command Channel Slides Week Between Sept. 26 to Oct. 2
U.S. Army Garrison Japan
GastritisZaydoon
Zay Doon
The anatomy of a dollar bill
Seadin Xhaferi
The solar system
RoberAld
1
sur
107
Top clipped slide
Chapter 6 testbench
12 Dec 2014
•
0 j'aime
0 j'aime
×
Soyez le premier à aimer ceci
afficher plus
•
174 vues
vues
×
Nombre de vues
0
Sur Slideshare
0
À partir des intégrations
0
Nombre d'intégrations
0
Télécharger maintenant
Télécharger pour lire hors ligne
Signaler
Ingénierie
digital communication ,proakis
Ranjeet Mishra
Suivre
Publicité
Publicité
Publicité
Recommandé
19 Algorithms and complexity
maznabili
214 vues
•
35 diapositives
Independent sample_t-test
Shajar Khan
337 vues
•
36 diapositives
Grand Finale of Quizzat-2014
Somnath Chanda
3.7K vues
•
117 diapositives
Engineering & Tech Quiz Prelims
Somnath Chanda
1.4K vues
•
88 diapositives
Le Black's Law Dictionary, monument de la lexicographie juridique - ATA 2010
Frédéric Houbert
350 vues
•
15 diapositives
Kolkata National Prelims of Antaragni-2014 of IIT-K
Somnath Chanda
2.3K vues
•
89 diapositives
Contenu connexe
Présentations pour vous
(20)
Mathematical modelling
NandiniNandus
•
636 vues
Resumen termoquimica1
Francisco Rodríguez Pulido
•
1.8K vues
21 High-quality programming code construction part-ii
maznabili
•
315 vues
Dielectrics lect28
Joao Tan
•
453 vues
Command Channel Slides Week Between Sept. 26 to Oct. 2
U.S. Army Garrison Japan
•
350 vues
GastritisZaydoon
Zay Doon
•
311 vues
The anatomy of a dollar bill
Seadin Xhaferi
•
1.2K vues
The solar system
RoberAld
•
726 vues
CS201- Introduction to Programming- Lecture 10
Bilal Ahmed
•
288 vues
Pineapple
Rione Drevale
•
290 vues
Morphemes
Linda Julie
•
276 vues
Neural network
Anjali Urmaliya
•
285 vues
Jesus in islam
Khalid Abdullah
•
593 vues
multivariate data analysis
Divya Padmanaban
•
729 vues
cardiac arrhythmias
majid shojaee
•
1.5K vues
Gelombang
Am'alia Tristy
•
1.1K vues
18 Hash tables and sets
maznabili
•
441 vues
1 pigmentation
Ahmed Amer
•
332 vues
World com scandal
walter masinde MCIPS
•
217 vues
Criminalistics questionnaires
Alexzur
•
1.5K vues
En vedette
(6)
Mcts chapter 1 (1)
Ankit Kumar
•
295 vues
Embedded system
pradhuman0702
•
400 vues
Visual resume
howi007
•
610 vues
My visual resume
Dominique Robinson
•
236 vues
DRobinson_Discussion4
Dominique Robinson
•
662 vues
Reddit presentation
ai_li17
•
3.8K vues
Publicité
Similaire à Chapter 6 testbench
(20)
Aqua Eagles Presentation August 25th 2014
amandaleaallen
•
1.7K vues
1334006 mitali
Shraddha Goswami
•
258 vues
Osteo osteomalacia ricket2
padli ahmad
•
255 vues
Upper tibial valgus osteotomy using a dynamic external fixator
Alexander Bardis
•
489 vues
Solving linear equations (chapter 2)
Raza Zaidi
•
400 vues
Impression materials review
razan reyadh
•
1.6K vues
Training methods
begraj SIWAL
•
328 vues
WHY THE SEATTLE MARKET & EB-5
usasiapacific
•
522 vues
Former Chapter 3
Lizz Renee
•
291 vues
Cursos Polilab - Degradação e estabilização de polímeros aula 02
Fernando Jose Novaes
•
337 vues
Apoptosis
Manjeet Singh Bindra
•
288 vues
Estado de Salud
Carlos Sarmiento
•
1.8K vues
Liver cirrhosis-hematemsis-peptic Ulcer Lecture
Nadine El-Hussieny
•
798 vues
Dry socket
Neveen Fuad
•
24.3K vues
CheckFood - startup pitch-updated
Cristian Muraru
•
387 vues
Treatment at Grace Walker Physical Therapy and Pain Center
Doctor Grace Walker
•
401 vues
One Health Model
Murdoch University
•
428 vues
Care of the aged in the community
Magaji Ismail
•
246 vues
Marijuana Teachback
Erin McIntyre
•
158 vues
Skill development for assessing cognitive impairment in elderly 24 nov15
Dr. Rakesh Tripathi
•
936 vues
Dernier
(8)
罗特格斯大学本科毕业证书美国学历学位认证
ozoegon
•
2 vues
UNSS3.pdf
S Maillard
•
233 vues
#代购《安大略理工大学offer学位证》
socoseh366
•
2 vues
Gbr.docx
Irafebrina1
•
2 vues
Omaxe Karol Bagh Delhi
Noida One Commercial
•
3 vues
SÑ2.pdf
GianlucaChunga
•
2 vues
SÑ1.pdf
GianlucaChunga
•
3 vues
Energiakatselmus kannattaa – säästöjä kunnille ja pk-yrityksille
Motiva
•
373 vues
Publicité
Chapter 6 testbench
1 CChhaapptteerr 66
CCoommppoonneenntt TTeesstt aanndd VVeerriiffiiccaattiioonn MMooddiiffiieedd ffrroomm PPrrooff.. NNaavvaabbii’’ss LLeeccttuurreess
2 CCoommppoonneenntt TTeesstt
aanndd VVeerriiffiiccaattiioonn 66..11 TTeessttbbeenncchh 66..11..11 CCoommbbiinnaattiioonnaall cciirrccuuiitt tteessttiinngg 66..11..22 SSeeqquueennttiiaall cciirrccuuiitt tteessttiinngg 66..22 TTeessttbbeenncchh TTeecchhnniiqquueess 66..22..11 TTeesstt ddaattaa 66..22..22 SSiimmuullaattiioonn ccoonnttrrooll 66..22..33 LLiimmiittiinngg ddaattaa sseettss 66..22..44 AAppppllyyiinngg ssyynncchhrroonniizzeedd ddaattaa 66..22..55 SSyynncchhrroonniizzeedd ddiissppllaayy ooff rreessuullttss 66..22..66 AAnn iinntteerraaccttiivvee tteessttbbeenncchh 66..22..77 RRaannddoomm ttiimmee iinntteerrvvaallss 66..22..88 BBuuffffeerreedd ddaattaa aapppplliiccaattiioonn
3 CCoommppoonneenntt TTeesstt
aanndd VVeerriiffiiccaattiioonn 66..33 DDeessiiggnn VVeerriiffiiccaattiioonn 66..44 AAsssseerrttiioonn VVeerriiffiiccaattiioonn 66..44..11 AAsssseerrttiioonn vveerriiffiiccaattiioonn bbeenneeffiittss 66..44..22 OOppeenn vveerriiffiiccaattiioonn lliibbrraarryy 66..44..33 UUssiinngg aasssseerrttiioonn mmoonniittoorrss 66..44..44 AAsssseerrttiioonn tteemmppllaatteess 66..55 TTeexxtt BBaasseedd TTeessttbbeenncchheess 66..66 SSuummmmaarryy
4 CCoommppoonneenntt TTeesstt
aanndd VVeerriiffiiccaattiioonn TThhiiss cchhaapptteerr sshhoowwss:: HHooww VVeerriilloogg llaanngguuaaggee ccoonnssttrruuccttss ccaann bbee uusseedd ffoorr aapppplliiccaattiioonn ooff ddaattaa ttoo aa mmoodduullee uunnddeerr tteesstt ((MMUUTT)) HHooww mmoodduullee rreessppoonnsseess ccaann bbee ddiissppllaayyeedd aanndd cchheecckkeedd TThhee ffiirrsstt ppaarrtt:: DDaattaa aapppplliiccaattiioonn aanndd rreessppoonnssee mmoonniittoorriinngg TThhee sseeccoonndd ppaarrtt:: TThhee uussee ooff aasssseerrttiioonn vveerriiffiiccaattiioonn ffoorr ggiivviinngg aa bbeetttteerr oobbsseerrvvaabbiilliittyy ttoo oouurr ddeessiiggnn mmoodduulleess
5 TTeessttbbeenncchh
VVeerriilloogg ssiimmuullaattiioonn eennvviirroonnmmeennttss pprroovviiddee ttwwoo kkiinnddss ooff ddiissppllaayy ooff ssiimmuullaattiioonn rreessuullttss:: GGrraapphhiiccaall TTeexxttuuaall SSoommee aallssoo pprroovviiddee ttoooollss ffoorr eeddiittiinngg iinnppuutt tteesstt ddaattaa ttoo aa ddeessiiggnn mmoodduullee tthhaatt iiss bbeeiinngg tteesstteedd.. TThheessee ttoooollss aarree rreeffeerrrreedd ttoo aass WWaavveeffoorrmm EEddiittoorrss.. WWaavveeffoorrmm eeddiittoorrss hhaavvee 22 pprroobblleemmss:: UUssuuaallllyy aarree ggoooodd oonnllyy ffoorr ssmmaallll ddeessiiggnnss.. EEaacchh ssiimmuullaattiioonn eennvviirroonnmmeenntt uusseess aa ddiiffffeerreenntt pprroocceedduurree ffoorr wwaavveeffoorrmm eeddiittiinngg.. TThhiiss pprroobblleemm ccaann bbee ssoollvveedd bbyy uussee ooff VVeerriilloogg TTeessttbbeenncchheess..
6 TTeessttbbeenncchh
AA VVeerriilloogg TTeessttbbeenncchh iiss:: AA VVeerriilloogg mmoodduullee IInnssttaannttiiaatteess MMoodduullee UUnnddeerr TTeesstt ((MMUUTT)).. AApppplliieess ddaattaa ttoo MMUUTT.. MMoonniittoorrss tthhee oouuttppuutt.. AA mmoodduullee aanndd iittss tteessttbbeenncchh ffoorrmmss aa SSiimmuullaattiioonn MMoodduullee iinn wwhhiicchh MMUUTT iiss tteesstteedd ffoorr tthhee ssaammee ddaattaa rreeggaarrddlleessss ooff wwhhaatt ssiimmuullaattiioonn eennvviirroonnmmeenntt iiss uusseedd..
7 TTeessttbbeenncchh TTeessttbbeenncchh
CCoommbbiinnaattiioonnaall CCiirrccuuiitt TTeessttiinngg SSeeqquueennttiiaall CCiirrccuuiitt TTeessttiinngg
8 CCoommbbiinnaattiioonnaall CCiirrccuuiitt
TTeessttiinngg TTeessttbbeenncchh Combinational Testing SSeeqquueennttiiaall CCiirrccuuiitt TTeessttiinngg Combinational Circuit Testing
9 CCoommbbiinnaattiioonnaall CCiirrccuuiitt
TTeessttiinngg mmoodduullee aalluu__44bbiitt ((aa,, bb,, ff,, ooee,, yy,, pp,, oovv,, aa__ggtt__bb,, aa__eeqq__bb,, aa__lltt__bb));; iinnppuutt [[33::00]] aa,, bb;; iinnppuutt [[11::00]] ff;; iinnppuutt ooee;; oouuttppuutt [[33::00]] yy;; oouuttppuutt pp,, oovv,, aa__ggtt__bb,, aa__eeqq__bb,, aa__lltt__bb;; //// .. .. .. eennddmmoodduullee aalluu__44bbiitt MMoodduullee DDeeccllaarraattiioonn DDaattaa IInnppuuttss FFuunnccttiioonn IInnppuutt DDaattaa OOuuttppuutt CCoommppaarree OOuuttppuuttss OOvveerrffllooww OOuuttppuutt PPaarriittyy OOuuttppuutt
10 CCoommbbiinnaattiioonnaall CCiirrccuuiitt
TTeessttiinngg mmoodduullee tteesstt__aalluu__44bbiitt;; rreegg [[33::00]] aa==44''bb11001111,, bb==44''bb00111100;; rreegg [[11::00]] ff==22''bb0000;; rreegg ooee==11;; wwiirree [[33::00]] yy;; wwiirree pp,, oovv,, aa__ggtt__bb,, aa__eeqq__bb,, aa__lltt__bb;; aalluu__44bbiitt ccuutt(( aa,, bb,, ff,, ooee,, yy,, pp,, oovv,, aa__ggtt__bb,, aa__eeqq__bb,, aa__lltt__bb ));; .............................................. .............................................. TTeessttbbeenncchh ffoorr aalluu__44bbiitt VVaarriiaabblleess ccoonnnneeccttiinngg ttoo IInnppuuttss VVaarriiaabblleess ccoonnnneeccttiinngg ttoo OOuuttppuuttss TThhiiss iinnssttaannttiiaattiioonn aassssoocciiaatteess llooccaall rreeggss aanndd wwiirreess ttoo tthhee ppoorrttss ooff tthhee aalluu__44bbiitt mmoodduullee
11 CCoommbbiinnaattiioonnaall CCiirrccuuiitt
TTeessttiinngg AApppplliiccaattiioonn ooff ddaattaa ttoo tthhee bb ddaattaa iimmppuutt aanndd ooee oouuttppuutt--eennaabbllee .............................................. iinniittiiaall bbeeggiinn IInniittiiaall BBlloocckk WWaaiittss ffoorr 8800nnss DDiissaabblleess tthhee ##2200 bb==44''bb11001111;; ##2200 bb==44''bb11111100;; ##2200 bb==44''bb11111100;; ##8800 ooee==11''bb00;; ##2200 $$ffiinniisshh;; eenndd aallwwaayyss ##2233 ff == ff ++11;; eennddmmoodduullee EEvveerryy 2200 nnss AA nneeww vvaalluuee iiss aassssiiggnneedd ttoo bb TThhee $$ffiinniisshh ssttaatteemmeenntt iiss rreeaacchheedd aatt 116600 nnss.. AAtt tthhiiss ttiimmee aallll aaccttiivvee pprroocceedduurraall bblloocckkss ssttoopp aanndd ssiimmuullaattiioonn AALLUU OOuuttppuutt bbyy sseettttiinngg ooee ttoo 00 AAfftteerr 2200nnss tthhee ssiimmuullaattiioonn iiss ffiinniisshheedd TTeessttbbeenncchh ffoorr aalluu__44bbiitt ((CCoonnttiinnuueedd)) AApppplliiccaattiioonn AAlllloowwss ooff ddaattaa ttoo tthhee ff iinnppuutt.. ff iiss iinnccrreemmeenntt bbyy 11 eevveerryy 2233 nnss.. tteerrmmiinnaatteess.. eeffffeeccttss ooff tthhee llaasstt iinnppuutt cchhaannggee ttoo bbee sshhoowwnn iinn ssiimmuullaattiioonn rreessuullttss
12 CCoommbbiinnaattiioonnaall CCiirrccuuiitt
TTeessttiinngg ff cchhaannggeess eevveerryy 2233nnss TThhrroouugghhoouutt ccaauussiinngg vvaarriioouuss tthhee AALLUU ssiimmuullaattiioonn ffuunnccttiioonnss aa rreemmaaiinnss ttoo bbee eexxaammiinneedd ccoonnssttaanntt AALLUU SSiimmuullaattiioonn RReessuullttss AAtt 114400 nnss ooee cchhaannggeess ttoo 00 ccaauussiinngg tthhee yy oouuttppuutt bbeeccoommee ZZ
13 SSeeqquueennttiiaall CCiirrccuuiitt
TTeessttiinngg TTeessttbbeenncchh CCoommbbiinnaattiioonnaall CCiirrccuuiitt TTeessttiinngg Sequential Circuit Testing Sequential Circuit Testing
14 SSeeqquueennttiiaall CCiirrccuuiitt
TTeessttiinngg TTeessttiinngg sseeqquueennttiiaall cciirrccuuiittss iinnvvoollvveess ssyynncchhrroonniizzaattiioonn ooff CClloocckk wwiitthh ootthheerr ddaattaa iinnppuuttss..
15 SSeeqquueennttiiaall CCiirrccuuiitt
TTeessttiinngg mmoodduullee ##((ppaarraammeetteerr [[33::00]] ppoollyy==00)) mmiissrr ((iinnppuutt ccllkk,,rrsstt,, iinnppuutt [[33::00]] dd__iinn,, oouuttppuutt rreegg [[33::00]] dd__oouutt ));; aallwwaayyss @@(( ppoosseeddggee ccllkk )) iiff(( rrsstt )) dd__oouutt ==44''bb00000000;; eellssee dd__oouutt == dd__iinn ^^ (({{44{{dd__oouutt[[00]]}}}} && ppoollyy)) ^^ {{11''bb00,,dd__oouutt[[33::11]]}};; eennddmmoodduullee mmiissrr SSeeqquueennttiiaall CCiirrccuuiitt TThhee cciirrccuuiitt hhaass aa ppoollyy ppaarraammeetteerr tthhaatt ddeetteerrmmiinneess iittss ssiiggnnaattuurree aanndd ddaattaa ccoommpprreessssiioonn.. WWiitthh eeaacchh cclloocckk aa nneeww ssiiggnnaattuurree wwiillll bbee ccaallccuullaatteedd wwiitthh tthhee nneeww ddaattaa aanndd eexxiissttiinngg mmiissrr rreeggiisstteerr ddaattaa..
16 SSeeqquueennttiiaall CCiirrccuuiitt
TTeessttiinngg mmoodduullee tteesstt__mmiissrr;; rreegg ccllkk==00,, rrsstt==00;; rreegg [[33::00]] dd__iinn;; wwiirree [[33::00]] dd__oouutt;; mmiissrr ##((44''bb11110000)) MMUUTT (( ccllkk,, rrsstt,, dd__iinn,, dd__oouutt ));; SSppeecciiffiiccaattiioonn ooff tthhee ppoollyy ppaarraammeetteerr ...................................................... ...................................................... AA TTeessttbbeenncchh ffoorr mmiissrr
wwee uussuuaallllyy uussee
pprriimmee nnuummbbeerrss ffoorr ttiimmiinngg ooff sseeqquueennttiiaall cciirrccuuiitt 17 SSeeqquueennttiiaall CCiirrccuuiitt TTeessttiinngg .................................................... iinniittiiaall bbeeggiinn ##1133 rrsstt==11''bb11;; ##1199 dd__iinn==44''bb11000000;; ##3311 rrsstt==00''bb00;; ##333300 $$ffiinniisshh;; eenndd IInn oorrddeerr ttoo rreedduuccee cchhaannccee ooff sseevveerraall iinnppuuttss cchhaannggiinngg dd__iinn ddaattaa iinnppuutt iiss iinniittiiaalliizzeedd ttoo 44’’bb11000000 aallwwaayyss ##337 dd__iinn == dd__iinn ++ 33;; aallwwaayyss ##1111 ccllkk == ~~ccllkk;; eennddmmoodduullee AA TTeessttbbeenncchh ffoorr mmiissrr ((CCoonnttiinnuueedd)) aatt tthhee ssaammee ttiimmee,, TThhee iinniittiiaall bblloocckk ggeenneerraatteess aa ppoossiittiivvee ppuullssee oonn rrsstt tthhaatt bbeeggiinnss aatt iinnppuuttss.. 1133 nnss aanndd eennddss aatt 6633 nnss.. TThhee ttiimmiinngg iiss ssoo cchhoosseenn ttoo ccoovveerr aatt lleeaasstt oonnee ppoossiittiivvee cclloocckk eeddggee dd__iinn iinnppuutt iiss aassssiiggnneedd aa nneeww vvaalluuee eevveerryy 3377 nnss.. GGeenneerraattee ddaattaa oonn TToogggglleeddss_ eeiivnee araryynn d1d111 ccnnllsskk
18 SSeeqquueennttiiaall CCiirrccuuiitt
TTeessttiinngg TTeessttiinngg mmiissrr
19 TTeessttbbeenncchh TTeecchhnniiqquueess
TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn
20 TTeessttbbeenncchh TTeecchhnniiqquueess
mmoodduullee mmoooorree__ddeetteeccttoorr ((iinnppuutt xx,, rrsstt,, ccllkk,, oouuttppuutt zz ));; ppaarraammeetteerr [[11::00]] aa==00,, bb==11,, cc==22,, dd==33;; rreegg [[11::00]] ccuurrrreenntt;; aallwwaayyss @@(( ppoosseeddggee ccllkk )) iiff (( rrsstt )) ccuurrrreenntt <<== aa;; .................................................... .................................................... eennddmmoodduullee 110011 MMoooorree DDeetteeccttoorr ffoorr TTeesstt SSyynncchhrroonnoouuss RReesseett IInnppuutt
21 TTeessttbbeenncchh TTeecchhnniiqquueess
.................................................... iiff (( rrsstt )) ccuurrrreenntt == aa;; eellssee ccaassee (( ccuurrrreenntt )) aa :: ccuurrrreenntt <<== xx ?? bb :: aa ;; bb :: ccuurrrreenntt <<== xx ?? bb :: cc ;; cc :: ccuurrrreenntt <<== xx ?? dd :: aa ;; dd :: ccuurrrreenntt <<== xx ?? bb :: cc ;; ddeeffaauulltt :: ccuurrrreenntt <<== xx;; eennddccaassee aassssiiggnn zz == ((ccuurrrreenntt====dd)) ?? 11''bb11 :: 11''bb00;; eennddmmoodduullee 110011 MMoooorree DDeetteeccttoorr ffoorr TTeesstt ((CCoonnttiinnuueedd)) zz oouuttppuutt bbeeccoommeess 11 iinn ssttaattee dd wwhheenn aa sseeqquueennccee ooff 110011 iiss ddeetteecctteedd oonn xx
22 TTeessttbbeenncchh TTeecchhnniiqquueess
TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn Test Data TTeesstt DDaattaa
23 TTeesstt DDaattaa
mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx,, rreesseett,, cclloocckk;; wwiirree zz;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ));; ........................................................ ........................................................ eennddmmoodduullee BBaassiicc DDaattaa GGeenneerraattiioonn
24 IInniittiiaall BBlloocckk
........................................................ ........................................................ iinniittiiaall bbeeggiinn FFoorr iinniittiiaalliizziinngg tthhee rreegg vvaarriiaabblleess cclloocckk==11''bb00;; xx==11''bb00;; rreesseett==11''bb11;; eenndd iinniittiiaall ##2244 rreesseett==11''bb00;; aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss ##7 xx==~~xx;; eennddmmoodduullee TTeesstt DDaattaa TThhee wwaavveeffoorrmm ggeenneerraatteedd oonn xx mmaayy oorr mmaayy nnoott bbee aabbllee ttoo tteesstt oouurr mmaacchhiinnee ffoorr aa ccoorrrreecctt 110011 sseeqquueennccee.. GGeenneerraatteess aa ssiiggnnaall oonn xx wwiitthh aa ppeerriioodd ooff 1144nnss BBaassiicc DDaattaa GGeenneerraattiioonn ((CCoonnttiinnuueedd)) FFoouurr PPrroocceedduurraall BBlloocckkss GGeenneerraatteess aa ssiiggnnaall wwiitthh aa ppeerriioodd ooff 1100nnss oonn cclloocckk VVaarriiaabblleess uusseedd iinn tthhee lleefftt--hhaanndd-- ssiiddeess iinn tthhee pprroocceedduurraall bblloocckkss PPeerriiooddss ooff cclloocckk aanndd xx ccaann bbee cchhaannggeedd ttoo mmaakkee tthhiiss hhaappppeenn aarree ddeeccllaarreedd aass rreegg
25 SSiimmuullaattiioonn CCoonnttrrooll
TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa Simulation Control SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn
26 SSiimmuullaattiioonn CCoonnttrrooll
mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; SSiimmuullaattiioonn CCoonnttrrooll TTaasskkss aarree $$ssttoopp aanndd $$ffiinniisshh mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ));; iinniittiiaall ##2244 rreesseett==11''bb00;; aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss ##7 xx==~~xx;; iinniittiiaall ##118899 $$ssttoopp;; eennddmmoodduullee TTeessttbbeenncchh wwiitthh $$ssttoopp SSiimmuullaattiioonn CCoonnttrrooll AAnnootthheerr tteessttbbeenncchh ffoorr mmoooorree__ddeetteeccttoorr wwhhiicchh aaddddss aannootthheerr iinniittiiaall bblloocckk tthhaatt ssttooppss tthhee ssiimmuullaattiioonn aatt 118899 nnss.. TThhee ffiirrsstt ttiimmee tthhee ffllooww ooff aa pprroocceedduurraall bblloocckk rreeaacchheess $$ssttoopp aatt 118899 nnss,, ssiimmuullaattiioonn ssttooppss.. AA ssttooppppeedd ssiimmuullaattiioonn ccaann bbee rreessuummeedd..
27 SSiimmuullaattiioonn CCoonnttrrooll
mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ));; ........................................................ ........................................................ eennddmmoodduullee TTeessttbbeenncchh wwiitthh $$ffiinniisshh SSiimmuullaattiioonn CCoonnttrrooll AAnnootthheerr tteessttbbeenncchh ffoorr mmoooorree__ddeetteeccttoorr wwiitthh $$ffiinniisshh CCoonnttrrooll TTaasskk
28 SSiimmuullaattiioonn CCoonnttrrooll
TThhiiss tteessttbbeenncchh ccoommbbiinneess tthhee iinniittiiaall bblloocckkss ooff ddeeaaccttiivvaattiinngg rreesseett aanndd ssiimmuullaattiioonn ccoonnttrrooll iinnttoo ........................................................ ........................................................ iinniittiiaall bbeeggiinn ##2244 rreesseett==11''bb00;; ##116655 $$ffiinniisshh;; SSiimmuullaattiioonn tteerrmmiinnaatteess aatt 116655 nnss.. eenndd aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss ##77 xx==~~xx;; eennddmmoodduullee oonnee iinniittiiaall bblloocckk.. AA ffiinniisshheedd ssiimmuullaattiioonn ccaannnnoott bbee rreessuummeedd.. TTeessttbbeenncchh wwiitthh $$ffiinniisshh SSiimmuullaattiioonn CCoonnttrrooll ((CCoonnttiinnuueedd))
29 LLiimmiittiinngg DDaattaa
SSeettss TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn Limiting Data Sets
30 LLiimmiittiinngg DDaattaa
SSeettss ;;mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr ;;rreegg xx==00,, rreesseett==11,, cclloocckk==00 ;;wwiirree zz ((;;mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ;;iinniittiiaall ##2244 rreesseett==11''bb00 ;;iinniittiiaall rreeppeeaatt((1133(( ##55 cclloocckk==~~cclloocckk ;;iinniittiiaall rreeppeeaatt((1100(( ##77 xx==$$rraannddoomm eennddmmoodduullee TTeessttbbeenncchh UUssiinngg rreeppeeaatt ttoo LLiimmiitt DDaattaa SSeettss IInnsstteeaadd ooff sseettttiinngg ssiimmuullaattiioonn ttiimmee lliimmiitt,, aa tteessttbbeenncchh ccaann ppuutt aa lliimmiitt oonn tthhee nnuummbbeerr ooff ddaattaa ppuutt oonn iinnppuuttss ooff aa MMUUTT.. TThhiiss wwiillll aallssoo bbee aabbllee ttoo ssttoopp ssiimmuullaattiioonn ffrroomm rruunnnniinngg iinnddeeffiinniitteellyy.. CCaauussee cclloocckk ttoo ttooggggllee 1133 ttiimmeess eevveerryy 55 nnss IInn llaarrggee cciirrccuuiittss,, rraannddoomm ddaattaa iiss mmoorree uusseeffuull ffoorr ddaattaa iinnppuuttss tthhaann ffoorr CCaauussee xx ttoo rreecceeiivvee rraannddoomm ddaattaa 110 ttiimmeess eevveerryy 77 nnss GGeenneerraatteess rraannddoomm ddaattaa oonn tthhee xx iinnppuutt ooff tthhee cciirrccuuiitt.. ccoonnttrrooll ssiiggnnaallss..
31 AAppppllyyiinngg SSyynncchhrroonniizzeedd
DDaattaa TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg Applying SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss Synchronized Data AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn
32 AAppppllyyiinngg SSyynncchhrroonniizzeedd
DDaattaa WWhheerree sseevveerraall sseettss ooff ddaattaa aarree ttoo bbee aapppplliieedd:: SSyynncchhrroonniizzaattiioonn ooff ddaattaa wwiitthh tthhee ssyysstteemm cclloocckk bbeeccoommeess ddiiffffiiccuulltt.. CChhaannggiinngg tthhee cclloocckk ffrreeqquueennccyy wwoouulldd rreeqquuiirree cchhaannggiinngg tthhee ttiimmiinngg ooff aallll ddaattaa iinnppuuttss ooff tthhee mmoodduullee bbeeiinngg tteesstteedd..
mmaakkeess iitt ppoossssiibbllee
ttoo uussee tthhiiss tteessttbbeenncchh ffoorr ssiimmuullaattiinngg ppoosstt--ssyynntthheessiiss ddeessiiggnnss aass wweellll aass bbeehhaavviioorraall ddeessccrriippttiioonnss TTeessttbbeenncchh DDeellaayyss:: SSeettuupp aanndd HHoolldd TTiimmee 33 AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; TThhiiss 33nnss ddeellaayy mmoooorree__ddeetteeccttoorr uuuutt(( xx,, rreesseett,, cclloocckk,, zz ((;; iinniittiiaall ##2244 rreesseett==00;; iinniittiiaall rreeppeeaatt((1133(( ##55 cclloocckk==~~cclloocckk;; iinniittiiaall ffoorreevveerr @@((ppoosseeddggee cclloocckk(( ##33 xx==$$rraannddoomm;; eennddmmoodduullee SSyynncchhrroonniizziinngg DDaattaa wwiitthh CClloocckk TThhiiss tteessttbbeenncchh uusseess aann eevveenntt ccoonnttrrooll ssttaatteemmeenntt ttoo ssyynncchhrroonniizzee ddaattaa aapppplliieedd TThhiiss lloooopp wwaaiitttstsoo ff ox r w wtthhiitteehh tthhee cclloocckk.. ppoossiittiivvee eeddggee ooff tthhee cclloocckk,, aanndd 33 nnss aafftteerr iitt,, aa nneeww rraannddoomm ddaattaa iiss ggeenneerraatteedd ffoorr xx.. GGuuaarraanntteeeess tthhaatt cchhaannggiinngg ooff ddaattaa aanndd cclloocckk ddoo nnoott ccooiinncciiddee..
SSyynncchhrroonniizzeedd DDiissppllaayy ooff
RReessuullttss 34 TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn Synchronized Display of Results
SSyynncchhrroonniizzeedd DDiissppllaayy ooff
RReessuullttss 35 mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ((;; iinniittiiaall ##2244 rreesseett==00;; iinniittiiaall rreeppeeaatt((1133(( ##55 cclloocckk==~~cclloocckk;; iinniittiiaall ffoorreevveerr @@((ppoosseeddggee cclloocckk(( ##33 xx==$$rraannddoomm;; iinniittiiaall ffoorreevveerr @@((ppoosseeddggee cclloocckk(( ##11 $$ddiissppllaayybb((zz((;; eennddmmoodduullee TTeessttbbeenncchh DDiissppllaayyiinngg OOuuttppuutt TThhiiss tteessttbbeenncchh uusseess aann eevveenntt ccoonnttrrooll ssttaatteemmeenntt ffoorr ssyynncchhrroonniizzeedd oobbsseerrvvaattiioonn ooff MMUUTT oouuttppuuttss oorr iinntteerrnnaall ssiiggnnaallss.. 11nnss aafftteerr tthhee ppoossiittiivvee eeddggee ooff tthhee cclloocckk,, wwhheenn tthhee cciirrccuuiitt oouuttppuutt iiss ssuuppppoosseedd ttoo hhaavvee iittss nneeww ssttaabbllee vvaalluuee,, tthhee zz oouuttppuutt iiss ddiissppllaayyeedd uussiinngg tthhee $$ddiissppllaayybb ttaasskk.. TThhiiss tteessttbbeenncchh iiss aallssoo uussaabbllee ffoorr tthhee ppoosstt--ssyynntthheessiiss ssiimmuullaattiioonn ooff mmoooorree__ddeetteeccttoorr
SSyynncchhrroonniizzeedd DDiissppllaayy ooff
RReessuullttss TThhiiss tteessttbbeenncchh iiss ddeevveellooppeedd ffoorr oobbsseerrvviinngg ssttaatteess ooff 36 mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; mmoooorree__ddeetteeccttoorr mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, rreesseett,, cclloocckk,, zz ((;; ........................................................ ........................................................ eennddmmoodduullee TTeessttbbeenncchh DDiissppllaayyss DDeessiiggnn VVaarriiaabblleess wwhheenn tthheeyy cchhaannggee
SSyynncchhrroonniizzeedd DDiissppllaayy ooff
RReessuullttss 37 DDiissppllaayy ooccccuurrss wwhheenn aann eevveenntt ooccccuurrss oonn oonnee ooff tthhee vvaarriiaabblleess ooff tthhee ttaasskk’’ss ........................................................ ........................................................ iinniittiiaall ##2244 rreesseett==00;; aarrgguummeennttss.. iinniittiiaall rreeppeeaatt((1199(( ##55 cclloocckk==~~cclloocckk;; iinniittiiaall ffoorreevveerr @@((ppoosseeddggee cclloocckk(( ##33 xx==$$rraannddoomm;; iinniittiiaall $$mmoonniittoorr((""NNeeww ssttaattee iiss %%bb aanndd ooccccuurrss aatt %%tt"",, MMUUTT..ccuurrrreenntt,, $$ttiimmee((;; aallwwaayyss @@((zz(( $$ddiissppllaayy((""OOuuttppuutt cchhaannggeess aatt %%tt ttoo %%bb"",, $$ttiimmee,, zz((;; eennddmmoodduullee UUsseess $$mmoonniittoorr ttoo ddiissppllaayy ccuurrrreenntt rreeggiisstteerr UUsseess $$ddiissppllaayy ttoo ddiissppllaayy TTeessttbbeenncchh DDiissppllaayyss DDeessiiggnn tthhee VVaarriiaabblleess oouuttppuutt wwhheenn tthheeyy cchhaannggee ((CCoonnttiinnuueedd)) ccuurrrreenntt ssttaattee aanndd zz oouuttppuutt aarree ddiissppllaayyeedd wwhheenn tthheeyy rreecceeiivvee nneeww vvaalluueess.. SSttaarrttss $$mmoonniittoorr ttaasskk iinn tthhee bbaacckkggrroouunndd EEvveenntt BBaasseedd SSeennssiittiivvee ttoo zz FFllooww BBaasseedd HHiieerraarrcchhiiaall NNaammiinngg IInn bbiinnaarryy ffoorrmmaatt WWiitthh tthhee ttiimmee uunniitt
SSyynncchhrroonniizzeedd DDiissppllaayy ooff
RReessuullttss 38 NNeeww ssttaattee iiss xx aanndd ooccccuurrss aatt 00 OOuuttppuutt cchhaannggeess aatt 5500 ttoo 00 NNeeww ssttaattee iiss 00 aanndd ooccccuurrss aatt 5500 NNeeww ssttaattee iiss 11 aanndd ooccccuurrss aatt 225500 NNeeww ssttaattee iiss 22 aanndd ooccccuurrss aatt 885500 OOuuttppuutt cchhaannggeess aatt 995500 ttoo 11 NNeeww ssttaattee iiss 33 aanndd ooccccuurrss aatt 995500 TTeesstt RReessuullttss ooff TTeessttbbeenncchh ooff FFiigg.. 66..1144
39 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss An Interactive Testbench BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn
40 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh mmoodduullee mmoooorree__ddeetteeccttoorr ((iinnppuutt xx,, ssttaarrtt,, rrsstt,, ccllkk,, oouuttppuutt zz ((;; ppaarraammeetteerr aa==00,, bb==11,, cc==22,, dd==33,, ee==44;; rreegg [[22::00]] ccuurrrreenntt;; aallwwaayyss @@(( ppoosseeddggee ccllkk (( ........................................................ ........................................................ ........................................................ eennddmmoodduullee MMoooorree SSeeqquueennccee DDeetteeccttoorr DDeetteeccttiinngg 1111011 AA 1111011 MMoooorree ddeetteeccttoorr WWiitthh 55 ssttaatteess
41 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh iiff (( rrsstt (( ccuurrrreenntt <<== aa;; eellssee iiff (( ~~ssttaarrtt (( ccuurrrreenntt <<== aa;; eellssee ccaassee (( ccuurrrreenntt (( aa :: ccuurrrreenntt <<== xx ?? bb :: aa ;; bb :: ccuurrrreenntt <<== xx ?? cc :: aa ;; cc :: ccuurrrreenntt <<== xx ?? cc :: dd ;; dd :: ccuurrrreenntt <<== xx ?? ee :: aa ;; ee :: ccuurrrreenntt <<== xx ?? cc :: aa ;; ddeeffaauulltt:: ccuurrrreenntt <<== aa;; eennddccaassee aassssiiggnn zz == ((ccuurrrreenntt====ee((;; OOuuttppuutt bbeeccoommeess 11 iinn ssttaattee ee eennddmmoodduullee MMoooorree SSeeqquueennccee DDeetteeccttoorr DDeetteeccttiinngg 1111011 ((CCoonnttiinnuueedd)) IIff ssttaarrtt bbeeccoommeess 0 tthhee mmaacchhiinnee rreesseettss ttoo iinniittiiaall ssttaattee aa
42 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, ssttaarrtt,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, ssttaarrtt,, rreesseett,, cclloocckk,, zz ((;; ........................................................ ........................................................ ........................................................ eennddmmoodduullee AAnn IInntteerraaccttiivvee TTeessttbbeenncchh
43 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh iinniittiiaall bbeeggiinn ##2244 rreesseett==11''bb00;; ssttaarrtt==11''bb11;; wwaaiitt((zz====11''bb11((;; ##1111 ssttaarrtt==11''bb00;; ##1133 ssttaarrtt==11''bb11;; rreeppeeaatt((33(( bbeeggiinn ##1111 ssttaarrtt==11''bb00;; ##1133 ssttaarrtt==11''bb11;; wwaaiitt((zz====11''bb11((;; eenndd ##5500 $$ssttoopp;; eenndd AAnn IInntteerraaccttiivvee TTeessttbbeenncchh ((CCoonnttiinnuueedd)) TToo ggeett tthhee mmaacchhiinnee ssttaarrtteedd WWaaiittss ffoorr zz ttoo bbeeccoommee 11,, AAfftteerr iitt rreessttaarrttss tthhee mmaacchhiinnee RReeppeeaattss tthhee pprroocceessss ooff ssttaarrttiinngg tthhee mmaacchhiinnee aanndd wwaaiittiinngg ffoorr zz ttoo bbeeccoommee 11 33 mmoorree ttiimmeess AAfftteerr 550 nnss ssiimmuullaattiioonn iiss ssttooppppeedd
44 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh ........................................................ ........................................................ ........................................................ aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss ##77 xx==$$rraannddoomm;; eennddmmoodduullee AAnn IInntteerraaccttiivvee TTeessttbbeenncchh ((CCoonnttiinnuueedd)) aallwwaayyss bblloocckkss ttoo ggeenneerraattee cclloocckk aanndd xx iinnppuutt
45 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh WWaavveeffoorrmm RReessuulltteedd bbyy tthhee IInntteerraaccttiivvee TTeessttbbeenncchh
46 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, ssttaarrtt,, rreesseett==11,, cclloocckk==00;; wwiirree zz;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, ssttaarrtt,, rreesseett,, cclloocckk,, zz ((;; iinniittiiaall bbeeggiinn ##2244 rreesseett==11''bb00;; ssttaarrtt==11''bb11;; eenndd ........................................................ eennddmmoodduullee IInntteerraaccttiivvee TTeessttbbeenncchh UUssiinngg DDiissppllaayy TTaasskkss
47 AAnn IInntteerraaccttiivvee
TTeessttbbeenncchh WWhheenn ccuurrrreenntt bbeeccoommeess ee zz iiss ddiissppllaayyeedd ........................................................ aallwwaayyss bbeeggiinn :: OOuuttppuutt__DDiissppllaayy HHiieerraarrcchhiiccaall NNaammiinngg DDiissppllaayyss aass ssoooonn aass pprrooggrraamm DDiissppllaayyss tthhee oolldd vvaalluuee ooff zz ffllooww rreeaacchheess iitt wwaaiitt((MMUUTT..ccuurrrreenntt ==== MMUUTT..ee((;; $$ddiissppllaayy ((""$$ddiissppllaayy ttaasskk sshhoowwss:: TThhee oouuttppuutt iiss %%bb"",, zz((;; TToo oobbsseerrvvee oouuttppuutt wwiitthhiinn $$ssttrroobbee ((""$$ssttrroobbee ttaasskk sshhoowwss:: TThhee oouuttppuutt iiss %%bb"",, zz((;; ##22 $$ssttoopp;; aa ssttaattee AA ssiimmuullaattiioonn cclloocckk ccyyccllee WWaaiittss ffoorr aallll ssiimmuullaattiioonn eevveenntt ttoo ccoommpplleettee bbeeffoorree ddiissppllaayyiinngg eenndd aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss ##77 xx==$$rraannddoomm;; aafftteerr ee iiss ddeetteecctteedd,, zz bbeeccoommeess 11 aanndd iiss ddiissppllaayyeedd eennddmmoodduullee IInntteerraaccttiivvee TTeessttbbeenncchh UUssiinngg DDiissppllaayy TTaasskkss ((CCoonnttiinnuueedd))
48 RRaannddoomm TTiimmee
IInntteerrvvaallss TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn Random Time Intervals
49 RRaannddoomm TTiimmee
IInntteerrvvaallss mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx,, ssttaarrtt,, rreesseett,, cclloocckk;; wwiirree zz;; rreegg [[33::00]] tt;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, ssttaarrtt,, rreesseett,, cclloocckk,, zz ((;; ........................................................ ........................................................ eennddmmoodduullee TTeessttbbeenncchh uussiinngg RRaannddoomm TTiimmee IInntteerrvvaallss TThhiiss tteessttbbeenncchh uusseess rraannddoomm wwaaiitt ttiimmeess ffoorr aassssiiggnniinngg vvaalluueess ttoo xx
WWaaiittss ffoorr 1133
ccoommpplleettee cclloocckk ppuullsseess bbeeffoorree iitt ddee--aasssseerrttss tthhee ssttaarrtt aanndd ffiinniisshheess tthhee ssiimmuullaattiioonn 50 iinniittiiaall bbeeggiinn::rruunnnniinngg NNoonnbblloocckkiinngg aassssiiggnnmmeennttss ccaauussee iinnttrraa--aassssiiggnnmmeenntt ddeellaayy vvaalluueess ttoo bbee rreeggaarrddeedd aass aabbssoolluuttee ttiimmiinngg vvaalluueess cclloocckk <<== 11''bb00;; xx <<== 11''bb00;; rreesseett <<== 11''bb11;; rreesseett <<== ##77 11''bb00;; ssttaarrtt <<== 11''bb00;; ssttaarrtt <<== ##1177 11''bb11;; rreeppeeaatt ((1133(( bbeeggiinn @@(( ppoosseeddggee cclloocckk ((;; @@(( nneeggeeddggee cclloocckk ((;; Waits until tthhee pprrooppaaggaattiioonn ooff aallll ssiiggnnaallss bbee ccoommpplleetteedd eenndd ssttaarrtt==11''bb00;; ##55;; $$ffiinniisshh;; eenndd RRaannddoomm TTiimmee IInntteerrvvaallss TTeessttbbeenncchh uussiinngg RRaannddoomm TTiimmee IInntteerrvvaallss ((CCoonnttiinnuueedd))
51 RRaannddoomm TTiimmee
IInntteerrvvaallss ........................................................ ........................................................ ........................................................ TThhiiss bblloocckk ggeenneerraatteess ddaattaa oonn xx aass lloonngg aass tthhee $$ffiinniisshh ssttaatteemmeenntt iiss nnoott rreeaacchheedd aallwwaayyss ##55 cclloocckk==~~cclloocckk;; aallwwaayyss bbeeggiinn tt == $$rraannddoomm;; ##((tt(( xx==$$rraannddoomm;; eenndd eennddmmoodduullee GGeenneerraatteess RRaannddoomm ddaattaa oonn tt UUsseess tt ttoo ddeellaayy aassssiiggnnmmeennttss ooff rraannddoomm vvaalluueess ttoo xx TTeessttbbeenncchh uussiinngg RRaannddoomm TTiimmee IInntteerrvvaallss ((CCoonnttiinnuueedd))
52 BBuuffffeerreedd DDaattaa
AApppplliiccaattiioonn TTeessttbbeenncchh TTeecchhnniiqquueess TTeesstt DDaattaa SSiimmuullaattiioonn CCoonnttrrooll LLiimmiittiinngg DDaattaa SSeettss AAppppllyyiinngg SSyynncchhrroonniizzeedd DDaattaa SSyynncchhrroonniizzeedd DDiissppllaayy ooff RReessuullttss AAnn IInntteerraaccttiivvee TTeessttbbeenncchh RRaannddoomm TTiimmee IInntteerrvvaallss Buffered BBuuffffeerreedd Data Application DDaattaa AApppplliiccaattiioonn
53 BBuuffffeerreedd DDaattaa
AApppplliiccaattiioonn mmoodduullee tteesstt__mmoooorree__ddeetteeccttoorr;; rreegg xx==00,, rrsstt,, ssttaarrtt,, ccllkk==00;; wwiirree zz;; rreegg [[1188::00]] bbuuffffeerr;; mmoooorree__ddeetteeccttoorr MMUUTT (( xx,, ssttaarrtt,, rrsstt,, ccllkk,, zz ((;; ........................................................ ........................................................ eennddmmoodduullee TTeessttbbeenncchh AAppppllyyiinngg BBuuffffeerreedd DDaattaa TThhiiss tteessttbbeenncchh uusseess aa bbuuffffeerr ttoo hhoolldd ddaattaa ttoo bbee aapppplliieedd ttoo tthhee MMUUTT ddaattaa iinnppuutt
AAss ddaattaa iiss
sshhiifftteedd,, bbuuffffeerr iiss rroottaatteedd iinn oorrddeerr ffoorr tthhee aapppplliieedd bbuuffffeerreedd ddaattaa ttoo 54 BBuuffffeerreedd DDaattaa AApppplliiccaattiioonn 1199--bbiitt bbuuffffeerr iiss iinniittiiaalliizzeedd wwiitthh tteesstt ddaattaa ........................................................ iinniittiiaall bbuuffffeerr == 1199''bb00000011110011110011111111000011000011;; iinniittiiaall bbeeggiinn rrsstt==11''bb11;; ssttaarrtt==11''bb00;; ##2299 rrsstt==11''bb00;; ##2299 ssttaarrtt==11''bb11;; ##550000 $$ssttoopp;; SSttaarrtt aanndd ssttoopp ccoonnttrrooll ooff tthhee EEaacchh bbiitt ooff tthhee bbuuffffeerr iissss ttssaahhtteieiff ttmmeeddaa ccoohhuuiittnnee oonnttoo tthhee xx iinnppuutt ooff MMUUTT 11nnss aafftteerr tthhee ppoossiittiivvee eeddggee ooff cclloocckk eenndd aallwwaayyss @@((ppoosseeddggee ccllkk(( ##11 {{xx,, bbuuffffeerr}} == {{bbuuffffeerr,,xx}};; aallwwaayyss ##55 ccllkk == ~~ccllkk;; eennddmmoodduullee bbee aabbllee ttoo rreeppeeaatt TTeessttbbeenncchh AAppppllyyiinngg BBuuffffeerreedd DDaattaa ((CCoonnttiinnuueedd)) WWee aarree ssuurree aa ccoorrrreecctt sseeqquueennccee iiss aapppplliieedd ttoo oouurr MMUUTT aanndd ccaann mmoorree eeaassiillyy cchheecckk ffoorr eexxppeecctteedd rreessuullttss..
55 DDeessiiggnn VVeerriiffiiccaattiioonn
FFoorrmmaall vveerriiffiiccaattiioonn:: AA wwaayy ooff aauuttoommaattiinngg ddeessiiggnn vveerriiffiiccaattiioonn bbyy eelliimmiinnaattiinngg tteessttbbeenncchheess aanndd pprroobblleemmss aassssoocciiaatteedd wwiitthh tthheeiirr ddaattaa ggeenneerraattiioonn aanndd rreessppoonnssee oobbsseerrvvaattiioonn.. TToooollss ddoo nnoott ppeerrffoorrmm ssiimmuullaattiioonn,, bbuutt ccoommee uupp wwiitthh aa YYeess//NNoo aannsswweerr ffoorr eevveerryy pprrooppeerrttyy tthhee ddeessiiggnn iiss bbeeiinngg cchheecckkeedd ffoorr.. EElliimmiinnaattiinngg ddaattaa ggeenneerraattiioonn aanndd rreessppoonnssee oobbsseerrvvaattiioonn AAsssseerrttiioonn vveerriiffiiccaattiioonn:: RReedduuccee oorr eelliimmiinnaattee eeffffoorrttss nneeeeddeedd ffoorr aannaallyyzziinngg oouuttppuutt rreessppoonnsseess WWhhiillee tthhee ddeessiiggnn iiss bbeeiinngg ssiimmuullaatteedd wwiitthh iittss tteessttbbeenncchh ddaattaa,, aasssseerrttiioonn mmoonniittoorrss ccoonnttiinnuuoouussllyy cchheecckk ffoorr ccoorrrreecctt ddeessiiggnn bbeehhaavviioorr.. IInn ccoonnddiittiioonnss tthhaatt tthhee ddeessiiggnn iiss mmiissbbeehhaavviinngg,, tthhee mmoonniittoorr iiss ssaaiidd ttoo ffiirree ttoo aalleerrtt tthhee ddeessiiggnneerr ooff tthhee pprroobblleemm..
56 AAsssseerrttiioonn VVeerriiffiiccaattiioonn
AAsssseerrttiioonn VVeerriiffiiccaattiioonn AAsssseerrttiioonn VVeerriiffiiccaattiioonn BBeenneeffiittss OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy UUssiinngg AAsssseerrttiioonn MMoonniittoorrss AAsssseerrttiioonn TTeemmppllaatteess
57 AAsssseerrttiioonn VVeerriiffiiccaattiioonn
UUnnlliikkee ssiimmuullaattiioonn,, hheerree iinn-ccooddee mmoonniittoorrss iissssuuee aa mmeessssaaggee iiff ssoommeetthhiinngg hhaappppeennss tthhaatt iiss nnoott eexxppeecctteedd.. IInn VVeerriilloogg,, mmoonniittoorrss aarree mmoodduulleess.. TThhee pprreesseenntt sseett ooff aasssseerrttiioonn mmoonniittoorrss aarree aavvaaiillaabbllee iinn aa lliibbrraarryy rreeffeerrrreedd ttoo aass OOVVLL ((OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy)) FFoorr uussiinngg aasssseerrttiioonnss ddeessiiggnneerr ccoommppiilleess OOVVLL aanndd hhiiss oorr hheerr oowwnn aasssseerrttiioonn lliibbrraarryy iinnttoo aa ssiimmuullaattiioonn lliibbrraarryy.. IIff aa ssiiggnnaall ddooeess nnoott hhaavvee aa vvaalluuee eexxppeecctteedd bbyy aa mmoonniittoorr,, tthhee aasssseerrttiioonn mmoonniittoorr ddiissppllaayyss aa mmeessssaaggee aanndd tthhee ttiimmee tthhaatt tthhee vviioollaattiioonn ooff tthhee pprrooppeerrttyy hhaass ooccccuurrrreedd..
58 AAsssseerrttiioonn VVeerriiffiiccaattiioonn
BBeenneeffiittss AAsssseerrttiioonn VVeerriiffiiccaattiioonn AAsssseerrttiioonn VVeerriiffiiccaattiioonn BBeenneeffiittss OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy UUssiinngg AAsssseerrttiioonn MMoonniittoorrss AAsssseerrttiioonn TTeemmppllaatteess Assertion Verification Benefits
59 AAsssseerrttiioonn VVeerriiffiiccaattiioonn
BBeenneeffiittss WWaayyss iinn wwhhiicchh aasssseerrttiioonn mmoonniittoorrss aarree hheellppffuull:: DDeessiiggnneerr DDiisscciipplliinnee:: WWiitthh ppllaacciinngg aann aasssseerrttiioonn iinn aa ddeessiiggnn,, aa ddeessiiggnneerr iiss ddiisscciipplliinniinngg hhiimm//hheerr-sseellff ttoo llooookk iinnttoo tthhee ddeessiiggnn mmoorree ccaarreeffuullllyy aanndd eexxttrraacctt pprrooppeerrttiieess.. OObbsseerrvvaabbiilliittyy:: AAsssseerrttiioonnss aadddd mmoonniittoorriinngg ppooiinnttss ttoo aa ddeessiiggnn tthhaatt mmaakkee iitt mmoorree oobbsseerrvvaabbllee.. FFoorrmmaall VVeerriiffiiccaattiioonn RReeaaddyy:: HHaavviinngg iinnsseerrtteedd aasssseerrttiioonn mmoonniittoorrss ttoo aa ddeessiiggnn,, rreeaaddiieess iitt ffoorr vveerriiffiiccaattiioonn bbyy aa ffoorrmmaall vveerriiffiiccaattiioonn ttooooll.. EExxeeccuuttaabbllee CCoommmmeennttss:: AAsssseerrttiioonn mmoonniittoorrss ccaann bbee rreeggaarrddeedd aass ccoommmmeennttss tthhaatt eexxppllaaiinn ssoommee ffeeaattuurreess oorr bbeehhaavviioorr ooff aa ddeessiiggnn.. SSeellff CCoonnttaaiinneedd DDeessiiggnnss:: AA ddeessiiggnn wwiitthh aasssseerrttiioonn mmoonniittoorrss hhaass tthhee ddeessiiggnn ddeessccrriippttiioonn aanndd iittss tteesstt pprroocceedduurree aallll iinn oonnee VVeerriilloogg mmoodduullee..
60 OOppeenn VVeerriiffiiccaattiioonn
LLiibbrraarryy AAsssseerrttiioonn VVeerriiffiiccaattiioonn AAsssseerrttiioonn VVeerriiffiiccaattiioonn BBeenneeffiittss Open Verification Library OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy UUssiinngg AAsssseerrttiioonn MMoonniittoorrss AAsssseerrttiioonn TTeemmppllaatteess
61 OOppeenn VVeerriiffiiccaattiioonn
LLiibbrraarryy AAsssseerrttiioonnss
AAnn AAsssseerrttiioonn iiss
ppllaacceedd iinn ccooddee lliikkee aa mmoodduullee 62 OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy AAsssseerrtt__nnaammee ##((ssttaattiicc--ppaarraammeetteerrss)) iinnssttaannccee--nnaammee AAsssseerrttiioonn MMoodduullee IInnssttaannttiiaattiioonn iinnssttaannttiiaattiioonn.. ((ddyynnaammiicc--aarrgguummeennttss));; AAsssseerrttiioonn mmoodduullee nnaammee ccoommeess ffiirrsstt.. FFoolllloowweedd bbyy ssttaattiicc__ppaarraammeetteerrss lliikkee vveeccttoorr ssiizzee aanndd ooppttiioonnss RReeffeerreennccee aanndd mmoonniittoorr ssiiggnnaallss aanndd ootthheerr ddyynnaammiicc aarrgguummeennttss AAnnyy UUnniiqquuee nnaammee iiss aalllloowweedd
63 UUssiinngg AAsssseerrttiioonn
MMoonniittoorrss AAsssseerrttiioonn VVeerriiffiiccaattiioonn AAsssseerrttiioonn VVeerriiffiiccaattiioonn BBeenneeffiittss OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy UUssiinngg AAsssseerrttiioonn MMoonniittoorrss AAsssseerrttiioonn TTeemmppllaatteess Using Assertion Monitors
64 UUssiinngg AAsssseerrttiioonn
MMoonniittoorrss AAsssseerrttiioonn MMoonniittoorrss aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee aasssseerrtt__nneexxtt
65 aasssseerrtt__aallwwaayyss AAsssseerrttiioonn
MMoonniittoorrss assert_always aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee aasssseerrtt__nneexxtt
66 aasssseerrtt__aallwwaayyss aasssseerrtt__aallwwaayyss
##(( sseevveerriittyy__lleevveell,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, tteesstt__eexxpprr )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__aallwwaayyss AAsssseerrttiioonn MMoonniittoorr CCoonnttiinnuuoouussllyy cchheecckkss iittss tteesstt__eexxpprr ttoo mmaakkee ssuurree iitt iiss aallwwaayyss ttrruuee oonn tthhee eeddggee ooff tthhee ssppeecciiffiieedd cclloocckk ((ccllkk)) IIff tthhee tteesstt eexxpprreessssiioonn ffaaiillss,, tthhee aasssseerrttiioonn ffiirreess aanndd iittss ccoorrrreessppoonnddiinngg mmeessssaaggee ((mmssgg)) iiss ddiissppllaayyeedd
67 mmoodduullee BBCCDD__CCoouunntteerr
((iinnppuutt rrsstt,, ccllkk,, oouuttppuutt rreegg [[33::00]] ccnntt));; aallwwaayyss @@((ppoosseeddggee ccllkk)) bbeeggiinn iiff ((rrsstt |||| ccnntt >>== 1100)) ccnntt == 00;; eellssee ccnntt == ccnntt ++ 11;; eenndd aasssseerrtt__aallwwaayyss ##((11,, 00,, ""EErrrr:: NNoonn BBCCDD CCoouunntt““,, 00)) AAAA11 ((ccllkk,, 11''bb11,, ((ccnntt >>== 00)) &&&& ((ccnntt <<== 99))));; eennddmmoodduullee aasssseerrtt__aallwwaayyss BBCCDD wwiitthh aasssseerrtt__aallwwaayyss TThhiiss ccoouunntteerr ccoouunnttss bbeettwweeeenn 00 aanndd 99 TThhee aasssseerrttiioonn mmoonniittoorr hheerree uusseess sseevveerriittyy__lleevveell 11 TThhee tteesstt eexxpprreessssiioonn:: TThhee mmoonniittoorr cchheecckkss tthhaatt oonn eevveerryy rriissiinngg eeddggee ooff ccllkk,, ccnntt mmuusstt bbee bbeettwweeeenn 00 aanndd 99 IInnddiiccaatteess tthhaatt tthhee aasssseerrttiioonn iiss ttoo bbee mmoonniittoorreedd aatt aallll ttiimmeess
68 aasssseerrtt__aallwwaayyss mmoodduullee
BBCCDD__CCoouunntteerr__TTeesstteerr;; rreegg rr,, cc;; wwiirree [[33::00]] ccoouunntt;; BBCCDD__CCoouunntteerr UUUUTT ((rr,, cc,, ccoouunntt));; iinniittiiaall bbeeggiinn rr == 00;; cc == 00;; eenndd iinniittiiaall rreeppeeaatt ((220000)) ##1177 cc== ~~cc;; iinniittiiaall rreeppeeaatt ((0033)) ##880077 rr== ~~rr;; eennddmmoodduullee BBCCDD CCoouunntteerr TTeessttbbeenncchh EEvveenn tthhoouugghh cchheecckkiinngg ssiimmuullaattiioonn rreessuullttss iiss ddoonnee iinn aa sseemmii-aauuttoommaattiicc ffaasshhiioonn,, tteesstt ddaattaa ggeenneerraattiioonn iiss ssttiillll ddoonnee mmaannuuaallllyy bbyy tthhee ddeessiiggnneerr
69 aasssseerrtt__cchhaannggee AAsssseerrttiioonn
MMoonniittoorrss assert_change aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee aasssseerrtt__nneexxtt
70 aasssseerrtt__cchhaannggee aasssseerrtt__cchhaannggee
VVeerriiffiieess tthhaatt wwiitthhiinn aa ggiivveenn nnuummbbeerr ooff cclloocckkss aafftteerr tthhee ssttaarrtt eevveenntt,, tthhee tteesstt eexxpprreessssiioonn cchhaannggeess.. ##(( sseevveerriittyy__lleevveell,, wwiiddtthh,, nnuumm__cckkss,, aaccttiioonn__oonn__nneeww__ssttaarrtt,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, ssttaarrtt__eevveenntt,, tteesstt__eexxpprr )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__cchhaannggee AAsssseerrttiioonn MMoonniittoorr
71 mmoodduullee WWaallkkiinngg__OOnnee
((iinnppuutt rrsstt,, ccllkk,, oouuttppuutt rreegg [[77::00]] wwoo));; aallwwaayyss @@((nneeggeeddggee ccllkk)) bbeeggiinn iiff ((rrsstt)) wwoo <<== 88''bb1100000000000000;; eellssee wwoo <<== {{wwoo[[00]],, wwoo[[77::11]]}};; eenndd aasssseerrtt__cchhaannggee ##((11,, 11,, 77,, 00,, 00,, ""EErrrr:: BBiitt 00 iiss nnoott cchhaannggiinngg““,, 00)) AACC11 ((~~ccllkk,, ~~rrsstt,, ((rrsstt====00)),, wwoo[[00]]));; aasssseerrtt__oonnee__hhoott ##((11,, 88,, 00,, ""EErrrr:: MMuullttiippllee aaccttiivvee bbiittss““,, 00)) AAOOHH ((~~ccllkk,, ~~rrsstt,, wwoo));; eennddmmoodduullee aasssseerrtt__cchhaannggee WWaallkkiinngg OOnnee CCiirrccuuiitt wwiitthh AAsssseerrttiioonnss AA sshhiifftt rreeggiisstteerr tthhaatt wwaallkkss aa 11 wwiitthh eevveerryy cclloocckk.. AA 11 iiss llooaaddeedd iinnttoo tthhee lleefftt-mmoosstt bbiitt ooff wwoo wwiitthh tthhee rrsstt ssiiggnnaall
72 ........................................................ ........................................................
aallwwaayyss @@((nneeggeeddggee ccllkk)) bbeeggiinn CChheecckk tthhaatt ffrroomm tthhee ttiimmee tthhaatt ((rrsstt ==== 00)) aanndd wwhhiillee ((~~rrsstt)),, iitt ttaakkeess aatt mmoosstt 77 nneeggaattiivvee cclloocckk eeddggeess ffoorr wwoo[[00]] ttoo cchhaannggee.. iiff ((rrsstt)) wwoo <<== 88''bb1100000000000000;; eellssee wwoo <<== {{wwoo[[00]],, wwoo[[77::11]]}};; eenndd 11 ffoorr tthhee lleennggtthh ooff tthhee tteesstt eexxpprreessssiioonn aasssseerrtt__cchhaannggee ##((11,, 11,, 77,, 00,, 00,, ""EErrrr:: BBiitt 00 iiss nnoott cchhaannggiinngg““,, 00)) AACC11 ((~~ccllkk,, ~~rrsstt,, ((rrsstt====00)),, wwoo[[00]]));; ........................................................ WWaallkkiinngg OOnnee CCiirrccuuiitt wwiitthh AAsssseerrttiioonnss 77 ffoorr tthhee nnuummbbeerr ooff cclloocckkss tthhaatt cchhaannggee iiss ttoo ooccccuurr FFaalllliinngg eeddggee ooff ccllkk TTeesstt EExxpprreessssiioonn
73 aasssseerrtt__cchhaannggee mmoodduullee
WWaallkkiinngg__OOnnee__TTeesstteerr (());; rreegg rrsstt==00,, ccllkk==00;; wwiirree [[77::00]] wwaallkkiinngg;; WWaallkkiinngg__OOnnee MMUUTT ((rrsstt,, ccllkk,, wwaallkkiinngg));; iinniittiiaall rreeppeeaatt ((222233)) ##77 ccllkk== ~~ccllkk;; iinniittiiaall rreeppeeaatt ((1155)) ##110099 rrsstt== ~~rrsstt;; eennddmmoodduullee WWaallkkiinngg__OOnnee TTeessttbbeenncchh IItt iiss tthhee rreessppoonnssiibbiilliittyy ooff tthhee tteessttbbeenncchh ddeevveellooppeerr ttoo mmaakkee ssuurree eennoouugghh ddaattaa iiss aapppplliieedd ttoo ccaauussee ddeessiiggnn eerrrroorrss ttoo ttrriiggggeerr aasssseerrttiioonn mmoonniittoorrss..
74 aasssseerrtt__cchhaannggee WWhheenn
rrsstt bbeeccoommeess 11,, tthhee ffaalllliinngg eeddggee ooff tthhee cclloocckk ppuuttss aa 11 iinnttoo wwoo[[77]] SSiiggnnaallss ccoonnnneecctteedd ttoo wwoo[[77]] ttoo wwoo[[00]] WWaallkkiinngg-OOnnee TTeesstt RReessuullttss WWhheenn rrsstt bbeeccoommeess 00,, tthhiiss 11 ssttaarrttss wwaallkkiinngg,, iitt ttaakkeess 77 cclloocckk eeddggeess ffoorr tthhiiss 11 ttoo wwaallkk ttoo bbiitt 00 ooff wwoo..
75 aasssseerrtt__oonnee__hhoott AAsssseerrttiioonn
MMoonniittoorrss aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee assert_one_hot aasssseerrtt__nneexxtt
76 aasssseerrtt__oonnee__hhoott aasssseerrtt__oonnee__hhoott
##(( sseevveerriittyy__lleevveell,, wwiiddtthh,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, tteesstt__eexxpprr )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__oonnee__hhoott AAsssseerrttiioonn MMoonniittoorr CChheecckkss tthhaatt wwhhiillee tthhee mmoonniittoorr iiss aaccttiivvee,, oonnllyy oonnee bbiitt ooff iittss nn-bbiitt tteesstt eexxpprreessssiioonn iiss 11..
77 mmoodduullee WWaallkkiinngg__OOnnee
((iinnppuutt rrsstt,, ccllkk,, oouuttppuutt rreegg [[77::00]] wwoo));; aallwwaayyss @@((nneeggeeddggee ccllkk)) bbeeggiinn iiff ((rrsstt)) wwoo <<== 88''bb1100000000000000;; eellssee wwoo <<== {{wwoo[[00]],, wwoo[[77::11]]}};; eenndd aasssseerrtt__cchhaannggee ##((11,, 11,, 77,, 00,, 00,, ""EErrrr:: BBiitt 00 iiss nnoott cchhaannggiinngg““,, 00)) AACC11 ((~~ccllkk,, ~~rrsstt,, ((rrsstt====00)),, wwoo[[00]]));; aasssseerrtt__oonnee__hhoott ##((11,, 88,, 00,, ""EErrrr:: MMuullttiippllee aaccttiivvee bbiittss““,, 00)) AAOOHH ((~~ccllkk,, ~~rrsstt,, wwoo));; eennddmmoodduullee aasssseerrtt__oonnee__hhoott WWaallkkiinngg OOnnee CCiirrccuuiitt wwiitthh AAsssseerrttiioonnss
78 aasssseerrtt__oonnee__hhoott ........................................................
........................................................ aallwwaayyss @@((nneeggeeddggee ccllkk)) bbeeggiinn iiff ((rrsstt)) wwoo <<== 88''bb1100000000000000;; eellssee wwoo <<== {{wwoo[[00]],, wwoo[[77::11]]}};; eenndd TTeesstt eexxpprreessssiioonn wwiiddtthh ........................................................ aasssseerrtt__oonnee__hhoott ##((11,, 88,, 00,, ""EErrrr:: MMuullttiippllee aaccttiivvee bbiittss““,, 00)) AAOOHH ((~~ccllkk,, ~~rrsstt,, wwoo));; WWaallkkiinngg OOnnee CCiirrccuuiitt wwiitthh AAsssseerrttiioonnss TTeesstt eexxpprreessssiioonn MMaakkeess tthhee cchheecckkiinngg aaccttiivvee oonnllyy wwhheenn rrsstt iiss 00
79 aasssseerrtt__oonnee__hhoott mmoodduullee
ggrraayy__ccoouunntteerr ((iinnppuutt [[33::00]] dd__iinn,, iinnppuutt ccllkk,, rrsstt,, lldd,, oouuttppuutt rreegg [[33::00]] qq));; rreegg [[33::00]] mmeemm[[00::1155]];; rreegg [[33::00]] iimm__qq;; iinniittiiaall $$rreeaaddmmeemmbb((""mmeemm..ddaatt"",, mmeemm));; aallwwaayyss @@(( dd__iinn oorr lldd oorr qq )) bbeeggiinn:: ccoommbbiinnaattiioonnaall iiff(( lldd )) iimm__qq == dd__iinn;; eellssee iimm__qq == mmeemm[[qq]];; eenndd ........................................................ GGrraayy CCooddee CCoouunntteerr TThhee mmeemm..ddaatt ffiillee tthhaatt ccoonnttaaiinnss ccoonnsseeccuuttiivvee GGrraayy ccooddee nnuummbbeerrss iiss rreeaadd iinnttoo mmeemm.. WWiitthh eeaacchh cclloocckk,, tthhee nneexxtt GGrraayy ccoouunntt iiss llooookkeedd uupp ffrroomm mmeemm..
80 aasssseerrtt__oonnee__hhoott ........................................................
aallwwaayyss @@(( ppoosseeddggee ccllkk )) bbeeggiinn:: rreeggiisstteerr iiff(( rrsstt )) qq <<== 44''bb00000000;; eellssee qq <<== iimm__qq;; eenndd rreegg [[33::00]] oolldd;; aallwwaayyss @@((ppoosseeddggee ccllkk)) oolldd <<== qq;; aasssseerrtt__oonnee__hhoott ##((11,, 44,, 00,, ""EErrrr:: NNoott GGrraayy““,, 00)) AAOOHH ((~~ccllkk,, ~~rrsstt,, ((oolldd ^^ qq))));; eennddmmoodduullee GGrraayy CCooddee CCoouunntteerr ((CCoonnttiinnuueedd)) IInn oorrddeerr ttoo cchheecckk ffoorr tthhee ccoorrrreecctt GGrraayy ccooddee sseeqquueenncciinngg,, ssoommee aauuxxiilliiaarryy llooggiicc hhaavvee bbeeeenn uusseedd ttoo pprreeppaarree tthhee tteesstt eexxpprreessssiioonn CCoonnsseeccuuttiivvee GGrraayy ccooddee nnuummbbeerrss aarree oonnllyy ddiiffffeerreenntt iinn oonnee bbiitt,, tthheeiirr XXOORR mmuusstt bbee oonnee-hhoott..
81 aasssseerrtt__ccyyccllee__sseeqquueennccee AAsssseerrttiioonn
MMoonniittoorrss aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee aasssseerrtt__nneexxtt assert_ cycle_sequence
CChheecckkss ffoorr aa
sseeqquueennccee ooff eevveennttss iinn aa ggiivveenn nnuummbbeerr ooff cclloocckkss.. iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, eevveenntt__sseeqquueennccee)) LLiikkee ootthheerr aasssseerrttiioonn mmoonniittoorrss,, tthhiiss mmoonniittoorr hhaass aann eennaabblliinngg iinnppuutt tthhaatt iiss uussuuaallllyy ddrriivveenn bbyy tthhee iinnaaccttiivvee lleevveell 82 aasssseerrtt__ccyyccllee__sseeqquueennccee aasssseerrtt__ccyyccllee__sseeqquueennccee ##(( sseevveerriittyy__lleevveell,, nnuumm__cckkss,, nneecceessssaarryy__ccoonnddiittiioonn,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__ccyyccllee__sseeqquueennccee AAsssseerrttiioonn MMoonniittoorr ooff aa cciirrccuuiitt’’ss rreesseett iinnppuutt..
83 aasssseerrtt__ccyyccllee__sseeqquueennccee
AA SSeeqquueenncciinngg SSttaattee MMaacchhiinnee AAfftteerr tthhee rreesseett ssttaattee,, tthhee mmaacchhiinnee sseeaarrcchheess ffoorr 111100 sseeqquueennccee.. WWhheenn 111100 iiss rreecceeiivveedd tthhee nneexxtt 22 cclloocckk ccyycclleess ttaakkee tthhee mmaacchhiinnee bbaacckk ttoo ssttaattee aa
84 aasssseerrtt__ccyyccllee__sseeqquueennccee mmoodduullee
SSeeqquueenncciinngg__MMaacchhiinnee ((iinnppuutt xx,, ssttaarrtt,, rrsstt,, ccllkk,, oouuttppuutt zz ));; ppaarraammeetteerr aa==00,, bb==11,, cc==22,, dd==33,, ee==44;; rreegg [[22::00]] ccuurrrreenntt;; ........................................................ ........................................................ VVeerriilloogg CCooddee ooff SSeeqquueenncciinngg__MMaacchhiinnee
85 aasssseerrtt__ccyyccllee__sseeqquueennccee ........................................................
aallwwaayyss @@(( ppoosseeddggee ccllkk )) iiff (( rrsstt )) ccuurrrreenntt <<== aa;; eellssee iiff (( ~~ssttaarrtt )) ccuurrrreenntt <<== aa;; eellssee ccaassee (( ccuurrrreenntt )) aa :: ccuurrrreenntt <<== xx ?? bb :: aa ;; bb :: ccuurrrreenntt <<== xx ?? cc :: aa ;; cc :: ccuurrrreenntt <<== xx ?? cc :: dd ;; dd :: ccuurrrreenntt <<== ee ;; ee :: ccuurrrreenntt <<== aa ;; ddeeffaauulltt:: ccuurrrreenntt <<== aa;; eennddccaassee VVeerriilloogg CCooddee ooff SSeeqquueenncciinngg__MMaacchhiinnee ((CCoonnttiinnuueedd))
TThhiiss mmoonniittoorr iiss
sseettuupp ttoo cchheecckk iiff tthhee mmaacchhiinnee rreeaacchheess ssttaatteess dd aanndd tthheenn ssttaattee ee,, tthheenn tthhee nneexxtt cclloocckk wwiillll mmoovvee tthhee 86 aasssseerrtt__ccyyccllee__sseeqquueennccee FFoorr cchheecckkiinngg tthhaatt tthhee llaasstt ssttaattee ooff tthhee sseeqquueennccee iiss rreeaacchheedd iiff tthhee pprreevviioouuss ssttaatteess aarree rreeaacchheedd iinn tthhee ssppeecciiffiieedd sseeqquueennccee.. ........................................................ aassssiiggnn zz == ((ccuurrrreenntt====ee));; aasssseerrtt__ccyyccllee__sseeqquueennccee NNuummbbeerr ooff ssttaatteess iinn sseeqquueennccee mmaacchhiinnee iinnttoo ssttaattee aa.. ##((11,, 33,, 00,, 00,, ""EErrrr:: SSttaattee sseeqquueennccee nnoott ffoolllloowweedd““,, 00)) AACCSS ((ccllkk,, ~~rrsstt,, {{((ccuurrrreenntt====dd)),, ((ccuurrrreenntt====ee)),, ((ccuurrrreenntt====aa))}}));; aasssseerrtt__nneexxtt ##((11,, 22,, 11,, 00,, 00,, ""EErrrr:: OOuuttppuutt ssttaattee TThhee sseeqquueennccee ooff ssttaatteess ttoo vveerriiffyy nnoott rreeaacchheedd““,, 00)) AANN11 ((ccllkk,, ~~rrsstt,, ((ccuurrrreenntt====cc &&&& xx====00)),, ((zz====11))));; eennddmmoodduullee VVeerriilloogg CCooddee ooff SSeeqquueenncciinngg__MMaacchhiinnee ((CCoonnttiinnuueedd))
87 aasssseerrtt__ccyyccllee__sseeqquueennccee
SSeeqquueenncciinngg__MMaacchhiinnee SSttaattee TTrraannssiittiioonnss IIff tthhee mmaacchhiinnee eenntteerrss ssttaattee 44 ((ee )),, tthheenn ssttaattee 00 ((aa )) iiss eenntteerreedd..
88 aasssseerrtt__nneexxtt AAsssseerrttiioonn
MMoonniittoorrss aasssseerrtt__aallwwaayyss aasssseerrtt__cchhaannggee aasssseerrtt__oonnee__hhoott aasssseerrtt__ ccyyccllee__sseeqquueennccee aaasssssseeerrrttt___nnneeexxxttt
89 aasssseerrtt__nneexxtt aasssseerrtt__nneexxtt
##(( sseevveerriittyy__lleevveell,, nnuumm__cckkss,, cchheecckk__oovveerrllaappppiinngg,, cchheecckk__mmiissssiinngg__ssttaarrtt,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, ssttaarrtt__eevveenntt,, tteesstt__eexxpprr)) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__nneexxtt AAsssseerrttiioonn MMoonniittoorr VVeerriiffiieess tthhaatt ssttaarrttiinngg aanndd aann eennddiinngg eevveennttss ooccccuurr wwiitthh aa ssppeecciiffiieedd nnuummbbeerr ooff cclloocckkss iinn bbeettwweeeenn..
VVeerriiffyyiinngg tthhaatt tthheerree
aarree ttwwoo cclloocckk ccyycclleess bbeettwweeeenn tthhee ttiimmee tthhaatt ccuurrrreenntt bbeeccoommeess cc wwhhiillee xx iiss 00,, aanndd tthhee ttiimmee tthhaatt zz 90 ........................................................ aassssiiggnn zz == ((ccuurrrreenntt====ee));; aasssseerrtt__ccyyccllee__sseeqquueennccee ##((11,, 33,, 00,, 00,, ""EErrrr:: SSttaattee sseeqquueennccee nnoott ffoolllloowweedd““,, 00)) NNuummbbeerr ooff cclloocckk ccyycclleess bbeettwweeeenn tthhee eevveennttss AACCSS ((ccllkk,, ~~rrsstt,, {{((ccuurrrreenntt====dd)),, ((ccuurrrreenntt====ee)),, ((ccuurrrreenntt====aa))}}));; aasssseerrtt__nneexxtt ##((11,, 22,, 11,, 00,, 00,, ""EErrrr:: OOuuttppuutt ssttaattee nnoott rreeaacchheedd““,, 00)) AANN11 ((ccllkk,, ~~rrsstt,, ((ccuurrrreenntt====cc &&&& xx====00)),, ((zz====11))));; eennddmmoodduullee aasssseerrtt__nneexxtt VVeerriilloogg CCooddee ooff SSeeqquueenncciinngg__MMaacchhiinnee ((CCoonnttiinnuueedd)) bbeeccoommeess 11.. SSttaarrtt EExxpprreessssiioonn TTeesstt EExxpprreessssiioonn
91 AAsssseerrttiioonn TTeemmppllaatteess
AAsssseerrttiioonn VVeerriiffiiccaattiioonn AAsssseerrttiioonn VVeerriiffiiccaattiioonn BBeenneeffiittss OOppeenn VVeerriiffiiccaattiioonn LLiibbrraarryy UUssiinngg AAsssseerrttiioonn MMoonniittoorrss Assertion Templates AAsssseerrttiioonn TTeemmppllaatteess
92 AAsssseerrttiioonn TTeemmppllaatteess
HHaarrddwwaarree ffeeaattuurreess ddeessiiggnneerrss mmaayy nneeeedd ttoo vveerriiffyy,, aanndd hhooww aasssseerrttiioonnss ccaann bbee uusseedd ffoorr tthheeiirr vveerriiffiiccaattiioonn
93 AAsssseerrttiioonn TTeemmppllaatteess
AAsssseerrttiioonn TTeemmppllaatteess RReesseett SSeeqquueennccee IInniittiiaall RReesseettttiinngg IImmpplliiccaattiioonn VVaalliidd SSttaatteess
94 RReesseett SSeeqquueennccee
AAsssseerrttiioonn TTeemmppllaatteess Reset Sequence RReesseett SSeeqquueennccee IInniittiiaall RReesseettttiinngg IImmpplliiccaattiioonn VVaalliidd SSttaatteess
95 RReesseett SSeeqquueennccee
mmoodduullee SSeeqquueenncciinngg__MMaacchhiinnee ((iinnppuutt xx,, ssttaarrtt,, rrsstt,, ccllkk,, oouuttppuutt zz ));; ppaarraammeetteerr aa==00,, bb==11,, cc==22,, dd==33,, ee==44;; //// .. .. .. aasssseerrtt__ccyyccllee__sseeqquueennccee ##((11,, 44,, 00,, 00,, ""EErrrr::RReesseettttiinngg ddooeess nnoott ooccccuurr"")) AACCSS22 ((ccllkk,, ~~rrsstt,, {{((xx====00)),, ((xx====00)),, ((xx====00)),, ((ccuurrrreenntt====aa))}}));; //// .. .. .. eennddmmoodduullee AAsssseerrttiioonn RReesseett SSeeqquueennccee OOfftteenn ccoonnttrroolllleerrss hhaavvee aa rreesseettttiinngg sseeqquueennccee tthhaatt wwiitthh cceerrttaaiinn sseeqquueennccee ooff iinnppuuttss,, tthhee mmaacchhiinnee eennddss ooff wwhhaatt ssttaattee iitt iiss iinn.. VVeerriiffiieess tthhaatt iiff iinn tthhrreeee ccoonnsseeccuuttiivvee cclloocckkss,, xx iiss 00,, iinn tthhee ffoouurrtthh cclloocckk tthhee ccuurrrreenntt ssttaattee ooff tthhee mmaacchhiinnee bbeeccoommeess aa..
96 IInniittiiaall RReesseettttiinngg
AAsssseerrttiioonn TTeemmppllaatteess RReesseett SSeeqquueennccee Initial Resetting IInniittiiaall RReesseettttiinngg IImmpplliiccaattiioonn VVaalliidd SSttaatteess
97 IInniittiiaall RReesseettttiinngg
mmoodduullee mmeeaallyy__ddeetteeccttoorr ((iinnppuutt xx,, rrsstt,, ccllkk,, oouuttppuutt zz));; llooccaallppaarraamm [[11::00]] rreesseett == 00,, //// 00 == 00 00 ggoott11 == 11,, //// 11 == 00 11 ggoott1100 == 22;; //// 22 == 11 00 rreegg [[11::00]] ccuurrrreenntt;; ........................................................ ........................................................ ........................................................ eennddmmoodduullee HHaarrdd--RReesseett AAsssseerrttiioonn FFoorr vveerriiffiiccaattiioonn ooff mmaannyy sseeqquueennttiiaall cciirrccuuiittss bbeeccoommeess nneecceessssaarryy ttoo cchheecckk ffoorr rreesseettttiinngg tthhee cciirrccuuiitt uussiinngg aa ssyynncchhrroonnoouuss oorr aassyynncchhrroonnoouuss rreesseett iinnppuutt.. AA MMeeaallyy MMaacchhiinnee
98 IInniittiiaall RReesseettttiinngg
........................................................ aallwwaayyss @@(( ppoosseeddggee ccllkk )) bbeeggiinn iiff ((rrsstt)) ccuurrrreenntt <<== rreesseett;; eellssee ccaassee (( ccuurrrreenntt )) rreesseett:: iiff(( xx====11’’bb11 )) ccuurrrreenntt <<== ggoott11;; eellssee ccuurrrreenntt <<== rreesseett;; ggoott11:: iiff(( xx====11’’bb00 )) ccuurrrreenntt <<== ggoott1100;; eellssee ccuurrrreenntt <<== ggoott11;; ggoott1100:: iiff(( xx====11’’bb11 )) ccuurrrreenntt <<== ggoott11;; eellssee ccuurrrreenntt <<== rreesseett;; ddeeffaauulltt:: ccuurrrreenntt <<== rreesseett;; eennddccaassee eenndd HHaarrdd--RReesseett AAsssseerrttiioonn ((CCoonnttiinnuueedd))
99 IInniittiiaall RReesseettttiinngg
........................................................ ........................................................ aassssiiggnn zz == (( ccuurrrreenntt====ggoott1100 &&&& xx====11’’bb11 )) ?? 11’’bb11 :: 11’’bb00;; aasssseerrtt__nneexxtt ##((11,, 11,, 11,, 00,, 00,, ““EErrrr:: MMaacchhiinnee ddooeess nnoott rreesseett pprrooppeerrllyy””,, 00)) AANN11 ((ccllkk,, 11’’bb11,, rrsstt,, ((ccuurrrreenntt====rreesseett))));; eennddmmoodduullee HHaarrdd--RReesseett AAsssseerrttiioonn ((CCoonnttiinnuueedd)) AAsssseerrttiioonn MMoonniittoorr iiss aallwwaayyss aaccttiivvee.. CChheecckkss iiff rrsstt iiss 11 tthheenn tthhee nneexxtt ccuurrrreenntt ssttaattee bbeeccoommeess rreesseett
100 IImmpplliiccaattiioonn AAsssseerrttiioonn
TTeemmppllaatteess RReesseett SSeeqquueennccee IInniittiiaall RReesseettttiinngg IImmpplliiccaattiioonn VVaalliidd SSttaatteess Implication
CChheecckkss oonn tthhee
ssppeecciiffiieedd cclloocckk eeddggee ffoorr tthhee aanntteecceeddeenntt eexxpprreessssiioonn ttoo bbee ttrruuee.. IIff iitt iiss,, ccoonnsseeqquueennccee eexxpprreessssiioonn ttoo bbee ttrruuee.. IIff ssoo,, iitt wwiillll ssttaayy qquuiieett,, 101 IImmpplliiccaattiioonn aasssseerrtt__iimmpplliiccaattiioonn AA tthheenn uusseeffuull iitt cchheecckkss aasssseerrttiioonn ffoorr tthhee ffoorr cchheecckkiinngg eexxppeecctteedd eevveennttss,, oorr eevveennttss iimmpplliieedd bbyy ootthheerr eevveennttss ootthheerrwwiissee iitt wwiillll ffiirree.. ##(( sseevveerriittyy__lleevveell,, pprrooppeerreettyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, aanntteecceeddeenntt__eexxpprr,, ccoonnsseeqquueennccee__eexxpprr )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__iimmpplliiccaattiioonn AAsssseerrttiioonn MMoonniittoorr
102 IImmpplliiccaattiioonn CChheecckkss
tthhee oouuttppuutt vvaalluuee iinn tthhee ggoott1100 ssttaattee wwhhiillee xx iiss 11 mmoodduullee mmeeaallyy__ddeetteeccttoorr22 ((iinnppuutt xx,, rrsstt,, ccllkk,, oouuttppuutt zz));; //// .. .. .. aasssseerrtt__iimmpplliiccaattiioonn ##((11,, 00,, ““EErrrr:: OOuuttppuutt nnoott aasssseerrtteedd””,, 00)) AAII11 ((ccllkk,, 11’’bb11,, ((ccuurrrreenntt====ggoott1100 &&&& xx)),, ((zz====11))));; //// .. .. .. eennddmmoodduullee AAsssseerrttiinngg IImmpplliiccaattiioonn AAllwwaayyss AAccttiivvee
103 VVaalliidd SSttaatteess
AAsssseerrttiioonn TTeemmppllaatteess RReesseett SSeeqquueennccee IInniittiiaall RReesseettttiinngg IImmpplliiccaattiioonn VVVaaallliiiddd SSStttaaattteeesss
IInn tthhee sseeqquueennttiiaall
cciirrccuuiitt tteessttiinngg iitt oofftteenn bbeeccoommeess nneecceessssaarryy ttoo cchheecckk ffoorr tthhee mmaacchhiinnee’’ss vvaalliidd ssttaatteess aanndd iissssuuee aa wwaarrnniinngg iiff tthhee mmaacchhiinnee 104 VVaalliidd SSttaatteess IIff tthhee ssttaatteess ooff tthhee mmaacchhiinnee bbeeiinngg tteesstteedd aarree ccoonnsseeccuuttiivvee bbiinnaarryy nnuummbbeerrss aasssseerrtt__nnoo__oovveerrffllooww eenntteerrss aann iinnvvaalliidd ssttaattee.. ##(( sseevveerriittyy__lleevveell,, wwiiddtthh,, mmiinn,, mmaaxx,, pprrooppeerrttyy__ttyyppee,, mmssgg,, ccoovveerraaggee__lleevveell )) iinnssttaannccee__nnaammee (( ccllkk,, rreesseett__nn,, tteesstt__eexxpprr )) GGeenneerraall FFoorrmmaatt ffoorr aasssseerrtt__nnoo__oovveerrffllooww AAsssseerrttiioonn MMoonniittoorr
105 VVaalliidd SSttaatteess
OOff tthhee ffoouurr ppoossssiibbllee ssttaatteess,, iitt iiss uussiinngg oonnllyy tthhrreeee:: rreesseett,, ggoott11,, ggoott1100.. TThhee rraannggee ooff vvaalluueess tthhee tteesstt eexxpprreessssiioonn ccaann ttaakkee.. mmoodduullee mmeeaallyy__ddeetteeccttoorr22 ((iinnppuutt xx,, rrsstt,, ccllkk,, oouuttppuutt zz));; ((MMiinn aanndd MMaaxx)) //// .. .. .. aasssseerrtt__nnoo__oovveerrffllooww ##((11,, 22,, 00,, 22,, 00,, ““EErrrr:: IInnvvaalliidd ssttaattee””,, 00)) AANNVV11 ((ccllkk,, 11’’bb11,, ccuurrrreenntt));; //// .. .. .. eennddmmoodduullee CChheecckkiinngg ffoorr IInnvvaalliidd SSttaatteess TThhee aasssseerrttiioonn ffiirreess,, iiff tthhee MMeeaallyy mmaacchhiinnee eevveerr eenntteerrss,, tthhee mmaacchhiinnee’’ss iinnvvaalliidd ssttaattee.. TThhee ssiizzee ooff vveeccttoorr bbeeiinngg tteesstteedd
106 TTeexxtt BBaasseedd
TTeessttbbeenncchheess VVeerriilloogg hhaass aann eexxtteennssiivvee sseett ooff ttaasskkss ffoorr rreeaaddiinngg aanndd wwrriittiinngg eexxtteerrnnaall ffiilleess:: OOppeenniinngg aanndd cclloossiinngg ffiilleess,, PPoossiittiioonniinngg aa ppooiinntteerr iinn aa ffiillee,, WWrriittiinngg oorr aappppeennddiinngg aa ffiillee RReeaaddiinngg ffiilleess
107 SSuummmmaarryy
TThhiiss cchhaapptteerr ddiissccuusssseedd:: TThhee uussee ooff VVeerriilloogg ccoonnssttrruuccttss ffoorr ddeevveellooppiinngg tteessttbbeenncchheess DDaattaa ggeenneerraattiioonn aanndd rreessppoonnssee aannaallyyssiiss bbyy uussee ooff VVeerriilloogg HHooww aasssseerrttiioonn mmoonniittoorrss ccoouulldd bbee uusseedd ffoorr rreedduucciinngg eeffffoorrttss nneeeeddeedd ffoorr rreessppoonnssee aannaallyyssiiss ooff aa uunniitt--uunnddeerr--tteesstt.. DDeevveellooppiinngg ggoooodd tteessttbbeenncchheess ffoorr ccoommpplleexx ddeessiiggnnss rreeqquuiirreess ddeessiiggnn oobbsseerrvvaabbiilliittyy ggiivveenn ttoo ddeessiiggnneerrss bbyy uussee ooff aasssseerrttiioonnss..
Publicité