Integrált áramkörök/6 ASIC áramkörök tervezése Rencz Márta Elektronikus Eszközök Tanszék 12/10/2007 1/25
Mai témák Integrált áramkörök tervezése Az ASIC tervezés gyakorlata ASIC tervezési technikák Az ASIC tervezési folyamat lépései A ma legfontosabb hardware leíró nyelvek 12/10/2007 2/25
Integrált áramkörök tervezése IC gyártás: A mélységi struktúra kialakítása IC Tervezés: a felületi struktúra kialakítása Teljesen elválik a gyártástól, térben és időben is Az óriási adat-tömeg kezelésére: CAD módszerek A kettő közötti kapcsolat: tervezési szabályok (design rules) technológia file-ok formájában 12/10/2007 3/25
Integrált áramkörök létrehozása IC Tervezés: nem tud lépést tartani a technológia fejlődése által biztosított lehetőségekkel amit lehet, újra kell hasznosítani... g complexity 10 3 Process technology 10 2 10 1 design gap Design productivity 4 8 12 16 year 12/10/2007 4/25
Integrált áramkörök tervezése Top-down módon történik általában A rendszer szintű leírást bontjuk egyre finomabb elemekre Bottom-up: kivételes esetekben a részletek összerakásával állítunk elő valami újat 12/10/2007 5/25
Az ASIC tervezés gyakorlata A tervező-felhasználó az IC gyártó céggel általában csak egy közvetítőn keresztül van kapcsolatban, ez a vendor, pl. Multi-project-wafer tervező és összeállító hely, vagy az IC gyártó cég tervező csoportja, stb Kulcsátadásos módszer A felhasználó elkészíti a rendszerszintű tervet, meghatározza a tervezési stílust és megtervezi a logikai leírást. Innentől kezdve a vendor tervez tovább, intézkedik a legyártásról és tesztelésről Foundry módszer. A felhasználó végigcsinálja a teljes tervezést, a vendor feladata csak a legyártás és tesztelés. 12/10/2007 6/25
Az IC megoldás kiválasztásának módja Hogy milyen módszert választunk azt gyakran az anyagi források döntik el. Kis példányszám: olcsóbb megoldáshoz kell folyamodni, pl FPGA megoldás Standard ICs N System requirements System specifications Use ASIC? ASIC design style selection ASIC design Y További szempontok Analóg-digitális HW/SW aránya Műszaki paraméterek Gazdaságosság megbízhatóság átfutási idő élettartam továbbfejleszthetőség újrafelhasználhatóság! 12/10/2007 7/25
ASIC tervezési technikák Top-down tervezési mód Behavioral description Logic synthesis A rendszer-szintű leírásból kiindulva a logikai terven ill. áramkör listán keresztül jutunk el a layout megtervezésével a szükséges maszk minták kialakításához. Schematic netlist Layout synthesis Place and route 12/10/2007 8/25
ASIC tervezés Behavioural leírás a rendszer viselkedésének leírása valamilyen hardware leíró nyelven. Ebből az ún. logikai szintézis programok határozzák meg a megfelelő architektúrát, a szükséges logikai elemeket és azok összeköttetéseit netlist Az áramköri szintű leírás az ún. Netlist (hardware leíró nyelven). Ebből a layout szintézis segítségével (place and route) készül el a szüksége maszkok mintázata valamilyen geometria leíró nyelven. Mindezek a lépések nagyban függenek a választott technológiától és tervezési módtól. 12/10/2007 9/25
ASIC tervezés A fő lépések Behavioural (architectural) description Logic synthesis Schematic netlist user Layout synthesis Mask pattern data vendor Kulcsátadásos módszer Chip production Testing Delivery to customer 12/10/2007 10/25
Az ASIC tervezési folyamat lépései Funkcionális tervezés Design specification: rendszer specifikáció, a tervezési folyamat legfontosabb eleme. Meghatározza a tervezendő áramkör valamennyi funkcióját és a rendszer további elemeivel való összeköttetéseket. A választandó ASIC típus kiválasztásának alapja A logikai szintézis alapja köv.oldal... Valamilyen hardware leíró nyelven (HDL) történik. ( később) 12/10/2007 11/25
Logikai szintézis Ma már analóg áramkörökre is... HDL: Hardware description language viselkedés szintű strukturális szintű Constraints : időzítés max.megengedett teljesítmény max.megengedett terület tesztelhetőség, stb. 12/10/2007 12/25
Az ASIC tervezési folyamat lépései Layout tervezés Különböző szintű szimulációkkal ellenőrizzük (általában interaktívan) a specifikációk teljesítését 12/10/2007 13/25
A ma legfontosabb hardware leíró nyelvek Korábban számtalan in-house HDL egységesíteni kellett standard-ek VHDL(Very high speed IC hardware description Language): az USA DoD által definiált nyelv, ez lett az IEEE standard. Mindenfajta rendszer minden típusú leírására alkalmas nagyon bonyolult. Szintjei: Behavioral : az algoritmus leírására register transfer level (RTL): az adatfolyam (data flow) leírására Struktúrális : kapuszintű leírás 12/10/2007 14/25
A ma legfontosabb hardware leíró nyelvek VHDL Technológia független leírás Általánosan használható (generic), struktúrális szinten környezettől, eszköz karakterisztikáktól független Jól olvasható Entity és Architecture deklarációs blokkokból áll Entity: a név, a ki- és bemeneti kapuk, paraméterek megadása Architecture: A funkció és a fizikai paraméterek megadása benne a begin és end közötti utasításokat egyszerre (hardware!) kell végrehajtani, nem egymás után 12/10/2007 15/25
Példák VHDL RTL szintű leírásra OR kapu leírása: AND-OR: A több lehetséges megoldás közül egy optimálisat, pl. a leggyorsabbat fogja választani 12/10/2007 16/25
Teljes összeadó különböző szintű VHDL leírásai 12/10/2007 17/25
A ma legfontosabb egyéb hardware leíró nyelvek Verilog: a C nyelven alapuló hardware leíró nyelv. Ez ma a de facto standard. A CADENCE tervező pr. nyelve Egyszerű, jól olvasható, ma már gyakorlatilag minden tervezőrendszer ismeri. SYSTEM C: új, a C nyelven alapuló hardware leíró nyelv a hardware-software co-design divatos nyelve EDIF (Electronic Design Interchange Format)... a kapuszintű leírástól a fizikai szintű leírásig A különböző kereskedelmi forgalomban levő CAD rendszerek közötti átjárást biztosítja 12/10/2007 18/25
Integrált áramkörök tesztelése Az áramkör gyártás integrális része, az egyik legköltségesebb. A tesztelés költsége mintegy 10 szeresére növekszik a chip tokozott IC berendezés beépített berendezés folyamat egyes lécsőin fölfele -> az esetleges hibát mielőbb fel kell tárni, és lehetőség szerint javítani. 12/10/2007 19/25
Integrált áramkörök tesztelése VLSI áramkörök esetén minden állapot ellenőrzése évszázadokba telne (pl. 32bites szorzó: 2 64 állapot, 1GHz-es órajelet feltételezve kb. 585év) külön tudományág a tesztelhetőre való tervezés (design for testability). Hibamodelleket kell alkotni, és olyan bemeneti kombinációkat találni, amikkel a hiba nagy valószínűséggel kimutatható Ma már része a szintézis programoknak, bár messze van a tökéletes megoldás... 12/10/2007 20/25
Megoldások Scan design: Olyan többlet áramköri részleteket építenek be az áramkörbe,amik a tesztelhetőséget segítik. Pl. regisztereket, amiket sorba lehet kapcsolni, és kívülről kiolvasni ill. beírni a tartalmukat. Az áramkör 25-35%-a is lehet a test-overhead. Built in self test : beépített önteszt On-line self test: működés közben is állandóan ellenőrző beépített önteszt 12/10/2007 21/25
Boundary scan A board tesztelést szolgálja Lényege: minden I/O cella mellé tesznek egy BS cellát az IC-n, amik változtatható bekötésűek. Sorba kapcsolva egy-egy shift regisztert (BSR) képeznek, aminek bemenete a TDI(test data in), kimenete a TDO (test data out), Ezeken keresztül kiolvashatók a pin adatok,ill. jeleket kényszeríthetnek az IC belsejébe. 22/25
Boundary scan Az IC-n 2 további többlet pin szükséges: TMS(Test mode select) ami az IC-t teszt üzemállapotba kapcsolja, ill. a TCK órajel. Opcionális 5. extra pin a TRST (test reset). Ez az 5 pin a TAP (Test access ports). Az ezeket vezérlő elektronika a TAP controller (kötött logika). Instruction register: ebben definiálhatók uj utasítások, az első 4 kötött (extest, intest, stb) A BR bypass regiszter az alternatív út: az IC-t megkerüli a tesztelés ezen keresztül (a többi IC tesztelésekor szükséges). Identification register 23/25
Intest: Az IC működésének tesztelése 12/10/2007 24/25
Extest : a panel tesztelése A panel összes IC-je sorba van kötve. Az egyes IC-k közötti összeköttetések vizsgálhatók. 12/10/2007 25/25
Az IC-ket kikerülő út, ha egy IC-n intest BR bypass register A kijelölt IC-be így gyorsan eljuttatható az adat. 12/10/2007 26/25
TDI: vagy IR-be, vagy egy DATA regiszter-be, TMS állapotától függően. Egy ilyen tárolja pl. az IC identifikációs adatait. TDO: vagy IR-ből, vagy egy DATA regiszter-ből, TMS állapotától függően egy D flipflopon keresztül IR: egy shift regiszter, ami kiválasztja a data regisztereket ill. a végzendő tesztet 12/10/2007 27/25