A RENDSZERSZINTÉZIS ÚJ ELVEI



Hasonló dokumentumok
A következő angol szavak rövidítése: Advanced Product Quality Planning. Magyarul minőségtervezésnek szokás nevezni.

GÉPÉSZETI ALAPISMERETEK

Jeges Zoltán. The mystery of mathematical modelling

Idő-ütemterv hálók - II.

1. MINTAFELADATSOR KÖZÉPSZINT JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Mindennapjaink. A költő is munkára

Mérnökirodai szolgáltatásunk keretében további felvilágosítással, szakmai tanácsadással is állunk tisztelt ügyfeleink rendelkezésére.

Villámvédelem 3. #5. Elszigetelt villámvédelem tervezése, s biztonsági távolság számítása. Tervezési alapok (norma szerint villámv.

Szent László Általános Iskola helyi tanterve

FPC-500 hagyományos tűzjelző központ

JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Laplace transzformáció

TÁMOP C-11/1/KONV Nemzeti kutatóközpont fejlett infokommunikációs technológiák kidolgozására és piaci bevezetésére

Gyakorló feladatok a Kísérletek tervezése és értékelése c. tárgyból Kísérlettervezés témakör

PISZKOZAT. Ügyiratszám : be/sfphp /2014 1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Pannonhalma Sportegyesület

Széchenyi István Egyetem MTK Szerkezetépítési és Geotechnikai Tanszék Tartók statikája I. Dr. Papp Ferenc RÚDAK CSAVARÁSA

Praktikus tippek: Lambdaszondák ellenőrzése és cseréje

Csak felvételi vizsga: csak záróvizsga: közös vizsga: Villamosmérnöki szak BME Villamosmérnöki és Informatikai Kar május 31.

Szabadúszókra vonatkozó melléklet

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Beledi Sportegyesület

Kidolgozott minta feladatok kinematikából

A m becslése. A s becslése. A (tapasztalati) szórás. n m. A minta és a populáció kapcsolata. x i átlag

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Mezőfalvi MEDOSZ SE

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: ŐCSÉNY SPORTKÖR

Beszerzési és elosztási logisztika. Előadó: Telek Péter egy. adj. 2008/09. tanév I. félév GT5SZV

A projektirányítás a költségekkel, erőforrásokkal és a felhasznált idővel foglalkozik. A konfigurációkezelés pedig magukkal a termékekkel foglalkozik.

Frekvenciatartomány Irányítástechnika PE MI BSc 1

HIERARCHIKUS RENDSZER-SZINTŰ SZINTÉZIS

Jó teljesítmény... évekre szóló befektetés

VIII. Reinforced Concrete Structures I. / Vasbetonszerkezetek I. Dr. Kovács Imre PhD tanszékvezető főiskolai tanár

Ügyiratszám : be/sfphp /2014/mlsz 1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Encsencs Sportegyesület

Hidraulikatömítések minősítése a kenőanyag rétegvastagságának mérése alapján

Forgó mágneses tér létrehozása

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Magyaralmás Sportegyesület

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Lakiteleki Torna Egylet

PISZKOZAT. 1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Kesztölci Sportegyesület

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Sportegyesület Bodroghalom Közhasznú Egyesület

A kérelmező szervezet rövidített neve: SRK DSE 2Gazdálkodási formakód: 001. Áfa levonásra a pályázatban igényelt költségek tekintetében

BROADBAND MEDIA HUNGARY Távközlési Szolgáltató Korlátolt Felelősségű Társaság

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Petőfi Sportkör Lipót

Az előadáshoz. Tartalom

NYILATKOZAT. Egyesülés, szétválás ideje: (év) (hónap) (nap)

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Cece Polgári Sport Egyesület

A 2006/2007. tanévi Országos középiskolai Tanulmányi Verseny második fordulójának feladatai és azok megoldásai f i z i k á b ó l. I.

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Söpte Sportegyesület

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Túrricse Sportegyesület

A mobil hírközlés alapjai

A maximálisan lapos esetben a hurokerősítés Bode diagramjának elhelyezkedése Q * p így is írható:

Digitális elektronika gyakorlat. A VHDL leírástípusok

PISZKOZAT. 1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Jobbágyi Honvéd Sportegyesület

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Nagyközségi Sportklub Sárosd

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Szanki Olajbányász Sportegyesület

Digitális eszközök típusai

A KUTATÁS EREDMÉNYEI ZÁRÓJELENTÉS

Családi állapottól függõ halandósági táblák Magyarországon

PISZKOZAT. Ügyiratszám : be/sfphp /2014 1Érkezett : 1. A KÉRELMEZŐ ADATAI

MINERVA TÉRINFORMATIKAI RENDSZER ELEKTROMOS HÁLÓZAT TÉRINFORMATIKAI INTEGRÁCIÓJA

Fajszi SE. Szilágyi Csaba

1-1. számú melléklet PÁLYÁZATI FELHÍVÁS

StP Beléptető és Munkaidő-nyilvántartó Rendszer. Általános leírás

FELÜLETI HŐMÉRSÉKLETMÉRŐ ÉRZÉKELŐK KALIBRÁLÁSA A FELÜLET DŐLÉSSZÖGÉNEK FÜGGVÉNYÉBEN

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Téglás Városi Sportegyesület

Madocsa Sportegyesület. Madocsa Sportegyesület. Madocsa Szállás (út, utca) Telefon: Honlap:

Maradékos osztás nagy számokkal

Szakács Jenő Megyei Fizika Verseny, II. forduló, Megoldások. F f + K m 1 g + K F f = 0 és m 2 g K F f = 0. kg m

Mit keressek? Uccu! könyvtár. Teljes kiírás (hosszú!) L.nY..dEZ

