Szabványos cellákon alapuló tervezés

Szabványos cellákon alapuló tervezés ( angol  szabvány cella ) - olyan integrált áramkörök tervezési módszere, amelyek túlnyomórészt digitális elemeket tartalmaznak. Ebben a módszerben a VLSI tervezés legalacsonyabb szintjét absztrakt logikai elemek (például a NAND csomópont ) rejtik el a tervező elől. A cella alapú tervezési módszertan lehetővé teszi az egyik fejlesztő számára, hogy a digitális tervezés magas szintű aspektusára összpontosítson, míg a többi fejlesztő a cella fizikai megvalósításán dolgozik. A félvezetőgyártás vívmányaival együtt a szabványos cellák módszertana felelős mind az egyszerű integrált áramkörök (akár több ezer tranzisztor), mind a legbonyolultabb VLSI és rendszerek tervezésének lehetőségéért egy chipen (SOC), a tranzisztorok számát elérve. tízmilliárdok [1] [2] .

Szabványos cella felépítése

A szabványos cella tranzisztorok csoportjából és a köztük lévő kapcsolatokból áll, amelyek vagy valamilyen logikai funkciót ( AND , OR , XOR , XNOR , inverter ) vagy tárolóelemet (például flipflop vagy reteszelő flip-flop) valósítanak meg. A legegyszerűbb cellák a NAND, NOR, XOR elemi logikai függvények közvetlen reprezentációi; gyakran bonyolultabb cellákat használnak (teljes kétbites összeadó vagy multiplex D-flip-flop). Egy cella logikai funkcionalitását logikai nézetnek nevezzük : a cella viselkedése megfelel a kombinációs logika igazságtáblázatának és egy állapotátmeneti táblának ( en:state transfer table ) (a szekvenciális logikához lásd a szekvenciális logikát ).

Általában egy szabványos cellát kezdetben tranzisztor szinten terveznek, tranzisztoros en:netlist formájában . Ez az egyes tranzisztorok és a köztük lévő kapcsolatok leírása; a netlista portokat is tartalmaz – csatlakozási pontokat a mikroprocesszor más részeihez. A cellatervezők olyan CAD -rendszereket használnak, mint a SPICE , hogy szimulálják a hálózatlista elektromos viselkedését, különféle jeleket táplálva, és megkapják a számított analóg áramköri választ az időzítéssel együtt. A szimuláció ellenőrzi, hogy az adott netlista valóban ellátja-e a kívánt funkciót, és előrejelzi a jelek teljesítményfelvételét és terjedési késleltetését.

Mivel az áramkör logikai és netlistás ábrázolásai csak absztrakt tervezéshez és szimulációhoz használhatók, chipgyártáshoz nem, a szabványos cella fizikai megvalósítást igényel. Elrendezési nézetnek hívják , és ez a fejlesztés legalacsonyabb absztrakciós szintje. A gyártó szemszögéből a celláknak ez az ábrázolása a legfontosabb, hiszen könnyen beszerezhető belőle litográfiai maszk. A cellaábrázolás alaprétegekre van felosztva, amelyek megfelelnek a tranzisztor különböző struktúráinak és a tranzisztor érintkezőit rövidre záró összekötőknek.

Egy tipikus logikai függvényhez meg lehet tervezni egy funkcionálisan egyenértékű tranzisztorhálózati listát. Emellett egy tipikus netlistához számos megvalósítást fejleszthetsz elrendezési nézet formájában, amelyek kielégítik a netlista teljesítménykövetelményeit. A tervező számára az a kihívás, hogy csökkentse az integrált áramkör gyártási költségeit (általában a helyigény minimalizálásával), miközben fenntartja a cella sebességét és a teljesítményigényét.

Szabványos cellakönyvtárak

A Standard Cell Library alacsony szintű cellák gyűjteménye logikai funkciókhoz, flip-flopokhoz, regiszterekhez és pufferekhez. Minden cella rögzített magassággal és változó szélességgel van megvalósítva. A könyvtárak legfontosabb tulajdonsága a cellamagasságok egységessége, amely lehetővé teszi, hogy sorokba rendezzék őket, leegyszerűsítve az elemek automatikus elrendezésének feladatát. A cellákat általában úgy optimalizálják, hogy csökkentsék a lábnyomot és a késleltetést.

