IC-k számítógépes tervezése Budapesti Műszaki Egyetem Elektronikus Eszközök Tanszéke 1999 november
IC-k számítógépes tervezése IC: a számítógépes tervezés “húzóágazata”. Mert: ki nem próbálható ember által át nem fogható bonyolultság Témáink: szimuláció tervezés ellenőrzés
1. Szimuláció Az IC tervezéssel kapcsolatosan: technológiai áramköri fizikai áramköri logikai viselkedési
Fizikai szimuláció Félvezetőeszközök belső működése: elektronok és lyukak folytonossági egyenlete, Poisson egyenlet… Vezeték késleltetés és csatolások: Maxwell egyenletek, 3D térszámítás… Hőelvezetés az IC chipről: Laplace egyenlet, 3D térszámítás...
Egy tok fele, a műanyagház nem látható Fizikai szimuláció Például a termikus szimuláció: chip és tok vizsgálata A teljes tok Egy tok fele, a műanyagház nem látható
Fizikai szimuláció Például a termikus szimuláció: chip és tok vizsgálata Ál-színes eredmény A modell (kerámiatok 1/4-e)
Áramköri szimuláció Az IC tervező mindennapos feladata analóg, mixed mode: feltétlenül, minden esetben digitális: a cellakönyvtár tervezésekor BEMENET: az áramkör kapcsolása (netlist) KIMENET: feszültségek, áramok, hullámformák, frekvenciamenet “alkatrész szintű, “component level”
Áramköri szimuláció Osztályozás: Kvázi-szabvány: SPICE a.) lineáris/nemlineáris b.) d.c. (stacionárius) a.c. kisjelű (frekvencia-tartomány) tranziens (idő-tartomány) zaj elektro-termikus Lényeges részek: megoldó algoritmus alkatrész modellek felhasználói interface
Áramköri szimuláció a megoldó algoritmus Sokismeretlenes, nemlineáris egyenlet (diff.egyenlet) rendszer A megoldás mára letisztult: Csomóponti potenciál módszer Newton-Raphson iteráció Reverse-Euler integrálás Sparse matrix módszerek
Áramköri szimuláció az alkatrész modellek Modell egyenletek Topológia Modell paraméterek #define MODCOD (*cat0) /* a modell-változat kódja (0) */ #define VT (*cat1) /* küszöbfeszültség */ #define I0M (*cat2) /* áramállandó a W=L esetre */ #define COX (*cat3) /* fajlagos oxidkapacitás */ #define CDIF (*cat4) /* source-drain parazita kapacitás*/
Áramköri szimuláció az alkatrész modellek A MODELLEK Meghatározzák a szimuláció pontosságát, idejét A méretcsökkenéssel újabb és újabb kihívás Modellparaméter karbantartás: jellegzetes probléma Modell szintek pl. LEVEL2 - LEVEL6... /SPICE
Áramköri szimuláció a felhasználói interface Ma általában grafikus, pl.:
Logikai szimuláció Grafikus feladat bevitel
Logikai szimuláció Eredményközlés: hullámforma reprezentáció
2. Az IC tervezés folyamata “Top-down” lépéssor: “Bottom-up” lépéssor: rendszer specifikáció teljes rendszer layout hardware leírás (pl. VHDL) (elrendezés, huzalozás) strukturális leírás (log. kapuk) makrocellák layoutja kapuk áramkörei (elrendezés, huzalozás) kapuk layoutja Megfigyelendõ a HIERARCHIA!
IC tervezés: példa a silicon compilerre S=(AB)CIN COUT=AB+A.CIN+B.CIN= AB . A.CIN . B.CIN Part fulladd[a,b,cin] -> s,cout xor[xor[a,b],cin] -> s nand[nand[a,b],nand[a,cin],nand[b,cin]] -> cout End
IC tervezés: példa a silicon compilerre Part adder (n) [x(0:n-1),y(0:n-1),carryin] -> z(0:n-1),carryout Integer i Signal carry (0:n) carryin -> carry(0) For i=0,n-1 Cycle fulladd[x(i),y(i),carry(i)] -> z(i),carry(i+1) Repeat carry(n) ->carryout End Az „instance”: adder (16) [op1(0:15),op2(0:15),Zero] -> res(0:15),overfl
2. Az IC tervezés folyamata Megtakarítható: kapuk, alegységek áramköri és layout tervezése: KÖNYVTÁR -ban rendelkezésre állnak! Silicon compiler-ek “Open” rendszerek Szabványos formátumok: VHDL, SPICE-netlist, CIF, GDSII stb.
2. Az IC tervezés folyamata Silicon compiler segítségével készült layout
2. Az IC tervezés folyamata A CADENCE OPUS rendszer standard moduljai Composer Layout Synthetizer Layout Editor Compactor Place & Route Simulation Abstract Generator
2. Az IC tervezés folyamata A CADENCE OPUS rendszer standard moduljai Composer: grafikus áramkörszerkesztő (alkatrészek szimbólumokkal, hierarchikus szerkesztés) Layout-editor: full custom tervezéshez Layout synthesizer: a Composerrel tervezett kapcs. rajzhoz layout generálása Compactor: layout tömörítő Abstract generator: cell layoutokhoz méret és kapcsolódási információk előállítása Place & Route: elhelyezés, huzalozás Simulation: beépített szimulátorok
3. Ellenőrző programok a.) Tervezési szabály ellenőrzés “szintaktikus kontroll” b.) Layout visszafejtés “szemantikus kontroll”
Tervezési szabály ellenőrzés DRC = Design Rules Check A tervezési szabályok jellege: 100 - 200 szabály/processz IGEN FONTOS! Felelősség vállalási interfész DRC program input: maszk leírás szabály leírás output: hibajelzések A “lambdás” tervezés
Layout visszafejtés Maszk visszafejtés, layout extrakció Az áramköri (logikai) leírás visszaállítása a maszk rajzolatból. Célok: ellenõrzés (a kívánt áramkört ábrázolja-e a maszk? elektromos paraméter megállapítás (vezeték kapacitás,tranzisztor áram-állandó...) Az utóbbi alapján: post-layout szimuláció