Layout kontra schematisk (LVS) flöde och deras felsökning i ASIC fysisk verifiering

Källnod: 805035

Vad är LVS?

I ASIC fysisk implementering, när layouten har genererats, måste den följa alla designregler för framgångsrik tillverkning och måste matcha schemat för den nödvändiga designen. För att säkerställa detta vid fysisk verifiering genomförs Design Rule Check (DRC) för att kontrollera om layouten följer reglerna för felfri tillverkning eller inte. Dessa DRC-kontroller ger bra tillverkningsutbyte och förhindrar fel under tillverkningen, men den säkerställer inte att layouten är korrekt. Det måste säkerställas att den fysiska implementeringen av designen är densamma som schemat för designen. För detta jämförs den elektriska kretsen för layout-netlist med den schematiska nätlistan, som är känd som Layout versus Schematic (LVS).

Här används IC Validator och IC Compiler-II (SYNOPSYS) verktyg för LVS-körningar och PnR.

Figur 1: LVS
Figur 1: LVS

Som visas i ovanstående figur är LVS en jämförelse mellan layout, som representeras av GDS och schematisk som genereras av verktyget med hjälp av verilog netlist.

Indatafiler för LVS i ICV-verktyget listas nedan:

  • GDS (layout stream-fil): Den används av LVS-verktyget för att generera layout-nätlista genom extraktion, som används för LVS-jämförelse.
  • Schematisk nätlista: Den används som en källnätlista för LVS-jämförelse.
  • Regeldäcksfil: Regeldäcksfilen består av nödvändiga instruktioner och filer för att vägleda verktyg för att utföra LVS. Denna regeldäcksfil innehåller också en lagerdefinition, som är användbar för extrahering.
  • Ekvivalensfil: Den används av verktyget för ICV LVS-jämförelse och den består av cellpar, som består av en från layoutens nätlista och en annan från den schematiska nätlistan.

LVS Flöde

LVS-flödet består huvudsakligen av extraktion och jämförelse av layout nätlista och schematisk nätlista. LVS-flödet visas i figur-2. ICV har nettran-verktyg för översättning av indata verilog netlist till ICV schematisk netlist, vilket är ytterligare användbart för jämförelseändamål. Alla enheter och anslutningar mellan dem extraheras från GDS i layoutextraktionssteget. Verktyget genererar också en ekvivalenspunktsfil efter extraheringen för jämförelse av layout och schema. Denna ekvivalensfil är användbar för jämförelse. I jämförelsesteget jämförs extraherad nätlist med schematisk nätlista och verktyget ger ett rent resultat, om båda nätlistorna matchar helt och om inte genererar verktyget felrapporter. I jämförelsesteget gör verktyget jämförelsen på följande sätt: Verktyget jämför antalet enheter i schematisk och layout, antalet nät i schematisk och layout, typer av enhet i schematisk och layout, och genererar sedan resultatrapporterna . Felrapporten innehåller en lista över felaktiga enheter, felaktiga nät, vilket är användbart för att felsöka LVS-problemet.

Figur 2: LVS-flöde
Figur 2: LVS-flöde

Få silikontejplösningar över lägre teknologinoder från 180nm till 16nm,7nm,5nm och lägre

Klicka här

Vanliga LVS-problem och deras felsökning

  • Öppen
  • Shorts
  • Saknade komponenter
  • Saknar global nätanslutning

Öppen: Former på näten som har samma layouttext på sig korsar sig inte eller rör vid öppningar i designen. Öppningar i konstruktionen ansvarar för flytande anslutningar i konstruktionen. Denna flytande anslutning kommer att orsaka stora defekter i chips (ASIC/FPGA). Så det är mycket viktigt att hitta öppningar i designen. Att köra ett öppet sökverktyg för PnR-verktyget innan du kör LVS är till hjälp i den tidiga designfasen.

Exemplet nedan visar detektering av det öppna i design av LVS-verktyget. Rapporter som genereras av verktyget beskriver öppningen i designen som visas i följande utdrag av verktygsrapporten.

utdrag av verktygsrapporten

Felsammanfattning visar sammanfattningen av upptäckta fel med deras antal. För öppet extraherar extraher det öppna nätet som två olika nät, så antalet nät i layouten är större än antalet nät i schemat, som visas i rapporten. Rapporten visar antalet nät i layouten med motsvarande schematisk. Det schematiska nätet BUF_net_152645, som representeras av två nät N_11965140 och N_11989743 i layout (på grund av det öppna), som nämnts i rapporten.

Den här typen av problem kan lösas genom att ansluta layoutformer av ett enda nät som lämnas öppet.

Figur 3: Öppna
Figur 3: Öppna

Ladda ner fallstudie

Verifiering och fysisk design av optisk Ethernet ASIC

Hämta hem nu

Kort: Om lager i layout med olika layouttext överlappar eller skär varandra, kommer det att resultera i korthet i designen. Närvaron av kortslutningen i designen kommer att orsaka chipfel. Det är viktigt att hitta shorts som finns i designen genom att köra PnR shorts find utility eller genom att köra LVS. Följande exempel visar hur kortslutningen rapporteras av verktyget efter att ha kört LVS.

verktyg efter att ha kört LVS

Letar du efter fysisk verifieringshjälp? Vi är här för att hjälpa!

Kontakta oss nu