Egy tipikus könyvtár hagyományosan két részre oszlik:

  1. A front-end logikai leírásokat (Verilog, VHDL), sejtjellemzést ( Synopsys Liberty, ALF és SDF), valamint a funkcionális ellenőrzéshez szükséges segédelemeket (MET, Fastscan stb.) tartalmaz.
  2. A háttér a cellák fizikai megvalósításával kapcsolatos leírásokat tartalmazza. Ezek fizikai absztrakciók Cadence LEF vagy Synopsys Milkyway formátumban, kivonatolt és rtl netlisták. A könyvtár terjesztési feltételeitől függően tartalmazhat még GDS fájlokat, OA vagy CDBA adatbázist.
Front-end

A front-end leírás magja a szabványos elemek jellemzett könyvtára. A Synopsys Liberty Format (.lib) de facto ipari formátummá vált, bár léteznek alternatív formátumok, például az ALF (Advanced library format).

Az eredeti .lib táblázatos cellaidőzítést (NLDM) tartalmaz. Általában kétdimenziós táblázatokat használnak, amelyek leírják egy elem késleltetését a terheléstől és a bemeneti él idejétől függően. Az IS sebességének növekedésével azonban ennek a modellnek a pontossága elégtelennek bizonyult. Az NLDM modell problémája az volt, hogy nem vette figyelembe azt a tényt, hogy a bemeneti kapacitás különböző tényezőktől is függ, mint például a bemeneti éltől ( Miller-effektus ), a cella állapotától stb. Bár az NLDM modell támogatja a jellemvonások jellemzését. bemeneti kapacitás a többi bemenet állapotától függően már nem tudta maradéktalanul kielégíteni a fejlesztőket. Erre válaszul 2 kiterjesztés készült a .lib formátumhoz:

  1. A Synopsys egy CCS- (Composite Current Source) modellt javasolt. Ez a modell figyelembe vette a bemeneti kapacitás változását más tényezők függvényében [3]
  2. Válaszul a CCS-re a Si2.org fejlesztői EDA a Cadence-szel közösen egy nyílt forráskódú ECSM- (Effective Current Source Model) modellt javasoltak, amely egy nemlineáris bemeneti frontmodellt is használt, amely lehetővé tette a bemeneti kapacitás [4]

A .lib könyvtárak nem csak a késleltetésekről tartalmaznak információkat, hanem az energiafogyasztásról (mind dinamikus, mind statikus és belső), annak területéről, funkcionalitásáról, zajáról stb.

Általában a könyvtár több .lib fájlt tartalmaz: az elemeket a legjobb (maximális sebesség: maximális feszültség, minimális hőmérséklet), a legrosszabb eset (minimum sebesség: minimális feszültség és maximális hőmérséklet) és a tipikus eset (névleges sebesség, feszültség és hőmérséklet) alapján számítják ki. Speciális PVT (folyamat, feszültség, hőmérséklet) is használható például az elektromigráció jellemzésére, a pvt-t maximális feszültséggel és hőmérséklettel a maximális áram biztosítására.

A Verilog és/vagy VHDL modellek szintén a szabványos elemkönyvtár lényeges részét képezik. Tartalmazzák a cella funkcionális leírását, valamint egyezést a .lib fájlhoz a megfelelő SDF annotációhoz.

A front-end kiegészítő elemeket is tartalmaz, például csonkmodelleket a formális LEC-hitelesítéshez.

Háttér

A LEF (Layout Exchange format) feltételesen fel van osztva könyvtári és technológiai részekre

  1. A könyvtár rész geometriai információkat tartalmaz a cellák külső fizikai szerkezetéről. Valójában ez a cellák külső geometriája, az elzáródások és a bemenetek és kimenetek helyére vonatkozó információk.

