Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

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ó.

Hasonló előadás


Az előadások a következő témára: "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ó."— Előadás másolata:

1 Magas szintű hardware szintézis

2

3

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

5 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

6 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

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

8 Hierarchikus Task Gráf (HTG)

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

10

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

12 VHDL kód a vezlérlőről 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 => if (q) then else h; NextState <= S5; end if; when S5 => l; NextState <= S6; else m; NextState <= S6; end if; if not(p) then j; NextState <= S5; if not(p) then when S6 => n; NextState <= S0; end case; S0 S1 S2 S3 S4 S5 S6

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

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

15 Kód generálás (VHDL)

16 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 := " "; if (CURRENT_STATE(1) = '1') then mux_select(0) := '1'; end if; if (CURRENT_STATE(3) = '1' and hT0) then mux_select(1) := '1'; end if; if (CURRENT_STATE(4) = '1' and hT0 and hT1 and NOT(hT39)) then mux_select(2) := '1'; end if; if (CURRENT_STATE(5) = '1' and hT0 and hT1 and NOT(hT39)) then mux_select(3) := '1'; end if; case mux_select is when " " => res_CMP_4_in0 <= regNum1; when " " => res_CMP_4_in0 <= regNum0; when " " => res_CMP_4_in0 <= regNum1; when " " => res_CMP_4_in0 <= regNum6; when others => res_CMP_4_in0 <= 0; END CASE; END PROCESS; -- res_CMP_4_in0_MUXES END PROCESS ;

17

18


Letölteni ppt "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ó."

Hasonló előadás


Google Hirdetések