Design baseret på standardceller

Design baseret på standardceller ( engelsk  standardcelle ) - en metode til at designe integrerede kredsløb med en overvægt af digitale elementer. I denne metode er det laveste niveau af VLSI-design skjult for designeren af ​​abstrakte logiske elementer (for eksempel NAND -knuden ). Den cellebaserede designmetodologi giver én udvikler mulighed for at fokusere på det høje niveau af digitalt design, mens andre udviklere arbejder på den fysiske implementering af cellen. Sammen med resultaterne af halvlederproduktion er metodikken for standardceller ansvarlig for muligheden for at designe både simple integrerede kredsløb (op til flere tusinde transistorer) og de mest komplekse VLSI og systemer på en chip (SOC) med antallet af transistorer, der når titusindvis af milliarder [1] [2] .

Konstruktion af en standardcelle

En standardcelle består af en gruppe transistorer og forbindelser mellem dem, der implementerer enten en eller anden logisk funktion ( AND , OR , XOR , XNOR , inverter ) eller et lagerelement (som flipflop eller latch flip-flops). De enkleste celler er en direkte repræsentation af de elementære booleske funktioner NAND, NOR, XOR; ofte bruges mere komplekse celler (fuld to-bit adder eller multiplekset D-flip-flop). Den logiske funktionalitet af en celle kaldes dens logiske visning : cellens adfærd svarer til en sandhedstabel for kombinationslogik og en tilstandsovergangstabel ( en:state overgangstabel ) (for sekventiel logik, se sekventiel logik ).

Typisk er en standardcelle oprindeligt designet på transistorniveau, i form af en transistoriseret en:netlist . Det er en beskrivelse af hver transistor og forbindelserne mellem dem; netlisten inkluderer også porte - forbindelsespunkter til andre dele af mikroprocessoren. Celledesignere bruger CAD - systemer såsom SPICE til at simulere netlistens elektriske adfærd ved at tilføre den forskellige signaler og opnå den beregnede analoge kredsløbsrespons sammen med dens timing. Simuleringen verificerer, at den givne netliste faktisk udfører den nødvendige funktion og forudsiger signalernes strømforbrug og udbredelsesforsinkelse.

Da de logiske og netlisterepræsentationer af kredsløbet kun er nyttige til abstrakt design og simulering og ikke til chipfremstilling, kræver en standardcelle udvikling af en fysisk implementering. Det kaldes layoutvisning og er det laveste abstraktionsniveau i udvikling. Fra producentens synspunkt er denne repræsentation af cellerne den vigtigste, da det er let at få masker til litografi fra den. Cellerepræsentationen er opdelt i basislag, som svarer til transistorens forskellige strukturer og forbindelser, der kortslutter transistorens ben sammen.

For en typisk boolesk funktion er det muligt at designe et sæt transistornetlister, der er funktionelt ækvivalente. For en typisk netliste kan du også udvikle mange implementeringer i form af en layoutvisning, der opfylder ydeevnekravene til en netliste. Udfordringen for designeren er at reducere omkostningerne ved at fremstille et integreret kredsløb (normalt ved at minimere fodaftrykket) og samtidig opretholde cellehastighed og strømkrav.

Standard cellebiblioteker

Standardcellebiblioteket er en samling af celler på lavt niveau til logiske funktioner, flip-flops, registre og buffere. Alle celler er implementeret med fast højde og variabel bredde. Nøgleegenskaben ved biblioteker er ensartetheden af ​​cellehøjder, som gør det muligt at arrangere dem i rækker, hvilket forenkler opgaven med automatisk arrangement af elementer. Celler er normalt optimeret til at reducere fodaftryk og latenstid.

Et typisk bibliotek er konventionelt opdelt i to dele:

  1. Front-end inkluderer logiske beskrivelser (Verilog, VHDL), cellekarakterisering ( Synopsys Liberty, ALF og SDF) samt hjælpeelementer til funktionel verifikation (MET, Fastscan, etc.).
  2. Back-end indeholder beskrivelser relateret til den fysiske implementering af cellerne. Disse er fysiske abstraktioner i Cadence LEF-format eller Synopsys Milkyway-format, udtrukne og rtl-netlister. Afhængigt af distributionsbetingelserne for biblioteket kan det desuden indeholde GDS-filer, en OA- eller CDBA-database.
Front-end

Kernen i frontend-beskrivelsen er et karakteriseret bibliotek af standardelementer. Synopsys Liberty Format (.lib) er blevet det de facto industrielle format, selvom der findes alternative formater, såsom ALF (Advanced library format).

Den originale .lib indeholder tabulær celletiming (NLDM). Typisk anvendes 2-dimensionelle tabeller, der beskriver et elements forsinkelse afhængig af belastningen og tidspunktet for inputkanten. Men med en stigning i IS'ens hastighed viste nøjagtigheden af ​​denne model sig at være utilstrækkelig. Problemet med NLDM-modellen var, at den ikke tog højde for, at input-kapacitansen også afhænger af forskellige faktorer, såsom input edge ( Miller-effekt ), celletilstand osv. Selvom NLDM-modellen understøtter karakterisering af input kapacitans afhængig af tilstanden af ​​andre input, kunne det ikke længere fuldt ud tilfredsstille udviklerne. Som svar på dette blev der udviklet 2 udvidelser til .lib-formatet:

  1. Synopsys har foreslået en CCS- (Composite Current Source) model. Denne model tog højde for ændringen i inputkapacitans afhængigt af andre faktorer [3]
  2. Som svar på CCS foreslog Si2.org-udviklernes EDA sammen med Cadence en open source ECSM- (Effective Current Source Model) model, som også brugte en ikke-lineær input front model, som muliggjorde mere nøjagtig beregning af indgangskapacitans [4]

