Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Dynamiczna rekonfiguracja układów FPGA. Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Spis treści Rodzaje.

Podobne prezentacje


Prezentacja na temat: "Dynamiczna rekonfiguracja układów FPGA. Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Spis treści Rodzaje."— Zapis prezentacji:

1 Dynamiczna rekonfiguracja układów FPGA

2 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Spis treści Rodzaje rekonfiguracji Rodzaje rekonfiguracji Virtex II Pro Virtex II Pro Podsumowanie Podsumowanie

3 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rekonfiguracji układów FPGA Konfiguracja układu FPGA – programowanie układu FPGA Konfiguracja układu FPGA – programowanie układu FPGA Statyczna rekonfiguracja – częściowa lub całkowita rekonfiguracja układu FPGA w trybie off-line Statyczna rekonfiguracja – częściowa lub całkowita rekonfiguracja układu FPGA w trybie off-line Dynamiczna rekonfiguracja – częściowa lub całkowita rekonfiguracja układu FPGA w trybie on-line Dynamiczna rekonfiguracja – częściowa lub całkowita rekonfiguracja układu FPGA w trybie on-line

4 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Konfiguracja Statyczna rekonfiguracja Konfiguracja rekonfiguracja praca

5 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Dynamiczna rekonfiguracja Konfiguracja rekonfiguracja praca

6 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rodzaje rekonfiguracji dynamicznej Jednokontekstowa - zmiana konfiguracji (tzw. kontekstu) całej struktury programowalnej Jednokontekstowa - zmiana konfiguracji (tzw. kontekstu) całej struktury programowalnej Częściowa rekonfiguracja – zmiana konfiguracji części struktury programowalnej Częściowa rekonfiguracja – zmiana konfiguracji części struktury programowalnej Wielokontekstowa – kilka konfiguracji, jedna konfiguracja aktywna, pozostałe mogą być rekonfigurowane Wielokontekstowa – kilka konfiguracji, jedna konfiguracja aktywna, pozostałe mogą być rekonfigurowane

7 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Część dynamiczna 1 programowanie Część dynamiczna 2 Rekonfiguracja jednokontekstowa Część dynamiczna 1 Konfiguracja statyczna Część dynamiczna 2 Nowa konfiguracja

8 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Częściowa rekonfiguracja Część statyczna Część dynamiczna 1 Interfejs scalanie Część dynamiczna 2 Część statyczna Część dynamiczna 1 Interfejs Konfiguracja statyczna Część dynamiczna 2 Nowa konfiguracja Część dynamiczna 2 ektrakcja

9 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Częściowa rekonfiguracja Normalna praca bloku stycznego i dynamicznego Normalna praca bloku stycznego i dynamicznego Separacja bloków Separacja bloków Ponowne połączenie bloku statycznego i dynamicznego Ponowne połączenie bloku statycznego i dynamicznego statyczny dynamiczny

10 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA C1 Konfiguracja wielokontekstowa Część dynamiczna 1 Konfiguracja statyczna Nowa konfiguracja Część dynamiczna 4 C1 C2 C3 C4 Część dynamiczna 2 Część dynamiczna 2 Część dynamiczna 1 Część dynamiczna 3 Część dynamiczna 1 Część dynamiczna 3 C3

11 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rekonfiguracji układów FPGA Logika rekonfigurowana zatrzymuje obliczenia podczas inicjalizacji nowej konfiguracji Logika rekonfigurowana zatrzymuje obliczenia podczas inicjalizacji nowej konfiguracji Czas konfiguracji uzależniony jest od wielkości danych konfiguracyjnych Czas konfiguracji uzależniony jest od wielkości danych konfiguracyjnych Mniejsza granulacja dostarcza większą elastyczność, jednak wnosi większe opóźnienia ze względu na zwiększoną liczbę połączeń Mniejsza granulacja dostarcza większą elastyczność, jednak wnosi większe opóźnienia ze względu na zwiększoną liczbę połączeń Nowsze układy FPGA umożliwiają zarówno rekonfigurację częściową jak i zarazem dynamiczną i częściową Nowsze układy FPGA umożliwiają zarówno rekonfigurację częściową jak i zarazem dynamiczną i częściową

12 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rekonfiguracja układów Xilinx Virtex Układy Virtex wspierają zarówno częściową jak i dynamiczną rekonfigurację na trzy sposoby: Układy Virtex wspierają zarówno częściową jak i dynamiczną rekonfigurację na trzy sposoby: Wielo kolumnowa rekonfiguracja, niezależnie od pozostałej modułów Wielo kolumnowa rekonfiguracja, niezależnie od pozostałej modułów Wielo kolumnowa z komunikacją z poszczególnymi modułami Wielo kolumnowa z komunikacją z poszczególnymi modułami Manipulacje na małej ilości bitów konfiguracji, tylko niewielka część logiki jest przeprogramowana Manipulacje na małej ilości bitów konfiguracji, tylko niewielka część logiki jest przeprogramowana Obecnie trwają pracę nad układami, które mogą zapisać kilka konfiguracji przełączanych w zależności od kontekstu Obecnie trwają pracę nad układami, które mogą zapisać kilka konfiguracji przełączanych w zależności od kontekstu

13 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rekonfiguracja układów Xilinx Virtex Pośrednie wyniki z obliczeń powinny być zapisane przed rekonfiguracją układu. Pośrednie wyniki z obliczeń powinny być zapisane przed rekonfiguracją układu. Niektóre układy mają możliwość przechowywania wyników pośrednich w strukturze logicznej podczas programowania Niektóre układy mają możliwość przechowywania wyników pośrednich w strukturze logicznej podczas programowania Podział zadań pomiędzy mikroprocesorem i rekonfigurowaną logiką (ang. CO-design) Podział zadań pomiędzy mikroprocesorem i rekonfigurowaną logiką (ang. CO-design)

