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] .
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.
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:
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:
.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-endLEF (Layout Exchange format) er betinget opdelt i biblioteks- og teknologiske dele
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.
.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.
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:
Denne teknologi har dog også en række ulemper:
På trods af disse ulemper er standardcellemetoden blevet de facto-standarden inden for mikroelektronik.
Til design baseret på standardceller anvendes normalt en teknologiuafhængig metrik (transistorækvivalent).