Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S2)
specjalność: projektowanie i zarządzanie projektami informatycznymi

Sylabus przedmiotu Synteza systemów rekonfigurowalnych - Przedmiot obieralny IV:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom drugiego stopnia
Tytuł zawodowy absolwenta magister
Obszary studiów nauki techniczne
Profil ogólnoakademicki
Moduł
Przedmiot Synteza systemów rekonfigurowalnych - Przedmiot obieralny IV
Specjalność systemy komputerowe i technologie mobilne
Jednostka prowadząca Katedra Architektury Komputerów i Telekomunikacji
Nauczyciel odpowiedzialny Mariusz Kapruziak <Mariusz.Kapruziak@zut.edu.pl>
Inni nauczyciele Mariusz Kapruziak <Mariusz.Kapruziak@zut.edu.pl>
ECTS (planowane) 2,0 ECTS (formy) 2,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny 16 Grupa obieralna 2

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW3 15 1,20,50zaliczenie
laboratoriaL3 15 0,80,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Student ma podstawową wiedzę z zakresu architektur systemów komputerowych.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Student zna język Verilog w stopniu zaawansowanym.
C-2Student zna języki VHDL oraz SystemVerilog w stopniu podstawowym/średnio zaawansowanym.
C-3Student ma wiedzę o budowie i działaniu układów FPGA oraz o warunkach opłacalności ich stosowania.
C-4Student zna terminologie oraz podstawy metodyczne pracy z dziedziny syntezy układów rekonfigurowalnych.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1FPGA Editor i reczna edycja struktury FPGA, zaznajomienie się z wewnętrzną organizacją układu FPGA2
T-L-2Verilog - podstawowy program do generowania przebiegów czasowych2
T-L-3Prosta karta graficzna - obsługa interfejsu VGA i generowanie obrazu przez FPGA - w języku Verilog2
T-L-4Przypisania blokujące i nieblokujące, funkcje i zaawansowane konstrukcje języka Verilog2
T-L-5Zagadnienia mocy zużywanej przez procesor i samodzielna optymalizacja zużycia mocy przez strukturę zaimplementowaną w CPLD2
T-L-6Kod mikroprocesora proceduralnego w strukturze FPGA i ewentualne własne modyfikacje architektury procesora2
T-L-7Projekt indywidualny studenta, typu nadajnik/odbiornik RS-232.2
T-L-8zaliczenie1
15
wykłady
T-W-1Budowa i rodzaje układów FPGA, CPLD oraz FPAA2
T-W-2Język Verilog4
T-W-3Język VHDL, przypomnienie i porównanie z Verilogiem2
T-W-4Synteza wyzszego poziomu: architektury oraz TLM2
T-W-5Język SystemVerilog2
T-W-6RISP, Procesory o rekonfigurowalnej liście instrukcji2
T-W-7Zaliczenie1
15

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Uczestnictwo w zajeciach15
A-L-2Przygotowanie do zajec5
A-L-3Konkurs2
22
wykłady
A-W-1Uczestnictwo w zajeciach15
A-W-2Przygotowanie do zajec8
A-W-3Przygotowanie do zaliczenia8
A-W-4Udzał w konsultacjach i zaliczeniu formy zajęć2
33

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Laboratoria - pisanie kodu na układy Xilinx Spartan3.
M-2Laboratoria - pisanie kodu naukłady Xilinx Virtex 5 zapewniające dynamiczną rekonfigurowalność.
M-3Wykład informacyjny z elementami dyskusji.
M-4Projekt pozwalający studentowi wykazać się samodzielną inicjatywą, zakończony konkursem na najlepszą pracę.

Sposoby oceny

