Budapest Műszaki és Gazdaságtudományi Egyetem Elvonatkoztatási szintek a digitális rendszertervezésben Elektronikus Eszközök Tanszéke eet.bme.hu Rendszerszintű tervezés BMEVIEEM314 Horváth Péter 2013
Rendszerszint (algoritmus szint) (ASIC/FPGA) Tervezési egység: GPCPU, GPGPU, DSP, memória (cache, operatív memória, háttértár), IO alrendszer, periféria-vezérlők, interfészek stb. A rendszer funkcionálisan jól elkülöníthető részekre bontása, az alrendszerek közötti interfészek definiálása Tervezői döntések mikroprocesszoros rendszerek esetén Mikroprocesszorok száma (egyprocesszoros vagy többprocesszoros rendszer) Memória-alrendszer topológiája (multiprocesszor, multiszámítógép) Memória-hierarchia (cache szintek és méretek) Kommunikációs modellek: hand-shake, mailbox, FIFO stb. eet.bme.hu 2
Regiszter-átviteli szint (RTL) (ASIC/FPGA) Tervezési egység: regiszter, memória, multiplexer, ALU, számláló stb. A mikroarchitektúra szintje Vezérlés és adatmanipuláció szétválasztása (vezérlő állapotgép + műveletvégző egység) A klasszikus logikaiszintézis-eszközök bemenete Tervezői döntések tárolt programú gépek esetén vezérlés: single-cycle vs. multicycle megvalósítás; SISD/SIMD; pipeline implementáció és a hozzá kapcsolódó technikák: adat-előrecsatolás (dataforwarding), elágazásbecslés (branch-prediction), sorrendtől eltérő végrehajtás (out-of-order execution), regiszterátnevezés (register renaming), feltételezett végrehajtás (predication) belső adattárolási struktúrák (regiszterek, regisztertömbök száma, interfészeik száma, cache architektúra kiválasztása) órajelséma: órajelek száma, frekvencia, fázis A megvalósítás alapjául szolgáló technológia figyelembe veendő (ASIC vs. FPGA) eet.bme.hu 3
Kapuszint (ASIC) Tervezési egység: logikai kapu, flip-flop Hazárdok kiküszöbölése Tervezői döntések Kétszintű vs. többszintű logikai hálózat Alapcella-készlet kiválasztása: technológiai könyvtár (kapuk bemeneteinek száma, fogyasztás, flip-flopok esetén szinkron/aszinkron set/reset funkciók stb.) Kapuszintű architektúra kiválasztása; pl.: ripple-carry adder vs. carry lookahead adder eet.bme.hu 4
Áramköri szint (ASIC) Tervezési egység: tranzisztor Technológia kiválasztása: tranzisztormodellek (Ebers-Moll, Gummel-Poon, EKV, BSIM3) Tervezői döntések A kapcsolástechnika kiválasztása (ECL, SCL, nmos, statikus CMOS, dinamikus CMOS stb.) Topológia kiválasztása (domino CMOS, alternáló domino CMOS, pipeline domino CMOS stb.) eet.bme.hu 5
Layout (ASIC) Tervezési egység: standard cellás esetben az alapcella, full-custom esetben poligon Optimalizálás területre/fogyasztásra/sebességre Alkatrészek elhelyezése: interdigitális elrendezés, termikus és elektromos csatolások, áthallások figyelembevétele Parazita hatások kiküszöbölése (kapacitív csatolások) vagy kihasználása (MOS kapacitás: szűrés) Tervezői döntések Alkatrészek-orientáció Technológiai könyvtár speciális lehetőségeinek kihasználása (nagy ellenállású poli-si, megnyomott ellenállás, poli-si kapacitás, MOS-kapacitás) eet.bme.hu 6
Eszközszint (ASIC) A tranzisztorok paramétereinek (küszöbfeszültség, kapcsolási sebesség, maximális feszültség) beállítása, karakterisztikájának optimalizálása Arányos méretcsökkentés (scaling) Rövid- és keskenycsatornás effektusok (küszöbfeszültség-eltolódás, csatornahossz-moduláció) kompenzálása Forróelektron-hatás megelőzése Gate-kiürülés megelőzése Latch-up megelőzése Kvantumhatások (küszöbfeszültség-eltolódás, tunnel-áram) kiküszöbölése (HKMG) vagy kihasználása (EEPROM) eet.bme.hu 7
Technológia (ASIC) Technológiai paraméterek (diffúzió hőmérséklete, időtartama, implantáció energiája, időtartama stb.) hatása az eszközkonstrukció szempontjából fontos jellemzőkre (oxidvastagság, vezetőképesség, kisebbségi töltéshordozók élettartama, töltéshordozómozgékonyság, szennyezőatomok koncentrációja stb.) Fe Fe Fe 8 eet.bme.hu