MINERVA TÉRINFORMATIKAI RENDSZER GÁZHÁLÓZAT TÉRINFORMATIKAI INTEGRÁCIÓJA

PISZKOZAT. 1Érkezett : 1. A KÉRELMEZŐ ADATAI. A kérelmező szervezet teljes neve: Bácsborsódi Sportkör

A Széchenyi István Szakképző Iskola Szakmai Programja Kereskedő. csop. bontá s. osztá lyker et. gyak. csop

VIII. BERENDEZÉSORIENTÁLT DIGITÁLIS INTEGRÁLT ÁRAMKÖRÖK (ASIC)

FIZIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Tarnaleleszi MSE. Nem jogosult. Adószám: Bankszámlaszám: Molnár Gábor. elnök. Molnár Gábor

Az aszinkron (indukciós) gép.

A ZÖLDENERGIÁK ELŐÁLLÍTÁSÁNAK TECHNIKAI ASPEKTUSAI SOME TECHNICAL ASPECTS REGARDING THE GREEN ENERGIE PRODUCING

Smart. Solid. Secure.

LÉTRADIAGRAM FORDÍTÓK ELMÉLETE PLC VEZÉRLÉSEK SZÁMÁRA II.

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: 2000 Celldömölk Utánpótlás Futball Club Közasznú Egyesület

Szinuszjel-illesztő módszer jeltorzulás mérésekhez 1. Bevezetés 2. A mérés elve

Dinamika. F = 8 N m 1 = 2 kg m 2 = 3 kg

1Érkezett : 1. A KÉRELMEZŐ ADATAI A kérelmező szervezet teljes neve: Felsőpakony Községi Sportegyesület

Miért kell az autók kerekén a gumit az időjárásnak megfelelően téli, illetve nyári gumira cserélni?

Változók közötti kapcsolat II. A nominális / ordinális eset: asszociációs mérőszámok.

NAGYKANIZSA MEGYEI JOGÚ VÁROS POLGÁRMESTERE. E L Ő T E R J E S Z T É S NAGYKANIZSA MEGYEI JOGÚ VÁROS KÖZGYŰLÉSÉNEK április 28-i ülésére

Egyedi cölöp süllyedésszámítása

Számítógépes Hálózatok 2010

Proxy Cache Szerverek hatékonyságának vizsgálata The Performance of the Proxy Cache Server

PISZKOZAT. 1Érkezett : 1. A KÉRELMEZŐ ADATAI. A kérelmező szervezet rövidített neve: CKSE 2Gazdálkodási formakód:521 3Tagsági azonosítószám 1322

A WEB SZERVER MEGHIBÁSODÁSÁNAK HATÁSA A PROXY CASH SZERVEREK HATÉKONYSÁGÁRA. Bérczes Tamás, Sztrik János Debreceni Egyetem, Informatikai Kar

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

TARTÓSZERKEZETEK II.-III.

Azért jársz gyógyfürdőbe minden héten, Nagyapó, mert fáj a térded?

Érzékelők és beavatkozók

A rögzített tengely körül forgó testek kiegyensúlyozottságáról kezdőknek

Információ-architektúra

1.40 VARIFORM (VF) Légcsatorna idomok. Légcsatorna rendszerek

1. SZAKASZ: Az anyag/keverék és a vállalat/vállalkozás azonosítása

Pákozd. Csordás Zsolt

Budapesti Műszaki és Gazdaságtudományi Egyetem Közlekedésmérnöki Kar Repülőgépek és hajók Tanszék

Információs rendszerek biztonságtechnikája

Gyengesavak disszociációs állandójának meghatározása potenciometriás titrálással

Átírás:

A RENDSZERSZINTÉZIS ÚJ ELVEI Arató Péter ÖSSZEFOGLALÓ A mikroelektronika gyor fejlődée egyre bonyolultabb, intelligen, (Intellectual Property Unit, IP) kézen kapható funkcionáli egyégeket kínál építőelemekként a tervezőknek. Az ezáltal kínálkozó jelentő előnyök kihaználáához maga abztrakció zintről, ún. vielkedéi pecifikációból kell indítani a tervezéi folyamatot, amelyet rendzerzintű zintézinek neveznek. A vielkedéi zintről kiinduló ziztematiku tervezéi módzerek az 80a évek elejétől alkalmazott ún. maga zintű zintézi algoritmuainak kiterjeztée révén alakultak ki. A cikk áttekintét nyújt erről a folyamatról, é bemutatja a rendzerzintézihez alkalmazott dekompozíció, valamint hardver/zoftver együtte zintézi eljáráok lényegét. SUMMARY The rapid development in microelectronic offer more and more complex readymade intelligent functional unit (Intellectual Property Unit, IP) a building block for the deigner. In order to exploit the ignificant advantage of thee unit, the deign procedure i to be tarted from a high abtraction level called behavioral pecification. Such a deign method i called ytem level ynthei which i baed on the extenion of the algorithm of the o called high level ynthei applied from the early 1980. Thi paper give a urvey on thi procedure and preent the eential feature of the decompoing and hardware/oftware codeigning method applied in ytem ynthei. BEVEZETÉS A mikroelektronikai ipar állandó gyor fejlődée egyre bonyolultabb, intelligen, (Intellectual Property, IP) kézen kapható funkcionáli egyégeket kínál építőelemekként a tervezőknek (1. ábra). Kommunikáció IP HW SW Kommunikáció 1. ábra Intelligen funkcionáli elem (IP) zemléltetée Az ilyen komponenek (IPk) adaptálhatóága, programozhatóága é rekonfigurálhatóága kedvező lehetőéget nyújt azono típuok imételt felhaználáára (reuing) [11]. Ezáltal a piacra kerülé ideje jelentően cökkenhet, mert a teztelé é a gyor prototipukézíté kiebb ráfordítát igényel. Ezzel zemben gyökere változtatára zorul a többékevébé egzakt logikai zintézi módzertana, amely vizonylag egyzerű építőelemek (kapuk, flipflopok, regizterek, zámlálók tb.) alkalmazáán alapul (2. ábra). A megoldandó feladatból kiinduló rendzerpecifikáció ugyani már elképzelhetetlen a komplex építőelemeknek (IPknek), konkrét fizikai erőforráokként való kezeléével. Rendzerpecifikáció Közvetlen tervezé Kapuk, flipflopok, regizterek, zámlálók, tb. 2. ábra A közvetlen logikai zintézi folyamat zemléltetée Vol. XII. No. 1. 5

