Photon Mapping
Transkrypt
Photon Mapping
Synteza, porządek teoretyczny dra De Micheli dr inż. Mariusz Kapruziak [email protected] pok. 107, tel. 449 55 44 1/23 Synteza, poziom logiczny i architektury 1. Wykres Y Gajskiego i Kuhna Wykres Y Gajskiego i Kuhna 1 2 3 4 5 2/23 1. Wykres Y Gajskiego i Kuhna Modele/Poziomy 1 2 3 4 5 3/23 2. Poziom logiczny 1 2 3 4 5 4/23 Poziom loginczny - modele KOD RTL KOD BEHAWIORALNY KOD STRUKTURALNY case( {a,b} ) 2’b00: y <= 0 ; y = a ^ b; xor gate0( y, a, b ); 2’b01: y <= 1; 2’b10: y <= 1; 2’b11: y <= 0; endcase always @( posedge CLK ) licznik = licznik + 1; always @( posedge CLK ) begin licznik[0] <= !licznik[0]; licznik[1] <= licznik[1] ^ licznik[0]; end counter l1( CLK, licznik ); 2. Poziom logiczny 1 2 3 4 5 5/23 Synteza logiczna Synteza OPTYMALIZACJA Schemat logiczny Synteza logiczna już dość dobrze wykonywana przez automatyczne narzędzia syntezy 3. Synteza logiczna 1 2 3 4 5 Optymalizacja logiczna – kombinacyjna (szkic) Tablica Karnaugh 6/23 3. Synteza logiczna 1 2 3 4 5 Optymalizacja logiczna – graf i operacje na grafie 7/23 3. Synteza logiczna Eliminacja Dekompozycja Wydzielanie 1 2 3 4 Optymalizacja logiczna przekształcenia Upraszczanie Podstawianie 5 8/23 3. Synteza logiczna 1 2 3 4 5 Optymalizacja logiczna – sekwencyjna (szkic) 9/23 3. Synteza logiczna 1 2 3 4 5 Optymalizacja logiczna dekompozycja automatów Pierwotny automat Ogólna dekompozycja dwukierunkowa Dekompozycja równoległa Dekompozycja kaskadowa 10/23 4. Poziom architektury 1 2 3 4 5 11/23 4. Poziom architektury 1 2 Poziom architektury Zadanie: Przydział zasobów w CZASIE input [5:0] x; NIE SYNTEZOWALNE NA while( x>0) begin POZIOMIE LOGICZNYM x = x – 1; cnt = cnt + 1; silnia = silnia * cnt; end 3 4 5 12/23 4. Poziom architektury 1 2 3 4 5 13/23 Wynik syntezy poziomu architekury struktura procesora input [5:0] x; while( x>0) begin x = x – 1; cnt = cnt + 1; silnia = silnia * cnt; end 4. Poziom architektury 1 2 Etapy syntezy poziomu architektury 1. IDENTYFIKACJA ZASOBÓW – określanie zasobów sprzętowych do realizacji operacji 2. KOLEJKOWANIE – ustalanie czasów aktywacji operacji 3. ŁĄCZENIE – wiązanie operacji z zasobami input [5:0] x; while( x>0) begin x = x – 1; cnt = cnt + 1; silnia = silnia * cnt; end 3 4 5 14/23 4. Poziom architektury 1 2 3 4 5 15/23 Kryteria optymalizacji POWIERZCHNIA vs SZYBKOŚĆ DZIAŁANIA Sumator 64-bitowy czas cyklu x zwłoka = czas całkowity przepustowość, potokowość 4. Poziom architektury 1 2 3 4 5 16/23 Kryteria optymalizacji – Punkty Pareta Punkty Pareta to punkty w przestrzenii optymalizacji nie zdominowana przez inne rozwiązania 5. Synteza architektury 1 2 3 4 5 17/23 5. Synteza architektury 1 2 3 4 Synteza architektury - KOLEJKOWANIE ... ... 5 18/23 5. Synteza architektury 1 2 Synteza architektury - ŁĄCZENIE kolejkowanie 3 4 5 19/23 5. Synteza architektury 1 2 3 Przykład – synteza poziomu architektury input [5:0] x; while( x>0) begin x = x – 1; cnt = cnt + 1; silnia = silnia * cnt; end ? 4 5 20/23 Synteza, porządek teoretyczny dra De Micheli 21/23 Podsumowanie G. De Micheli, Synteza i optymalizacja układów cyfrowych, WNT 1998 Synteza, porządek teoretyczny dra De Micheli Polecana literatura 1) G. De Micheli, Synteza i optymalizacja układów cyfrowych, WNT 1998 22/23 Synteza, porządek teoretyczny dra De Micheli dr inż. Mariusz Kapruziak [email protected] pok. 107, tel. 449 55 44 KONIEC 23/23