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 103
Process technology design gap
102
Design productivity 101
4
12/10/2007
8
12
16 year
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
N
System requirements
További szempontok System specifications
Use ASIC?
Y Standard ICs ASIC design style selection
•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!
ASIC design 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
Behavioural (architectural) description
ASIC tervezés Logic synthesis
A fő lépések
user Schematic netlist
Layout synthesis
vendor Mask pattern data
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ű 12/10/2007
Constraints : •időzítés •max.megengedett teljesítmény •max.megengedett terület •tesztelhetőség, stb.
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 kellett standard-ek
egységesíteni
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.
12/10/2007
• 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
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 állapot, 1GHz-es órajelet feltételezve kb. 585év) → külön tudományág a tesztelhetőre való tervezés (design for testability). 64
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