Jóval magaabb abztrakció zintről kell indítani a tervezéi folyamatot, amelyet emiatt rendzerzintű zintézinek (ytemlevel ynthei, SLS) neveznek. A kiindulái maga abztrakció zinten (3. ábra) az ún. vielkedéi pecifikációból (behavioral pecification) kell kiindulni, amely fiktív vielkedéi özetevők együttműködéének leíráa [1],[11]. A rendzerzintű zintézi további lépéeiben olyan dekompozíció algoritmura van zükég, amely a telje rendzert felbontja előre definiált IPkre. Ennek orán okzor egymának ellentmondó peremfeltételek mellett (az IPk közötti kommunikáció ebeége, a vezérléi truktúra egyzerűége, az imételt felhaználá mértéke, a különböző költégtényezők egymához képeti aránya, pipeline működé biztoítáa tb.) kell a lehető legkedvezőbb megoldáokat megtalálni, lehetőleg ziztematiku lépéekben [11]. A gyártók egyre növekvő válaztékát kínálják az IPknek, katalóguaikban többnyire vielkedéi zintű pecifikációval. Az IPk között teljeen programozható cél é általáno procezorok i megjelennek (pl. DSP). Ezáltal a rendzerzintű zintézi egyre inkább olyan felépítét eredményez, amely hardver é zoftver özetevőket egyaránt tartalmaz. Így az ún. hardver/zoftver együtte tervezé (hardwareoftware codeign) réze a rendzerzintű zintézinek [1],[6],[11]. Rendzerpecifikáció Vielkedéi leírá Vielkedéi zintézi Rendzertruktúra IP HW IP HW/SW IP SW 3. ábra A vielkedéi zintézi zemléltetée A tervezé automatizáláa (deign automation) döntő jelentőégű a rendzerzintű zintéziben, mert a legtöbb lépé NPnehéz jellegű, így nem mindig kerülhetők el a közelítő optimumkereő eljáráok [5],[6],[13]. A technológiai fejlődé következtében egyre komplexebb rendzerek hozhatók létre egyetlen integrált áramköri tokban (Sytem on Chip, SoC) a fentiekben vázolt felülről lefelé haladó (topdown) metodika zerint a maga abztrakció zintű vielkedéi pecifikációból kiindulva [1]. A maga zintű pecifikáció általában valamilyen fejlett programnyelven történik, miáltal a zámítógéppel egített automatiku tervező eljáráok (CAD tool) bemeneti adatai közvetlenül képezhetők (4. ábra). Magazintû vielkedéi pecifikáció leíró nyelven IP fajták Költégelõíráok CAD Sebeégkövetelmények Újrafelhaználá mértéke Rendzertruktúra IPkbõl felépítve 4. ábra A vielkedéi leírából kiinduló zámítógéppel egített tervező rendzerek (CAD tool) bemeneti adatai é zolgáltatáai A vielkedéi zintről kiinduló ziztematiku tervezéi lépéeket előként az ún. maga zintű zintézihez (highlevel ynthei, HLS) kezdték alkalmazni, a 80a évek közepétől. A HLS algoritmuok főként a nagyebeégű célhardverként megvalóított jelfeldolgozó ezközök truktúrájának optimalizáláát támogatták. A valóágo hardver erőforráok, mint özetevők ekkor már elég komplexek voltak ahhoz (de korántem annyira komplexek, mint az IPk ma é a jövőben), hogy leíráukat már vielkedéi zinten legyen célzerű kezelni, fiktív elemi műveletekből özeállítva. A HLS algoritmuok többége kiterjezthető é alkalmazható a rendzerzintű zintézi céljaira. Ezen belül a HLS algoritmuok előnyöen alkalmazhatók pl. 6 Vol. XII. No. 1.

