Magas szintű logikai szintézis

A tantárgy angol neve: High-Level Logic Synthesis

Adatlap utolsó módosítása: 2006. július 1.

Tantárgy lejárati dátuma: 2009. november 24.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Villamosmérnöki Szak

Műszaki Informatika Szak

Választható tárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIFO4028 6 4/0/0/v 5 1/1
3. A tantárgyfelelős személy és tanszék Dr. Arató Péter,
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Arató Péter

egyetemi tanár

Irányítástechnika és Informatika

Dr. Horváth István

egyetemi adjunktus

Irányítástechnika és Informatika

Dr. Horváth Tamás

egyetemi adjunktus

Irányítástechnika és Informatika

5. A tantárgy az alábbi témakörök ismeretére épít

Digitális technika, Informatika

6. Előtanulmányi rend
Ajánlott:

Tematikaütközés miatt a tárgyat csak azok vehetik fel, akik korábban nem hallgatták a következő tárgyakat:

Neptun-kód Cím

7. A tantárgy célkitűzése

Az igen nagy sebességű digitális adat- és jelfeldolgozás fokozódó mértékben igényli azokat a gyors számítóműveket, amelyeket ún. célrendszerként egy konkrét feladat, vagy egy szűkebb feladatosztály hatékony, gyors megoldására hoznak létre. Az ilyen eszközök specifikálása és az előírt viselkedésből kiinduló tervezése egyre inkább az alkalmazó mérnök feladata addig a strukturális szintig, ahonnan már a megvalósítás elvégezhető vagy megrendelhető a többnyire kereskedelmi forgalomban lévő, számítógéppel segített tervező és gyártó rendszerek alkalmazásával. A feladatspecifikációtól a lehető legkedvezőbb struktúra meghatározásáig terjedő folyamat a magasszintű logikai szintézis (high-level logic synthesis: HLS) és lényegében olyan algoritmusok összessége, amelyek a viselkedési előírás szintjén még meglévő szabadsági fokok adta lehetőségekkel élve kísérlik meg az optimális struktúra létrehozását. A tárgy célja e módszerek megismertetése és a tervezői készség kialakítása, különös tekintettel a pipeline működésű (futószalag elvű) rendszerekre, a specifikációs és viselkedési leírás elterjedt nyelvi eszközeire (pl. VHDL), valamint az EPLD, FPGA, ASIC technológiákon alapuló tervező rendszerekhez való csatlakoztathatóságra

8. A tantárgy részletes tematikája

Az algoritmustól a szilíciumban történő megvalósításig terjedő szintézis folyamat főbb fázisainak áttekintése ( specifikációs, viselkedési, strukturális, geometriai és technológiai szintek).

A specifikációs és a viselkedési szinten megfogalmazható tervezési célkitűzések. A specifikációban rejlő szabadsági fokok kihasználása (az elemi műveletek definíciója, párhuzamosság-vizsgálat, rekurzív hurkok kezelése, feltételes elágazások kezelése, kanonikus specifikáció létrehozása). Vezérlési- és adatfolyam elvű leírási módok a kanonikus specifikáció alapján ( az adatfolyam elvből származó peremfeltételek ütemezett szinkron vezérlés esetén, központi vezérlő egység leválasztási módjai, egyszerű elosztott vezérlés meghatározása, kanonikus viselkedési adatmező kialakítása). A viselkedési szint tervezési lépései (nonpipeline és pipeline ütemezés célkitűzése, közbenső tárolók behelyezése és elemi operációk többszörözése, a művelet-összevonó módszerek célja, idő-tér döntések, a strukturális leírás kialakítása).

Ütemező (scheduling) módszerek (ASAP és ALAP ütemezés, integer programozás alkalmazása, erővezérelt algoritmusok, listaorientált algoritmusok., heurisztikus késleltetés-elhelyező módszerek). Előre megadható pipeline újraindítási időre való tervezés.

Művelet-összevonó és elhelyező (allocation) módszerek (az egyidejűség egyszerű kizárása, azonos operációk összevonása, regiszter-blokkok elkülönített kezelése, szisztolikus, iteratív, celluláris és egyéb homogén reguláris struktúrák kialakításának speciális követelményei, az összeköttetések számának redukálása).

Költségfüggvények definiálása. Az újraindítási és a lappangási idő változtatásának hatásvizsgálata. Feladatfüggő lokális optimumok meghatározásának módszere.

A VHDL, mint viselkedési és strukturális szintű leírónyelv főbb szabályai és alkalmazástechnikája.

A felhasznált építőelemek által szabott peremfeltételek figyelembe vétele ( EPLD elemek, mikroprogramozható struktúrák, Gate-array típusú elemek, ASIC elemek, jelfeldolgozó processzorok).

Tervezési példák a magasszintű logikai szintézis tipikus benchmark feladataira (digitális konvolúció, gyors Fourier-transzformáció, mátrix aritmetika, rendezés, válogatás, szűrés, korrelációs számítások). Az eredmények összehasonlíthatósági analízise, következtetések.

A magasszintű logikai szintézis eredményeként létrejövő struktúra-specifikáció leírása VHDL nyelven és illesztése a további tervezési lépéseket végrehajtó CAD rendszerekhez (LOG/IC, ABEL, VIEWLOGIC, XILINX, CADENCE, stb.).

A magasszintű logikai szintézis, mint az algoritmustól a szilíciumban történő megvalósításig terjedő teljes tervezési folyamatot átfogó szakértői rendszerek része.

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás, tervezési feladat.

10. Követelmények
  1. A szorgalmi időszakban:
  2. A félév lezárásához szükséges a tervezési feladat bemutatása. A félév során két alkalommal lesz nagy H, mindkettőt egy-egy alkalommal lehet pótolni hiányzás esetén, vagy elégtelen osztályzat esetén. A tervezési feladat sikeres megoldása és eredményes nagyZH esetén vizsgajegyre tehetünk javaslatot.

  3. A vizsgaidőszakban:

A vizsga írásbeli. A vizsgaeredményt 25%-ban befolyásolja a tervezési feladatra kapott osztályzat.

c. Elővizsga:

13. Jegyzet, tankönyv, felhasználható irodalom

P. Arató- T. Visegrády - I. Jankovits: High Level Synthesis of Pipelined Datapaths,

J. Wiley&Sons, 2001.

R. Camposano, W. Wolf:High-Level Synthesis. Kluwer Academic Publisher, 1991.

D. Gajski: High-Level Synthesis. Kluwer Academic Publisher, 1992.

A. A. Jerraya - Hong Ding - P. Kission - M. Rahmouni: Behavioral Synthesis and Component Reuse with VHDL. Kluwer Academic Publishers, Boston/London/Dordrecht, l997.

+ tanszéki segédletek.

15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Arató Péter

egyetemi tanár

Irányítástechnika és Informatika

Dr. Horváth István

egyetemi adjunktus

Irányítástechnika és Informatika

Dr. Horváth Tamás

egyetemi adjunktus

Irányítástechnika és Informatika