Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (N1)

Sylabus przedmiotu Akceleracja obliczeń:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia niestacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Akceleracja obliczeń
Specjalność Inżynieria komputerowa
Jednostka prowadząca Katedra Architektury Komputerów i Telekomunikacji
Nauczyciel odpowiedzialny Piotr Dziurzański <Piotr.Dziurzanski@zut.edu.pl>
Inni nauczyciele Magdalena Szaber-Cybularczyk <Magdalena.Szaber@zut.edu.pl>, Mirosław Łazoryszczak <Miroslaw.Lazoryszczak@zut.edu.pl>
ECTS (planowane) 3,0 ECTS (formy) 3,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny 7 Grupa obieralna 1

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL7 18 1,50,50zaliczenie
wykładyW7 18 1,50,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Technika cyfrowa
W-2Architektura systemów komputerowych
W-3Programowanie 2

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Nabycie umiejętności sprzętowej akceleracji obliczeń z wykorzystaniem Vivado HLS.

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

KODTreść programowaGodziny
laboratoria
T-L-1Zapoznanie z Vivado HLS2
T-L-2Tworzenie akceleratorów z wykorzystaniem bibliotek Vivado HLS C2
T-L-3Tworzenie akceleratora sprzętowego dla systemu opartego na Microblaze CPU z wykorzystaniem AXI-Lite2
T-L-4Zastosowanie Xilinx AXI Central DMA Controller2
T-L-5Tworzenie interfejsu master/slave z wykorzystaniem Full AXI2
T-L-6Wykorzystanie modułów poziomu RTL2
T-L-7Tworzenie akceleratorów z wykorzystaniem OpenCL2
T-L-8Synteza modułów SystemC2
T-L-9Zaliczenie laboratorium2
18
wykłady
T-W-1Wprowadzenie do tworzenia akceleratorów sprzętowych w Vivado HLS. Niewspierane konstrukcje C. Biblioteki Vivado HLS C.2
T-W-2Arbitrary Precision Data Types. Biblioteka HLS Stream. Biblioteka Math.2
T-W-3HLS Video Library, IP Libraries, Linear Algebra.2
T-W-4Standard ARM Advanced Microcontroller Bus Architecture (AMBA)2
T-W-5Wprowadzenie do GPU i OpenCL2
T-W-6Wykorzystanie OpenCL w HLS2
T-W-7Wprowadzenie do SystemC2
T-W-8Synteza SystemC w Vivado HLS2
T-W-9Zaliczenie wykładu2
18

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

KODForma aktywnościGodziny
laboratoria
A-L-1Przygotowanie do zajęć18
A-L-2uczestnictwo w zajęciach18
A-L-3Udział w zaliczeniu i konsultacjach2
38
wykłady
A-W-1Przygotowanie do zajęć18
A-W-2uczestnictwo w zajęciach18
A-W-3Udział w zaliczeniu i konsultacjach2
38

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny
M-2Wykład problemowy
M-3Metoda przypadków
M-4Ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena podsumowująca: Ocena podsumowująca: Kolokwium
S-2Ocena podsumowująca: Ocena podsumowująca: Obrona napisanych programów

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_D01.11.2_W01
Student zna podstawowe techniki tworzenia akceleratorów sprzętowych w Vivado HLS
I_1A_W04, I_1A_W02C-1T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-8, T-W-9M-1, M-2, M-3S-1

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_D01.11.2_U01
Student potrafi projektować akceleratory sprzętowe w Vivado HLS
I_1A_U02, I_1A_U06C-1T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-L-8, T-L-9M-3, M-4S-2

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
I_1A_D01.11.2_W01
Student zna podstawowe techniki tworzenia akceleratorów sprzętowych w Vivado HLS
2,0nie spełnia wymogów na ocenę 3,0.
3,0zna podstawowe zagadnienia związane z projektowaniem akceleratorów w HLS, w tym magistralę AXI Lite.
3,5jak na ocenę 3,0 oraz zna oraz podstawy OpenCL.
4,0jak na ocenę 3,5 oraz zna funkcje biblioteki Vivado HLS C.
4,5jak na ocenę 4,0 oraz zna podstawy Full AXI.
5,0jak na ocenę 4,5 oraz zna podstawy SystemC.

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
I_1A_D01.11.2_U01
Student potrafi projektować akceleratory sprzętowe w Vivado HLS
2,0nie spełnia wymogów na ocenę 3,0.
3,0potrafi zaprojektować w Vivado prosty akcelerator dla Microblaze CPU wykorzystujący AXI Lite.
3,5jak na ocenę 3,0 oraz potrafi wykorzystać OpenCL w projektowaniu akceleratorów w Vivado.
4,0jak na ocenę 3,5 oraz potrafi wykorzystać biblioteki Vivado HLS C do konstrukcji akceleratorów.
4,5jak na ocenę 4,0 oraz potrafi korzystać z Full AXI przy tworzeniu akceleratorów w Vivado.
5,0jak na ocenę 4,5 oraz potrafi tworzyć moduły akceleratora w SystemC.