az IPk tervezééhez i. A rendzerzintézi új elveinek é módzereinek bemutatáához ezért előzör a maga zintű zintézi főbb lépéeinek lényegét foglaljuk öze. A MAGAS SZINTŰ SZINTÉZIS (HLS) FŐBB LÉPÉSEI A vielkedéi leírából kiinduló tervezé alapgondolata követhető az 5. ábrán. A megoldandó feladat pecifikációja a kiinduláként megadott differenciálegyenlet. Ennek megoldáára kell válaztanunk egy algoritmut, amelyet az ábrán egy programrézlet zemléltet. Az algoritmuválaztá orán termézeteen elvezíthetünk zabadági fokokat, amely a kéőbbi optimalizálái lépéek hatékonyágát okzor előre nem megítélhető mértékben befolyáolhatja. A folyamat NPnehéz jellege már ilyenkor i nyomon követhető. A kiválaztott algoritmu alapján kézül a konkrét tervezéhez zükége vielkedéi leírá, amely általában adatfolyam (dataflow) gráf. Fonto megjegyezni, hogy a gráf comópontjai nem konkrét műveletvégző egyégeket (eetünkben nem aritmetikai egyégeket), hanem magukat a műveleteket, mint a megoldához előírt vielkedéeket jelentenek. A kéőbbi tervezéi lépéek feladata annak meghatározáa, hogy ezeket az előírt vielkedéeket miként lehet legalább közelítőleg optimálian hozzárendelni, pl. a legkeveebb, vagy/é legolcóbb műveletvégző egyégekhez. Ezek a tervezéi lépéek, mint a maga zintű zintézi alapvető lépéei az 5. ábrán nincenek zemléltetve, cupán a végeredményt (a logikai truktúrát é a gyártái dokumentációt) zimbolizálják az idézőjelbe tett ábrarézek. A maga zintű zintézi tervezéi lépéeinek érzékeltetéére zolgál a 6. ábra, ahol az elvi adatfolyamgráf gyakorlati kezelhetetlenége (pl. hazárdjelenégek) miatt zinkronizáló órajelet tételeztünk fel, é az egyzerűég érdekében azt i feltételeztük, hogy minden művelet végrehajtódik egyetlen órajelperiódu alatt. Ez utóbbi egyzerűíté a gyakorlatban általában nem indokolt, mert a műveletek bonyolultága é így végrehajtáuk időigénye jelentően különbözhet; a lényeg zemléltetée érdekében azonban megengedhető. Így az ábrán vízzinte vonalak válaztják el az órajelperióduokat, az 5. ábra alapján képzett zinkronizált adatfolyamgráf comópontjait pedig négyzögek jelölik. Kiválaztott algoritmu Feladat pecifikáció y +3xy+3y =0 while (x<a) { x 1 =x+dx; u 1 =ux y 1 =y+udx x=x 1 ; y=y 1 ; } Adatfolyam gráf + < Logikai truktúra D Q clk Q Gyártái dokumentáció 5. ábra A vielkedéi leírából kiinduló tervezéi folyamat zemléltetée A 6. ábra felő rézén a műveletek ütemezée (cheduling) olyan, hogy minden művelet végrehajtáa a lehető legkorábban (a oon a poible, ASAP) indul. A hiztogramzerű ábrázolából látzik, hogy ilyenkor az elő órajelperiódu terheltége miatt egyidejűleg 5 műveletet kell végrehajtani, vagyi legalább 5 konkrét műveletvégző egyégre (procezorra) volna zükég az előírt vielkedéek allokációjához (hozzárendelééhez). Az ábra aló rézén további ütemezéi lehetőégek hatáa figyelhető meg az allokáció zempontjából. A lehető legkéőbbi (a late a poible, ALAP) ütemezé, anélkül, hogy megnövelné a telje végrehajtái időt (lappangá, latency), eleve kedvezőbb: cak 4 procezort igényelne. Könnyen belátható azonban, hogy a közbenő ütemezéek vizgálatával eljuthatunk a cupán 3 procezzort igénylő megoldához. Az alapkérdé tehát az, hogy miként lehet megtalálni azt az ütemezét, Vol. XII. No. 1. 7

amely az allokáció zempontjából a legkedvezőbb. Az 5. é 6. ábrán követett terheltégi zemléltetét követve a 7. ábrán egy elképzelt optimáli ütemezé ábrázoláa látható. Nyilvánvaló, hogy az ütemezé minőége cak az allokáció imeretében értékelhető, ezért az NPteljeég miatti közelítő optimumkereő eljáráok többnyire ún. mohó (greedy) algoritmuokon alapulnak [1],[2]. ASAP A zükége procezorok ő Id + < ALAP, közbenő ütemezé ő Id + < 6. ábra Az ütemezé é az allokáció zemléltetée Optimalizálá előtti eg yidejűég Optimáli ütemezé műveletvégző egyég tétlen egyég 7. ábra Az optimáli ütemezé zemléltetée A legtöbb alkalmazái területen a ebeégi követelmények igénylik az ún. pipeline feldolgozá megvalóítáát. Ezért a HLS algoritmuoknak támogatniuk kell a pipeline üzemmódban i működtethető truktúrák optimalizáláát. Könnyen belátható, hogy minél gyorabb a pipeline működé (rövid újraindítái, azaz retart idő, illetve nagy átbocátái képeég, azaz throughput), annál kedvezőtlenebbek az allokáció lehetőégek adott ütemezé mellett [1],[5]. Fentiek alapján a 8. ábra foglalja öze a maga zintű zintézi főbb lépéeit. Az eredményként értelmezett trukturáli leírának általában valamilyen regizter tranzfer zintű (regiter tranfer level, RTL) nyelven kell adódnia, amelyből kiindulva a kerekedelmi forgalomban lévő ún. ilicon compiler jellegű rendzerek képeek zolgáltatni akár a gyártái dokumentációt i. Könnyen belátható, hogy a maga zintű (vielkedéi) zintézi tartományában végzett optimumkereé döntő mértékben befolyáolja a végeredményt. 8 Vol. XII. No. 1.

