Presentation laddar. Vänta.

Presentation laddar. Vänta.

1 ASIC verifiering smd154. 2 Översikt 70% av designkostnaden är verifiering. C:a dubbelt så många verifieringsingengörer som RTL designers På 80 talet.

Liknande presentationer


En presentation över ämnet: "1 ASIC verifiering smd154. 2 Översikt 70% av designkostnaden är verifiering. C:a dubbelt så många verifieringsingengörer som RTL designers På 80 talet."— Presentationens avskrift:

1 1 ASIC verifiering smd154

2 2 Översikt 70% av designkostnaden är verifiering. C:a dubbelt så många verifieringsingengörer som RTL designers På 80 talet utfördes simulering för hand. Omöjligt idag

3 3 Typer av verifiering.

4 4 Simulation Behavioural –Stora delar modeleras som black-boxes Functional –RTL nivå –Ingen hänsyn till delay Static timing analysis –Efter syntetisering –Ingen hänsysn till layout

5 5 Simulation Gate level –Blackbox modeller –Fördröjning och in/ut kapacitans beroenden Switch level –Modellerar transistorer som switchar Transistor level –Riktiga Spice modeller av transistorer

6 6 Testbänkar Testvektorer som indata och förväntad utdata Avvägning mellan körtid och täckning av testfall Verktyg för att skapa testbänkar –Vera, Synopsys –Specman Elite, Verisity

7 7 Formal Verification Matematisk jämförelse av två olika design representationer –RTL – Gate –Gate – Gate Sker i tre steg –Alla möjliga tillstånd parsas ur HDL koden. –En bevisgenerator genererar alla formler som skall bevisas för att implicera ekvivalens –Alla formler bevisas Kontroll av att verktygen inte gör fel i mellanstegen. Samtliga designer kan dock vara exakt lika fel.

8 8 Formal Verification FV för att visa att en krets resetas korrekt (Synkron reset). Ta fram en "Reset model" bara består av –alla flip-flopar som skall resetas –all logik som går till dessa. Låt FV visa att RM implicerar den ursprungliga kretsen med reset satt hög.

9 9 Resetmodel

10 10 Formell verifiering av funktion Går även att påvisa funktionalitet mha. FV Skapa invarianter som FV verktyget försöker bevisa falska. Kan hitta buggar i komplicerade specialfall som annars missas i simulering Svårt att lära sig använda effektivt

11 11 Assertion Based Verification En "Assertion" är något som alltid skall vara sant Vid simulering upptäckts fel som orsakar brott mot "Assertions” Ger testpunkter i designen => lättare att lokalisera fel Moduler blir självtestande

12 12 Assertion Based Verification Formella verifieringsverktyg kan försöka hitta fall som bryter mot en "Assertion” –Ökar kontrollerbarheten genom att minska mängden testvektorer som krävs. Ex: Att testa en 32-bit komparator kräver 2^64 testvektorer. –Testa alla tar en halv miljon år vid 1MHz –Testa med FV tar en halv minut

13 13 Standardisering av ABV Open Verification Library försöker standardisera ABV –Fungerar både i VHDL och VERILOG –Definierar flera nivåer av varningar och fel –Förhindrar att assertions påverkar kodens funktion Idealt skall samma syntax kunna användas till både FV och simulering Utvecklingsarbetet pågår...

14 14 Emultation Vid Emulering körs en mjukvarumodell av en ASIC med resten av systemet. Kan göras med en FPGA –Xilinx har verktyg för enkel implementation i FPGA Test för interaktion med systemet utanför ASICen sent i designprocessen. Kan testa ev. mjukvara medan ASICen är på produktion Ej lämplig för detaljerad debuggning

15 15 Timing Verification Första uppskattning efter syntesen –Netlisten klar –Ingen information om wireloads Framtagning av parasit RC värden –Fan in/out –Parasit kapacitans in/out –Utresistans Verifiering av timing med hänsyn till kritisk väg och clock skew

16 16 Timing Verification Andra uppskattning efter place and route Wireload data kan skickas tillbaka till simulatorn för bättre uppskattning av fördröjningar Timing verifiering är en iterativ process. Gradvis under designens gång förbättras kontrollen

17 17 Design for Test (DFT) Design For Test (DFT) handlar om att öka –Styrbarhet - hur väl man kan styra tillstånd i interna noder –Observerbarhet - hur väl man kan avläsa tillstånd i interna noder –Förutsägbarhet - förmågan att baserat på känd indata få känd utdata i interna noder DFT innebär en tradeoff mellan ökad designkostnad och minskad testkostnad –Uppemot 20% mer hårdvara går åt –70% av kostande går dock åt till verifiering...

18 18 Design For Test (DFT) Testning av enskilda block (Boundary scan) Byta ut strategiska flip-floppar mot scan celler Ökad styrbarhet och observerbarhet av enskilda block i en ASIC

19 19 Design For Test (DFT) JTAG är standard för boundaryscan av enheter med en Test Access Port(TAP) TAP har har följande pinnar –Reset –Mode select –Data in –Data ut –Clock

20 20 Built In Self Test Built In Self Test (BIST) Online BIST - Kretsen testas under normal körning Offline BIST - Kretsen försätts i speciellt testläge

21 21 Built In Self Test Testvektorgenerering för BIST Exhaustive - Alla möjliga kombinationer testas Pseudorandom - Testvektorer slumpas fram –Linear Feedback Shift Register (LFSR) kan användas för generering Pseudoexhaustive - Kretsen delas in i mindre segment som var för sig testas fullständigt

22 22 Fysisk Verifiering Statiskt –Design Rule Checks (DRC) - Kontroll mot kiseltillverkarens begränsningar –Layout Vs Schematic (LVS) - Stämmer layouten med Gate nätlistan –Parasitic Extraction - Strökapacitanser, induktanser och resistanser kan nu beräknas noggrant Dynamiskt –Crosstalk - Överhörning mellan banor –Supplydrops - Störningar på matningsspänningen

23 23 Sammanfattning Brett område, många steg och olika koncept att greppa Tar år att bli en bra testingengör, ofta arbetar man endast med testning Verktyg för generering till allt, inget handarbete –Testbänkar –Formality –DRC m.m. Snabb utvekling pga. snabbt ökande mängd grindar/chip

24 24 Frågor?

25 25

26 26


Ladda ner ppt "1 ASIC verifiering smd154. 2 Översikt 70% av designkostnaden är verifiering. C:a dubbelt så många verifieringsingengörer som RTL designers På 80 talet."

Liknande presentationer


Google-annonser