Literatura podstawowa

  1. Xilinx Inc., Vivado Design Suite User Guide: High-Level Synthesis, 2014
  2. David C. Black, SystemC: From the Ground Up, Second Edition, Springer, 2014
  3. Hasitha Muthumala Waidyasooriya,‎ Masanori Hariyama,‎ Kunio Uchiyama, Design of FPGA-Based Computing Systems with OpenCL, Springer, 2017

Literatura dodatkowa

  1. Sanjay Churiwala (Editor), Designing with Xilinx® FPGAs: Using Vivado, Springer, 2016
  2. David R. Kaeli et al., Heterogeneous Computing with OpenCL 2.0, Morgan Kaufmann, 2015
  3. J. Bhasker, A SystemC Primer, Second Edition, Star Galaxy Publishing, 2010

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Zapoznanie z Vivado HLS2
T-L-2Tworzenie akceleratorów z wykorzystaniem bibliotek Vivado HLS C2
T-L-3Tworzenie akceleratora sprzętowego dla systemu opartego na Microblaze CPU z wykorzystaniem AXI-Lite2
T-L-4Zastosowanie Xilinx AXI Central DMA Controller2
T-L-5Tworzenie interfejsu master/slave z wykorzystaniem Full AXI2
T-L-6Wykorzystanie modułów poziomu RTL2
T-L-7Tworzenie akceleratorów z wykorzystaniem OpenCL2
T-L-8Synteza modułów SystemC2
T-L-9Zaliczenie laboratorium2
18

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wprowadzenie do tworzenia akceleratorów sprzętowych w Vivado HLS. Niewspierane konstrukcje C. Biblioteki Vivado HLS C.2
T-W-2Arbitrary Precision Data Types. Biblioteka HLS Stream. Biblioteka Math.2
T-W-3HLS Video Library, IP Libraries, Linear Algebra.2
T-W-4Standard ARM Advanced Microcontroller Bus Architecture (AMBA)2
T-W-5Wprowadzenie do GPU i OpenCL2
T-W-6Wykorzystanie OpenCL w HLS2
T-W-7Wprowadzenie do SystemC2
T-W-8Synteza SystemC w Vivado HLS2
T-W-9Zaliczenie wykładu2
18

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Przygotowanie do zajęć18
A-L-2uczestnictwo w zajęciach18
A-L-3Udział w zaliczeniu i konsultacjach2
38
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Przygotowanie do zajęć18
A-W-2uczestnictwo w zajęciach18
A-W-3Udział w zaliczeniu i konsultacjach2
38
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_D01.11.2_W01Student zna podstawowe techniki tworzenia akceleratorów sprzętowych w Vivado HLS
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W04Ma wiedzę w zakresie programowania systemów komputerowych, zna podstawowe paradygmaty programowania i wiodące języki programowania.
I_1A_W02Posiada wiedzę w zakresie projektowania, analizy i implementacji algorytmów, struktur danych oraz konstrukcji programistycznych, zna podstawowe problemy algorytmiczne występujące w obszarze informatyki.
Cel przedmiotuC-1Nabycie umiejętności sprzętowej akceleracji obliczeń z wykorzystaniem Vivado HLS.
Treści programoweT-W-1Wprowadzenie do tworzenia akceleratorów sprzętowych w Vivado HLS. Niewspierane konstrukcje C. Biblioteki Vivado HLS C.
T-W-2Arbitrary Precision Data Types. Biblioteka HLS Stream. Biblioteka Math.
T-W-3HLS Video Library, IP Libraries, Linear Algebra.
T-W-4Standard ARM Advanced Microcontroller Bus Architecture (AMBA)
T-W-5Wprowadzenie do GPU i OpenCL
T-W-6Wykorzystanie OpenCL w HLS
T-W-7Wprowadzenie do SystemC
T-W-8Synteza SystemC w Vivado HLS
T-W-9Zaliczenie wykładu
Metody nauczaniaM-1Wykład informacyjny
M-2Wykład problemowy
M-3Metoda przypadków
Sposób ocenyS-1Ocena podsumowująca: Ocena podsumowująca: Kolokwium
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia wymogów na ocenę 3,0.
3,0zna podstawowe zagadnienia związane z projektowaniem akceleratorów w HLS, w tym magistralę AXI Lite.
3,5jak na ocenę 3,0 oraz zna oraz podstawy OpenCL.
4,0jak na ocenę 3,5 oraz zna funkcje biblioteki Vivado HLS C.
4,5jak na ocenę 4,0 oraz zna podstawy Full AXI.
5,0jak na ocenę 4,5 oraz zna podstawy SystemC.
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_D01.11.2_U01Student potrafi projektować akceleratory sprzętowe w Vivado HLS
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U02Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny wydajności, złożoności, efektywności systemów informatycznych i ich składowych.
I_1A_U06Potrafi rozwiązywać podstawowe problemy algorytmiczne z uwzględnieniem ich złożoności posługując się kluczowymi językami programowania.
Cel przedmiotuC-1Nabycie umiejętności sprzętowej akceleracji obliczeń z wykorzystaniem Vivado HLS.
Treści programoweT-L-1Zapoznanie z Vivado HLS
T-L-2Tworzenie akceleratorów z wykorzystaniem bibliotek Vivado HLS C
T-L-3Tworzenie akceleratora sprzętowego dla systemu opartego na Microblaze CPU z wykorzystaniem AXI-Lite
T-L-4Zastosowanie Xilinx AXI Central DMA Controller
T-L-5Tworzenie interfejsu master/slave z wykorzystaniem Full AXI
T-L-6Wykorzystanie modułów poziomu RTL
T-L-7Tworzenie akceleratorów z wykorzystaniem OpenCL
T-L-8Synteza modułów SystemC
T-L-9Zaliczenie laboratorium
Metody nauczaniaM-3Metoda przypadków
M-4Ćwiczenia laboratoryjne
Sposób ocenyS-2Ocena podsumowująca: Ocena podsumowująca: Obrona napisanych programów
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia wymogów na ocenę 3,0.
3,0potrafi zaprojektować w Vivado prosty akcelerator dla Microblaze CPU wykorzystujący AXI Lite.
3,5jak na ocenę 3,0 oraz potrafi wykorzystać OpenCL w projektowaniu akceleratorów w Vivado.
4,0jak na ocenę 3,5 oraz potrafi wykorzystać biblioteki Vivado HLS C do konstrukcji akceleratorów.
4,5jak na ocenę 4,0 oraz potrafi korzystać z Full AXI przy tworzeniu akceleratorów w Vivado.
5,0jak na ocenę 4,5 oraz potrafi tworzyć moduły akceleratora w SystemC.