Magas szintű hardware szintézis

Slides:



Advertisements
Hasonló előadás
Valós idejű tesztlefedettség- monitorozás JEE környezetben Dr. Ferenc Rudolf, Szegedi Tudományegyetem Bakota Tibor, FrontEndART Szoftver Kft.
Advertisements

Hatékonyságvizsgálat, dokumentálás
Szoftverminőség, 2010 Farkas Péter. SG - Sajátos célok  SG 1. Termék / komponens megoldás kiválasztása  SP 1.1. Alternatívák és kiválasztási kritériumok.
Digitális rendszerek I. rész
A tervezés mint menedzsment funkció
Digitális rendszerek II. rész
Tanfolyam megszervezése Képzés módszerei SZTE JGYPK Felnőttképzési Intézet 2009/2010. I. félév Szeged.
Sorrendi (szekvenciális)hálózatok tervezése
Az integrált áramkörök (IC-k) tervezése
Számítógépes geometriai leíró nyelvek
Értékesítési csatornák
Állapotgépek (state machines)
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Mekkora készletet tartsunk?
Szintézis Keresztes Péter, 2005 A GAJSKI-KUHN DIAGRAM Alapelv: Rendezzük a digitális- rendszerek leírásait célok és szintek szerint.
SZÁMÍTÓGÉP ARCHITEKTÚRÁK
Fordítóprogramok FORD01 Programozó matematikus III. évf. Miskolci Egyetem 1 Fordítóprogramok 1 Programozó matematikus szak 2003/2004-es tanév II. félév.
A termelés egyszerűsített elvi modellje. 1. Termelési főterv elkészítése: konkrét megrendelések vártható értékesítések prognózis-adatai alapján Tételes.
CISC - RISC processzor jellemzők
6. előadás Hatókör, láthatóság, élettartam. Változók leképzése a memóriára. Blokkszerkezetes nyelvek. Kivételkezelés.
Szoftver mértékek Szoftver mérték: –A fejlesztési folyamat mérése –Végtermék mérése (termék mérték) Termék mérték: –Külső mértékek: Megbízhatósági mértékek.
Megvalósíthatóság és költségelemzés Készítette: Horváth László Kádár Zsolt.
Szombathely Dinamikus WEB programozás: PHP és JSP.
WEB MES (webes gyártásirányító rendszer) Kiss Miklós (G-5S8)
ISMERETALAPÚ RENDSZEREK SZAKÉRTŐ RENDSZEREK
Adatfolyam modellezés az SSADM-ben
A programozás alapjai A számítógép számára a feladat meghatá- rozását programozásnak nevezzük. Ha a processzor utasításait használjuk a feladat meghatározásához,
Operációs Rendszerek II.
Anyagadatbank c. tárgy gyakorlat Féléves tematika Adatbázis alapfogalmak, rendszerek Adatmodellek, adatbázis tervezés Adatbázis műveletek.
Karbantartási tevékenység felmérése és fejlesztése
II. Logisztikai tervezés
R EQUIREMENTS D EVELOPMENT Készítette: Devecseri Viktor.
Emberi erőforrás menedzsment Munkakörök elemzése, tervezése
Programtesztelés. Hibák keletkezésének okai nem egyértelmű vagy hiányos kommunikáció fejlesztés közben maga a szoftver bonyolultsága programozói (kódolási)
Budapesti Műszaki és Gazdaságtudományi Egyetem Elektronikus Eszközök Tanszéke 2. zárthelyi megoldásai december 2.
Széchenyi Isván Egyetem Számítógépes hálózatok II 1 Számítógépes Hálózatok II Széchenyi István Egyetem.
A PLC programozási nyelvek bemutatása
A photoshop.
Magas szintű Ipari Automatizálás Kérdések és válaszok Funkcióblokkon belüli indirekt címzés (CX-Programmer)
Az ECDL-ről „Az ECDL célja az informatikai írástudás elterjesztése, és annak elősegítése, hogy minél több ember az Információs Társadalom teljesértékű.
Adatbázis kezelés.
Az üzleti rendszer komplex döntési modelljei (Modellekkel, számítógéppel támogatott üzleti tervezés) II. Hanyecz Lajos.
Podoski Péter és Zabb László. Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök.
SLA (Service Level Aggrement) alapon történő szolgáltatás fejlesztés a Gazdasági Főigazgatóságon
1 Mivel foglalkoz(t)unk a laborokon? 1.hét: Word dokumentumok 1.hét: Word dokumentumok tagolása, tartalomjegyzék, ábrák számozása, hivatkozások, egyenlet-szerkesztő.
Szoftver születik Eötvös Konferencia Köllő Hanna.
Programozás, programtervezés
Software - Ismeretek Avagy mitől megy a Hardware.
1 Mivel foglalkoz(t)unk a laborokon? 1.Labor: Word alapok Excel alapok: Excel alapok: Cellahivatkozás, munkalapfüggvény, diagram varázsló, trendvonal 2.
PÁRHUZAMOS ARCHITEKTÚRÁK – 13 INFORMÁCIÓFELDOLGOZÓ HÁLÓZATOK TUDÁS ALAPÚ MODELLEZÉSE Németh Gábor.
Számítógépek felépítése 4. előadás ALU megvalósítása, vezérlő egység
1 Mivel foglalkoz(t)unk a laborokon? 1.Labor: Word alapok Excel alapok: Excel alapok: Cellahivatkozás, munkalapfüggvény, diagram varázsló, trendvonal 2.
1 A számítógépek felépítése jellemzői, működése. 2 A számítógép feladata Az adatok Bevitele Tárolása Feldolgozása Kivitele (eredmény megjelenítése)
Szoftvermenedzsment A szoftver fogalma programmodulok rendszerdokumentáció konfigurációs adatok, és ezeket tároló fájlok felhasználói dokumentáció a szoftver.
Mikrorendszerek felépítésének általános modellje Fehér Béla.
LOGISZTIKA ÉS GLOBALIZÁCIÓ. Logisztika és globalizáció A piacok globalizálódásának következménye: - nemzeti piacok szükségletét lényegesen meghaladó termelési.
Programozási alapok.
Beszerzések hatékonyság növelése
A könyvtári integrált rendszerek statisztikai moduljának használata
FPGA oktatás a PTE MIK -n
Projekt neve Cég neve Előadó neve
"Ha nem tudod, hogy hová mész,
Bevezetés a programozásba Algoritmikus gondolkodás
Hálózati architektúrák
PLC PROGRAMOZÁS Bemutató gyakorlat
Grosz Imre f. doc. Sorrendi áramkörök
Avagy mitől megy a Hardware
A számítógép működésének alapjai
Előadás másolata:

