Új algoritmusok a magas szintő szintézis módszertanának kiterjesztésére elosztott rendszerek tervezéséhez és optimalizálásához
|
|
- Imre Borbély
- 8 évvel ezelőtt
- Látták:
Átírás
1 BUDAPESTI MŐSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR IRÁNYÍTÁSTECHNIKA ÉS INFORMATIKA TANSZÉK Új algoritmusok a magas szintő szintézis módszertanának kiterjesztésére elosztott rendszerek tervezéséhez és optimalizálásához PhD értekezés Pilászy György Témavezetı: Dr. Arató Péter egyetemi tanár, a Magyar Tudományos Akadémia rendes tagja Konzulens: Dr. Móczár Géza Budapest 2013
2 Tartalmi kivonat Az értekezés a magas szintő szintézis elveinek és módszertanának vizsgálata alapján javaslatot tesz annak kiterjesztésére. A meglévı magas szintő szintézis algoritmusok a javasolt módosításokkal és módszerekkel tetszıleges komplexitású részegységekbıl álló elosztott (többprocesszoros) rendszerek struktúrájának szisztematikus szintézisére és optimalizálására is alkalmazhatókká válnak. Az értekezés három problémakört vizsgál. A vizsgálatból leszőrhetı tanulságokat, módszereket, módosításokat és eredményeket három tézisben foglalja össze. Az értekezés elsı része az adatfolyam gráf egyes csomópontjai közötti kommunikációval foglalkozik. A kidolgozott módszer alkalmas a komplex jelfeldolgozó egységekbe integrált kommunikációs csatornák tulajdonságai és a továbbítandó információ mennyisége alapján, a kommunikáció elemi mőveletként való figyelembe vételére a magas szintő tervezés során. A második rész a lappangási idı növelésének hatását vizsgálja pipeline elven mőködı rendszerekben. A magas szintő tervezı algoritmusok generálnak egy struktúrát és ehhez számítanak egy lappangási idıt. A bemutatott vizsgálat és a javasolt módszer a kapott lappangási idı növelésével, - azonos átbocsájtási tényezı esetén - csökkentheti a megvalósítás költségét a kedvezıbb allokáció révén. A harmadik rész egy új allokációs módszert mutat be, amely képes figyelembe venni elıre megadott kizárási és összevonási feltételeket is. A módszer egyik újdonsága, hogy lehetıvé teszi feltételek megadását is az összevonás vagy kizárás elıírására. A kidolgozott módszer a feltétel nélküli és feltételes elıírások alapján maximális kompatibilitási osztályokat képez. Az allokációs módszer az így meghatározott, diszjunkttá tett speciális zárt kompatibilitási osztályok meghatározásán alapul. A kidolgozott módszer jól használható biztonság-kritikus vagy speciális tervezési igényeket is figyelembe vevı alkalmazások esetén. 2
3 Abstract This dissertation is focusing to the extension of the high level synthesis methodology for making it applicable to systematic design of distributed (multiprocessing) systems consisted of processing units (components) with arbitrary complexity. The new algorithms and the extended methodology are summarized in three theses. The first one provides a procedure for handling the communication buses integrated in the complex processing units. Based on an estimation method, the communication bus transfers are handled as additional nodes between the components with the execution time determined by the bus arbitration and transfer time. Since the final communication demand is determined by the decomposing (allocation) step of the synthesis. It is crucial to estimate the communication time realistically as early phase of the synthesis as possible. The method presented in the thesis is suitable for such a time estimation generalized from some frequently used interface systems. The second thesis examines the effects of increasing the latency in pipeline distributed systems. The available high level synthesis tools handle the latency as an output parameter. The method proposed in this thesis may reduce the implementation cost by increasing the latency only and provides an impact assessment of the latency increment ranges calculated by a proposed algorithm. The third thesis presents a new allocation method, which can take into consideration predefined separation and fusion conditions as well. The new feature of the presented method is that it allows the user to specify conditional fusions, too. The method is based on the search for a special closed disjoint cover by starting from the maximal compatibility classes. For example, the method can be applied in the design of safety-critical or easily testable systems. 3
4 Nyilatkozat Alulírott Pilászy György kijelentem, hogy ezt a doktori értekezést magam készítettem és abban csak a megadott forrásokat használtam fel. Minden olyan részt, amelyet szó szerint, vagy azonos tartalomban, de átfogalmazva más forrásból átvettem, egyértelmően, a forrás megadásával megjelöltem. A dolgozat bírálatai és a védésrıl készült jegyzıkönyv a késıbbiekben, a dékáni hivatalban érhetı el. Budapest, április
5 Köszönetnyilvánítás Hálás köszönettel tartozom témavezetımnek, Dr. Arató Péternek és konzulensemnek, Dr. Móczár Gézának a sok segítségért. Tanácsaik, javaslataik és hasznos észrevételeik nagymértékben hozzájárultak a sikeres kutatói munka végzéséhez. Rengeteg gondolatom született a közös munka és a megbeszéléseink során. Kutató munkámat az OTKA K72611 számú programja, a TÁMOP 4.2.1/B- 09/1/KMR programja támogatta Budapesti Mőszaki és Gazdaságtudományi Egyetem Irányítástechnika és Informatika Tanszékén. 5
6 Tartalomjegyzék Tartalmi kivonat... 2 Abstract... 3 Nyilatkozat... 4 Köszönetnyilvánítás... 5 Tartalomjegyzék... 6 Ábrák jegyzéke... Táblázatok jegyzéke Bevezetés Az értekezés célkitőzése A PIPE tervezı rendszer rövid bemutatása A PIPE tervezı rendszer moduljai Az INPUT modul A SCHEDULE modul Az ALLOCATE modul Az OUTPUT modul (további kiegészítı modulok) A tervezési eredmények értékelése, összehasonlítása költségfüggvény alkalmazásával A kommunikáció idejének figyelembe vétele Kommunikációs idı meghatározása Protokoll nélküli egyszerő interfészek Egyszerő protokollt is alkalmazó interfészek Többrétegő protokollt megvalósító interfész Eljárás a kommunikáció idejének becslésére A javasolt algoritmus lépései A becslı algoritmus paraméterezése Eredmények alkalmazása a HLS tervezı rendszerek kiterjesztésében A kommunikáció figyelembe vétele a szegmentálás során A kommunikáció figyelembe vétele a szegmensgráfban A kommunikáció figyelembe vétele a PIPE ütemezı és allokáló algoritmusában Mintaalkalmazás a kommunikáció figyelembevételére a PIPE tervezı rendszerben
7 3.4. Elsı tézis A lappangási idı növelésének hatása az egyes elemi mőveletek újrafelhasználhatóságára A költség csökkenéséhez szükséges szabályok A lappangási idı növelés gyakorlati kivitelezése PIPE tervezı rendszerben Hatásvizsgálat (F1 mintafeladat) Hatásvizsgálat (F2 mintafeladat) A javasolt algoritmus a lappangási idı növelésének hatásvizsgálatára Második tézis Elıre megadott kizárási és összevonási elıírások figyelembevétele az allokáció során Összevonási feltételek figyelembevétele Kizárási feltételek lehetséges figyelembe vétele A kizárási feltételek megadása allokációhoz A javasolt új allokációs algoritmus Kompatibilitási félmátrix automatikus generálása az ütemezés alapján Harmadik tézis Az eredmények alkalmazásának lehetıségei Az értekezésben használt rövidítések jegyzéke...7. Irodalomjegyzék... 7
8 Ábrák jegyzéke 1.1. ábra A magas szintő szintézis fontosabb lépései [3] ábra HLS módszerek kiterjesztése elosztott pipeline rendszerek tervezésére ábra Az EOG jelölései [3] ábra A PIPE fontosabb moduljai [3] ábra SPI adattovábbítás ábra UART adattovábbítás ábra I 2 C adattovábbítás (7 bites címzéssel) ábra CAN adat keretek felépítése [1], [2] ábra Bitbeszúrás az eredeti adatfolyamba ábra A becslı algoritmus folyamatábrája ábra Kommunikációs idık 1-32 byte továbbítása esetén 1µs bitidıt alkalmazva ábra Kommunikációs csatorna megjelenítése az EOG-n ábra Példa a szegmentálás során kiadódó szegmensgráfra a beszúrt kommunikációs csomópontokkal ábra EOG hangforrás lokalizációhoz ábra Allokált gráf kommunikáció nélkül ábra EOG a beszúrt kommunikációs mőveletekkel ábra Allokált mőveleti gráf hangforrás lokalizációhoz (R=130, L=260) ábra Allokált mőveleti gráf hangforrás lokalizációhoz (R=130, L=360) ábra Példa egy pipeline rendszer ütemezésére ábra Pipeline ütemezés megnövelt (L=32) lappangási idı esetén ábra Ütemezés megnövelt újraindítás és lappangás (L=R=40) esetén ábra F1 elemi mőveleti gráfja ábra F1 feladat költségfüggvényei ábra Az F1 feladat elemi mőveleti gráfja allokáció után (R=25, L=39) ábra Az F1 feladat költségfüggvényei többfunkciós mőveletvégzık alkalmazása esetén ábra Az F2 feladat elemi mőveleti gráfja ábra Az F2 feladat költségfüggvényei ábra Az F2 feladat költségfüggvényei többfunkciós mőveletvégzık alkalmazása esetén ábra Az F2 feladat költség függvényei komplex mőveletvégzık használata esetén ábra EOG (a) és allokált mőveleti gráf (b)...63
9 4.13 A lappangási idı növelı algoritmus folyamatábrája ábra Összevonások és kizárások elıírása a tervezés különbözı fázisaiban ábra A megvalósítandó feladat elemi mőveleti gráfja ábra Kompatibilitási félmátrix ábra Az osztályok diszjunkttá tételének lehetséges esetei (1) ábra Az osztályok diszjunkttá tételének lehetséges esetei (2) ábra Az osztályok diszjunkttá tételének lehetséges esetei (3) ábra Az osztályok diszjunkttá tételének lehetséges esetei (4) ábra Allokált mőveleti gráf (1. eset) ábra Allokált mőveleti gráf (4. eset) ábra Allokációs algoritmus egy lehetséges folyamatábrája ábra Az ütemezés végeredményének részlete ábra A mőveletek foglaltsága (R=25, L=39) ábra A cosinus egyenlethez tartozó kompatibilitási félmátrix ábra A maximális kompatibilitási osztályokhoz tartozó lefedési tábla ábra Módosított kompatibilitási félmátrix ábra Allokáció a módosított kompatibilitási félmátrix szerint ábra Kompatibilitási félmátrix A és D osztályok kizárásával ábra Allokált mőveleti gráf a B és C osztályokkal...4 9
10 Táblázatok jegyzéke 3.1. táblázat I 2 C kommunikációs idı becslése táblázat I 2 C szabványos sebességek táblázat I 2 C kommunikációs idık 7 bites címzés és különbözı órajel frekvenciák esetén táblázat A CAN üzenet maximális bitszáma táblázat Egyetlen CAN üzenet bitszámának és továbbítási idejének becslése táblázat A CAN üzenettovábbítás maximális ideje 1Mbit/s átviteli sebesség esetén táblázat A becslı algoritmus paraméterei a bemutatott sínekre táblázat Különbözı interfészek lehetséges paraméterei a becslı algoritmushoz táblázat Az elemi mőveletek futási ideje a [6] alapján táblázat A kommunikációs csomópont jellemzıinek meghatározása táblázat A hangforrás lokalizáló feladat elemi mőveleteinek paraméterei táblázat Erıforrás használat az allokáció után táblázat Erıforrás használat az allokáció után táblázat Az F1 elemi mőveleti gráf mőveleteinek jellemzıi táblázat F1 feladat mőveletvégzı igényei különbözı L=31, 37, 39 esetén táblázat F1 feladat mőveletvégzı igényei különbözı L= 43, 62 esetén táblázat Az F1 feladat mőveletvégzı igénye többfunkciós mőveletvégzık esetén táblázat Az egyes mőveletvégzık tulajdonságai táblázat Az F2 feladat mőveletvégzı igényei L=4, 51, 54 esetén táblázat Az F2 feladat mőveletvégzı igényei L= 60, 96 esetén táblázat Az F2 feladat mőveletvégzı igénye többfunkciós mőveletvégzık esetén L=4, 51, táblázat Az F2 feladat mőveletvégzı igénye többfunkciós mőveletvégzık esetén L=60, táblázat Az F2 feladat mőveletvégzı igénye komplex mőveletvégzı esetén táblázat Mőveletvégzık és elemi mőveletek tulajdonságai táblázat A példában alkalmazott mőveletvégzık tulajdonságai (e 1..e 5 ) táblázat A kompatibilitási félmátrix javasolt jelölései táblázat Lefedési tábla táblázat Az egyes mőveletek kizárása
11 1. Bevezetés A folyamatos technológiai fejlıdés következtében ma egyetlen áramköri tokozás akár több százmillió tranzisztort is tartalmazhat. Ennek következtében rendkívül nagy teljesítményő VLSI áramkörök (FPGA-k, processzorok) állíthatók elı alacsony áron. Ezen komponensek között egyaránt megtalálhatók a mikrokontrollerek és a különféle jelfeldolgozó egységek memóriával és megfelelı I/O képességekkel. Ezek a komplex jelfeldolgozó egységek önállóan képesek megoldani egyre összetettebb feladatokat egy elosztott rendszer részeként. A fenti komplex egységeket felhasználó elosztott rendszerek tervezésére és optimalizálására azonban nem alkalmazhatók a jelenleg létezı többé-kevésbé szisztematikus rendszer szintő szintézis módszerek megfelelı módosítások és kiterjesztések nélkül. Ezek a módszerek általában adatfolyam gráfból indulnak, amelyet egy magas szintő programozási nyelven (pl.: C)[7, 30] specifikált feladat dekompozíciója (partícionálása) révén állítanak elı. A jelenlegi tervezı eszközök közvetlenül az adatfolyam gráfból kiindulva kísérlik meg az optimalizálást viszonylag egyszerő feldolgozó egységek feltételezésével, továbbá nem képesek kezelni a tervezés során kiadódó specifikációjú komplex feldolgozó egységeget. A magas szintő szintézis fıbb lépéseit az 1.1. ábra foglalja össze. A specifikált probléma leírását meg lehet adni a feladattól függıen - elemi mőveletekkel, adatfolyam vagy vezérlési gráffal [22]. A tervezés következı fázisában történik a mőveletek ütemezése, majd allokálása. Az allokáció során az egyes elemi mőveleteket konkrét feldolgozóegységekhez rendelik. 11
12 Bevezetés 12 Probléma Magas szintő nyelvi leírás Magas szintő szintézis Elemi mőveletek Adatfolyam Vezérlés Ütemezés Allokáció Pipeline, átbocsájtás Elemi mőveletek processzorokhoz rendelése Hardver szintézis HDL hardver leírás Megvalósítás (IC) Verilog, VHDL EPLD, ASIC, FPGA, 1.1. ábra A magas szintő szintézis fontosabb lépései [3] A magas szintő szintézis után kapott allokált gráf-reprezentációt a hardver szintézis során elıször valamilyen szabványos hardver leírássá (pl.: VHDL 1 ) alakítják. A hardver leírásból, megfelelı tervezı programokkal, elıállítható a konkrét áramköri megvalósítás (pl.: EPLD 2, ASIC 3, FPGA). Fontos kiemelni, hogy a késıbbiekben ismertetett módszertan szerint a magas szintő szintézis végeredményét nem csak a kizárólag hardver generálására szolgáló hardver szintézishez lehet felhasználni. Az egyes komplex jelfeldolgozó egységek a hozzájuk rendelt feladatokat felépítésüktıl függıen szoftverrel is megvalósíthatják. A magas szintő tervezı eszközökkel szisztematikus módon alakíthatók ki a pipeline elvő rendszerek, amelyekben az egyes részfeladatot megvalósító feldolgozó egységek átlapolt mőködése révén biztosítják a nagy feladatvégzési sebességet akkor is, ha a feladatspecifikációban nincs hatékonyan kihasználható párhuzamosság. A korszerő, programozható komplex jelfeldolgozó eszközök alkalmazása lehetıvé teszi, hogy a pipeline rendszerek feldolgozó egységeit ezek feladatfüggı programozása révén valósítsuk meg. Az elosztott rendszerek tervezésének folyamatát - az említett módszertant, és a késıbbiekben ismertetett kiegészítéseket, algoritmusokat felhasználva az 1.2. ábra mutatja. A magas szintő nyelven leírt program partícionálására számos eljárás létezik [7, 30]. A korábbi tervezési módszerek a szegmensgráf meghatározása után általában allokációval majd konkrét realizációval folytatódtak. Az értekezésben bemutatott 1 VHDL: VHSIC (Very High Speed Integrated Circuit) Hardware Description Language 2 EPLD: Electrically Programmable Logic Device 3 ASIC: Application Specific Integrated Circuit 12
13 Bevezetés 13 módszerek ebbe a folyamatba beillesztik a HLS algoritmusokat, kiterjesztve azok alkalmazásának határait (az ábrán ezek a kiterjesztések vastag keretben láthatók). A tervezési folyamat során lehetıség nyílik - a dekompozíció kihagyásával - csak a HLS algoritmusok alkalmazására is, de ennek komoly hátránya, hogy hosszú program esetén meglehetısen nagy csomópontszámmal kell dolgozni, ami a HLS algoritmusok futásidejét jelentısen megnöveli. Ilyenkor természetesen nem a szegmensgráf, hanem a feladat leíró programból képzett elemi mőveleti gráf a HLS rendszer (PIPE) bemenete. Ezt az esetet szaggatott nyíllal mutatja az 1.2. ábra. Alkalmazandó sínrendszer S Becsült kommunikációs idı beillesztése T k Feladatleírás magas szintő program-nyelven Dekompozíció S db szegmensre C s minimalizálása és K/Ö figyelembe vétele mellett K/Ö 1. tézis Szegmensgráf 3. tézis kiegészítve a kommunikációs csomópontokkal Kizárási- és összevonási feltételek alapján kompatibilitási osztályok meghatározása R d Ütemezés Allokáció PIPE L Allokált szegmensgráf Csomópontok: komplex részegységek és a köztük lévı kommunikáció specifikációja Komplex részegységek megvalósítása (HW, SW, ASIC, FPGA, stb. 2. tézis Lappangási idı növelésének hatásvizsgálata S : Szegmensek kívánt száma T k : Szegmensek közötti kommunikáció becsült ideje K/Ö: Kizárási és összevonási feltételek R d: Kívánt pipeline újraindítási idı L: Kívánt (növelt) lappangási idı 1.2. ábra HLS módszerek kiterjesztése elosztott pipeline rendszerek tervezésére 13
14 Bevezetés Az értekezés célkitőzése Az értekezés célja, hogy a magas szintő szintézis elveinek és módszertanának vizsgálata alapján javaslatot tegyen annak olyan kiterjesztésére, amely alkalmassá teszi a meglévı magas szintő szintézis algoritmusok alkalmazását tetszıleges komplexitású részegységekbıl álló elosztott (többprocesszoros) rendszerek struktúrájának szisztematikus szintézisére és optimalizálására. Ezen belül konkrétan: Módszert adni arra, hogy hogyan lehet a komplex elemi mőveletek végrehajtására alkalmas komplex jelfeldolgozó egységek kommunikációs csatornáinak tulajdonságait figyelembe venni a tervezés folyamatában. Megvizsgálni a pipeline elvő rendszerek tervezı algoritmusai által meghatározott lappangási idı adott mértékő növelésének hatását. Módszert adni annak vizsgálatára, hogy - azonos átbocsájtási tényezı esetén - a kapott lappangási idı növelésével, lehet-e az eredetinél kedvezıbb költségő megoldást találni. Módszert kidolgozni arra, hogy hogyan lehet elıre meghatározott peremfeltételeket (pl.: elıírt kizárási és összevonási feltételek) szisztematikus módon kezelni és azokat figyelembe venni a tervezés különbözı fázisaiban. 14
15 15 2. A PIPE tervezı rendszer rövid bemutatása Az alábbi fejezetben röviden ismertetésre kerül a PIPE tervezı rendszer, mivel a további fejezetekben szereplı demonstrációs feladatok kidolgozását is ezzel a tervezı eszközzel végeztem. A program elsı változata parancssorból volt használható [3], az elmúlt évek fejlesztései során készült hozzá grafikus kezelı felület is, amely lényegesen leegyszerősíti az egyszerőbb feladatok bevitelét és az eredmények megjelenítését. Az eredeti rendszert és a továbbfejlesztéseket is a BME Irányítástechnika és Informatika Tanszékén készítették. A feladatot egy úgynevezett elemi mőveleti gráf (EOG 4 ) formájában (ami tulajdonképpen egy speciális adatfolyam gráf (DFG 5 ) kell specifikálni szöveges állományban [3]. A gráf leírása grafikus felület segítségével is elıállítható. A különbözı program modulok ezt a gráfot alakítják tovább tervezés folyamán. Az EOG egyes csomópontjai egy-egy - tovább nem osztható - elemi mőveletet jelölnek. Ezen elemi mőveletekbıl lehet több azonos típusú (pl.: összeadás, adott matematikai kifejezés, algoritmus részlet, stb.). A tervezés során a PIPE az elemi mőveletek tényleges mőveletvégzı egységekhez rendeli. Az EOG-ban alkalmazott jelöléseket mutatja a 2.1. ábra. e i i t i Elemi mővelet jelölése e i : elemi mővelet azonosítója i: elemi mővelet sorszáma t i : elemi mővelet végrehajtási ideje k Puffer jelölése k: késleltetési idı 2.1. ábra Az EOG jelölései [3] A PIPE tervezırendszer pipeline rendszerek szisztematikus tervezését támogatja, amelyeknek a legfontosabb jellemzıi az R újraindítási (inicializálási) idı és az L lappangási idı. Az újraindítási idı megadja, hogy hány órajel ciklusonként kaphat új bemenı adatot a feldolgozó hálózat. A lappangási idı vagy látencia a teljes mőveleti gráf végrehajtási ideje, vagyis a környezetbıl érkezı bemeneti jel(ek) és az ennek hatására szolgáltatott kimeneti jel(ek) megjelenése közötti idıt fejezi ki órajel ciklusok 4 EOG: Elementary Operation Graph 5 DFG: Data Flow Graph 15
16 A PIPE tervezı rendszer rövid bemutatása 16 darabszámában. A szakirodalomban használatos még az átbocsájtási tényezı fogalma, amely az újraindítási idı reciproka (1/R). Az egyes mőveletek végrehajtási ideje rokon fogalom a lappangással, tulajdonképpen nem más, mint az elemi mőveletek lappangási ideje. A program indításakor paraméterként megadható a kívánt R újraindítási idı. Az optimalizálás történhet sebességre (pl.: a lehetı legrövidebb, vagy kívánt értékő újraindítási idıre), energiafogyasztásra vagy költségre. A program módosított változatában (errıl a 2. tézis tárgyalásakor még lesz szó) lehetıség van a kiszámított minimális lappangásnál nagyobb lappangási idı megadására is. Ha egy elemi mővelet végrehajtási ideje nagyobb, mint az elıírt újraindítási idı, akkor az elemi mővelet a szükséges darabszámban többszörözésre kerül [3]. A példákban alkalmazott vizsgálatok szempontjából kulcsfontosságú az ütemezés és az allokáció lépése, mert a végeredmény szempontjából fontos mőveletvégzı darabszámok alakulását ez a két lépés jelentısen befolyásolja. Egy mőveletvégzı képes lehet több elemi mővelet elvégzésére is (pl: ALU, amely képes összeadni, kivonni), de egyszerre mindig csak egy mőveletet tud elvégezni. A vezérlés feladata, hogy biztosítsa a megfelelı adatokat a megfelelı mőveletvégzık bemenetén, majd kijelölve a végrehajtandó mővelet típusát, elindítsa a feldolgozást. A mővelet eredményét a vezérlı egység felügyeletével továbbítjuk a következı fokozathoz A PIPE tervezı rendszer moduljai A tervezırendszer legfontosabb moduljait mutatja a 2.2. ábra. EOG INPUT SCHEDULE ALLOCATE OUTPUT OUT 2.2. ábra A PIPE fontosabb moduljai [3] Az INPUT modul Bemenetként a PIPE-nak szüksége van egy olyan gráf-leírásra, amely bemeneteket, kimeneteket, csomópontokat és éleket tartalmaz. Ez a leírás függvényhívás szerő, a csomópontok a függvényeket valósítják meg. A függvény nevében szerepel a csomópont által megvalósított elemi mővelet neve. A függvény bemenı paraméterei a csomópont bemenetei, kimenı paramétere a csomópont kimenete. A gráf leírása tartalmazza még az elemi mőveleteket is. Minden elemi 16
17 A PIPE tervezı rendszer rövid bemutatása 17 mőveletnek két fı tulajdonsága van, a mővelet neve és a végrehajtási ideje [3]. Az értekezés eredményei alapján javasolt fejlesztés alatt álló új változatban lehetıség lesz az egyes adatutak bitszámának megadására is. A bemeneti fájl elıállítható szövegszerkesztıvel, de a továbbfejlesztett változatban grafikus szerkesztı program is segíti a gráf megadást. Szintén fejlesztés alatt van egy olyan modul, amely magas szintő C nyelvő programkódból képes gráf leírást generálni a PIPE számára A SCHEDULE modul Az ütemezı modul három almodulból áll, amelyek a kívánt újraindítási idı beállítását (RESTART-modul), az adatutak szinkronizálását (SYNC-modul) és a teljes gráf ütemezését (SCHEDULE-modul) valósítják meg. A RESTART algoritmus bufferek közbeiktatásával és bizonyos mőveletek többszörözésével állítja be a kívánt újraindítási idıt (R). A SYNC modul az egyes adatutak szinkronizálását valósítja meg szinkronizációs bufferek beiktatása révén. A SCHEDULE modul az egyes csomópontokra meghatározott legkorábbi (ASAP 6 ) és legkésıbbi (ALAP 7 ) indítási idıpontokon alapulva meghatározza a mőveletek mobilitását, majd a mobilitási tartományon belül annak indítási idejét. Többféle ütemezı algoritmus is implementálható, a jelenlegi változat egy erı-vezérelt (force-directed) ütemezı algoritmust valósít meg Az ALLOCATE modul Ez a modul a már ütemezett gráf elemi mőveleteit rendeli konkrét mőveletvégzı egységekhez. A hozzárendelés konkurencia ellenırzésen alapul. Egy algoritmus (CONCHECK) meghatározza az idıben átlapolódó (konkurens) mőveleteket. Az allokációs algoritmus az elıre megadott processzor készlet és a konkurens / nem konkurens mőveletek ismerete alapján konkrét feldolgozó egységekhez rendeli a mőveleti gráf csomópontjait. Amennyiben nincsenek elıre megadott mőveletvégzı egységek, úgy azok az allokáció révén kerülnek specifikálásra Az OUTPUT modul (további kiegészítı modulok) A már allokált mőveleti gráf bizonyos esetekben nagyszámú multiplexert és belsı összeköttetést tartalmazhat. Ezeknek az adatkapcsolatoknak és multiplexereknek a darabszámát lehet optimalizálni a BUSRED és MUXRED algoritmusoknak a futtatásával. A két algoritmus részletes bemutatása a [1] PhD értekezésben található. 6 ASAP: As Soon As Possible 7 ALAP: As Least As Possible 17
18 A PIPE tervezı rendszer rövid bemutatása 1 Fejlesztés alatt állnak még olyan modulok, amelyek a végeredményként kapott gráf reprezentációt valamely szabványos hardver leíró nyelvre (VHDL [20], VERILOG [19]) alakítják tovább. A VHDL kód generálásának algoritmikus megvalósítása a [1] és [21] irodalomban részletesen megtalálható A tervezési eredmények értékelése, összehasonlítása költségfüggvény alkalmazásával A különféle beállításokkal kapott szimulációs eredmények összehasonlítását költségfüggvények segítségével végezzük. A PIPE-ban a megvalósítás költsége az allokációt követıen ténylegesen felhasznált mőveletvégzık összköltsége. Egy adott típusú mőveletvégzı költsége a darabszáma és a hozzá tartozó végrehajtási idı szorzataként áll elı. Ha többféle végrehajtási idejő mővelet kerül egy mőveletvégzıbe, akkor a legnagyobb idıt tekintjük a mőveletvégzı végrehajtási idejének. A bufferek, multiplexerek, buszok és a vezérlı hálózat ezekben a költségszámításokban nulla költségként kerülnek figyelembevételre. Ezek a feltételek az elosztott rendszerek tervezésekor is elfogadhatóak. A tipikusan alkalmazott komplex jelfeldolgozók már tartalmazzák ezeket az elemeket. Ugyanakkor nem tartható az az egyszerősítés, hogy a kommunikációt, illetve az ehhez szükséges idıt sem veszi figyelembe. Az értekezés elsı tézise fog megoldás javasolni a buszok kommunikációs idejének (költségének) a figyelembe vételére. A fentiek alapján az allokáció eredményét felhasználva egy adott megvalósítás költsége: C = C i i Ahol C i az egyes felhasznált mőveletvégzık költsége: C i = n t i i t i : Az M i elemi mőveletvégzı által végrehajtható elemi mőveletek végrehajtási idejeinek maximuma n i : a t i végrehajtási idejő mőveletvégzık ténylegesen felhasznált darabszáma e k : a M i mőveletvégzıbe allokált elemi mővelet t k az e k elemi mővelet végrehajtási ideje A fenti egyszerő költségfüggvény alkalmazásával a különbözı végrehajtási idejő mőveletvégzık darabszámának alakulása jól szemléltethetı, de adott esetben a rendszer követelményektıl függıen természetesen más költség függvény is használható. 1
19 19 3. A kommunikáció idejének figyelembe vétele Különbözı HLS tervezı rendszerek és algoritmusok állnak rendelkezésre a mőveleti gráf optimalizálására, ütemezésére, allokálására [3, 25]. Az ismert HLS tervezı rendszerek közös tulajdonsága, hogy lényegében nem foglalkoznak az elemi mőveleti gráf csomópontjai közötti és az allokáció révén kialakuló feldolgozó egységek közötti kommunikáció idejével, azt általában nulla végrehajtási idejő lépésnek tekintik. A [6, 31, 32] szakirodalom utal a kommunikáció figyelembevételének fontosságára, de a bitszámon és néhány alapvetı jellemzın túlmenıen nem számol a kommunikációhoz szükséges idıvel [6]. Ez a megoldás egy FPGA-n belüli kommunikáció esetén elfogadható közelítésnek tekinthetı, azonban több, különálló komplex mőveletvégzı alkalmazása esetén legtöbb esetben nem alkalmazható. Mikroprocesszorokat vagy mikrokontrollereket is tartalmazó komplex mőveletvégzık alkalmazásakor a beintegrált kommunikációs csatornák (perifériák) használata esetén elkerülhetetlen azok idıigényének figyelembe vétele [5]. Az általam kidolgozott módszer szerint, a kommunikációs kapcsolat egy pótlólagos elemi mőveleti csomóponttal ábrázolható, azonban ehhez szükség van a csomópont végrehajtási idejének ismeretére, vagy legalább megfelelı becslésére. Ha ugyanis alulbecsültük a kommunikáció tényleges idejét, akkor a végeredményként kapott hálózat mőködésképtelen lesz. Ha pedig jelentısen túlbecsültük a kommunikációt, akkor feleslegesen lassítjuk le a rendszert. Az optimális megoldás a pontos kommunikációs idı meghatározása lenne, de ez bizonyos esetekben nem lehetséges (pl.: bitbeszúrás adatfüggısége miatt), ezért ilyenkor egy felsı becslés meghatározása tőnik célszerőnek Kommunikációs idı meghatározása Mikrokontrolleres, jelfeldolgozó kontrolleres környezetben a kis lábszám és más erıforrás korlátok miatt elterjedt a különbözı soros kommunikációs vonalak alkalmazása. Az alábbiakban négy, gyakran beintegrált soros vonal kommunikációs idejének meghatározását mutatom meg. 19
20 A kommunikáció idejének figyelembe vétele Protokoll nélküli egyszerő interfészek Az következıkben a jól ismert SPI és UART 9 interfész kommunikációs idejét és bitszámát határozom meg. Ezen interfészek közös jellemzıje, hogy az átvinni kívánt információ alapegysége tipikusan bit. Ennek továbbításához szükséges idızítésen túl nem tartalmaz további elıírást (protokollt). A 3.1. ábra és a 3.2. ábra mutatja az adattovábbítás folyamatát és ez alapján egyértelmően megállapítható a tényleges továbbítási idı (T k ). T k Adatok továbbítása ½T SS T bit ½T SS CLK SDO D7 D0 SDI D7 D0 SS 3.1. ábra SPI adattovábbítás A kommunikáció ideje: T T = b T + T k T bit TSS T bit = ( b + 1) SS k T bit = ( N + 1) k T bit (1) (2) (3) (4) (5) T k : kommunikáció ideje T bit : Egy bit továbbításának ideje (bit idı) T SS : Indítás és leállítás ideje b: továbbított bitek száma N: Továbbítandó (hasznos) adatbájtok száma TXD Start T k Adatok továbbítása D 0 D 1 D 5 D 6 D ábra UART adattovábbítás Par. Stop T A kommunikáció ideje: T = ( b + 1+ p + s) k T bit = N (1 + + p + s) k T bit (6) (7) p: paritás vagy egyéb vezérlı bit száma (0 vagy 1) s: stop bitek száma (0, 1, 1.5, 2) Ezen interfészek bitidejét meghatározó frekvencia tág határok között beállítható tipikus felsı értéke SPI esetén < 20MHz, UART esetén < 10MHz. A konkrét értékek természetesen a fizikai közegtıl is függenek, ennek figyelembe vétele már alkalmazási kérdés. Így az is, hogy pont-pont közötti, egy adó- több vevı, illetve több adó-több vevı sín alakítható ki. SPI: Serial Peripheral Interface 9 UART: Universal Asynchronous Receiver Transmitter 20
21 A kommunikáció idejének figyelembe vétele Egyszerő protokollt is alkalmazó interfészek Az átviendı információ kiegészítésre kerül az interfész típusától függı protokoll elıírásai szerint. Ennek egyik elterjedt típusa az elsı sorban integrál áramkörök közötti (rövid távolságú) kommunikációra szolgáló I 2 C 10 interfész []. Az I 2 C adattovábbítás folyamatát hét bites címzés esetén mutatja a 3.3. ábra. A 3.3 ábra és az interfész specifikációja alapján meghatározható a kommunikáció ideje. Ez a kommunikációs idı a valóságban kis mértékben változhat, amennyiben a kommunikációban résztvevı megcímzett egység (slave) várakozásra kényszerítheti a küldı egységet (master). Az alkalmazható topológia tehát sín rendszerő. SCL S Címzés Adatok továbbítása (N bájt) P SDA A6 A0 R/W=0 ACK D7 D0 ACK 3.3. ábra I 2 C adattovábbítás (7 bites címzéssel) 7 bites címzés 10 bites címzés Keretezés [bit] 2 2 Címzés [bit] Adatok [bit] N 9 N 9 Továbbítandó bitek száma [bit] 11+ N N 9 Becsült kommunikációs idı (T k ) C+(11+ N 9) T bit C+(11+ (N+1) 9) T bit 3.1. táblázat I 2 C kommunikációs idı becslése A [4] dokumentáció jelenleg elérhetı változata öt különbözı sebesség tartományt definiál, melyeket a 3.2. táblázat foglal össze. Üzemmód Max. sebesség [kbit/s] Normál 100 Gyors 400 Gyors Nagy sebességő 3400 Ultra nagy sebességő táblázat I 2 C szabványos sebességek 10 I2C: Inter-IC Bus 21
22 A kommunikáció idejének figyelembe vétele 22 Megjegyzések: 1. A Nagysebességő üzemmódok más hardver megoldást igényelnek, illetve a nagy sebességő átvitel inicializálása során 400Khz-en kapcsolat felépítés is történik. A bemutatott becslés ezt a C jelő konstans idıvel (25µs) veszi figyelembe. 2. Az Ultra nagy sebességő kivitel csak egyirányú (írás) adatátvitelre alkalmas és csak egy master kapcsolódhat a sínre [4]. 1- bájt mérető üzenetek továbbítására meghatározott kommunikációs idıket a 3.3. táblázat mutatja. Adat (N byte) 100kHz 400kHz 1MHz 3,4MHz 5MHz 1 200µs 50µs 20µs 30,9µs 4µs 2 290µs 72,5µs 29µs 33,55µs 5,µs 3 30µs 95µs 3µs 36,2µs 7,6µs 4 470µs 117,5µs 47µs 3,5µs 9,4µs 5 560µs 140µs 56µs 41,5µs 11,2µs 6 650µs 162,5µs 65µs 44,15µs 14µs 7 740µs 15µs 74µs 46,µs 15,µs 30µs 205,5µs 3µs 49,45µs 17,6µs 3.3. táblázat I 2 C kommunikációs idık 7 bites címzés és különbözı órajel frekvenciák esetén 22
23 A kommunikáció idejének figyelembe vétele Többrétegő protokollt megvalósító interfész Az összetettebb kommunikációs protokollok funkcióit az OSI 11 rétegmodell alapján csoportosíthatjuk. A szakirodalomban [29] részletesen megtalálható az egyes kommunikációs rétegek meghatározása, szerepük ismertetése. Az alábbi pontban egy olyan interfészt vizsgálok meg részletesebben, ahol az egyszerőbb adat keretezésen felül további (a kommunikációs idı meghatározása szempontjából fontos) kiegészítı információk továbbításával is számolni kell. Az ilyen és ehhez hasonló tulajdonságú kommunikációs perifériák az OSI rétegmodell fizikai rétegén túlmenıen általában az adatkapcsolati réteget is hardveresen kezelik. Egy ilyen összetett protokollt megvalósító interfész a CAN 12. A CAN egy soros kommunikációs protokoll, amely támogatja a valós idejő elosztott irányítást, és akár 1 Mbit/s-os sebességet is lehetıvé tesz. A protokollnak két fajtája létezik: a CAN V2.0A [1] standard formátum, amely 11 és a CAN V2.0B [2] extended formátum, amely 11+1 = 29 bites azonosítót használ az üzenetek továbbításához. Azok az eszközök, amelyek az extended formátumot is képesek használni, tudnak standard módban is kommunikálni, így azokkal az eszközökkel is együtt tudnak mőködni, amelyek csak a standard formátumot ismerik, de csak Standard módban. A [1] és [2] irodalom alaposan részletezi a CAN üzenetek felépítését, így itt most csak az alkalmazás szempontjából fontos mélységig részletezem az üzenetek felépítését. A CAN adatkeret felépítését a 3.4. ábra mutatja. Az elızıekben bemutatott három interfész esetében az üzenet hossza nem függött a továbbított adatbitek értékétıl. A CAN rendszer által alkalmazott bitbeszúrás adatfüggısége miatt a kommunikációs idıre csak becslés adható. Ehhez elıször meg kell becsülni a leghosszabb üzenet bitszámát. A maximális CAN üzenethossz meghatározása A bitbeszúrások miatt a CAN üzenet hossza a továbbított adatoktól függıen változhat. A bitbeszúrás szabálya az, hogy 5 azonos értékő bit továbbítása után kötelezı egy ellenkezı értékő bitet beszúrni [1, 2]. A bitbeszúrás beszúrás mőködése a SOF 13 bittıl kezdıdıen egészen a CRC 14 utolsó bitjéig engedélyezett. 11 OSI: Open System Interconnection 12 CAN: Controller Area Network 13 SOF: Start Of Frame 14 CRC: Cyclic Redundancy Check 23
24 A kommunikáció idejének figyelembe vétele 24 A legtöbb beszúrt bit darabszámának felsı becsléséhez tekintsünk el attól, hogy néhány fix vezérlı bit értéke rögzített (pl.:ide 15, RB0, RB1 16, stb.). A SOF miatt a keret biztosan 0 bittel kezdıdik, ezért a teszt minta sorozat azonosítója is 0 bitekkel kezdıdik. Öt darab 0 bit után (a SOF-al együtt) beszúrásra kerül egy 1 értékő bit. Ezután folytassuk a teszt sorozatot 1 értékő bitekkel további 4db 1 értékő bit után ismét elértük a beszúráshoz szükséges 5 azonos értékő bitet, így most egy 0 kerül beszúrásra. További 4db 0 után ismét 1 következik és így tovább. A gondolatmenet elsı 16 bitjét a 3.5. ábra mutatja. Az ábrán az idıdiagram feletti számok a váltást követı azonos bit értékeket számolják. A fenti jelsorozatról látható, hogy 16 bit továbbításához 4 bit beszúrásra volt szükség. A # karakter a beszúrt biteket jelöli. Bit beszúrás Busz keret SOF Arbitráció CTRL Adatok CRC DEL ACK DEL EOF IFS Bitek száma 1 12, CAN V2.0A SOF ID Bitek száma arbitráció RTR IDE RB0 DLC CTRL Adatok DLC CRC RTR SRR IFS IDE Data Length Code Cyclic Redundancy Code Remote Transmission Request Substitute Remote Request Inter Frame Spacing Identifier Extension CAN V2.0B SOF ID[2..1] Bitek száma SRR IDE ID[17..0] RTR RB1 RB0 DLC arbitráció CTRL Adatok SOF Start of Frame DEL Delimiter ACK Acknowledge EOF End of Frame ID Identifier RB0/1 Reserved bits 3.4. ábra CAN adat keretek felépítése [1], [2] Eredeti adatfolyam SOF CAN adatfolyam, bitbeszúrással SOF # # # # 3.5. ábra Bitbeszúrás az eredeti adatfolyamba 15 IDE: Identifier Extension 16 RB0, RB1: Reserved Bits 24
25 A kommunikáció idejének figyelembe vétele 25 Figyelembe véve a fejléc fix mezıinek bitszámát, a változó adathosszakat és a keret végén lévı üres részt (13bit) a 3.4. táblázat szerinti maximális bitszámok határozhatók meg a bitbeszúrásban résztvevı mezıkre. CAN2.0A CAN2.0B Fix mezı 34 bit 54 bit N Teljes üzenet bitszáma [byte] táblázat A CAN üzenet maximális bitszáma A beszúrásra kerülı (Stuff) bitek számának (s) egy lehetséges felsı becslését megkapjuk, ha az üzenet bitek számát elosztjuk 4-el, majd a kapott eredményt felfelé kerekítjük. adatbitek száma H + A s = = 4 4 () H: fix mezık bitszáma A: adatmezı bitjeinek száma A = N, ahol N az adatbájtok darabszáma A teljes keret bitszáma (D) ezek alapján a következıképpen alakul: D = H + A + s + E (9) E: a CRC utáni (nem bitbeszúrt) mezık bitszáma Z = 13. Az üzenet továbbítási idı becslése A CAN interfész bitsebességének ismeretében a maximális üzenettovábbítási idık becsülhetık. A becsléshez a korábban megbecsült üzenet hosszat meg kell szorozni az egy bit továbbításának idejével. A (9) összefüggést átrendezve: H A D = H + + E + A (10) Mivel az A mezı mérete 0.. bájt lehet, az A részbe bájtonként beszúrt bitek maximális száma 2. Az adatbájtok számát N-el jelölve az adatmezı bitek számát a következıképpen írható: 25
26 A kommunikáció idejének figyelembe vétele 26 A A + = ( + 2) = 10 4 N N (11) Az elızıekben bemutatott eredményeket és a 3.4. táblázatot felhasználva az eredmények összefoglalása zárt alakban a 3.5. táblázatban látható. Amennyiben számítani kell az üzenet ismétlésére, úgy a meghatározott kommunikációs idıt meg kell szorozni az ismétlések számával. Hibátlan kommunikáció esetén nincs ismétlés. CAN Üzenet bitek maximális darabszáma (N ) Üzenet továbbítás maximális ideje Tk 2.0A 56 + N 10 ( 56 + N 10) Tbit 2.0B 1+ N 10 ( 1+ N 10) Tbit 3.5. táblázat Egyetlen CAN üzenet bitszámának és továbbítási idejének becslése Például: 1Mbit/s adattovábbítási sebesség mellett a 3.4. táblázat a következıképpen írható át. N CAN2.0A CAN2.0B [byte] 1 66µs 91µs 2 76µs 101µs 3 6µs 111µs 4 96µs 121µs 5 106µs 131µs 6 116µs 141µs 7 126µs 151µs 136µs 161µs 3.6. táblázat A CAN üzenettovábbítás maximális ideje 1Mbit/s átviteli sebesség esetén 26
27 A kommunikáció idejének figyelembe vétele Eljárás a kommunikáció idejének becslésére Az elızı pontban ismertetett kommunikációs interfészek mőködésének elemzése során az alábbi megállapításokat tehetjük: A legkisebb továbbítható adategység a legtöbb interfész esetén egy bájt. Az adatbájtokat gyakran kiegészítı bitekkel látják el (pl.: start, stop, ack). A kommunikációhoz általában tartozik keretenként (csomagonként) egy fix hosszúságú és egy változó hosszúságú kiegészítı bitmezı. A kommunikáció idıigényét jól becsülhetjük a bitidızítés egész számú többszöröseként. Mivel a jelen vizsgálat célja, hogy általános módszert javasoljon a kommunikáció idejének becsléséhez, ezért a vizsgált sínrendszerek alapján a következı általánosítható módszer javasolható: Bemenetek: N, továbbítandó adatbájtok száma T bit, bitidı (Ez bizonyos interfészek esetén rögzített érték, míg más interfészeknél adott tartományon belül változtatható paraméter) B, bájtonkénti kiegészítı bitek maximális száma K, keretenkénti további kiegészítı bitek maximális száma (pl.: keret fejléc, keret vége, ha van keretezés) M, egy keretben maximálisan továbbítható adatbájtok száma (ennél nagyobb adatblokk esetén több keretre van szükség), 0, ha nincs ilyen korlátozás J, egy keretben minimálisan továbbítható adatbájtok száma, J = M, ha rögzített a keretméret (tehát kevesebb bájt esetén kitöltı adatokkal van tele a kihasználatlan rész) C, konstans idıkorrekció 27
28 A kommunikáció idejének figyelembe vétele A javasolt algoritmus lépései 1. Keretek számának (F) meghatározása F = 1 N M Ha M > 0 Ha M = 0 2. Egy kereten belüli adatfüggı mezık (A) és az utolsó keret adatfüggı mezıi (A u ) bitszámának meghatározása max( N, J ) ( B + ) A = M ( B + ) 0 Au = max( N (( F 1) M ), J ) ( B + ) ha F = 1 ha F > 1 ha F = 1 Az utolsó keret esetén, ha F>1 3. A teljes adatmennyiséghez tartozó továbbítandó bitszám meghatározása ( A + K) F, ha F = 1 Σ = ( A + K) ( F 1) + ( K + Au ), ha F > 1 4. A becsült kommunikációs idı meghatározása T = C + Σ k T bit A becslési algoritmust a 3.6. ábra foglalja össze. 2
29 A kommunikáció idejének figyelembe vétele 29 start M > 0? i n F = 1 F = N M F > 1? i n A = max(n,j) (B+) A=M (B+) A u = 0 A u =max(n-((f-1) M),J) (B+) Σ= (A+K) F Σ= (A+K) (F-1)+K+A u T k = C+Σ T bit kész 3.6. ábra A becslı algoritmus folyamatábrája 29
30 A kommunikáció idejének figyelembe vétele 30 A bemutatott sínekre az algoritmus paramétereit a 3.7. táblázat mutatja. Interfész T k N esetén C SPI [µs] B [bit] K [bit] M [byte] J [byte] ( N + 1) T 0 bit I 2 C-7 bites címzés C+ ( N ) T 0 vagy 25 bit I 2 C-10 bites címzés C+ (( N + 1) ) T 0 vagy 25 bit UART (1 stop, 0 paritásbit) UART (1 stop, 1 paritásbit) CAN2.0A CAN2.0B N 10 T 0 bit N 11 T 0 bit ( N ) T bit * ( N ) T bit * táblázat A becslı algoritmus paraméterei a bemutatott sínekre Az algoritmus eredményeit felhasználva a 3.7. ábra mutatja, hogy 1Mbit/s adatátviteli sebességet feltételezve hogyan alakulnak a különbözı csatornák kommunikációs idejei 1-32 bájt továbbítása esetén. Az ábrán megfigyelhetı, hogy a CAN interfész esetén a maximált bájtos keretméret miatt az ezt meghaladó adatok továbbításához újabb keretekre van szükség, ami a kommunikációs overhead-et növeli CAN2.0B CAN2.0A UART (1 sot, 1 paritás) UART (1stop, 0 paritás I2C-10bites címzés I2C-7bites címzés SPI Tk[us] N [byte] ábra Kommunikációs idık 1-32 byte továbbítása esetén 1µs bitidıt alkalmazva 30
31 A kommunikáció idejének figyelembe vétele A becslı algoritmus paraméterezése Az elızıekben kidolgozott algoritmus paraméterezése a példaként vizsgált négy sínnél és néhány további (itt részletesen nem bemutatott) interfész esetében a 3.. táblázat szerint alakul. Ez utóbbi interfészek ismertetése a [S4, 27, 2, 29, 30] irodalmakban részletesen megtalálható. Interfész T bit C [µs] B [Bit] K [Bit] M [Byte] J [Byte] SPI 50ns min I 2 C, (100kHz-1MHz) 7bites cím 1-10µs I 2 C, (100kHz-1MHz) 10 bites cím 1-10µs I 2 C, High speed (3.4MHz), 7bites cím 295ns I 2 C, Ultra high speed (5MHz), 7bites cím 200ns UART (1 stop, 0 paritásbit) 100ns min UART (1 stop, 1 paritásbit) 100ns min CAN 2.0A 1µs min CAN 2.0B 1µs min BME-PS CAN plus 1-10µs Ethernet (10Mbps) 100ns USB 17 low-speed (1.5Mbps), control 666ns USB low-speed (1.5Mbps), interrupt 666ns USB full-speed (12Mbps), control 3,3ns USB full-speed (12Mbps), Interrupt 3,3ns USB full-speed (12Mbps), Isochronous 3,3ns USB full-speed (12Mbps), Bulk 3,3ns USB high-speed (40Mbps), control 2,03ns USB high-speed (40Mbps), Interrupt 2,03ns USB high-speed (40Mbps), Isochronous 2,03ns USB high-speed (40Mbps), Bulk 2,03ns SATA 1 (1.5GB/s), parancskeret 666,6ps Hyper Transport (2bit,200MHz) 2,5ns Hyper Transport (32bit,200MHz) 156,25ps PCI 19 -Express x1 (2.5Gb/s) 400ps PCI-Express x2 (2.5Gb/s) 200ps PCI-Express x4 (2.5Gb/s) 100ps PCI-Express x (2.5Gb/s) 50ps PCI-Express x16 (2.5Gb/s) 25ps PCI-Express x32 (2.5Gb/s) 12,5ps táblázat Különbözı interfészek lehetséges paraméterei a becslı algoritmushoz 17 USB: Universal Serial Bus 1 SATA: Serial Advanced Technology Attachment 19 PCI: Peripheral Component Interconnect 31
32 A kommunikáció idejének figyelembe vétele 32 Megjegyzések: A kidolgozott módszer csak korlátozottan alkalmas többszintő (többrétegő) keretezést alkalmazó protokollok kommunikációs idejének becslésére. A J paraméter 0-tól különbözı értékét akkor is célszerő kihasználni, ha fix keretméretekkel dolgozik a tervezendı rendszer. (például, ha elıírás, hogy minden CAN üzenetnek fix bájtos adatmezıvel kell rendelkeznie, függetlenül az adatbájtok tényleges darabszámától, akkor J = ) Ha igény van a kommunikációs keretek közötti szünet figyelembe vételére, akkor a K paramétert meg kell növelni a szünetnek megfelelı mértékben. Mivel a protokollok egy része többféle átviteli módot is képes támogatni, ezért megadtam az üzenet típus illetve átviteli mód nevét is az interfész neve mellett. Közös jellemzıje ezeknek az interfészeknek, hogy mindegyik használ bájt szintő keretezést is az adatok továbbítása során. 32
33 A kommunikáció idejének figyelembe vétele Eredmények alkalmazása a HLS tervezı rendszerek kiterjesztésében A magas szintő tervezırendszerek elemi mőveleti gráffal reprezentálják a megoldandó feladatot. A 3.. ábra egy egyszerő példát mutat az e 1 és e 2 jelő elemi mőveletek közé beiktatott kommunikációs csatorna (e 3 ) ábrázolására a PIPE tervezı rendszer elemi mőveleti gráfjára alkalmazva. e 1 e 2 1 t 1 2 t 2 e 1 Kommunikáció e 3 e 2 1 t 1 3 t k 2 t 2 Adó Átviteli közeg Vevı e 1 1 t 1 A csomópontok jelölései: Mővelet azonosítója Csomópont sorszáma Végrehajtási idı 3.. ábra Kommunikációs csatorna megjelenítése az EOG-n Az e 3 jelő kommunikációs elemi mővelet végrehajtási (lappangási) ideje t k. Ez tulajdonképpen az az idı, ami alatt az információ a feltételezett csatornán áthalad. Az elızı pontokban meghatározott kommunikációs idı (T k ) azonban a bitsebességtıl függ, ezért azt át kell transzformálni a HLS tervezı eszköz által alkalmazott idızítési rendszerbe. A kommunikációt jellemzı idıegység a T bit bitidı illetve a T k kommunikációs idı, míg a HLS rendszer alapütemezése a T órajel periódusidı. Ezek alapján a két idıtartomány átskálázható a következı összefüggés szerint: t k = T k T (12) A (12) azt fejezi ki, hogy a HLS rendszerben a kommunikáció hány ciklusig tart. A fizikai megvalósítás során a kommunikációs csatorna adója és vevıje az adó és vevı oldalon lévı csomópontnak fogja részét képezni, csak a modell ábrázolja külön elemi mőveletként. A kommunikáció lebonyolítása során természetesen mindkét csomópontnak foglalkoznia kell az adatátvitel kezelésével, de ezt a modellben a t k paraméterben koncentrálva vesszük figyelembe. A vevı oldalon a kommunikációt követı elemi mővelet ütemezése már a kommunikációs idıt figyelembe véve, annak befejezését követıen történik. Az 1.2. ábra alapján a tervezés során három különbözı lépés során is figyelembe vehetjük a kommunikációt. A három eset a következı: 33
34 A kommunikáció idejének figyelembe vétele A kommunikáció figyelembe vétele a szegmentálás során Elsı lépésként valamennyi elemi mővelet közé be kell iktatni a kívánt kommunikációs csomópontot. Amennyiben nincs szükség a kommunikációs csatornára akkor annak végrehajtási idejét nullára kell állítani és a továbbiakban a csomópont akár el is hagyható. Ennek eldöntése a feladat dekompozíció során a szegmensgráfokat létrehozó algoritmus feladata. Ennek egy lehetséges támogatása az 5. fejezetben kifejtett módszer. Egy ilyen szegmensgráfra mutat példát a 3.9. ábra. Az értekezésben ennek megvalósításával nem foglalkozom. Feltételezem, hogy ezek a szegmensgráfok rendelkezésre állnak. S 1 K1 0 K2 0 K3 t k3 S 2 K4 0 K5 t k1 K6 S 3 t k ábra Példa a szegmentálás során kiadódó szegmensgráfra a beszúrt kommunikációs csomópontokkal A kommunikáció figyelembe vétele a szegmensgráfban Amennyiben a megvalósításra került, akkor a szegmensgráf tartalmazza a kommunikációs csomópontokat minden olyan elemi mővelet között, amely más szegmensben lévı elemi mővelethez kapcsolódik. Amennyiben nem áll rendelkezésre, akkor ezt ebben a lépésben kell beszúrni a fentiek szerint. Ennek megoldására a ben bemutatásra kerülı hangforrás lokalizáló struktúra optimalizálása mutat példát. 34
35 A kommunikáció idejének figyelembe vétele A kommunikáció figyelembe vétele a PIPE ütemezı és allokáló algoritmusában A PIPE a bemenetén kapott EOG-ban már azt a szegmensgráfot kapja, amelybe a kommunikációs csomópontok már szerepelnek. Elvileg lehetıség van az allokációt követıen is beszúrni kommunikációs csomópontokat (amennyiben a szegmensgráf ezt nem tartalmazta), azonban ez felborítja az ütemezést, ezért a beszúrást követıen újra kell szinkronizálni, majd ellenırizni, hogy a kapott megoldás megfelel-e az elvárt kritériumoknak. A továbbiakban azt feltételezem, hogy a PIPE már a szükséges kommunikációs csomópontokat is tartalmazó EOG-t kap. 35
Pilászy György. Új algoritmusok a magas szintő szintézis módszertanának kiterjesztésére elosztott rendszerek tervezéséhez és optimalizálásához
BUDAPESTI MŐSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR IRÁNYÍTÁSTECHNIKA ÉS INFORMATIKA TANSZÉK Pilászy György Új algoritmusok a magas szintő szintézis módszertanának kiterjesztésére
A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium
BUDAPESTI MŐSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK A LOGSYS GUI Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT atórium
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
infokommunikációs technológiák FELADATFÜGGŐ FELÉPÍTÉSŰ PIPELINE TÖBBPROCESSZOROS RENDSZEREK TERVEZÉSI MÓDSZERÉNEK KIDOLGOZÁSA ÉS ALKALMAZÁSA NAGY SEBESSÉGIGÉNYŰ BEÁGYAZOTT CÉLRENDSZEREKBEN DR. ARATÓ PÉTER
Irányítástechnika 1. 8. Elıadás. PLC rendszerek konfigurálása
Irányítástechnika 1 8. Elıadás PLC rendszerek konfigurálása Irodalom - Helmich József: Irányítástechnika I, 2005 - Zalotay Péter: PLC tanfolyam - Klöckner-Möller Hungária: Hardverleírás és tervezési segédlet,
Programozható vezérlő rendszerek KOMMUNIKÁCIÓS HÁLÓZATOK 2.
KOMMUNIKÁCIÓS HÁLÓZATOK 2. CAN busz - Autóipari alkalmazásokhoz fejlesztették a 80-as években - Elsőként a BOSCH vállalat fejlesztette - 1993-ban szabvány (ISO 11898: 1993) - Később fokozatosan az iparban
4.1.1. I 2 C, SPI, I 2 S, USB, PWM, UART, IrDA
4.1.1. I 2 C, SPI, I 2 S, USB, PWM, UART, IrDA A címben található jelölések a mikrovezérlők kimentén megjelenő tipikus perifériák, típus jelzései. Mindegyikkel röviden foglalkozni fogunk a folytatásban.
Autóipari beágyazott rendszerek. Local Interconnection Network
Autóipari beágyazott rendszerek Local Interconnection Network 1 Áttekintés Motiváció Kis sebességigényű alkalmazások A CAN drága Kvarc oszcillátort igényel Speciális perifériát igényel Két vezetéket igényel
Járműfedélzeti rendszerek II. 6. előadás Dr. Bécsi Tamás
Járműfedélzeti rendszerek II. 6. előadás Dr. Bécsi Tamás A CAN hálózat Az első szabványos autóipari kommunikációs hálózat Bosch fejlesztés, 1986 SAE (Society of Automotive Engineers) congress 1991 CAN
Megoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat
Megoldás Feladat 1. Statikus teszt Specifikáció felülvizsgálat A feladatban szereplő specifikáció eredeti, angol nyelvű változata egy létező eszköz leírása. Nem állítjuk, hogy az eredeti dokumentum jól
Mérési jegyzőkönyv. az ötödik méréshez
Mérési jegyzőkönyv az ötödik méréshez A mérés időpontja: 2007-10-30 A mérést végezték: Nyíri Gábor kdu012 mérőcsoport A mérést vezető oktató neve: Szántó Péter A jegyzőkönyvet tartalmazó fájl neve: ikdu0125.doc
Tartalom. Az adatkapcsolati réteg, Ethernet, ARP. Fogalma és feladatai. Adatkapcsolati réteg. A hálókártya képe
Tartalom Az adatkapcsolati réteg, Ethernet, ARP Adatkapcsolati réteg A hálózati kártya (NIC-card) Ethernet ARP Az ARP protokoll Az ARP protokoll által beírt adatok Az ARP parancs Az ARP folyamat alhálózaton
A Component-Base Architechture for Power-Efficient Media Access Control in Wireless Sensor Networks
A Component-Base Architechture for Power-Efficient Media Access Control in Wireless Sensor Networks MAC=Media Access Control, Közeghozzáférés vezérlés Lényegében azt irányítja, melyik mote mikor adjon,
A vezérlő alkalmas 1x16, 2x16, 2x20, 4x20 karakteres kijelzők meghajtására. Az 1. ábrán látható a modul bekötése.
Soros LCD vezérlő A vezérlő modul lehetővé teszi, hogy az LCD-t soros vonalon illeszthessük alkalmazásunkhoz. A modul több soros protokollt is támogat, úgy, mint az RS232, I 2 C, SPI. Továbbá az LCD alapfunkcióit
I 2 C, RS-232 és USB. Informatikai eszközök fizikai alapjai. Oláh Tamás István 2015.04.08
I 2 C, RS-232 és USB Informatikai eszközök fizikai alapjai Oláh Tamás István 2015.04.08 Az I 2 C Busz Phillips által kifejlesztett kétvezetékes szinkron adatátviteli eszköz integrált áramkörök összekapcsolására
Irányítástechnika 1. 9. Elıadás. PLC-k programozása
Irányítástechnika 1 9. Elıadás PLC-k programozása Irodalom - Helmich József: Irányítástechnika I, 2005 - Zalotay Péter: PLC tanfolyam - Jancskárné Anweiler Ildikó: PLC programozás az IEC 1131-3 szabvány
Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges
Dr. Oniga István DIGITÁLIS TECHNIKA 9
r. Oniga István IGITÁLIS TEHNIKA 9 Regiszterek A regiszterek több bites tárolók hálózata S-R, J-K,, vagy kapuzott tárolókból készülnek Fontosabb alkalmazások: adatok tárolása és adatmozgatás Funkcióik:
Digitális technika VIMIAA01 9. hét
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges
Kommunikáció. 3. előadás
Kommunikáció 3. előadás Kommunikáció A és B folyamatnak meg kell egyeznie a bitek jelentésében Szabályok protokollok ISO OSI Többrétegű protokollok előnyei Kapcsolat-orientált / kapcsolat nélküli Protokollrétegek
Programozási segédlet DS89C450 Fejlesztőpanelhez
Programozási segédlet DS89C450 Fejlesztőpanelhez Készítette: Fekete Dávid Processzor felépítése 2 Perifériák csatlakozása a processzorhoz A perifériák adatlapjai megtalálhatók a programozasi_segedlet.zip-ben.
Számítógép Architektúrák
Perifériakezelés a PCI-ban és a PCI Express-ben Horváth Gábor 2017. február 14. Budapest docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu A PCI PCI = Peripheral Component Interfész,
Dr. Oniga István DIGITÁLIS TECHNIKA 9
r. Oniga István IGITÁLIS TEHNIKA 9 Regiszterek A regiszterek több bites tárolók hálózata S-R, J-K,, vagy kapuzott tárolókból készülnek Fontosabb alkalmazások: adatok tárolása és adatmozgatás Funkcióik:
Hardver leíró nyelvek (HDL)
Hardver leíró nyelvek (HDL) Benesóczky Zoltán 2004 A jegyzetet a szerzıi jog védi. Azt a BME hallgatói használhatják, nyomtathatják tanulás céljából. Minden egyéb felhasználáshoz a szerzı belegyezése szükséges.
Programozó- készülék Kezelőkozol RT óra (pl. PC) Digitális bemenetek ROM memória Digitális kimenetek RAM memória Analóg bemenet Analóg kimenet
2. ZH A csoport 1. Hogyan adható meg egy digitális műszer pontossága? (3p) Digitális műszereknél a pontosságot két adattal lehet megadni: Az osztályjel ±%-os értékével, és a ± digit értékkel (jellemző
CAN BUSZ ÁLTALÁNOS ISMERTETŐ
CAN BUSZ ÁLTALÁNOS ISMERTETŐ 1. KIADÁS 2009 Szerző: Somlyai László Kandó Kálmán Villamosmérnöki Kar, IV. évfolyam oldal 1 Tartalomjegyzék 1. Bevezetés... 3 2. CAN busz... 4 2.1. Kialakulása... 4 2.2. Fizikai
USB. Az USB. Írta: Luli Zoltán Gyızı Szak: mérnök-informatikus EHA: LUZOABT.SZE Dátum: /5
Az Írta: Szak: mérnök-informatikus EHA: LUZOABT.SZE Dátum: 2006-11-19 1/5 Az Az kommunikációs forma napjaink egyik legelterjedtebb perifériás interfésze. Használata szerteágazó. A legegyszerőbb pendrive-októl
Az interrupt Benesóczky Zoltán 2004
Az interrupt Benesóczky Zoltán 2004 1 Az interrupt (program megszakítás) órajel generátor cím busz környezet RESET áramkör CPU ROM RAM PERIF. adat busz vezérlõ busz A periféria kezelés során információt
A Memory Interface Generator (MIG) beállítása a Logsys Kintex-7 FPGA kártyához
A Memory Interface Generator (MIG) beállítása a Logsys Kintex-7 FPGA kártyához Ellenőrizzük a projektből importált adatokat. Ha rendben vannak, akkor kattintsunk a Next gombra. Válasszuk a Create Design
PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között
-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez -1 Kommunikáció LG PMU és LG GLOFA-GM / GM között -1-1 PLC programozó csatlakozója ( CPU loader port ) -1- PLC beépített C-NET csatlakozója (CPU C-net) -1-
Digitális eszközök típusai
Digitális eszközök típusai A digitális eszközök típusai Digitális rendszer fogalma Több minden lehet digitális rendszer Jelen esetben digitális integrált áramköröket értünk a digitális rendszerek alatt
A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol
A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol Attila FODOR 1), Dénes FODOR Dr. 1), Károly Bíró Dr. 2), Loránd Szabó Dr. 2) 1) Pannon Egyetem, H-8200 Veszprém Egyetem
Csoportos üzenetszórás optimalizálása klaszter rendszerekben
Csoportos üzenetszórás optimalizálása klaszter rendszerekben Készítette: Juhász Sándor Csikvári András Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Automatizálási
Harmadik-generációs bázisállomások szinkronizációja
Harmadik-generációs bázisállomások szinkronizációja 16. Távközlési és Informatikai Hálózatok Szeminárium és Kiállítás Zorkóczy Zoltán 1 Tartalom A távközlés szinkronizáció definíciója Az RNC és Node-B
Autóipari beágyazott rendszerek CAN hardver
Scherer Balázs, Tóth Csaba: Autóipari beágyazott rendszerek CAN hardver Előadásvázlat Kézirat Csak belső használatra! 2012.02.19. SchB, TCs BME MIT 2012. Csak belső használatra! Autóipari beágyazott rendszerek
Járműfedélzeti kommunikáció. Controller Area Network Dr. Aradi Szilárd
Járműfedélzeti kommunikáció Controller Area Network Dr. Aradi Szilárd A CAN hálózat Az első szabványos autóipari kommunikációs hálózat Bosch fejlesztés, 1986 SAE (Society of Automotive Engineers) congress
Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb
Input és Output 1 Bevitel-Kivitel Eddig a számítógép agyáról volt szó Processzusok, memória, stb Szükség van eszközökre Adat bevitel és kivitel a számitógépből, -be Perifériák 2 Perifériákcsoportosításá,
Számítógép Architektúrák
Számítógép Architektúrák Perifériakezelés a PCI-ban és a PCI Express-ben 2015. március 9. Budapest Horváth Gábor docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu Tartalom A
Szaniszló Gábor, ABB Kft MEE szakmai nap elıadás, 2010.05.27. Az IEC61850-es szabvány gyakorlati alkalmazása. ABB Group June 1, 2010 Slide 1
Szaniszló Gábor, ABB Kft MEE szakmai nap elıadás, 2010.05.27. Az IEC61850-es szabvány gyakorlati alkalmazása June 1, 2010 Slide 1 Az ABB IEC61850 kompatibilis készülék palettája Szerverek - Konverteres
XII. PÁRHUZAMOS ÉS A SOROS ADATÁTVITEL
XII. PÁRHUZAMOS ÉS A SOROS ADATÁTVITEL Ma, a sok más felhasználás mellett, rendkívül jelentős az adatok (információk) átvitelével foglakozó ágazat. Az átvitel történhet rövid távon, egy berendezésen belül,
Áramkörön belüli rendszerek
Áramkörön belüli rendszerek SoC System on a Chip Egy mintapélda PACT XPP blokk PiCoGa M200 Embedded FPGA Az NoC részlet Az STNoC elınye Áramkörön belüli rendszerek SoC / SoPC System on a (Programmable)
Járműinformatika Multimédiás buszrendszerek (MOST, D2B és Bluetooth) 4. Óra
Járműinformatika Multimédiás buszrendszerek (MOST, D2B és Bluetooth) 4. Óra Multimédiás adatok továbbítása és annak céljai Mozgókép és hang átvitele Szórakoztató elektronika Biztonsági funkciókat megvalósító
2. gyakorlat Mintavételezés, kvantálás
2. gyakorlat Mintavételezés, kvantálás x(t) x[k]= =x(k T) Q x[k] ^ D/A x(t) ~ ampl. FOLYTONOS idı FOLYTONOS ANALÓG DISZKRÉT MINTAVÉTELEZETT DISZKRÉT KVANTÁLT DIGITÁLIS Jelek visszaállítása egyenköző mintáinak
Új kompakt X20 vezérlő integrált I/O pontokkal
Új kompakt X20 vezérlő integrált I/O pontokkal Integrált flash 4GB belső 16 kb nem felejtő RAM B&R tovább bővíti a nagy sikerű X20 vezérlő családot, egy kompakt vezérlővel, mely integrált be és kimeneti
Yottacontrol I/O modulok beállítási segédlet
Yottacontrol I/O modulok beállítási segédlet : +36 1 236 0427 +36 1 236 0428 Fax: +36 1 236 0430 www.dialcomp.hu dial@dialcomp.hu 1131 Budapest, Kámfor u.31. 1558 Budapest, Pf. 7 Tartalomjegyzék Bevezető...
1. DIGITÁLIS TERVEZÉS PROGRAMOZHATÓ LOGIKAI ÁRAMKÖRÖKKEL (PLD)
1. DIGITÁLIS TERVEZÉS PROGRAMOZHATÓ LOGIKAI ÁRAMKÖRÖKKEL (PLD) 1 1.1. AZ INTEGRÁLT ÁRAMKÖRÖK GYÁRTÁSTECHNOLÓGIÁI A digitális berendezések tervezésekor számos technológia szerint gyártott áramkörök közül
I+K technológiák. Buszrendszerek Dr. Aradi Szilárd
I+K technológiák Buszrendszerek Dr. Aradi Szilárd TIA/EIA-485-A (RS-485) Az RS-485 szabványt 1983-ban jelentette meg az EIA, és a szabvány legutolsó felülvizsgálata 1998-ban történt Az automatizálástechnikában
Autóipari beágyazott rendszerek. A kommunikáció alapjai
Autóipari beágyazott rendszerek A kommunikáció alapjai 1 Alapfogalmak Hálózati kommunikáció Vezérlőegységek közötti információ továbbítás Csomópontok Kommunikációs csatornákon keresztül Terepbuszok (cluster)
Belépés a rendszerbe. Gyors menü
Belépés a rendszerbe A menübe lépéshez szükséges alapértelmezett DVR Azonosító /Device ID/: 000000, megadott Jelszó /Password/ nélkül. A rendszer biztonságos használata érdekében az adminisztrátor felhasználónak
Járműfedélzeti hálózatok. Fedélzeti diagnosztikai protokollok Dr. Aradi Szilárd
Járműfedélzeti hálózatok Fedélzeti diagnosztikai protokollok Dr. Aradi Szilárd A fedélzeti diagnosztika fogalma On-Board Diagnostics (OBD I-II, EOBD) Motiváció Általánosságban információt szolgáltat a
FPGA áramkörök alkalmazásainak vizsgálata
FPGA áramkörök alkalmazásainak vizsgálata Kutatási beszámoló a Pro Progressio alapítvány számára Raikovich Tamás, 2012. 1 Bevezetés A programozható logikai áramkörökön (FPGA) alapuló hardver gyorsítók
Scherer Balázs: Mikrovezérlık fejlıdési trendjei
Budapesti Mőszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Scherer Balázs: Mikrovezérlık fejlıdési trendjei 2009. Budapesti Mőszaki és Gazdaságtudományi Egyetem, Méréstechnika
loop() Referencia: https://www.arduino.cc/en/reference/homepage
Arduino alapok Sketch ~ Solution Forrás:.ino (1.0 előtt.pde).c,.cpp,.h Külső könyvtárak (legacy / 3rd party) Mintakódok (example) setup() Induláskor fut le, kezdeti értékeket állít be, inicializálja a
IC-F15, IC-F25 I/O Modem interfész Mőszaki leírás
IC-F15, IC-F25 I/O Modem interfész Mőszaki leírás 1. 2007-02-05 Vidra Kálmán Nagy Mihály/ Nagy Ferenc SCB-S6029/-A 1/1 1. Meghatározás. 1200 bit/sec sebességő FFSK rádiómodem I/O interfész vezérlés célú
Érzékelők és beavatkozók I.
Érzékelők és beavatkozók I. Mikrovezérlők, mikroszámítógépek: 32-bites ARM Cortex architektúra c. egyetemi tanár - 1 - ARM ARM architektúrájú processzorok ARM Advanced RISC Machine RISC Reduced Instruction
CIMR-V7AZ, CIMR-F7Z, CIMR-E7Z, CIMR-L7Z, CIMR-G7 V1000 sorozat CIMR-VZA PLC CPU-k CP1H-X, CP1H-XA, CP1H-Y CP1L-L, CP1L-M
INV-HU-001 A FB feladata A dokumentáció tartalma Szimbólum A CP1H vagy a CP1L PLC és frekvenciaváltó(k) automatikus kommunikációja: _INVHU001_WriteReadParameter A frekvenciaváltó üzemi paramétereinek írása,
The modular mitmót system. 433, 868MHz-es ISM sávú rádiós kártya
The modular mitmót system 433, 868MHz-es ISM sávú rádiós kártya Kártyakód: COM-R04-S-01b Felhasználói dokumentáció Dokumentációkód: -D01a Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és
Digitális technika (VIMIAA02) Laboratórium 4
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 4 Fehér Béla Raikovich Tamás,
Számítógép felépítése
Alaplap, processzor Számítógép felépítése Az alaplap A számítógép teljesítményét alapvetően a CPU és belső busz sebessége (a belső kommunikáció sebessége), a memória mérete és típusa, a merevlemez sebessége
Mikrorendszerek tervezése
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Mikrorendszerek tervezése Beágyazott rendszerek Fehér Béla Raikovich Tamás
Autóipari beágyazott rendszerek CAN Controller Area Network
Tóth Csaba, Scherer Balázs: Autóipari beágyazott rendszerek CAN Controller Area Network Előadásvázlat Kézirat Csak belső használatra! 2012.02.05. TCs, SchB BME MIT 2012. Csak belső használatra! Autóipari
10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti
10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti kapcsolója által definiált logikai szinteket fogadja, megfelelő
Fine-Grained Network Time Synchronization using Reference Broadcast
Fine-Grained Network Time Synchronization using Reference Broadcast Ofszet Az indítás óta eltelt idıt mérik Az ofszet változása: skew Az órák sebességének különbsége Oka: Az óra az oszcillátor pontatlanságát
VIII. BERENDEZÉSORIENTÁLT DIGITÁLIS INTEGRÁLT ÁRAMKÖRÖK (ASIC)
VIII. BERENDEZÉSORIENTÁLT DIGITÁLIS INTEGRÁLT ÁRAMKÖRÖK (ASIC) 1 A korszerű digitális tervezés itt ismertetendő (harmadik) irányára az a jellemző, hogy az adott alkalmazásra céleszközt (ASIC - application
Perifériák hozzáadása a rendszerhez
Perifériák hozzáadása a rendszerhez Intellectual Property (IP) katalógus: Az elérhető IP modulok listája Bal oldalon az IP Catalog fül Ingyenes IP modulok Fizetős IP modulok: korlátozások Időkorlátosan
Járműfedélzeti rendszerek II. 8. előadás Dr. Bécsi Tamás
Járműfedélzeti rendszerek II. 8. előadás Dr. Bécsi Tamás A FlexRay hálózat Kifejlesztésének célja: alacsony költségen, nagy megbízhatóságú, nagy teljesítményű adatátvitel járműipari környezetben. A specifikációt
A Számítógépek felépítése, mőködési módjai
Mechatronika, Optika és Gépészeti Informatika Tanszék Kovács Endre tud. Mts. A Számítógépek felépítése, mőködési módjai Mikroprocesszoros Rendszerek Felépítése Buszrendszer CPU OPERATÍV TÁR µ processzor
Statisztikai függvények
EXCEL FÜGGVÉNYEK 9/1 Statisztikai függvények ÁTLAG(tartomány) A tartomány terület numerikus értéket tartalmazó cellák értékének átlagát számítja ki. Ha a megadott tartományban nincs numerikus értéket tartalmazó
Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?
System on a Chip Programmable Chip Lazányi János 2010 Tartalom A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban? Page 2 1 A hagyományos technológia Elmosódó határvonalak ASIC
Irányítástechnika 1. 7. Elıadás. Programozható logikai vezérlık
Irányítástechnika 1 7. Elıadás Programozható logikai vezérlık Irodalom - Helmich József: Irányítástechnika I, 2005 - Zalotay Péter: PLC tanfolyam - Klöckner-Möller Hungária: Hardverleírás és tervezési
OSI-ISO modell. Az OSI rétegek feladatai: Adatkapcsolati réteg (data link layer) Hálózati réteg (network layer)
OSI-ISO modell Több világcég megalkotta a saját elképzelései alapján a saját hálózati architektúráját, de az eltérések miatt egységesíteni kellett, amit csak nemzetközi szinten lehetett megoldani. Ez a
ARM Cortex magú mikrovezérlők
ARM Cortex magú mikrovezérlők 5. Mikrovezérlő alapperifériák Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2017 Tartalom Általános
Digitális rendszerek. Digitális logika szintje
Digitális rendszerek Digitális logika szintje CPU lapkák Mai modern CPU-k egy lapkán helyezkednek el Kapcsolat a külvilággal: kivezetéseken (lábak) keresztül Cím, adat és vezérlőjelek, ill. sínek (buszok)
I+K technológiák. Beágyazott rendszerek 3. előadás Dr. Aradi Szilárd
I+K technológiák Beágyazott rendszerek 3. előadás Dr. Aradi Szilárd LIN (Local Interconnect Network) kommunikációs hálózat 1980-as években jelentek meg az UART alapú soros megoldások a gépjárművekben,
BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa
BEÁGYAZOTT RENDSZEREK TERVEZÉSE 1 feladat: A Netburner MOD5270 fejlesztőlap segítségével megvalósítani csomagok küldését és fogadását a fejlesztőlap és egy PC számítógép között. megoldás: A fejlesztőlapra,
Programozható logikai vezérlők
Széchenyi István Egyetem Automatizálási Tanszék Programozható logikai vezérlők Dr. Hodossy László Az irányítórendszerek fejlődése Fix huzalozású rendszerek Típus Programozható rendszerek Típus Jelfogós
Útmutató a MATARKA adatbázisból való adatátvételhez
Útmutató a MATARKA adatbázisból való adatátvételhez A MATARKA - Magyar folyóiratok tartalomjegyzékeinek kereshetı adatbázisa a következı címrıl érhetı el: http://www.matarka.hu/ A publikációs lista kinyerése
Digitális technika VIMIAA01
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 Fehér Béla BME MIT A kommunikációs technológiák
Digitális technika VIMIAA01
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 Fehér Béla BME MIT A kommunikációs technológiák
HIERARCHIKUS RENDSZER-SZINTŰ SZINTÉZIS
Budapesti Műszaki és azdaságtudományi Egyetem Irányítástechnika és Informatika Tanszék HIERARCHIKUS RENDSZER-SZINTŰ SZINTÉZIS Ph.D. értekezés Kandár Tibor Témavezető: Dr. Arató Péter egyetemi tanár, a
Új módszerek és eszközök infokommunikációs hálózatok forgalmának vizsgálatához
I. előadás, 2014. április 30. Új módszerek és eszközök infokommunikációs hálózatok forgalmának vizsgálatához Dr. Orosz Péter ATMA kutatócsoport A kutatócsoport ATMA (Advanced Traffic Monitoring and Analysis)
Digitális technika (VIMIAA02) Laboratórium 3
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 3 Fehér Béla Raikovich Tamás,
rendszerszemlélető, adatközpontú funkcionális
http://vigzoltan.hu rendszerszemlélető, adatközpontú funkcionális Integrált Vállalatirányítási Rendszerek Alkalmazói fejlesztések mindig valamilyen módszertan alapján történnek. A módszertan eljárások,
Számítógépek felépítése, alapfogalmak
2. előadás Számítógépek felépítése, alapfogalmak Lovas Szilárd, Krankovits Melinda SZE MTK MSZT kmelinda@sze.hu B607 szoba Nem reprezentatív felmérés kinek van ilyen számítógépe? 2 Nem reprezentatív felmérés
Digitális technika (VIMIAA02) Laboratórium 3
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 3 Fehér Béla Raikovich Tamás,
CAD-CAM-CAE Példatár
CAD-CAM-CAE Példatár A példa megnevezése: A példa száma: A példa szintje: CAx rendszer: Kapcsolódó TÁMOP tananyag rész: A feladat rövid leírása: VEM Rúdszerkezet sajátfrekvenciája ÓE-A05 alap közepes haladó
Hálózati ismeretek. Az együttműködés szükségessége:
Stand alone Hálózat (csoport) Az együttműködés szükségessége: közös adatok elérése párhuzamosságok elkerülése gyors eredményközlés perifériák kihasználása kommunikáció elősegítése 2010/2011. őszi félév
Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output
1 Input/Output 1. I/O műveletek hardveres háttere 2. I/O műveletek szoftveres háttere 3. Diszkek (lemezek) ------------------------------------------------ 4. Órák, Szöveges terminálok 5. GUI - Graphical
ARM programozás. Iványi László Szabó Béla
ARM programozás 4. Óra USART periféria és az RS-485 busz elmélete és használata Iványi László ivanyi.laszlo@stud.uni-obuda.hu Szabó Béla szabo.bela@stud.uni-obuda.hu Mi az USART/UART? USART => Universal
Nagy Gergely április 4.
Mikrovezérlők Nagy Gergely BME EET 2012. április 4. ebook ready 1 Bevezetés Áttekintés Az elektronikai tervezés eszközei Mikroprocesszorok 2 A mikrovezérlők 3 Főbb gyártók Áttekintés A mikrovezérlők az
Modbus kommunikáció légkondícionálókhoz
Modbus kommunikáció légkondícionálókhoz FJ-RC-MBS-1 Mobus szervezet: -> http://www.modbus.org (néha Modbus-IDA) -> Modbus eszköz kereső motor http://www.modbus.org/devices.php Modbus (RTU) - soros kommunikációs
DIGITÁLIS TECHNIKA feladatgyűjtemény
IGITÁLIS TEHNIK feladatgyűjtemény Írta: r. Sárosi József álint Ádám János Szegedi Tudományegyetem Mérnöki Kar Műszaki Intézet Szerkesztette: r. Sárosi József Lektorálta: r. Gogolák László Szabadkai Műszaki
Digitális technika (VIMIAA02) Laboratórium 4
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 4 Fehér Béla Raikovich Tamás,
SZENZORMODUL ILLESZTÉSE LEGO NXT PLATFORMHOZ. Készítette: Horváth András MSc Önálló laboratórium 2 Konzulens: Orosz György
SZENZORMODUL ILLESZTÉSE LEGO NXT PLATFORMHOZ Készítette: Horváth András MSc Önálló laboratórium 2 Konzulens: Orosz György BEVEZETÉS Simonyi Károly szakkollégium LEGO és robotika kör NXT Cél: Választott
Bevezetés a számítástechnikába
Bevezetés a számítástechnikába Beadandó feladat, kódrendszerek Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 október 12.
Teszt terv Új funkció implementációja meglévı alkalmazásba
Teszt terv Új funkció implementációja meglévı alkalmazásba Passed Informatikai Kft. www.passed.hu Farkas Gábor 2007-P-123-45-T-1-1 IIR - Test Manager course 2 Szerepkör Név Aláírás Aláírás dátuma IT Projekt
Informatika érettségi vizsga
Informatika 11/L/BJ Informatika érettségi vizsga ÍRÁSBELI GYAKORLATI VIZSGA (180 PERC - 120 PONT) SZÓBELI SZÓBELI VIZSGA (30 PERC FELKÉSZÜLÉS 10 PERC FELELET - 30 PONT) Szövegszerkesztés (40 pont) Prezentáció-készítés
3. modul - Szövegszerkesztés
3. modul - Szövegszerkesztés - 1-3. modul - Szövegszerkesztés Az alábbiakban ismertetjük a 3. modul (Szövegszerkesztés) syllabusát, amely a modulvizsga követelményrendszere. A modul célja Ezen a vizsgán
LIN, BSS, PCM Protokollok (COM Interfész) Szeptember
LIN, BSS, PCM Protokollok (COM Interfész) 2013. Szeptember Témakörök Háromfázisú generátorok Generátor feszülts ltségszabályzók Digitális vezérl rlésű szabályz lyzók Feszülts ltségszabályzó mérések Digitális
Autóipari vezérlőegységek aktív környezetállósági tesztelésének módszerei
Autóipari vezérlőegységek aktív környezetállósági tesztelésének módszerei Aradi Szilárd PhD témavezető: Dr. Gyenes Károly Közlekedés és járműirányítás workshop BME 2011 ISBN 978-963-420-975-1 Bevezetés
Az adatkapcsolati réteg
Az adatkapcsolati réteg Programtervező informatikus BSc Számítógép hálózatok és architektúrák előadás Az adatkapcsolati réteg A fizikai átviteli hibáinak elfedése a hálózati réteg elől Keretezés Adatfolyam