Under Guidance of
Prof. G.K. Prof G K Sharma Presented Byy Sumit Patel 2011VLSI-14 31-March-2012
Contents
1.Introduction 2.FormalModels MemoryModel FaultModel 3.AutomaticTestGenerationMethodology. FaultListRepresentation TestPatternGeneration March Test Generation Algorithm MarchTestGenerationAlgorithm
1.Introduction
MarchTest: Amarchtestconsistsofafinitesequenceofmarchelements. Amarchelementisafinitesequenceofoperationsappliedtoevery memorycellbeforeproceedingtothenextcell. Itcanbedoneinoneoftwoaddressorders:anincreasing address order(e.g.fromaddress0toaddressn l),oradecreasingaddressorder ( ).Whentheaddressorderisirrelevantthesymbolm willbeused. p g ( ) g Anoperationcanconsistofwritinga0intoacell(w0 ),writinga1into acell(w1),readingacellwithexpectedvalue0(r0),andreadingacell withexpectedvalue1(r1). Forexamplemarchtest,writtenas{m (w0);(r0,w1);(r1,w0)}Ithas thethreemarchelementsM0:m (w0),M1:(r0,w1)andM2:(r1,w0). Alloperationsofamarchelementaredonebeforeproceedingtothenext address.
MarchTestNotation
Somebasicmarchnotationsare r Memoryaction:Areadoperation w Memoryaction:Awriteoperation r0 Memoryaction:Reada0fromthememorylocation r1 Memoryaction:Reada1fromthememorylocation w0 Memoryaction:Writea0tothememorylocation w1 Memoryaction:Writea1tothememorylocation Writea1toacellcontaining0orthecellhasarisingtransition Writea0toacellcontaining1orthecellhasafallingtransition Complementthecellcontents Increasingmemoryaddressingorder Decreasingmemoryaddressingorder mAddressingordercanbeeitherincreasingordecreasing
Where A={0,1}isthesetofpossiblestatesofamemorycell, Nisthenumberofcells, M (c c1 c2 M=(c0,c1 ,c2 ,...,cn1 )| ci =A 0iN1 is the array of N cells and c 1 )|c A,0iN 1isthearrayofNcells,and X0={ri ,wid |0iN1,d=A}isthesetofpossiblememory operations.whereri meansareadoperationonthecelli,whereaswid meansawriteoperationofthevalued {0 1} on the i cell. means a write operation of the value d={0,1}ontheith cell
WhereSandFBrepresentastimulusandafaultybehavior,respectively. AfunctionalmemoryfaultmodelisanonemptysetofFFPs.Forexample, A functional memory fault model is a nonempty set of FFPs For example theInversionCouplingFault(atransitionperformedonanaggressorcella causestheinversionofthelogicvaluestoredinavictimcellv)canbe describedbythefollowingtwoFFPs: described by the following two FFPs:
Where I=(i0,i1,i2,.iN1)|ik={0,1,},0kN1istheinitialstateofthememory. Es=(op0,op1,op2,.opm)|opi=X , i.e. {w0,w1,r0,r1}, 0iN1 is the (op X,i.e.{w0,w1,r0,r1},0iN 1isthe sequenceofmoperations,performedontheaggressorcell,neededto sensitizethefault.
AFFP=h I,Es,Fv,Gv i,
TP=hAFFP,Osi ,
PG=hV,E F,Le Lf i,
PatternGraph(contd.) p ( )
FEi00 = { ri, rj0 , wi1 , rj0 }, FEj00 = {wj1 rj, ri0 }, { w }, FEi10={}, FEj10={wj1 , ri1} { }, FEi01=FEi01={}, FE11={}.
MarchTestGenerationAlgorithmSteps(Contd.)
Rule2.ifreadcell<sensitizecellandAOisdown(orreadcell> sensitizecellandAOisup)theninsertreadatbeginningofcurrent sensitize cell and AO is up) then insert read at beginning of current ME. Rule3.inanyotherconditionreadisaddedasfirstoperationofnextME. TheMEgenerationendsifnofaultyedgescanbeselectedfromthe Th ME ti d if f lt d b l t df th currentstateV,andMEclosed. TheneachoperationofMEisappliedontheeachcellofthememory startingfromtheinitialstateV. t ti f th i iti l t t V Ifduringthisoperationadditionalfaultyedgesaretraversed,theyare markedasdetectedandremovedfromthegraph. Atthispoint,wehavereachedthefinalstateoftheME. TheMEiscompletelydefined,andiftherearestillfaultyedgestotraverse thenextMEisinitialized,andtheprocessisrepeated.
Example Example
Tobetterunderstandthegenerationalgorithm,wewillshowits applicationonthePGinFig.3. TheinitialselectedstateisV=00,since#(FE00)=3(00isthestatewith thehighestnumberoffaultyedgesincidentfromit).Wehavetochoose onefaultyedge,sowecalculatethecostofthedifferentsetsoffaulty edges: d FEi00 ={ri,rj0 ,wi1 ,rj0},$FEi00 =2 forFEj00 ={wj1 rj,ri0 },$FEj00 =1. ThealgorithmchoosesFEi00 andri,rj0 isselectedandaddedtotheME, whichbecomes(ri0)withthecurrentmemorystatestillequalto00. Atthispoint,thealgorithmchoosestheonlyremainingchoiceinFEi00 p g y g representedbywi1 ,rj0.wi1 (sensitizingsequence)isaddedtotheME, whichbecomes(ri0wi1 ),whiletheobservationisnotrequiredsinceitis alreadypresent.
FEi00 = { ri, rj0 , wi1 , rj0 }, FEj00 = {wj1 rj, ri0 }, { w }, FEi10={}, FEj10={wj1 , ri1} { }, FEi01=FEi01={}, FE11={}.
ItthensimulatestheoperationsoftheMEoncellj.Thesimulationshows thatalsowj1 , ri1 (fromstate10)istraversed. Thereadandverifyoperationperformedoncelli isaddedtothenextME, whichbecomes(ri1 )againwithupAO. Thecurrentstateisnowv=11.SinceFE11 isempty,theMEisclosed,and p y, , thecorrespondingMEisgenerated:(r1 ). Wenowmustchangestateto00,whichistheonlystatestillhaving y g faultyedges. Theoperationtomoveto00iswj0 ,itisaddedtothenewME,which becomes(wj0 )withupAO. TheMEisclosed,andthecorrespondinggeneratedMEis(w0 ). , p gg ( )
Optimizations
MarchtestsarecriticalcomponentsinanyATEbasedorBISTMemorytest architecture. IthasbeenshownthattheBISThardwareoverheadcanbereducedifthe marchtestshowssomeparticularcharacteristicssuchasuniformity(a constantnumberofoperationsineachME),symmetry(particularly importantontransparentmarchtests),orsingleAO. Additionalconstraintscanbeveryeasilyaddedinthegenerationphase performedbytraversingtheELDG. Theonlydrawbackisthataddingtoomanyconstraintsmayleadto situationswherenosolutionscanbegenerated.
Conclusion
WehaveseenallthebasicsofMarchTest. ModelsusedforMarchTestGeneration. Theflexibilityofthefaultmodelformalismallowsdescribingnotonly traditionalstaticanddynamicfaultsbutalsolinkedanduserdefined faults. WorkingofMarchTestgenerationalgorithm. Withrespecttopreviouslypresentedapproaches,proposed methodologyallowsgeneratingshortermarchtestsinaverylow methodology allows generating shorter march tests in a very low computationtime,withoutexhaustivesearches.
Reference
A.Benso,A.Bosio,S.DiCarlo,G.DiNatale,andP.Prinetto, , , , , , MarchTestGenerationRevealed,IEEETransactionsOn Computers,VOL.57,NO.12,pp.17041713Dec2008.
Thankyou