KODSposób oceny
S-1Ocena podsumowująca: Zaliczenie laboratoriów w formie prezentacji i omówienia swoich kodów.
S-2Ocena podsumowująca: Omówienie i zaprezentowanie projektów własnych wraz z konkusem na najlepszy projekt.
S-3Ocena podsumowująca: Zaliczenie wykładów w formie ustnej jako odpowiedź na wybrane pytanie z listy wcześniej przygotowanych i przedstawionych studentom.

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D18/O5/4-1_W01
Student zna języki opisu sprzętu jak Verilog, VHDL oraz SystemVerilog. Zna także podstawowe narzędzia tworzenia struktury procesorów dostosowanych do aplikacji. Rozumie także, że istnieje alternatywa w stosunku do architektur von Neumannowskich.
I_2A_W04, I_2A_W06, I_2A_W10C-2, C-1M-1, M-2, M-3, M-4S-1

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D18/O5/4-1_U01
Student umie samodzielnie napisać kod i uruchomić system z wykorzystaniem układów FPGA i CPLD.
I_2A_U08, I_2A_U12C-1M-1, M-2, M-3, M-4S-1, S-2

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
I_2A_D18/O5/4-1_W01
Student zna języki opisu sprzętu jak Verilog, VHDL oraz SystemVerilog. Zna także podstawowe narzędzia tworzenia struktury procesorów dostosowanych do aplikacji. Rozumie także, że istnieje alternatywa w stosunku do architektur von Neumannowskich.
2,0
3,0Student zna język Verilog/VHDL i umie omówić kody w nim napisane. W szczególności umie narysować strukturę odpowiadającemu danemu kodowi.
3,5Student zna zaawansowane konstrukcje językowe Verilog/VHDL i odpowiadające im struktury. Umie wymienić także kilka narzędzi tworzenie struktur procesorów i umie używać przynajmniej jedno z nich.
4,0Student umie wykorzystać gotowe IPcory/ soft processory do realizacji swojego zadania.
4,5Student umie przedstawić publicznie własny oryginalny kod wybranego zagadnienia. Możliwe są tutaj drobne błędy.
5,0Student umie przedstawić publicznie własny oryginalny kod wybranego zagadnienia i przedstawić go w kontekście istniejących rozwiązań.

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
I_2A_D18/O5/4-1_U01
Student umie samodzielnie napisać kod i uruchomić system z wykorzystaniem układów FPGA i CPLD.
2,0
3,0Student umie wykonać kody na układy FPGA na laboratoriach przy pomocy prowadzącego i popełniając drobne błędy.
3,5Student umie wykonać bezbłędnie kod z laboratoriów i omówić jego działanie.
4,0Student umie zaproponować własne modyfikacje i rozszerzenia do kodu z laboratoriów.
4,5Student wykonał i omówił swoje własne rozwiązanie niebanalnego kodu na FPGA. Możliwe są tutaj drobne błędy.
5,0Student bezbłędnie wykonał i omówił swoje własne rozwiązanie niebanalnego kodu na FPGA.