Magas szintű hardware szintézis

Magas szintű hardware szintézis

Magas szintű hardware szintézis Viselkedési leírásból (C nyelvű leírásból) vezérlés és adatfolyam gráf transzformáció

Magas szintű hardware szintézis A magas szintű HW szintézis előnyei 1. Rövidebb tervezési ciklus 2. Alacsonyabb tervezési költségek 3. Kisebb gyártási költségek 4. Kevesebb tervezési hiba 5. Tervezési kompromisszumok könnyebb meghozatala (több verzió elkészíthető a döntés ezek ereményének ismeretében hozható meg) 6. A dokumentáció gyorsabban és standardizálva készül 7. Specifikáció módosítás, változó körülményekhez, feltételek­hez való igazítás könnyebben, gyorsabban végezhető el

Magas szintű hardware szintézis A magas szintű szintézis részfeladatai ·   Allokáció: az erőforrások feladatokhoz rendelése erőforrás típusok meghatározása, erőforrások számának meghatározása erőforrás: műveletvégző adattároló adatút (MUX, BUSZ)   ·    Ütemezés: műveletek ütemekhöz, időlépésekhez rendelése, diszkrét időlépések, szinkron szekvenciális hálózat adatfüggőség befolyásolja ·  Modulok kiválasztása: erőforrás könyvtárból kiválasztjuk, hogy milyen erőforrás típusok vannak szempontok sebesség helyigény tápfelvétel ·    Bekötés: műveletvégzőművelet összerendelése tárolásregiszterek, memória ·    Vezérlés létrehozása, optimalizálása az ütemzést biztosító FSM létrehozás Speciális szempont: párhuzamosítás

Magas szintű hardware szintézis Algoritmikus leírás Fordítás Adatfolyam gráf Ütemezés Allokáció kényszerek Cimkézett Adatfolyam gráf Adatút diagram Regiszterek (adattárolók) FSM

Hierarchikus Task Gráf (HTG)                                                                               

Kód mozgatás a párhuzamosítás növelésére

Ütemezés-allokáció Párhuzamosítás g, e és c egy-egy ADD, SUB, COM

VHDL kód a vezlérlőről S0 S1 S2 S3 S4 S5 S6 case CurrentState when S0 => a; b; p; NextState <= S1; when S1 => d; k; q; NextState <= S2; when S3 => if not(p) then if (q) then i; NextState <= S4; else c; NextState <= S4; end if; when S4 => h; NextState <= S5; when S5 => l; NextState <= S6; m; NextState <= S6; j; NextState <= S5; when S6 => n; NextState <= S0; end case; S0 S1 S2 S3 S4 S5 S6

Erőforrás bekötés Sok mux

Állapot hozzárendelés                                                                                      Lokális szeletelés (a) globális szeletelés (b)

                                                                                                                       Kód generálás (VHDL)

VHDL kód res_CMP_4_in0_MUXES: PROCESS(CURRENT_STATE, regNum1, hT0, regNum0, hT1, hT39, regNum6) variable mux_select : std_logic_vector(7 downto 0); BEGIN mux_select := "00000000"; if (CURRENT_STATE(1) = '1') then mux_select(0) := '1'; end if; if (CURRENT_STATE(3) = '1' and hT0) then mux_select(1) := '1'; if (CURRENT_STATE(4) = '1' and hT0 and hT1 and NOT(hT39)) then mux_select(2) := '1'; if (CURRENT_STATE(5) = '1' and hT0 and hT1 and NOT(hT39)) then mux_select(3) := '1'; case mux_select is when "00000001" => res_CMP_4_in0 <= regNum1; when "00000010" => res_CMP_4_in0 <= regNum0; when "00000100" => when "00001000" => res_CMP_4_in0 <= regNum6; when others => res_CMP_4_in0 <= 0; END CASE; END PROCESS; -- res_CMP_4_in0_MUXES END PROCESS;