Ezt az absztrakciót az elemek chipen való elhelyezése és irányítása során javasoljuk használni, mivel a cella belső szerkezetére vonatkozó információk nem fontosak ehhez, és a GDS (a sejtek fizikai szerkezetének teljes leírása) használata halálos kimenetelű. az elhelyezés/útválasztás során használt memória növekedése.

  1. A technológiai rész számos tervezési szabályt tartalmaz, amelyek a forgács elhelyezéséhez és vezetékezéshez szükségesek: a fémméretekre vonatkozó követelmények, az elhelyezési sűrűség, a távolságok (szomszédos dugulások, csomópontok (átmenetek), fémek, cellák stb. közötti távolságok), áramsűrűségek (az elektromigráció követelményei). ) és sok más technológiai információ. Ezeket az információkat a hely/útvonal CAD-rendszer használja fel a kód szerinti megfelelő elhelyezéshez és útvonalhoz.

A .lib formátum is használható erre a célra.

A szabványos elemek könyvtárának háttértartalmának második fontos részlete a netlisták. A netlistákat kivont formában szállítjuk (nem csak aktív elemeket: tranzisztorokat és diódákat tartalmaznak, hanem passzívakat is: ellenállásokat, kapacitásokat és induktivitásokat). Nem kivont hálózati listák is szállíthatók, amelyeket különösen LVS-hez használnak.

A könyvtár minden egyes logikai függvényhez számos olyan cellát biztosíthat, amelyek megvalósítják, de teljesítményük, késleltetésük vagy egyéb paramétereik különböznek egymástól.

A szabványos cellamódszer előnyei és hátrányai

A szabványos cellamódszer lehetővé teszi a fejlesztők számára, hogy az IC-ket nem tranzisztor szinten, hanem absztrakt szabványos elemek szintjén tervezzék, ami jelentősen csökkentheti az áramkör létrehozásához szükséges időt és erőfeszítést:

  1. A kész blokkokból történő tervezés nagyban leegyszerűsíti és felgyorsítja a fejlesztést
  2. A cellák fizikai megvalósításának absztrakt reprezentációinak használata jelentősen csökkentheti a munkaállomás memóriahasználatát, ami csökkenti a költségeket (a munkaállomások konfigurációjának alacsonyabb követelményei miatt), valamint felgyorsítja az elhelyezési és vezetékezési folyamatot.
  3. A késleltetési táblázatok és hasonló információk használatával a tranzisztor szimulációkhoz képest hetekről vagy napokról órákra csökkenthető az áramkör szimuláció ideje.

Ennek a technológiának azonban számos hátránya is van:

  1. Mivel a szabványos elemek halmaza korlátozott, az ezen a módszertanon alapuló tervezési folyamat nem túl rugalmas. Gyakorlatilag ez azt jelenti, hogy a kapott IC mérete nagyobb lesz egy hasonló, tranzisztorszinten tervezett áramkörhöz képest.
  2. A könyvtári táblázatokban felsorolt ​​időparaméterek közelítése miatt az IC modellezés eredményei hozzávetőlegesek, és csak az áramkör tervezési szakaszában használhatók fel.
  3. A projekt nagymértékben függ a könyvtár minőségétől

E hátrányok ellenére a standard cellás módszertan de facto szabvány lett a mikroelektronika területén.



A nehézség mértéke

A szabványos cellákon alapuló tervezéseknél általában technológiafüggetlen mérőszámot (tranzisztor-egyenértéket) használnak.

Lásd még

Jegyzetek

  1. A Cerebras Wafer Scale Engine egy gigantikus iPad Pro méretű chip több mint 1 billió tranzisztorral és... 15 kW TDP -vel Archivált : 2019. október 7., a Wayback Machine , 2019. augusztus 20. - "Intel NNP-T processzor, . . 27 milliárd tranzisztor... A GPU Nvidia TU102,... 18,6 milliárd tranzisztort tartalmaz, a GV100 pedig 21,1 milliárd"
  2. ↑ Inside Volta: A világ legfejlettebb GPU-adatközpontja  . NVIDIA fejlesztői blog (2017. május 10.). Letöltve: 2019. december 11. Az eredetiből archiválva : 2018. január 09.
  3. Archivált másolat (a hivatkozás nem elérhető) . Letöltve: 2010. június 4. Az eredetiből archiválva : 2015. szeptember 24.. 
  4. Cadence ECSM Library Format . Letöltve: 2010. június 4. Az eredetiből archiválva : 2009. május 11.

Linkek