Elemi mûveletek Feladat Adat folyam magazintû nyelvi leírá Vezérlé Magazintû zintézi Idõzíté Allokáció pipeline, throughput az elemi mûveletek lefedée fizikai procezorokkal Stuktúráli leírá RTL, VHDL,... RTL zintézi Chip(ek) EPLD, ASIC, FPGA,... 8. ábra A maga zintű zintézi főbb lépéei PIPE Maga zintű zintézit egítő tervező rendzer Elemi műveleti gráf Strukturáli terv Újraindítái periódu Pufferbehelyezé Többzörözé Ütemezé Allokáció VHDL leírá 9. ábra A PIPE tervező rendzer zolgáltatáai A BME Irányítátechnika é Informatika Tanzéken, ok éve kutatómunka eredményeképpen kidolgoztunk egy zámítógépe tervező rendzert [1],[10], a fentiekben vázolt maga zintű zintézi feladatra. A PIPE nevű tervező rendzer algoritmuai é zolgáltatáai (9. ábra) az alábbi zempontokból tekinthetők kedvezőbbeknek a zakirodalomból imert, releván megközelítéekhez képet: [1],[11]. Az algoritmuaink mindig pipeline működét tételeznek fel (a nempipeline eetet a pipeline peciáli eeteként kezeljük, amikor az újraindítái idő egyenlő a lappangái idővel), továbbá a kívánt újraindítái idő előre megadható. A vielkedéi modellünk olyan peciáli zinkron adatfolyamzerű (dataflowlike) elemi műveleti gráf, amelynek alapján egyzerűen elkerülhetők az időzítéi é hazárdproblémák a maga zintű zintézit követő tervezéi lépéek orán. Az adatzinkronizáló algoritmuunk közvetlenül zolgáltatja az ASAP (minden művelet a lehető legkorábban indul) é az ALAP (minden művelet a lehető legkéőbben indul) ütemezét. E két zélő eet közötti bármely ütemezé egyzerűen képezhető a zinkronizáló kéleltető hatáoknak, mint fiktív, egymá után kapcolt puffer regiztereknek az adatutak mentén történő mozgatáa révén. Az előre megadható kívánt pipeline újraindítái idő a minimáli zámú pótlólago puffer regizter beépítéével é/vagy a minimáli zámú műveletnek a lehető legkiebb példányzámú többzörözéével (truktúráli pipeline) valóítható meg. Vol. XII. No. 1. 9

Az allokáció algoritmuunk a páronként nem konkuren műveletek közötti kompatibilitái reláció által definiált maximáli kompatibilitái oztályokból képezhető fedőrendzer meghatározáán alapul. Az algoritmuaink kiterjezthetők többfelhaználó rekurzív hurkokat tartalmazó alkalmazáok eetére i. A 10. ábra zemlélteti a PIPE rendzer által létrehozott trukturáli terv jellegét é a feladatfüggő költéget (pl. a zükége procezorok zámát) az órajelperióduok darabzámával mért pipeline újraindítái idő (R) függvényében. A kiindulái gráfon zürke ávok jelölik a közö procezorba allokált műveleteket, vízzinte vonalak a beiktatott puffereket, a mellé írt zámok pedig a zükége darabzámaikat jelölik egy adott újraindítái idő mellett. Az eredményül kapott feladatfüggő költégfüggvény alapján mindig meghatározható az a legrövidebb újraindítái idő, amely még elfogadható költéggel megvalóítható. A válaztá elvét zemlélteti a 11. ábrán látható költégfüggvény, amelyet a PIPE rendzer egy több mint 400 comópontból álló kiindulái gráfhoz (MARS nevű rejtjelező algoritmu) zerkeztett. Látható, hogy a kb. 43 órajelperióduonkénti újraindítá még ki költégű, gyor működét eredményez. Az ennél nagyobb újraindítái idejű, vagyi laúbb működtetéel, lényege költégmegtakarítát ez a kiindulái gráf nem tez lehetővé. x 24 12 + 16 32 48 A B C 8 16 24 32 40 48 Cot 1000 900 800 700 600 500 400 300 200 100 0 3 6 9 12151821242730333639424548515457606366697275 R 12 64 D 56 12 + 10. ábra Strukturáli terv é költégfüggvény Költég MARS Költégfüggvény 4 özeadó 2 zorzó 1 box 3 box0 3 box1 2 léptető balra n 3 léptető balra 13 3 léptető balra 5 3 léptető balra 13 2 léptető jobbra 8 3 kivonó 3 XOR 90 80 70 60 50 40 30 20 10 0 3 23 43 63 83 103 32 123 procezor 143 Újraindítái idő 11. ábra A pipeline újraindítái idő megválaztáának zemléltetée 10 Vol. XII. No. 1.

A maga zintű zintézi eredményeként létrejövő truktúra a funkcionáli egyégek között az allokáció révén kiadódó bonyolult özeköttetéek miatt ok multiplexert é demultiplexert tartalmaz, amely jelentően ronthatja a hatékonyágot. Ezt a hátrányt zemlélteti a 12. ábra, ahol a trapézok jelölik a multiplexer, illetve demultiplexer elemeket. Látható, hogy az allokáció orán kiadódó procezorok a jobb oldalon zereplő eredménygráfon több kiindulái műveletet képeek megvalóítani, de a baloldalon ábrázolt kiindulái gráf által előírt adatprecedenciát cak a pótlólago multiplexer, illetve demultiplexer elemek tudják biztoítani, ha az adatözeköttetéek közvetlenek. 12. ábra Az allokáció által igényelt pótlólago multiplexerek, illetve demultiplexerek közvetlen adatkapcolatok MUXRED BUSRED 13. ábra A MUXRED é a BUSRED algoritmuok hatáának zemléltetée A PIPE rendzer egítégével az özeköttetéek ínrendzerként optimalizálhatók, valamint a multiplexerek é demultiplexerek záma minimalizálható [10]. Ezt a feladatot a MUXRED é a BUSRED nevű algoritmuok látják el, eredményüket a 13. ábra zemlélteti. A közvetlen adatkapcolatokkal megvalóított Vol. XII. No. 1. 11

