Uniwersytet Mikołaja Kopernika w Toruniu - Centralny punkt logowania
Strona główna

Programowanie FPGA

Informacje ogólne

Kod przedmiotu: 0800-PROFPGA
Kod Erasmus / ISCED: (brak danych) / (0714) Elektronika i automatyzacja Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Programowanie FPGA
Jednostka: Wydział Fizyki, Astronomii i Informatyki Stosowanej
Grupy:
Punkty ECTS i inne: 3.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Wymagania wstępne:

Kurs programowania C (np. 0800-JPRO)

Rodzaj przedmiotu:

przedmiot obowiązkowy

Całkowity nakład pracy studenta:

Godziny realizowane z udziałem nauczycieli ( godz.):

- udział w laboratorium – 45


Czas poświęcony na pracę indywidualną studenta ( godz.):


- przygotowanie do zajęć - 15

- przygotowanie do kolokwium - 20


Łącznie: 80 godz. (3 ECTS)


Efekty uczenia się - wiedza:

W1: Posiada wiedzę z zakresu architektury i programowania układów programowalnych FPGA – K_W01, K_W02

W2: Posiada wiedzę pozwalającą na zrównoleglenie algorytmu i jego implementację w strukturze FPGA układu Zynq za pomocą środowiska Vivado oraz Vivado HLS - K_W05

W3: Posiada wiedzę pozwalającą na napisanie i implementacje kodu w języku C na procesor ARM wchodzący w skład układu Zynq - K_W05

W4: Zna historię rozwoju, stan obecny oraz trendy rozwojowe układów FPGA - K_W02


Efekty uczenia się - umiejętności:

U1 – Potrafi zastosować posiadaną wiedzę do analizy i reformułowania algorytmów na układy programowalne – K_U01

U2 – Analizuje wydajność algorytmu, jego „wąskie gardła” oraz potrafi dokonać krytycznej oceny przydatności układu programowalnego Zynq do przetwarzania danych K_U04, K_U05

U3 – Wykorzystuje dokumentacje techniczną i potrafi samodzielnie uzupełnić swoją wiedzę podczas tworzenia kodu K_U09


Efekty uczenia się - kompetencje społeczne:

K1 - Umie krytycznie oceniać swoje umiejętności i szybkość programowania - K_K01

K2 – Posiada umiejętność prowadzenia dyskusji na temat wydajności proponowanych rozwiązań implementacyjnych, potrafi precyzyjnie zadawać pytania – K_K01


Metody dydaktyczne:

Metody dydaktyczne podające:

- pogadanka

- wykład informacyjny (konwencjonalny)

- wykład konwersatoryjny

Metody dydaktyczne poszukujące:

- ćwiczeniowa

- laboratoryjna


Metody dydaktyczne podające:

- pogadanka
- wykład informacyjny (konwencjonalny)
- wykład konwersatoryjny

Metody dydaktyczne poszukujące:

- ćwiczeniowa
- laboratoryjna

Skrócony opis:

Coraz bardziej złożone numerycznie zadania stawiane nowoczesnym systemom wbudowanym (ES – embedded systems) wymagają coraz wydajniejszych rozwiązań w budowie podzespołów elektronicznych. Jednym z nich jest rodzina układów programowalnych o nazwie Zynq produkowanych przez Xilinx. Ich główną zaletą jest wbudowanie w jeden scalony układ elektroniczny mikroprocesora ARM Cortex A9 wraz z układem programowalnym. Takie rozwiązanie pozwala na zredukowanie opóźnień w przesyłaniu danych pomiędzy tymi układami (w stosunku do rozwiązań, które posiadają dwa odrębne układy) i pozwala na uzyskanie wyższych wydajności przetwarzania danych.

Zajęcia poświęcone są efektywnemu programowaniu tych nowoczesnych układów.

Pełny opis:

Program zajęć:

- Architektura układów Xilinx Zynq 7000.

- Środowisko Vivado.

- Bloki funkcjonalne IP

- Programowanie układu FPGA i procesora ARM

- Debugowanie i symulacje kodu

- Magistrala AXI

- Przesyłanie danych z wykorzystaniem DMA

- Implementacja IP filtrującego sygnał

- Implementacja algorytmu mnożenia macierzy

- Wykorzystanie modułów IP dostarczonych przez producenta na przykładzie FFT

Literatura:

Literatura podstawowa:

1. Louise H. Crockett, Ross A. Elliot, Martin A. Enderwitz, Robert W. Stewart, “The Zynq Book, Embedded Processing with the ARM® Cortex®-A9 on the Xilinx® Zynq®-7000 All Programmable SoC”, www.zynqbook.com

2. Louise H. Crockett, Ross A. Elliot, Martin A. Enderwitz, David Northcote, “The Zynq Book Tutorials”, www.zynqbook.com/download-tuts.html

Metody i kryteria oceniania:

Metody oceniania:

kolokwium- W1, W2, W3, W4, U1, U2, U3, K1, K2

Kryteria oceniania:

Laboratorium: zaliczenie na ocenę na podstawie dwóch kolokwiów

ndst – <50%

dst- 50% - 59%

dst plus- 60% - 69%

db- 70% - 79%

db plus- 80% - 89%

bdb- >=90%

Praktyki zawodowe:

nie dotyczy

Zajęcia w cyklu "Semestr letni 2023/24" (w trakcie)

Okres: 2024-02-20 - 2024-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 45 godzin więcej informacji
Koordynatorzy: Marcin Sylwestrzak
Prowadzący grup: Marcin Sylwestrzak
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Laboratorium - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.
ul. Jurija Gagarina 11, 87-100 Toruń tel: +48 56 611-40-10 https://usosweb.umk.pl/ kontakt deklaracja dostępności USOSweb 7.0.3.0-1 (2024-04-02)