14 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Virtex II Pro

15 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Virtex II Pro Tryb konfiguracjiM2M1M0CCLKSzerokość magistrali D­ out Master Serial000Wy1Yes Slave Serial111We1Yes Master SelectMAP011Wy8No Slave SelectMAP110We8No Boundary Scan101Nie dot.1No Virtex Pro II tryby konfiguracji

16 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Virtex II Pro Slave Serial – Virtex II Pro pobieranie danych do konfiguracji jako ciąg bitów. Możliwość zaprogramowaniu wielu układów. Układy mogą być połączone w łańcuch Slave Serial – Virtex II Pro pobieranie danych do konfiguracji jako ciąg bitów. Możliwość zaprogramowaniu wielu układów. Układy mogą być połączone w łańcuch Master Serial – interfejs identyczny do slave serial. Wewnętrzny oscylator generuje sygnał zegara konfiguracji CCLK Master Serial – interfejs identyczny do slave serial. Wewnętrzny oscylator generuje sygnał zegara konfiguracji CCLK Slave SelectMAP – jest szybszym trybem konfiguracji, dane przesyłane magistralą 8 bitową. Możliwość odczytu konfiguracji Slave SelectMAP – jest szybszym trybem konfiguracji, dane przesyłane magistralą 8 bitową. Możliwość odczytu konfiguracji Master SelectMAP – interfejs identyczny do Slave SelectMAP, układ wysterowywuje CCLK Master SelectMAP – interfejs identyczny do Slave SelectMAP, układ wysterowywuje CCLK Bounduary Scan – programowanie, reprogramowanie, testowanie przy użyciu standardu JTAG Bounduary Scan – programowanie, reprogramowanie, testowanie przy użyciu standardu JTAG

17 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Virtex II Pro Dynamiczna rekonfiguracja możliwa jest w dwóch trybach Slave SelectMAP lub Boundary Scan (JTAG) Dynamiczna rekonfiguracja możliwa jest w dwóch trybach Slave SelectMAP lub Boundary Scan (JTAG) Dane ładowane są w postaci ramek – nagłówek plus dane, wielkość ramki zależy od układu Dane ładowane są w postaci ramek – nagłówek plus dane, wielkość ramki zależy od układu

18 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Virtex II Pro Modele dynamicznej częściowej rekonfiguracji Modele dynamicznej częściowej rekonfiguracji Modułowy (ang. Module-based) Modułowy (ang. Module-based) Projekt od początku tworzony jest modułowo Projekt od początku tworzony jest modułowo Na etapie implementacji każdy moduł ma ustaloną pozycję, rozmiar Na etapie implementacji każdy moduł ma ustaloną pozycję, rozmiar Rekonfiguracja polega na przeprogramowaniu całego modułu Rekonfiguracja polega na przeprogramowaniu całego modułu Różnicowy (ang. Difference-based) Różnicowy (ang. Difference-based) Efektywny jeżeli wykonujemy małe zmiany w projekcie, wtedy strumień bitowy zawiera tylko różnice w projektach. Przy większych zmianach należy użyć modelu modułowego Efektywny jeżeli wykonujemy małe zmiany w projekcie, wtedy strumień bitowy zawiera tylko różnice w projektach. Przy większych zmianach należy użyć modelu modułowego Narzędzie BitGen (dostarczane z ISE) może wygenerować ciąg bitów reprezentujący różnice pomiędzy projektami Narzędzie BitGen (dostarczane z ISE) może wygenerować ciąg bitów reprezentujący różnice pomiędzy projektami

19 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Czas programowania

20 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA ACE – środowisko konfiguracyjne

21 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Algorytmy adaptacyjne Reprogramowalnego układu FPGA Virtex w misji na Marsa (ang. NASA's Mars Exploration Rover (MER) Mission) Reprogramowalnego układu FPGA Virtex w misji na Marsa (ang. NASA's Mars Exploration Rover (MER) Mission) Układ jest rekonfigurowany 5 razy w ciągu sekundu Układ jest rekonfigurowany 5 razy w ciągu sekundu

22 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Rekonfiguracja przy użyciu interfejsu internetowego

23 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Podsumowanie Zalety Zalety Dostosowanie konfiguracji układu do aktualnych wymagań Dostosowanie konfiguracji układu do aktualnych wymagań Adaptacja algorytmu Adaptacja algorytmu Uaktualnienie algorytmu Uaktualnienie algorytmu Możliwość realizowania bardzo dużych algorytmów kolejno w odpowiednich konfiguracjach systemu Możliwość realizowania bardzo dużych algorytmów kolejno w odpowiednich konfiguracjach systemu

24 Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Podsumowanie Zalety Zalety Redukcja liczby układów Redukcja liczby układów Redukcja poboru mocy Redukcja poboru mocy Lepsze wykorzystanie dostępnych zasobów sprzętowych Lepsze wykorzystanie dostępnych zasobów sprzętowych Obecne wykorzystanie układów: Obecne wykorzystanie układów: Pentium - 55% Pentium - 55% Pentium II - 53% Pentium II - 53% RISC - 44% RISC - 44% Wady Wady Czas rekonfiguracji Czas rekonfiguracji System zarządzający rekonfiguracją System zarządzający rekonfiguracją


Pobierz ppt "Dynamiczna rekonfiguracja układów FPGA. Mariusz Kwiczala Katedra Elektroniki AGH Kraków © 2004 Dynamiczna rekonfiguracja układów FPGA Spis treści Rodzaje."

Podobne prezentacje


Reklamy Google