.lib-biblioteker indeholder ikke kun information om forsinkelser, men også om strømforbrug (både dynamisk og statisk og internt), dets areal, funktionalitet, støj osv.

Normalt indeholder biblioteket adskillige .lib-filer: elementer beregnes for det bedste (maksimal hastighed: maksimal spænding, minimum temperatur), worst case (minimum hastighed: minimum spænding og maksimum temperatur) og typisk tilfælde (nominel hastighed, spænding og temperatur). Speciel PVT (Process, voltage, temperature) kan også bruges, for eksempel til at karakterisere elektromigration, pvt bruges med maksimal spænding og temperatur for at give maksimal strøm.

Verilog- og/eller VHDL-modeller er også en væsentlig del af standardelementbiblioteket. De indeholder en funktionel beskrivelse af cellen, samt et match til .lib for en korrekt SDF-annotation.

Frontenden inkluderer også hjælpekomponenter, for eksempel stubmodeller til formel LEC-verifikation.

Back-end

LEF (Layout Exchange format) er betinget opdelt i biblioteks- og teknologiske dele

  1. Biblioteksdelen indeholder geometrisk information om cellernes ydre fysiske struktur. Faktisk er dette den ydre geometri af celler, blokeringer og information om placeringen af ​​input og output.

Denne abstraktion anbefales til brug ved placering og routing af elementer på en chip, da information om cellens indre struktur ikke er vigtig for dette, og brugen af ​​GDS (fuld beskrivelse af cellernes fysiske struktur) vil føre til en dødelig forøgelse af den hukommelse, der bruges under placering/routing.

  1. Den teknologiske del indeholder en række designregler, der er nødvendige for chipplacering og ledningsføring: krav til metaldimensioner, placeringstæthed, mellemrum (afstande mellem tilstødende blokeringer, kryds (via), metaller, celler osv.), strømtætheder (krav til elektromigrering). ) og mange andre teknologiske oplysninger. Disse oplysninger bruges af sted/rute CAD-systemet til korrekt placering og rute i henhold til kode.

.lib-formatet kan også bruges til disse formål.

Den anden vigtige detalje i backend-indholdet i biblioteket af standardelementer er netlister. Netlister leveres i en ekstraheret form (indeholder ikke kun aktive elementer: transistorer og dioder, men også passive: modstande, kapacitanser og induktanser). Der kan også leveres ikke-ekstraherede netlister, som især bruges til LVS.

For hver logisk funktion kan biblioteket levere mange celler, der implementerer den, men adskiller sig i kraft, forsinkelser eller andre parametre.

Fordele og ulemper ved standardcellemetoden

Standardcellemetodologien giver udviklere mulighed for at designe IC'er ikke på transistorniveau, men på niveau med abstrakte standardelementer, hvilket betydeligt kan reducere tiden og indsatsen for at skabe et kredsløb:

  1. Design fra færdige blokke forenkler og fremskynder udviklingen i høj grad
  2. Brugen af ​​abstrakte repræsentationer af den fysiske implementering af celler kan reducere brugen af ​​arbejdsstationshukommelse betydeligt, hvilket reducerer omkostningerne (på grund af lavere krav til konfigurationen af ​​arbejdsstationer) og fremskynder placeringen og ledningsprocessen.
  3. Brug af forsinkelsestabeller og lignende information kan reducere kredsløbssimuleringstiden fra uger eller dage til timer sammenlignet med transistorsimuleringer.

Denne teknologi har dog også en række ulemper:

  1. Da sættet af standardelementer er begrænset, er designprocessen baseret på denne metode ikke særlig fleksibel. Rent praktisk betyder dette, at størrelsen af ​​den resulterende IC vil være større sammenlignet med et lignende kredsløb designet på transistorniveau.
  2. På grund af tilnærmelsen af ​​tidsparametrene anført i bibliotekstabellerne er resultaterne af IC-modellering omtrentlige og kan kun bruges på kredsløbsdesignstadiet.
  3. Projektet er meget afhængig af kvaliteten af ​​biblioteket

På trods af disse ulemper er standardcellemetoden blevet de facto-standarden inden for mikroelektronik.



Et mål for sværhedsgrad

Til design baseret på standardceller anvendes normalt en teknologiuafhængig metrik (transistorækvivalent).

Se også

Noter

  1. Cerebras Wafer Scale Engine er en gigantisk iPad Pro-chip med over 1 billion transistorer og en TDP på... 15 kW Arkiveret 7. oktober 2019 på Wayback Machine 20. august 2019 - "Intel NNP-T processor, . . 27 milliarder transistorer... GPU Nvidia TU102,.. indeholder 18,6 milliarder transistorer, og GV100 - 21,1 milliarder"
  2. ↑ Inside Volta: Verdens mest avancerede GPU-datacenter  . NVIDIA Developer Blog (10. maj 2017). Hentet 11. december 2019. Arkiveret fra originalen 09. januar 2018.
  3. Arkiveret kopi (link ikke tilgængeligt) . Hentet 4. juni 2010. Arkiveret fra originalen 24. september 2015. 
  4. Kadence ECSM biblioteksformat . Hentet 4. juni 2010. Arkiveret fra originalen 11. maj 2009.

Links