trukturáli terv 6 multiplexert igényel. A MUXRED algoritmu 6 db. arbitrációmente, egyzerű adatínt (kettő nyilakkal jelölve) eredményez, é az öze multiplexert megtakarítja. A BUSRED algoritmu cak 5 db. ínt alakít ki azon az áron, hogy két multiplexert meghagy. DEKOMPOZÍCIÓ IP FUNKCIONÁLIS EGYSÉGEKRE A rendzerzintű zintézi fonto követelménye, hogy a maga zintű zintézi által zolgáltatott trukturáli tervet adott, vagy kiadódó IP kézlet felhaználáával i meg tudjuk valóítani, vagyi optimumkereő eljáráokat találjunk az IP kézletre történő dekompozícióra. A PIPE tervező rendzer az allokáció eredményeként a kiindulái elemi műveleteknek olyan fedőrendzerét hozza létre, amelynek minden blokkja olyan műveleteket tartalmaz, amelyek páronként nemkonkurenek, vagyi végrehajthatók közö procezorral. Ha közö procezorokként kézen kapható, adaptálható é rekonfigurálható IP egyégek alkalmazáa a cél, akkor zükég van olyan (lehetőleg ziztematiku) eljárára, amely az IPk rendelkezére álló kézletéből való kiválaztát é az imételt felhaználát (reue) kíérli meg optimalizálni. Mivel a feladat NPnehéz [2], a továbbiakban imertetendő DECIP (DECompoition into IP) algoritmu cak egyzerű é gyor közelítő optimumkereét tűzhet ki célul. Az IPgyártók egyre növekvő válaztékot kínálnak. Katalóguaikban legtöbbzör vielkedéi zintű pecifikációt i megadnak. Jóllehet ezáltal az IP vielkedée a felhaználá zempontjából egyértelműen definiált [11], a dekompozíció algoritmu megfogalmazáához kedvezőbb az olyan értelmezé, amely közvetlenül kapcolódik a maga zintű zintézi megelőző lépéeihez. Mivel a megoldandó feladat vielkedéi zintű leíráa általában elemi műveleti gráf formájában adott [1],[11], ezért az elemi műveletek tekintendők a pecifikáció továbbnembontott egyégeinek. A maga zintű zintézi ütemező é allokáló lépéei hozzák létre az elemi műveleteknek azt a fedőrendzerét, amelynek blokkjait kell a rendelkezére álló IPkkel, mint való erőforráokkal megvalóítani [10]. Ezért előnyö, ha az IPket i az elemi műveletekkel jellemezzük. Minden egye IPre megadjuk azokat az elemi műveleteket, amelyek végrehajtáa az adott IPvel lehetége é a tervező által előnyönek ítélt (preferált). Ezt az ún. végrehajthatóágot a tervező dönti el az IPk alkalmaága é adaptálhatóága alapján [10]. Bizonyo peremfeltételek (ebeég, kommunikáció költég, a vezérlé bonyolultága, imételt felhaználá tb.) kizárhatnak egye IPket adott elemi műveletek végrehajtói közül annak ellenére, hogy egyébként adaptálhatók lennének a végrehajtára [10]. A DECIP algoritmut az alábbiakban foglaljuk öze. Jelölje M az elemi műveletek E halmazán képzett fedőrendzert. Ilyen fedőrendzernek tekinthető például a nemkonkuren elemi műveletek maximáli kompatibilitái oztályainak halmaza, amelyet az ütemezé é az allokáció zolgáltat a maga zintű zintézi orán [1],[10]. A fedőrendzerből kiindulva minden elemi műveletet hozzá kell rendelni végrehajtára a felhaználható IPknek az I halmazából válaztott valamelyik, de cak egyetlen elemhez. Meg kell tehát határozni az elemi műveletek E halmazán egy P telje partíciót az M fedőrendzerből kiindulva. Ennek a P partíciónak minden egye blokkját egy végrehajtó IP definiálja, hizen a blokkban zereplő műveleteket éppen ennek az IPnek kell végrehajtania. A végrehajtó IPk, kiválaztáakor, vagyi P blokkjainak meghatározáakor a következő feltételezéeket é peremfeltételeket kell figyelembe venni: Minden egye IPt azok az elemi műveletek definiálják, amelyek végrehajtáa leheége é preferált az adott IPvel. Az adott IP kézletből a lehető legkeveebb IPt kell felhaználni. A lehető legkeveebb IP típu kell felhaználni (törekedni kell az imételt felhaználára). A végrehajtó IPk különböző kiválaztái zempontjai megfelelő úlytényezők alkalmazáával egyzerűen leheenek úlyozhatók é kombinálhatók. Az algoritmu leíráához az alábbi jelöléeket alkalmaztuk: E:( e1,... ei,... en) Az elemi műveletek halmaza M:( M1,... Mr,... Mk) Az E halmaz telje fedőrendzere (pl. az allokáció orán keletkező maximáli kompatibilitái oztályok halmaza) c(m r ) M r relatív költége I:( I1,... I,... I j) Az alkalmazható öze IP halmaza 12 Vol. XII. No. 1.