Literatura podstawowa

  1. Maxfield, The Design Warrior's Guide to FPGAs, Linacre house, 2004
  2. G. De Micheli, Synteza i optymalizacja układów cyfrowych, WNT, 1998
  3. S. Sutherland, S. Davidmann, P. Flake, SystemVerilog for Design, A Guide to Using SystemVerilog for Hadrware Desing and Modeling, Sprinter, 2011
  4. J. Nurmi, rocessor Design, System-on-Chip Computing for ASICs and FPGAs, Springer, 2007

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1FPGA Editor i reczna edycja struktury FPGA, zaznajomienie się z wewnętrzną organizacją układu FPGA2
T-L-2Verilog - podstawowy program do generowania przebiegów czasowych2
T-L-3Prosta karta graficzna - obsługa interfejsu VGA i generowanie obrazu przez FPGA - w języku Verilog2
T-L-4Przypisania blokujące i nieblokujące, funkcje i zaawansowane konstrukcje języka Verilog2
T-L-5Zagadnienia mocy zużywanej przez procesor i samodzielna optymalizacja zużycia mocy przez strukturę zaimplementowaną w CPLD2
T-L-6Kod mikroprocesora proceduralnego w strukturze FPGA i ewentualne własne modyfikacje architektury procesora2
T-L-7Projekt indywidualny studenta, typu nadajnik/odbiornik RS-232.2
T-L-8zaliczenie1
15

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Budowa i rodzaje układów FPGA, CPLD oraz FPAA2
T-W-2Język Verilog4
T-W-3Język VHDL, przypomnienie i porównanie z Verilogiem2
T-W-4Synteza wyzszego poziomu: architektury oraz TLM2
T-W-5Język SystemVerilog2
T-W-6RISP, Procesory o rekonfigurowalnej liście instrukcji2
T-W-7Zaliczenie1
15

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajeciach15
A-L-2Przygotowanie do zajec5
A-L-3Konkurs2
22
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestnictwo w zajeciach15
A-W-2Przygotowanie do zajec8
A-W-3Przygotowanie do zaliczenia8
A-W-4Udzał w konsultacjach i zaliczeniu formy zajęć2
33
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_2A_D18/O5/4-1_W01Student zna języki opisu sprzętu jak Verilog, VHDL oraz SystemVerilog. Zna także podstawowe narzędzia tworzenia struktury procesorów dostosowanych do aplikacji. Rozumie także, że istnieje alternatywa w stosunku do architektur von Neumannowskich.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_W04Ma wiedzę z zakresu zaawansowanych technik programowania systemów informatycznych w wybranym obszarze zastosowań
I_2A_W06Posiada wiedzę o narzędziach sprzętowo-programowych wspomagających rozwiązywanie wybranych i złożonych problemów w różnych obszarach nauki i techniki
I_2A_W10Ma poszerzoną wiedzę dotyczącą trendów rozwojowych i możliwości zastosowania informatyki w wybranych obszarach nauki i techniki
Cel przedmiotuC-2Student zna języki VHDL oraz SystemVerilog w stopniu podstawowym/średnio zaawansowanym.
C-1Student zna język Verilog w stopniu zaawansowanym.
Metody nauczaniaM-1Laboratoria - pisanie kodu na układy Xilinx Spartan3.
M-2Laboratoria - pisanie kodu naukłady Xilinx Virtex 5 zapewniające dynamiczną rekonfigurowalność.
M-3Wykład informacyjny z elementami dyskusji.
M-4Projekt pozwalający studentowi wykazać się samodzielną inicjatywą, zakończony konkursem na najlepszą pracę.
Sposób ocenyS-1Ocena podsumowująca: Zaliczenie laboratoriów w formie prezentacji i omówienia swoich kodów.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student zna język Verilog/VHDL i umie omówić kody w nim napisane. W szczególności umie narysować strukturę odpowiadającemu danemu kodowi.
3,5Student zna zaawansowane konstrukcje językowe Verilog/VHDL i odpowiadające im struktury. Umie wymienić także kilka narzędzi tworzenie struktur procesorów i umie używać przynajmniej jedno z nich.
4,0Student umie wykorzystać gotowe IPcory/ soft processory do realizacji swojego zadania.
4,5Student umie przedstawić publicznie własny oryginalny kod wybranego zagadnienia. Możliwe są tutaj drobne błędy.
5,0Student umie przedstawić publicznie własny oryginalny kod wybranego zagadnienia i przedstawić go w kontekście istniejących rozwiązań.
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_2A_D18/O5/4-1_U01Student umie samodzielnie napisać kod i uruchomić system z wykorzystaniem układów FPGA i CPLD.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_U08Potrafi wykorzystywać narzędzia sprzętowo-programowe wspomagające rozwiązywanie wybranych problemów w różnych obszarach nauki i techniki
I_2A_U12Ma umiejętność stosowania zaawansowanych technik programowania i metodyki projektowania systemów informatycznych w wybranym obszarze zastosowań
Cel przedmiotuC-1Student zna język Verilog w stopniu zaawansowanym.
Metody nauczaniaM-1Laboratoria - pisanie kodu na układy Xilinx Spartan3.
M-2Laboratoria - pisanie kodu naukłady Xilinx Virtex 5 zapewniające dynamiczną rekonfigurowalność.
M-3Wykład informacyjny z elementami dyskusji.
M-4Projekt pozwalający studentowi wykazać się samodzielną inicjatywą, zakończony konkursem na najlepszą pracę.
Sposób ocenyS-1Ocena podsumowująca: Zaliczenie laboratoriów w formie prezentacji i omówienia swoich kodów.
S-2Ocena podsumowująca: Omówienie i zaprezentowanie projektów własnych wraz z konkusem na najlepszy projekt.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student umie wykonać kody na układy FPGA na laboratoriach przy pomocy prowadzącego i popełniając drobne błędy.
3,5Student umie wykonać bezbłędnie kod z laboratoriów i omówić jego działanie.
4,0Student umie zaproponować własne modyfikacje i rozszerzenia do kodu z laboratoriów.
4,5Student wykonał i omówił swoje własne rozwiązanie niebanalnego kodu na FPGA. Możliwe są tutaj drobne błędy.
5,0Student bezbłędnie wykonał i omówił swoje własne rozwiązanie niebanalnego kodu na FPGA.