Benedek Zsolt előadása I. Mixedsignal áramkörtervezésről szól, majd az előadás… Minél magasabb frekvencia, annál inkább figyelni kell a földelésekre és a csatolásokra. Szó lesz ESDről is... A mikroelektronika táplálékláncában látható, hogy minden a mikroelektronikán alapul. Mibe tud Mo beleszólni, ezekből rendszereket tudunk összerakni minél nagyobb hozzáadott értékkel. Sajnos Mo előtérbekerült a szoftver, ami nem elég. Nekünk hardver és szoftver közösen kellene. Minden a multidiszciplina felé halad. Sajnos Mo.n a piramisból csak alulról szakítunk ki. Pedig felülről kéne, a K+F területéről, és akkor ez önmagában egyre több munkahelyet teremtene. Viszont a profit pont fordítva van, legfelül a legnagyobb, a szerelésben már kevesebb.
Tervezési metodikák Lényegében két fő vonulat van: topdown és bottomup. Ezen metodikák nem csak a tervezéshez, hanem az ellenőrzéshez is fontosak. Legelőször is elindulunk egy specifikációból, melyet le szeretnénk írni valami emberközeli nyelven. Általában szöveges formátumban kapjuk és ebből mérnöki leírást, algoritmikus leírást kell készíteni. Pl.: Matlab segítségével megpróbáljuk megtalálni algoritmusokat. Ezeket utána át kell váltani architektúrára. Itt jön a fő kérdés? Mit realizáljunk szoftveresen és mit hardveresen. Ez az első hely ahol probléma jelentkezik. Itt jutnak szerephez a rendszerszintű tervezőmérnökök. Az itt meghatározott architektúrák, már valamilyen módon hasonlítanak a végső fizikai felépítéshez. Globálisan és gyorsan tudom szimulálni algoritmikus szinten. Architekturális leírásnál már a fizikai effektusokkal is lehet számolni, foglalkozni (persze ezek csak az első lépések, a várható FŐ fizikai effektusokat vesszük itt számításba) Az architektúrális leírás már tartalmazza azt a fizikai, hardver felosztást, ami a végső megvalósított áramkörben lesz. Itt meg kell említeni, hogy minél alacsonyabb szintre megyünk le, annál jobban vesztjük el a szabadsági fokokat. Minél magasabb szinten tudom felfedezni a problémákat, annál nagyobb szabadsági fokom, lehetőségem van, annak megoldására, és annál gyorsabban is sikerül végrehajtanom (egy program kódot írok át, vagy a layoutt szerkesztem át). Time to market befolyásolja, hogy mikorra kell kijönni, azaz meddig éri meg egy tervvel kijönni a piacra. Ezért fontos már az elején jól csinálni és tervezni
(rendszerszinten), mert annál könnyebben és gyorsabban lehet javítani. Például olyan peremfeltételek jöhetnek ki így, amik később akár a konkrét technológia választást is befolyásolja. Az ellenőrzés legfontosabb része a rendszerszintű szimulációnál van. Itt hamar kiderül a probléma és gyors javításra van lehetőség. Ráadásul ezen szimulációk ha nem is pontosak (100%ak), de nagyon gyorsak, és a működésre azért már rálátunk. Itt nem fizikai elemekkel foglalkozunk, nem több 100 differenciálegyenletes modellekkel dolgozunk, hanem egyszerű algoritmusok írják le a működést. Miután magassszintű hardver leíró nyelven elkészítettük a leírást, úgy léphetünk tovább, hogy a további tervezési lépéseket (kisebb részegységek tervezése) párhuzamosan elvégezhető részekre bontjuk és ilyen formában hajtjuk végre. Ha ezt kihagyom, akkor mindent alulról kéne elkezdeni, és csak utólag kerülnének felszínre a blokkok összerakása után a problémák. A párhuzamos munka elkezdéséhez a peremfeltételeket minden blokk számára tisztázni szükséges. Itt már felvetődnek a tesztelhetőségre tervezés kérdései is, melyek szintén történhetnek párhuzamosan. Rááadásul a blokkok működése is ellenőrizhető párhuzamosan, és akár a teljes rendszerszimuláció egyes blokkok logikai/fizikai leírásával behelyettesítve elvégezhető, azaz a blokkok a teljes rendszerben tesztelhetők. Pozíció: Projektmenedzserekre hangoljuk össze a többiek munkáját. Minél kisebb W/L annál nagyobb hozzáképest a relatív szórás (analógia BSc. 3.5 éves vs. 5 éves képzéssel) Rendszerszinten kell eldönteni, hogy analóg és digitális blokkok között milyen kommunikáció legyen (ponált, negált jel, jelszintek, stb.). Minél több paraméter, minél bonyolultabb modellt írok le rendszerszinten, annál lassabb lesz a tervezés. Optimumot kell találni a bonyolultság, azaz a pontosság és a gyorsaság között. Design Architect pozíció: aki ezt a feladatot látja el, amiről eddig beszéltünk. Egy jó ötletethez kell 10 rossznak, ahhoz, hogy 1 projekted legyen, kell 10 rossz, ahhoz, hogy 1 terméked legyen kell 10 rossz. Ezért (fenn) nagyon sok ötletre van szükség… Elektronika iparban dolgozó 38% rendszerszintű tervező, 15% áramkörtervező, 16% projektmenedzser, technikus, szerelő, 60% tervezéssel kapcsolatos. „Hardverest keresnek Ericssonék, aki ért szoftverhez. Mert szoftverest nem találnak, aki hardverhez is ért.” Honnét tudom fogyasztást csökkenteni, hogy ha a legoptimálisabb (legkevesebbet változó kód) szotvert nem tudom megírni, mivel nem ismerem hardvert. Ezért kell a hardvert és a szoftvert is ismerni, együttesen tervezni.
Ha blokk szinten dolgozunk a szimuláció sebessége nagyon válik kimagaslóan fontossá. Verilog AMS, VHDL AMS kötődik fizikához, míg a SystemC nem. Analóg és digitális részek külön kell választani, és olyan környezetet kell megvalósítani, ahol mindenki közösen tudja a saját blokkját ellenőrizni a nagy egységben. Tesztszekvenciát, és szimulációs környezetet szükséges előre definiálni, és a tervezők számára rendelkezésre kell bocsátani a blokkokat (így van peremfeltétel, stb.). Pl.: egy analóg áramköri blokkot behelyettesítek, és így futtatom (a többi magasszinten leírva), mely gyors lesz és az egész rendszert tesztelem, továbbá peremfeltételek is meghatározottak, ellenőrizhetőek. Mindig cél, hogy a szimulációval időt tudjunk nyerni !!!! Végső áramkör teszteléséhez vissza kell helyettesíteni minden blokkot. Így a szimuláció lassú lesz, DE a cél, hogy ezt csak egyszer kelljen meghatározni. Ekkor a szimulációk analóg esetben már tranzisztor kapcsolási szinten, digitális esetben pedig logikai kapcsolási szinten zajlanak. Analóg és digitális blokkok között interfészt kel definiálni (A/D, D/A)… De felmerül a kérdés, hogyha RF van szó, akkor mi a teendő? Ha a vivő és a jel között „állati” nagy különbség van, akkor a tranziens a végtelenig tartana (erre másfajta szimulációk VCO, PLL,…) AdvanceMS, SpectreRF, EldoRF… Speciális algoritmusok vannak arra, hogy ezt gyorsan le lehessen futtatni (frekvenciatartományban futtatva, harmonic balance – burkoló görbéket kereső szimulációk, végén transzformáció időbe)… A layouton lévő fizikai effektusokkal, csatolásokkal nem foglalkoztunk még. Tovább… Digitálisnál fizikai szintézis eszközök állnak rendelkezésre. Logikai leírást optimalizálni szükséges és át kell váltani a valóságos technológiai cellákra. Ez gyors folyamat. Esetleg probléma lehet, hogy több tápfeszültséget kell tudni állítani, mely által a multi Vt technika is elterjedt. A szintézerek számára szintillesztést kell végezni. A mapping nem csak annyi, hogy átírjuk a logikai cellát a technológián megvalósított valódi cella nevére. Analóg eszközöket „kézzel” kell megtervezni. Architekturáját ki kell találni, hogy milyen legyen (pl. szűrő tervezésnél, melyik architektúra a legjobb számomra) ez segít az áramköri kapcsolás tervezéséhez. De a layout teljesen egyedi tervezés…. Az analóg tervezés határozza meg igazán a tervezés idejét. Ez igen lassú folyamat. RF áramköröknél több GHzen működnek a jelvezetékek. A floorplant ennek függvényében kell megpróbálni összeállítani. (érzékeny vezetékek távol zajforrástól – digit áramkörök). Ez egy iterációs ciklus lenne, ezért fontos a layout esetében a floorplan előzetes tisztázása a lehetőségekhez képest. Nem használunk automatikus elrendezést RF, analóg esetben. Ezek végeztével jöhet bottomup.
RFhez kell induktivitás is, melyet parametrizálni kell. Ezeket Aplac elnevezésű programokkal, lehet modellezni és a tervezést követően, ebből lehet extractálni és spice modellt generálni. Minden iterációs ciklus jelentős időveszteséggel jár a tervezési időt tekintve. BOTTOM UP Extract és szimulációk az egész rendszerre…
System simulation patriciónálással kezdődik. AMS szimulátor… Fastspice szimulátorok, melyek lényege, hogy felismernek ismétlődő architektúrákat, továbbá különböző modelleket tartalmaznak, amik felismernek erősítő architektúrákat, digitális részeket. Több solvert tartalmaznak, és intelligensen kiválasztja a megfelelőt.
ESL – berendezések speciális magasszintű nyelv. A készítés, tervezés előtt meg kell alkotni az elektronikus berendezés modelljét.
DESIGN FLOW
A lentről felfelé történő a szimulációknak, ellenőrzésnek van a legfontosabb szerepe. Azt a leírást amit én HDL nyelven adtam (A, D) azt követie a végső megtervezett rendszerem. Elengedhetetlen, hogy a tesztvektorokat le tudjam írni, mert nagyon fontos, hogy a tesztmérnök el tudjon kezdeni vele foglalkozni. Szimuláció másodlagos szerepe: hatékonyabb a szimulacio, ha nem a tranzisztorszintű kapcsolást helyettesítem, hanem a RC tagokkal kibővített HDL leírást (amit layoutból fejtettem vissza [extract]). Ugye ez technológiától is függ. Viszont ezt a pontosított modellt egy következő generációnál elp lehet venni. IP alapú tervezés egyre fontosabbá válik. Hard vs. Soft IP. Hard: technológiához kötve (magyarul layoutot adom), ROM, RAM, EEPROMok tipikusan. Soft: digitálisan leírva, pl.: 8051 defacto szabvány lett. Pl. soft IP az FPGA feltölthető programkódok…
Minél lejjebb megyünk a csíkszélességben, annál inkább fontosabb a szimuláció, mert az újragyártás borzasztóköltséges. Silicon Prototyping – szórásokat tudom szimulálni. Fontos a maszkelőtorzítás kérdése is. Tehát rendkívüli módon előtérbe kerül a gyártástechnológiai szórások témája.
Benedek Zsolt előadása II. 2007. november 23. Fizikai ellenőrzés (final verification), lehetőség szerint csak egyszer futassuk le – tehát úgy tervezzük fentről lefelé, hogy már eleve jó legyen . Ez a legidőigényesebb folyamat. DRC – LAYOUTon geometriai, logikai, topológiai műveletek vannak, ezekből állítjuk össze a fizikai szabálygyűjteményt. Át lehet hágni, viszont a yieldet befolyásolja. DRC közé vesszük az ESD szabályokat is, annak ellenére, hogy ritkán fejtik ki, írják le részletesen. Az áramkör hosszútávú működését befolyásolják. TSMC a legbiztosabb, legdrágább, legjobban átgondolt. Emellett az AMSnek van még nagyon jó és pontos gyártástechnológiája. Legnagyobb költség a prototípusgyártásnál a maszkköltség. Viszont ha mindenképpen szükséges változtatnom, akkor olcsóbb, ha csak egy maszkom van. Ennek elősegítésére a legfelső maszkokon olyan extra viákat helyezünk el, hogy könnyen lehessen váltani. Létre lehet hozni olyan FIBket (Focused Ion Beam), melyekkel el tudunk égetni , vagy képesek leszünk felépíteni vezetékeket (5..6 sample esetén lehetséges). Ezzel utólagosan hozzá tudunk nyúlni a kész chiphez. Ügyelni kell, hogy a sémának ugyanaz feleljen meg a layouton. Általában használnak spare partokat, dummy cellákat, logókat, amiket ki szoktunk hagyni az extractból és LVSből, mivel ezek a sémában nincsenek benne. Újabb programok a visszafejtésnél felismerik ezeket a kiegészítő elemeket. Hierarchikus terv gyorsabban futhat le, mint flat, mert ha azt ismételjük többször akkor csak egyszer fut le.
0.35 µm alatt szükséges a „stress rules” bevezetése és az antenna ellenőrzés. Antenna akkor alakul ki, ha a vezeték olyan hosszú, hogy RF jelet átveszi, mellyel a hullámhossz 20ad részét elérő vezetékhossz esetén kell számolni (lambda/20), ez 1 GHzes jel esetén 15 mm, mindazonáltal ez nagyon ritka. Ha leválasztunk valamilyen réteget, először egész felületre kell leválasztani, majd plazma marást végzek. Ha nagy részeket akarok eltávolítani, akkor nagy elektromos térerő szükséges,
jobban feltöltődhet és ha Gatehez kapcsolódik, a gateoxid egyre kisebb, vékonyabb, így egyre könnyebben üthet át, ezért vigyázni kell. Stress – mekkora fémezést teszek rá. Ha minimális méreten dolgoztunk, akkor nagy szórás lehet. Ha maximummal – ha sok a fémezés – akkor fizikailag meghúzhatja a felületet (hőtágulás különbségre gondolni kell) Latchup jelenségek – igen pici ellenállású szubsztrát használata során (Source R csökken) npnp 4es réteg által alkotott latchup hatás erősödik.
Az új tervező eszközök, szabályalapúak. Meg van határozva hogy X réteg Y réteghez Z távolságra, melyek együttfutása Q lehet, stb… Az ilyen szabályalapú gyűjteménnyel jó optimumot lehet elérni. Fizikai részekhez tartozó szabályok (együttfutás, távolság, crosstalk kiküszöbölése a cél ezzel pl.) Elektromos szabályok (adok értéknél nem eshet nagyobbat a feszültség a vezeték hosszán – kis vezeték nagy R, széles vezeték kisebb R) Tervezési szabályok… Infrastruktúra – Tervező eszközök összessége és a hardver architektúra. Harmadlagos, negyedleges effektusokkal (RFnél még kölcsönös induktivitásokkal) is kell számolni, hogy a pici feszültség változás nem okoz e nagy zavart. – 3D solverek használata. Ez NAGYON DRÁGA, de meg kell fizetni… – Kell egy koherens egységnek lenni. – Tudni kell mi a végcél, és ehhez milyen módszertan kell. Ezekhez eszköz kell, és ehhez egységes eszközkészletet kell választani, melyet egységben kell tartani. Vagy plusz ember kell, de annak költsége lehet, hogy nagyobb lesz. – Ne használjunk 86 szoftver cégtől terméket, hanem max 2..3 (Cadence, Mentor Magma, Synopsys, Tanner…) – Time to Market: drágább szoftverrel gyorsabb piaci megjelenés lehetséges. EDACard – egy adott projetekre licenszálhatom a programokat. Kapok egy feltöltött kártyát és kapcsolódok egy szerverhez, és én osztom be. De például szimulátor biztos mindig kell, azt érdemes évest venni. Embereknek (alkalmazottaknak) használni kell tudniuk a tervezőkörnyezeteket. Ez az igazán drága, egy kurzus 700 EUR/nap is lehet. Habár első közelítésben ez rendkívül drágának tűnik, egy ember teljesítménye nagyon megnő, így érdemes mérlegelni, hogy mi éri meg jobban.
Valahol futtatni is kell ezeket a programokat. Szimulációra, DRCre, EXTra, LVShez, nagy teljesítményű gép kell. Meg kell fontolni, hogy milyen nagy gépet vegyünk milyen HDD, processzor, RAM kell neki. Fájlrendszerek: ReiserFS en csak szimuláció fut, mivel gyors. Többi EXT3 az RAIDelve, a megbízhatósága miatt. Ha Clusterbe szeretnénk futatni, akkor több license és gigabites switchek kellenek. Still HEADek olyan speciális hardverek, melyek beépülnek hangos protokollok (nfs, stb…) és a kapcsolat közé. A Still HEAD ezt elintézni helyettünk, nekünk már csak a lényeggel kell foglalkozni. Szervereket érdemes egy helyre tenni, és hozzájuk kell kapcsolódni. (IT egy helyen) Azonban LocalCache kell nagy irodánként, a Mentor, Cadence programokhoz. Wide Area File System a jövő, csak rsync módon – csak a különbséget updateeli.
Verziókövetés is nagyon nehéz ügy. Innét layout Maloberti Lecture Note 02 pdf