Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Mikroelektronikai tervezőrendszerek Összefoglalás
2
Hierarchikus áramkörleírás Top level design: core tappancsok Core: A_funkció + B_funkció A_funkció: AA_funkció + AB_funkció B_funkció: BA_funkció + BB_funkció AA_funkció Cellakönyvtári elem
3
Áramkörkifejtés Áramkörkifejtés = design flattening Cellák Flat design Áramköri hierarchia-kifejtő program Top level design Részáramkörök Cella szintű funkciók Hierarchikus design Hierarchia szintek
4
Layout előállítása Kifejtett áramkörleírás Floorplan –core kialakítása –tappancsgyűrű kialakítása (pad limited, core limited) –cellák elhelyezése Globális huzalozás –huzalozási csatornák kialakítása –föld és táp ellátás (supply tree) Részletes huzalozás DRC
5
Layout előállítása Kifejtett áramkörleírás Floorplan –core kialakítása –tappancsgyűrű kialakítása (pad limited, core limited) –cellák elhelyezése Globális huzalozás –huzalozási csatornák kialakítása –föld és táp ellátás (supply tree) Részletes huzalozás DRC
6
IC tervezés és gyártás közvetlen végfelhasználói igények szerint Szereplők: –IC gyár - silicon foundry (pl. ST, AMS, Philips,...) –Szoftverház - EDA vendor (pl. Cadence) –Tokozó üzem –MPW szolgáltató - silicon broker (pl. EUROPRACTICE, CMP, MOSIS) –Végfelhasználó, aki egyben tervező is (pl. mi) MPW gyártás = Multi-project Wafer –1 Si szeleten 10-15 chip, –gyártási alkalmak (run-ok): 2-3 havonta –átfutás: layout beküldésétől tokozott chip-ig: 2-3 hónap –költségmegosztás, területarányos fizetés Pl.: 250 EUR/mm 2, 4 mm 2 1000 EUR + 100 EUR tokozás 5 tokozott chip, 10 tokozatlan chip (66 EUR/chip) –tipikus felhasználás: prototípus gyártás –small volume production: pl. 5-6 szelet 1 chip-pel
7
MPW chip gyártás MPW szolgáltató Tervező 3 Tervező 2 Tervező 1
8
MPW chip gyártás MPW szolgáltató Tervező és felhasználó IC gyár Tokozó üzem EDA vendor Tervező szoftver Tervező szoftver, design kit Tervezési szabályok, eszközparaméterek, cellakönyvtár Chip layout Chip layout-ok egyesítve Si szelet 10-15 áramkörrel Pucér chip-ek Tokozott IC-k Tokozott IC
9
Ami eljut az IC gyárba... … az a layout “Szabványos” reprezentációk –CIF, –GDS2 Ezek ún. de facto ipari szabványok
10
Layout reprezentációk Áttekintés
11
Layout = maszkok geom. leírása Leírásmódok: –alfanumerikus: “emberi fogyasztásra” is alkalmas ákár kézzel is írhatóak, editálhatóak (milliméter papír, kézi adatbevitel) cél: egyszerű átvitel különböző programok, rendszerek között. Pl.: layout editor pattern generátor CIF - Caltech Intermediate Format, GAELIC, EGL (M.o) –bináris: belső ábrázolás mindig bináris tömör csak géppel olvasható GDS2 file formátum Fordítás a leírásmódok között pl.: GDS2 CIF
12
Layout = maszkok geom. leírása Másik osztályozás: –struktúrált (makro-hierarchia) áttekinthetőbb reguláris layoutok előállítását nagyban segíti tömörebb többszörös makro-hívási mélység egyes műveletek a struktúrált layoutleírásokon gyorsabban elvégezhetők –kifejtett (flat) tipikusan maszkgeneráláshoz használják –Kifejtő program: struktúrált flat Mind az alfanumerikus, mind a bináris reprezentáció lehet struktúrált, illetve kifejtett
13
Layout = maszkok geom. leírása Layout: –2D alakzatok halmaza –több ún. rajz síkon megadva Rajz sík vagy réteg (layer): –logikai reprezentáció –adott szín a layout rajzon (képernyő, papírnyomat) egy technológiai lépés (foto)maszkja vagy egy pszeudó layer (nincs hozzá maszk) Layout makro: –egy vagy több rajzsíkon létrehozott –alakzatok –körvonalrajzzal körülvett csoportja
14
Layout primitívek: egyszerű alakzatok Gate (poli-Si mintázat maszkja) Kontaktusok (ablaknyitó maszk az oxidon) S/D kivezetések (fémezés mintázat maszkja) Aktív zóna (ablaknyitó maszk a vékony oxidnak)
15
nMOS tranzisztor layout rajza: layout primitívek tényleges maszkoknak megfelelő rétegeken nMOS tranzisztor layout rajza + körvonalrjaz + pineknMOS tranzisztor makro: körvonalrajz, pinek rajza, feliratok: pszeudo rétegeken nMOS D S G G Layout makrok - primitívekből
16
Layout makrok - makrokból és primitívekből nMOS D S G G pMOSDS G G
17
INV out in !GND !VDD Layout makrok - makrokból és primitívekből Ez is tehát egy hierarchikus leírás. A kifejtés eredménye a hiavtkozott makrok és primitívek behelyettesítésevel előálló, csak layout primitíveket tartalmazó leírás. A pszeudó rétegeken lévő információt a végén elhagyjuk belőle.
18
Layout makrok - egyre jobban kifejtve: Level 1: két makrohívás (áramköri mag, tappancsgyűrű)
19
Layout makrok - egyre jobban kifejtve: Level 2: tappancsgyűrű részekre osztva
20
Layout makrok - egyre jobban kifejtve: Level 3: tappancsgyűrű tovább osztva, huzalozási csatornák, cellasorok
21
Layout makrok - egyre jobban kifejtve: Level 4: tapapancs cellák és standard cellák makrohivásai
22
Layout makrok - egyre jobban kifejtve: Level 5
23
Layout makrok - egyre jobban kifejtve: Level 6
24
Layout makrok - egyre jobban kifejtve: Level 7: teljesen kifejtett makrok
25
Layout makrok - egyre jobban kifejtve: Level 4: tranzisztorok, kontaktusok még makrohívással
26
Layout makrok - egyre jobban kifejtve: Level 6: standard cellák, kontaktusok teljesen kifejtve
27
Egy layout leíró file CIF példa Kommentárok
28
Egy layout leíró file CIF példa Inclue állományok
29
Egy layout leíró file CIF példa Egység: 0.01 micron
30
Egy layout leíró file CIF példa Alakzat megadása: L - layer
31
Egy layout leíró file CIF példa Alakzat megadása: L - layer P - poligon
32
Egy layout leíró file CIF példa Nehezn áttekinthető. Olvashatóbb nyelvi példa: GAELIC Makrohívás: C - call
33
GAELIC layout leírás - primitívek File kezdete: háttérrács megadása UNITS=MICRONS, GRID=1.0; RECT(layer_number)x,y:dx,dy; RECT - téglalap: dx dy x, y POLY - tetszőleges poligon, hosszú (long) forma: POLY(layer_number)L,x,y:dx1,dy1,dx2,dy2,... dxn,dyn; x, y 1 2 34 n Ha ortogonális a poligon, akkor minden második elem 0: short formátum Záródnia kell!
34
GAELIC layout leírás - primitívek POLY - ortogonális poligon, rövid (short) forma: POLY(layer_number)S,x,y:dx1,dy2,dx3,dy4,...,dyn; x, y dx1 dyn dy2 dx3 dy4 TRACK - csík (short/long formátum): x, y W TRACK(layer_number)W,S,x,y:dx1,dy2,dx3,dy4,...,dyn; W páros kell legyen
35
GAELIC layout leírás - makrok Group definiálás NEWGROUP név; … ENDGROUP; Primitívek vagy korábbi group-ok hívása Makrohierarchia Group “példányosítás” (hívás) GROUP név,x,y,transzformáció; x, y Transzformáció: x tengelyre tükrözés: X y tengelyre tükrözés: Y forgatás 90 fokkal balra: R GROUP inv 100, 200, XR;
36
GAELIC layout leírás - makrok Group “példányosítás” (hívás) ismétléssel GROUP név,x,y,transzformáció,X,xtimes,dx,Y,ytimes,dy; x, y dx dy xtimes ytimes GROUP DFF 100,200,0,X,4,20,Y,2,15; Az ismétlési lehetőség kihasználásával egyszerűen tudunk reguláris layoutot kialakítani.
37
GAELIC layout leírás Állomány vége FINISH; UNITS=MICRONS, GRID=1.0; NEWGOUP INVER; POLY(1) S,4,4:48,40,-16,-8,-24,32,8,16,-16,80; RECT(3) 0,20:56,8; POLY(3) S,0,40:32,28,8,16,-16,-20,-24,-24;.... RECT(5) 0,6:56,10; RECT(5) 0,70:56,10; ENDGROUP;.... GROUP INVER,10,10,0;.... FINISH;
38
A belső leírás Tömör kell legyen bináris Jól kereshető kell legyen láncolt adatstruktúra (pl. gyűrű) adat = alakzat 23 1 EP HP 15 3 32 5 51 2
39
A belső leírás Egyszerű módosíthatóság 23 1 EP HP 15 3 32 5 51 2 23737 1 EP HP 17175 3 32 5 51 2 13 7
40
A belső leírás Egyszerű módosíthatóság 23 1 EP HP 15 3 32 5 51 2 23535 1 EP HP 15 3 31312 5 51 2 Listákat (gyűrűket) alakíthatunk ki alakzatokból, group-okból, maszksíkokból, stb.
41
Az alakzatok belső reprezentációja Csúcspont koordinátás (kontúros) leírás –Probléma a többszörösen öf. alakzat, mert az több kontúrt jelent. Sokszor felhasítják –Érdemes tárolni a befoglaló téglalapot és a speciális jelleget (pl. ort.poligon) Lefedő alakzatos tárolás (téglalap, trapéz)
42
Az alakzatok belső reprezentációja Bittérképes leírás (bit-map) 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 Lényegi koordinátás bittérkép (variable grid)
43
Műveletek: Logikai műveletek NEW_LAYER = LAYER1 AND LAYER2 NEW_LAYER = LAYER1 OR LAYER2 stb. –Bittérképes ábrázolás esetén könnyű megvalósítani. –Mire jók? Pl. layout-visszafejtésnél ún. felismerő rétegek létrehozása GATE = ACTIVE AND POLY
44
Műveletek: Logikai műveletek, példa:
45
Geometriai műveletek - pl. méretváltoztatás –Hízlalás –Fogyasztás –Gond a felhasított alakzatoknál –Egymásnak csak bizonyos korlátokkal az inverzei Műveletek:
46
Topológiai műveletek: C = CONTAIN(A,B); A C rétegre kerülnek a B réteg összes olyan alakzatai, amelyek A alakzataiba beleesnek Műveletek: ABC
47
Topológiai műveletek: Műveletek: DISJUNCT OVERLAP INTERSECT CONTAIN
48
Ellenőrző műveletek: Műveletek: WIDTH(A) < 0.5 Az A réteg minden olyan alakzatát szolgáltatja, amely keskenyebb 0.5 egységnél SPACING (A,B) < 0.5 Az A réteg minden olyan alakzatát szolgáltatja, amely keskenyebb 0.5 egységnél
49
Az algoritmusokra épülő programok Layout editor Szimbolikus editor layout kompaktor DRC (tervezési szabályellenőrzés) LvS (visszafejtés)
50
DRC program Layout leírás (CIF) Tervezési szabály leírás (technológiai file) hibageometriák hibajelzések
51
Példa terv. szabály leírására AKTIV is POLY,RECT mask 1 KONT is RECT mask 4 A1 is POLY,RECT mask 1 GATE = AKTIV*POLYSI(metszet) D = AKTIV ‘ - 2.0(zsugor) Rétegleírás szakasz eredeti származtatott
52
Példa terv. szabály leírására RULE ACSIK FAIL ‘Tul keskeny’ if WIDTH(AKTIV) < 0.8 END RULE ATAV FAIL ‘Tul kozel’ if SPACING(AKTIV,A1) < 0.8 END Szabály szakasz
53
Példa terv. szabály leírására RULE KONTPOLI FAIL ‘Nem joo ’ if CONTAIN (POLYSI,KONT) and CLEARANCE (KONT, POLYSI) < 0.2 END Szabály szakasz
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.