När kortslutningen inträffar i designen kommer utdragaren att ta ut kortslutna nät som ett enda nät, så det finns endast en layout motsvarande nät för två nät i schemat, som nämnts i rapporten. N738 och BUF_net_189972 är kortslutna nät.

Kortslutning kan lösas genom att omdirigera nätet på rätt sätt.

Figur 4: Kort
Figur 4: Kort

Invändiga shorts med makron: I en fysisk design, på grund av komplexiteten i designen eller på grund av felaktiga inställningar, kan det hända att PnR-verktyget dirigerar nät på ett sätt som skapar korta med makrons interna geometrier. Det kan också hända om routingblockering saknas i makrots LEF. Ibland när man gör manuell anpassad routing skapas kort mellan anpassad rutt och makrots interna routing. Denna korta är inte lätt att rapportera i PnR-verktygsmiljön. När vi slår ihop GDS för det hårda makrot med toppnivåblocket, är korten synlig i GDS. Denna kortslutning kan felsökas med hjälp av VUE-verktyget i ICV. Nedan finns ett utdrag som visar hur ett signalnät felaktigt dirigeras över det hårda makrot. Lagret är blockerat över makrot, eftersom interna geometrier i det hårda makrot finns. Detta nät kommer att orsaka en kortslutning med makrots interna geometrier.

Figur 5: Kort med makros interna geometri (PnR-verktygsvy)
Figur 5: Kort med makros interna geometri (PnR-verktygsvy)

Nedan är utdraget från det sammanslagna GDS, som tydligt visar det korta.

Figur 6: kort med makros interna geometri (GDS-vy)
Figur 6: kort med makros interna geometri (GDS-vy)

Den genererade rapporten liknar den som visas för den korta rapporten. Utdrag för detta exempel är som följer.

Den genererade rapporten är liknande

PG kortslutning med signalnät: När det finns en PG-kortslutning i designen är det väldigt svårt att identifiera det. PG-kortslutning kan vara en kortslutning mellan ett kraftnät och ett jordnät eller det kan vara en kortslutning mellan ett kraftnät och ett signalnät. När ett PG-nät kortsluter med ganska långt signalnät och eftersom PG-nätet är anslutet till så många enheter är det mycket svårt att sätta fingret på en kort plats. För att felsöka det här problemet finns det ett sätt i ICV att lägga till en text på signalnätet som kortsluter med PG-nätet.

Följande är ett exempel på att lägga till en text över signalnätet. Detta nätnamn kan enkelt räknas ut från LVS-felrapporten. Ta vilken plats som helst där kortslutningssignalnätet finns (ta vilket lager som helst) och lägg en text med valfritt taggnamn över det, på en plats som definieras av ursprungsvärdet i kommandot nedan.

skapa_form -form_typ text -lager -origin <{llx lly}> -höjd 1 -orientering R0 -justering LB -text " ”

Nedan är ett exempel på hur man felsöker PG kort med valfritt signalnät med texttillägg.

På grund av felaktig metallfyllning och manuella ruttändringar skapades en kortslutning mellan VSS-nätet och ett av signalnäten som visas i figuren nedan.

Bild 6-: PG kort med signalnät på grund av felaktig metallfyllning
Bild 6-: PG kort med signalnät på grund av felaktig metallfyllning

Det var väldigt svårt att räkna ut den korta platsen då själva signalnätet var väldigt långt. På signalnätet skapades ett textlager med kommandot som visas ovan och LVS kördes igen. Nu var kortslutningen mellan VSS och text lätt synlig i LVS kortsökare, och ögonblicksbilden ovan visar felet markerat med VUE-databasen för ICV.

Saknade komponenter

Om en del av spice-filen eller GDS-filen saknas när databasen slås samman, visar den ett fel på saknade komponenter. Till exempel: om du har cell ABC som används i designen, men inte definierad i GDS-listan eller kryddlistan som ska användas för LVS-flöde, kan det orsaka fel på komponenter som saknas. Antingen måste listan modifieras eller så måste ABC-cellen uteslutas från LVS-jämförelsen (detta beror på cellens funktionalitet, endast fysiska celler kan uteslutas i jämförelsen).

Saknar global nätanslutning

Om PG-stiften i cellerna inte är anslutna till något ström-/jordnät med hjälp av connect_pg_net-kommandon, orsakar det enhetsfel och LVS-fel för större delen av designen. Till exempel, även om standardcellens PG-stiftnamn är VDD, ansluter verktyget det inte till VDD utan design. Vi måste använda kommandot nedan för att ansluta sådana stift.

connect_pg_net -net VDD [get_pins -hierarchical */VDD]

Slutsats

LVS är användbar teknik för att verifiera riktigheten av den fysiska implementeringen av nätlistan. öppna, kortslutningar, saknade komponenter och saknad global nätanslutning är potentiella problem som kan påverka designens funktionalitet och kanske inte upptäcks i ett tidigt implementeringsskede, så LVS är användbart för att rapportera dessa problem i design. När dessa problem har rapporterats av verktyget för fysisk verifiering kan det lösas med olika tekniker som diskuteras i den här artikeln.

Chirag Rajput, Nilay MehtaChirag Maniya

Med tillstånd till: Design & Reuse.com

Källa: https://www.einfochips.com/blog/layout-versus-schematic-lvs-flow-and-their-debug-in-asic-physical-verification/

Tidsstämpel:

Mer från Einfo Chips