c(i ) I relatív költége R:( R1,... R,... Rj) Az E halmazbeli elemi műveletek azon nem zükégzerűen dizjunkt rézhalmazai, amelyek végrehajtáa lehetége é preferált rendre az I1,... I,... I j, IPkkel S:(... Ih,... Iv,... Iq,...) A kiválaztott végrehajtó IPk halmaza n(i ) R,z P W IPCot Az I jelű IPnek a kiválaztá orán kiadódó példányzáma R dizjunkt rézhalmazai, amelyek azokat az elemi műveleteket tartalmazzák, amelyek végrehajtáára az I jelű IP zedik példánya lett kiválaztva ( ( 1 j ),( 1 z n( I )) Az E halmaz végrehajtó partíciója (blokkjait az öze R,z rézhalmaz képezi) c(i ) relatív úlytényezője W γ γ relatív úlytényezője, γ M R ( M R ) M R W IPSort w N relatív úlytényezője, = r : r, r N 1, if n = 0, if n ( I ) ( I ) > 0 = 0 Az I jelű IPre vonatkozó úlyfüggvény érték A bevezetett jelöléekkel megadható a DECIP algoritmu tömör leíráa: START n( I ):=0 S:= while M, do { { M R : ( M, R M R } α = max ) for r r : γ = M R : ( M, R ) M R R r r r determine γ max (the maximal γ value) for R : c( I ) γ + Wγ WIPSort N { c( I ), I I} γ w = W IPCot + max k k max for δ = M M r : r r determine δ min (the minimal δ r value) Vol. XII. No. 1. 13

elect one R, for which: M : M R = α and r r w = w max and S:= S I ni ( ): = ni ( ) +1 R, ( ):= M R n I r δ r = δ min neglect e i from M if e i R n, ( I ) } STOP A DECIP algoritmu konvergenciája nyilvánvaló, hizen M mérete minden cikluban cökken, így a befejeződékor üre halmaz adódik. A konvergencia ebeégét alapvetően a kritériumok (α, w max, δ min ) zerinti heuriztiku R válaztá határozza meg. A w értékek változtathatók a úlytényezők (W IPCot, W γ W IPSort ) hangoláa révén. Ezáltal R kiválaztái tratégiája befolyáolható é hatékonyága ellenőrizhető, kikíérletezhető. A variációk záma erően függ a kiindulái M halmaz blokkjainak zámától ( M ). Nagy M érték várhatóan nagyfokú átfedéel jár együtt a kiindulái fedőrendzer blokkjai között, amely meredeken növelheti a variációk zámát R kiválaztáakor. Ez a nehézég cökkenthető a kiindulái M fedőrendzer redukáláát végző ún. REDIN (REDucing the Initial Cover) algoritmu egítégével [10], amelynek leíráához az alábbi pótlólago jelöléeket vezettük be: z i m r g (M) Az e i elemi művelet előforduláánk záma az aktuáli M halmazban Az z i értékek úlyozott özege M r ben (a úlyokat az e i műveletek relatív költégei képezik) M kívánt redukciójának mértéke A legkiebb m r értékekel rendelkező M r k halmaza M(red) A redukált M halmaz A REDIN algoritmu leíráa: START If M < g then STOP Mred ( ):= j: = 1 Calculate z i for each e i and m r for each M r 14 Vol. XII. No. 1.

do { Determine (M) Select an M r from (M) and remove it from actual M. Mred ( ):= Mred ( ) M r If e i M r, then z i := 0. Recalculate m r and (M) for the actual M j = j + 1 } while Mred ( ) i not a complete cover. While j g { Select an M r from (M) and remove it from M. Mred ( ):= Mred ( ) M r Recalculate z i, m r and (M) for the actual M j = j + 1 } g:= j 1 STOP A REDIN algoritmu végrehajtáa után i marad termézeteen minden cikluban kiválaztái lépé, de (M) elemeinek záma általában elég kici ahhoz, hogy az M r válaztákor ne adódjon túl ok variáció. Ha a felhaználandó IP funkcionáli egyégek előre adottak, akkor a PIPE rendzer hierarchiku kiterjeztée révén [2],[13] formálian lehetővé válik akár önmagukban i pipeline működéű, bonyolult IPknek elemi műveletként való kezelée. Ezáltal lehetővé válik, hogy a korábban kidolgozott PIPE maga zintű tervező rendzerrel létrehozott truktúrák formálian elemi műveletként legyenek értelmezhetők a PIPE rendzer imételt, magaabb hierarchiku zinten történő alkalmazáakor. A PIPE rendzernek ez a kiterjeztée lehetővé tezi előre megadott, tetzőlege IPk felhaználáát a maga zintű zintézi orán. HARDVER/SZOFTVER EGYÜTTES TERVEZÉSI LEHETŐSÉGEK A PIPE rendzer további kiterjeztée nem párhuzamoítható maga zintű program alapján történő többprocezoro pipeline működéű célrendzer tervezééhez. 1 Cél: A programot rézekre bontva az egye rézprogramokat külön procezorokhoz rendeljük. Ezeket a procezorokat komplex műveleti egyégeknek tekintve alkalmazzuk a hierarchiku maga zintű PIPE tervező rendzert (14. ábra). Ezáltal feladat é paraméterfüggő, többprocezoro rendzertruktúra hozható létre, amelynek működtetée nem igényel bonyolult, többprocezoro operáció rendzert. Így a kiindulái program végrehajtáa a lehetővé váló pipeline működé révén jelentően gyorítható [3]. Megoldandó feladatok: Algoritmu az optimáli rézekre bontára, minimálira cökkentve pl. a közö memóriaterületekhez való hozzáféréi igényt. Arbitrációmente ínrendzer é egyzerű kommunikáció protokoll kialakítáa a rézek között. 1 Jelenleg folyó kutatái témánk: OTKA 72611. Vol. XII. No. 1. 15

P0 P1 P1... P2 P21 P22... P2k PIPE Pn Pn1 Pn2 14. ábra Feladatfüggő truktúrájú többprocezoro rendzer létrehozáának zemléltetée A rendzerzintézi orán fonto lépé annak mérlegelée, hogy a dekompozíció eredményeként kiadódó funkcionáli egyégek megvalóítáa hardver vagy zoftver úton előnyöebbe. Sokzor már a fentiekben vázolt dekompozíció eljárá orán i tekintettel kell lenni erre a zempontra. Így a hardver é zoftver egyégekre történő felbontá orán (hardware/oftware codeign) orán olyan dekompozíció algoritmuokra van zükég, amelyek az alábbi peremfeltételeket egyidejűleg képeek figyelembe venni: [4],[6] Szoftver költég (végrehajtái idő, memóriaigény, bezerzéi ár, teztelhetőég tb.). Kommunikáció költég (adatkapcolatok záma, kommunikáció idő, protokoll megvalóítá költége, zoftver támogatái igény). Hardver költég (zükége félvezető terület, gyártái költég tb.). A hardver/zoftver együtte tervezé egyik gyakran alkalmazott egyzerű elve az ún. zoftver migráció, amelynek lényegét a 15. ábra zemlélteti. Egy program ebeégkritiku réze előnyöebben valóítható meg külő hardver egyéggel, ha az így zükégeé váló kommunikáció költégek nem rontják le lényegeen a ebeégnövekedé hatáát. Ennek eetenkénti é általáno mérlegelée i fonto, időzerű módzertani kutatái területe a rendzerzintézinek [9],[12]. Software migráció Program Hardware 15. ábra A zoftver migráció zemléltetée 16 Vol. XII. No. 1.

A hardver/zoftver együtte tervezé területén ezért kutatják azokat a módzereket i, amelyek egítégével egy maga zintű nyelven megírt programból vagy programrézletből közvetlenül kíérlik meg a hardver truktúra generáláát [7],[8]. Az ilyen eljáráok célja, hogy például a C nyelven megírt programból közvetlenül leheen hardver truktúrát generálni ziztematiku eljáráal, lehetőleg kevé megzorítát előírva a programtervező zámára. Az általáno C nyelvű programból lehetőleg ziztematikuan leheen generálni a megzorítáoknak eleget tevő változatot, é a hardver truktúra lehetőleg kevé elemtípuból épüljön fel. A BME Irányítátechnika é Informatika Tanzéken kifejleztett módzer állapotgépeken alapul, amelyek az egye C utaítáoknak felelnek meg, mint while, do, for, if [7]. Ezen állapotgépek (utaítáegyégek) vezérlik a megfelelő tevékenyégeket, mint pl. feltételek kiértékelée, cikluok indítáa a kiértékelt feltétel kiértékelée eredménye alapján, é végül a következő utaítá egyég indítáa. Az eljáráok (alprogramok) definiciója változókkal együtt procedúra egyégek létrehozáával történik, melyek egy állapotgépből é a helyi változók, illetve hívái paraméterek zámára tárolóhelyekből állnak. Má műveletek, mint például özehaonlítá, özeadá tb. műveleti egyégekre képeződnek le, amelyek zintén állapotgép alapúak é az utaítá egyégekével azono módon aktivizálhatók. Az utaítá, műveleti é procedúra egyégek az eredeti forrákód alapján láncot alkotnak a trigger é ready kivezetéeik egítégével. Ez az egyzálú láncolat a fordítái időben zajló kódvizgálat egítégével úgy módoul, hogy a függetlenül aktivizálható műveletoroknak megfelelő lánczegmenek párhuzamoan kerülnek bekötére. Az eljárá végén egy VHDL kód generálódik automatikuan, amelynek alapján a zoftverrel meghatározott célhardver megvalóítható. IRODALOMJEGYZÉK [1] P. Arató, I. Jankovit, T Viegrády: High Level Synthei of Pipelined Datapath, Wiley, 2001, ISBN 0471495824 [2] Z. Palotai, T. Kandár, Z. Mohr, T. Viegrády, G. Ziegler, P. Arató, A. Lőrincz: Value Prediction in HLS Uing Intellectual Propertie, Applied Artificial Intelligence, Taylor and Franci, Vol. 16, Num. 2, Febr., 2002, pp. 117157. [3] P. Arató, Z. Á. Mann, A. Orbán: Extending ComponentBaed Deign with Hardware Component, Journal of Science of Computer Programming, Elevier, 2005, Vol. 56, pp. 2339. [4] P. Arató, Z. Á. Mann, A. Orbán: Algorithmic Apect of Hardware/Software Partitioning, ACM Tranaction on Deign Automation on Electronic Sytem, 2005, volume 10, iue 1, pp. 136156 [5] P. Arató, Z. Á. Mann, A. Orbán: Timecontrained cheduling of large pipelined datapath, Journal of Sytem Architecture, Elevier, 2005, volume 51, iue 12, pp. 665687 [6] Z. Á. Mann, A. Orbán, P. Arató: Finding Optimal Hardware/Software Partition, Formal Method in Sytem Deign, Springer Science, Vol. 31, 5 Oct. 2007, pp. 241263 [7] Péter Arató, Bence Cák: Hardware Definition Baed on Standard Clanguage Source Code, Proceeding of Forum on Specification and Deign Language, FDL'03, Frankfurt, Germany, September 2326, 2003, pp. 727735, ISBN 16369874 [8] R. Plyler: The Streamlined Deign Flow from Catapult C to Preciion RTL Synthei, Mentor Graphic, 2007 [9] Péter Arató, Zoltán Ádám Mann, Andrá Orbán: Hardwareoftware codeign for Kohonen' elforganizing map, Proceeding of the IEEE 7th International Conference on Intelligent Engineering Sytem, Luxor (Egypt), 2003 [10] P. Arató, T. Kandár, Z. Mohr, T. Viegrády: Highlevel Synthei Uing Predefined IP, Periodica Polytechnica, El. Vol. 46. 2002. No. 34. pp. 123136. [11] P. Couy, A. Morawiec: HighLevel Synthei (from Algorithm to digital Circuit), Springer, 2008 [12] P. Arató, G. Kocza, I. Lovanyi, L. Vajta: Hardware/Software Codeign of Feature Tracking Algorithm, Proceeding of 12th IEEE International Conference on Intelligent Engineering Sytem (INES 2008) ISBN: 9781424420834, Miami, Florida, February 2529, 2008, pp.4145 [13] Péter Arató, Tibor Kandár: Sytematic VHDL Code Generation Uing Pipeline Operation Produced by High Level Synthei,.Proceeding of IEEE International Sympoium on Intelligent Signal Proceing, Budapet, Hungary, September 46, 2003. pp. 185190, ISBN: 0780378644 Vol. XII. No. 1. 17