Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Technika cyfrowa i układy programowalne
Tok studiów:
2019/2020
Kod:
IETP-1-307-s
Wydział:
Informatyki, Elektroniki i Telekomunikacji
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Elektronika i Telekomunikacja
Semestr:
3
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Stacjonarne
Prowadzący moduł:
dr inż. Dąbrowska-Boruch Agnieszka (adabrow@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

W ramach modułu przekazywana jest wiedza z zakresu budowy, zasad działania i projektowania układów cyfrowych.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Student zna i rozumie zasadę działania złożonych układów cyfrowych takich jak pamięci czy też układy programowalne ETP1A_W05 Kolokwium,
Egzamin
M_W002 Student ma podstawową wiedzę w zakresie propagacji sygnału cyfrowego w rzeczywistych układach, oraz w jaki sposób realizowana jest konwersja sygnału cyfrowego na analogowy lub analogowego na cyfrowy ETP1A_W05 Kolokwium,
Egzamin
M_W003 Student ma podstawową wiedzę w zakresie zasady działania podstawowych funkcji logicznych oraz sposobu ich realizacji w układach cyfrowych ETP1A_W01, ETP1A_W08 Kolokwium,
Egzamin
Umiejętności: potrafi
M_U001 Student potrafi opracować dokumentację dotyczącą realizacji zadania inżynierskiego i przygotować tekst zawierający omówienie wyników realizacji zadania ETP1A_U04 Wykonanie ćwiczeń laboratoryjnych
M_U002 Potrafi sformułować specyfikację prostych systemów cyfrowych, porównać rozwiązania projektowe cyfrowych układów elektronicznych ze względu na zadane kryteria użytkowe i ekonomiczne (pobór mocy, szybkość działania, koszt) ETP1A_U12, ETP1A_U08 Wykonanie ćwiczeń laboratoryjnych
M_U003 Potrafi wykorzystać poznane metody projektowania układów cyfrowych a także symulacje komputerowe do analizy i oceny działania cyfrowych układów elektronicznych ETP1A_U06 Wykonanie ćwiczeń laboratoryjnych
M_U004 Student potrafi zaprojektować, przeprowadzić symulację podstawowych układów cyfrowych, zbudować, uruchomić i przetestować zaprojektowany układ cyfrowy ETP1A_U12, ETP1A_U09, ETP1A_U13 Wykonanie ćwiczeń laboratoryjnych
Kompetencje społeczne: jest gotów do
M_K001 Student ma świadomość odpowiedzialności za pracę własną, potrafi podporządkować się zasadom pracy w zespole oraz ma świadomość odpowiedzialności za wspólnie realizowane zadania ETP1A_K04 Zaangażowanie w pracę zespołu
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
84 42 14 28 0 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Student zna i rozumie zasadę działania złożonych układów cyfrowych takich jak pamięci czy też układy programowalne + - + - - - - - - - -
M_W002 Student ma podstawową wiedzę w zakresie propagacji sygnału cyfrowego w rzeczywistych układach, oraz w jaki sposób realizowana jest konwersja sygnału cyfrowego na analogowy lub analogowego na cyfrowy + + + - - - - - - - -
M_W003 Student ma podstawową wiedzę w zakresie zasady działania podstawowych funkcji logicznych oraz sposobu ich realizacji w układach cyfrowych + + + - - - - - - - -
Umiejętności
M_U001 Student potrafi opracować dokumentację dotyczącą realizacji zadania inżynierskiego i przygotować tekst zawierający omówienie wyników realizacji zadania - - + - - - - - - - -
M_U002 Potrafi sformułować specyfikację prostych systemów cyfrowych, porównać rozwiązania projektowe cyfrowych układów elektronicznych ze względu na zadane kryteria użytkowe i ekonomiczne (pobór mocy, szybkość działania, koszt) + - + - - - - - - - -
M_U003 Potrafi wykorzystać poznane metody projektowania układów cyfrowych a także symulacje komputerowe do analizy i oceny działania cyfrowych układów elektronicznych - + + - - - - - - - -
M_U004 Student potrafi zaprojektować, przeprowadzić symulację podstawowych układów cyfrowych, zbudować, uruchomić i przetestować zaprojektowany układ cyfrowy - + + - - - - - - - -
Kompetencje społeczne
M_K001 Student ma świadomość odpowiedzialności za pracę własną, potrafi podporządkować się zasadom pracy w zespole oraz ma świadomość odpowiedzialności za wspólnie realizowane zadania - - + - - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 151 godz
Punkty ECTS za moduł 6 ECTS
Udział w zajęciach dydaktycznych/praktyka 84 godz
Przygotowanie do zajęć 16 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 15 godz
Samodzielne studiowanie tematyki zajęć 35 godz
Egzamin lub kolokwium zaliczeniowe 1 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (42h):

Zajęcia w ramach modułu prowadzone są w postaci wykładu, ćwiczeń, laboratorium.

Wykłady
1. Podstawowe zagadnienia techniki cyfrowej
Algebra Boole’a (aksjomaty, wybrane twierdzenia i definicje), funkcje logiczne, postacie kanoniczne funkcji, działania arytmetyczne, kody

2. Układy kombinacyjne
Definicja układu kombinacyjnego, funktory logiczne, fizyczna realizacja funktorów (rodzaje, technologia wykonania, parametry, charakterystyki), zasady łączenia układów wykonanych w różnych technologiach, minimalizacja funkcji logicznych (tablice Karnaugh, algorytm Quina-McMcuskey’a), hazardy w układach kombinacyjnych, rodzaje układów kombinacyjnych, multipleksery i demultipleksety.

3. Układy sekwencyjne
Definicja układu sekwencyjnego, rodzaje i parametry układów sekwencyjnych (przerzutniki, liczniki, rejestry), wyścigi logiczne, konwersja przerzutników, analiza układów sekwencyjnych, automaty Moore’a i Mealy’ego (definicja, synteza automatu, konwersja automatów), kodowanie stanów automatu, minimalizacja stanów wewnętrznych automatu, automaty asynchroniczne, pojęcie gonitwy krytycznej i niekrytycznej, realizacje prostych układów sekwencyjnych w języku opisu sprzętu, rejestry przesuwne.

4. Pamięci
Rodzaje pamięci, ich budowa i zasada działania: ROM/RAM, SRAM/DRAM. Typowy przebieg zapisu i odczytu pamięci asynchronicznej i synchronicznej. Pamięci dwuportowe. Pamięci specjalizowane FIFO (First-In First-Out, LUT (Look Up Table)).

5. Przetworniki Analogowo-Cyfrowe i Cyfrowo-Analogowe
Parametry przetworników analogowo-cyfrowych i cyfrowo-analogowych. Architektura i zasada działania podstawowych przetworników: z rezystorami wagowymi, drabinka R-2R (C-2C), łańcuchem rezystorów, Flash, z pojedynczym i podwójnym całkowaniem, kompensacyjny, PWM, sigma-delta.

6. Układy Programowalne
Budowa i zasada działania układów PAL/GAL oraz układów FPGA. Sposoby realizacji logiki kombinacyjnej oraz sekwencyjnej w układach FPGA. Podstawowe moduły wbudowane w układy FPGA: pamięci LUT, dedykowane moduły dodające i mnożące, różne rodzaje pamięci.

7.Propagacja sygnałów cyfrowych w linii długiej. Odpowiedz linii długiej na skok jednostkowy. Eliminacja odbić poprzez dopasowanie linii długiej i sposoby realizacji dopasowania w układach cyfrowych. Standard LVDS. Propagacja sygnałów zegarowych.

Ćwiczenia audytoryjne (14h):

Ćwiczenia:

1. Układy kombinacyjne – rozwiązywanie zadań dotyczących algebry Boole’a, funkcji logicznych, postaci kanonicznych funkcji, funktorów logicznych, analizy układów kombinacyjnych, minimalizacji funkcji logicznych, eliminacji hazardów w układach kombinacyjnych, projektowanie układów kombinacyjnych i arytmetycznych
2. Układy sekwencyjne – rozwiązywanie zadań dotyczących przerzutników (przebiegi czasowe, konwersja przerzutników), analiza i synteza prostych układów sekwencyjnych na przykładzie liczników, rozwiązywanie zadań dotyczących syntezy automatów Moore’a i Mealy’ego oraz minimalizacji stanów automatów, kompletny projekt układu sekwencyjnego
3. Kolokwium

Ćwiczenia laboratoryjne (28h):

Laboratorium

1. Bramki oraz przerzutniki
Pomiar tabeli praw i przejść podstawowych bramek i przerzutników. Pomiar parametrów statycznych i dynamicznych bramek i przerzutników.

2. Wprowadzenie do komputerowego projektowania
Edycja schematu układu cyfrowego: dodawanie elementów bramek, przerzutników i innych elementów bibliotecznych, łączenie elementów za pomocą pojedynczych linii i magistral. Edycja schematu hierarchicznego. Symulacja schematu, wprowadzanie wymuszeń, analiza wyników symulacji. Synteza i implementacja przykładowego projektu na konkretnej platformie sprzętowej.

3. Układy kombinacyjne
Projekt, symulacja i implementacja w układach FPGA wylosowanego układu kombinacyjnego lub arytmetycznego.

4. Liczniki i rejestry
Projekt, symulacja i implementacja w układach FPGA wylosowanego układu licznika lub rejestru.

5. Automaty
Projekt, symulacja i implementacja w układach FPGA wylosowanego układu automatu (FSM).

6. Pamięci
Projekt, symulacja i implementacja w układach FPGA wylosowanego modułu pamięci.

7. Przetworniki AC i CA
Pomiar wybranych parametrów przetwornika cyfrowo-analogowego. Zapoznanie się z zasadą działania (obserwacja przebiegów czasowych) przetworników PWM oraz Sigma-Delta.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia audytoryjne: Podczas zajęć audytoryjnych studenci na tablicy rozwiązują zadane wcześniej problemy. Prowadzący na bieżąco dokonuje stosowanych wyjaśnień i moderuje dyskusję z grupą nad danym problemem.
  • Ćwiczenia laboratoryjne: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Wszystkie ćwiczenia laboratoryjne muszą zakończyć się oceną pozytywną. Poszczególe ćwiczenia laboratoryjne będą weryfikowane poprzez kolokwium, sprawozdanie lub projekt wykonywany w trakcie zajęć. Oceny negatywne należy poprawić w terminie ustalonym z prowadzącym.
Warunkiem uzyskania zaliczenia z ćwiczeń audytoryjnych jest uzyskanie pozytywnej oceny z kolokwium.
Warunkiem dopuszczenia do egzaminu jest uzyskanie zaliczenia z ćwiczeń audytoryjnych oraz ćwiczeń laboratoryjnych.

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia audytoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci przystępując do ćwiczeń są zobowiązani do przygotowania się w zakresie wskazanym każdorazowo przez prowadzącego (np. w formie zestawów zadań). Ocena pracy studenta może bazować na wypowiedziach ustnych lub pisemnych w formie kolokwium, co zgodnie z regulaminem studiów AGH przekłada się na ocenę końcową z tej formy zajęć.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Sposób obliczania oceny końcowej:

Warunkiem uzyskania pozytywnej oceny końcowej jest uzyskanie pozytywnej oceny z laboratorium, ćwiczeń oraz egzaminu.
Ocena końcowa jest średnią (śr) ważoną ocen z laboratorium (40%), ćwiczeń (20%) oraz egzaminu (40%).
Ocena końcowa OK jest równa
OK = śr (jest zaokrąglana w górę do połowy stopnia) – pod warunkiem, że student uzyskał wszystkie zaliczenia w pierwszym terminie.
OK = śr (jest zaokrąglana w dół do połowy stopnia) – pod warunkiem, że student uzyskał zaliczenia w drugim terminie.
OK = 3.0 – pod warunkiem, że student uzyskał zaliczenie w trzecim terminie (do średniej wliczane są wtedy oceny niedostateczne z terminu 1 i 2 – w takim wypadku średnia ocena w najbardziej optymistycznym wariancie będzie mniejsza od oceny 3.5)

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Odrabianie zaległości odbywać się będzie w terminie ustalonym z prowadzącym.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Brak

Zalecana literatura i pomoce naukowe:

Materiały zamieszczone na stronie www.fpga.agh.edu.pl/tc, www.wikipedia.org (szczególnie wersja angielska) i inne linki podane na wykładzie.
A. K. Maini, Digital Electronics, Principle, Devices and Applications, Wiley, Indie, 2007
F. Vahid Digital Design, USA, Wiley 2007
S. Sławiński – Technika impulsowa
S. Kuta, Elementy i układy elektroniczne. Cz. II
J. Kalisz, Podstawy elektroniki cyfrowej (wydanie trzecie)
M. Łakomy, J. Zabrodzki, Cyfrowe układy scalone

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Architektury zaawansowanych układów arytmetycznych w sprzętowych systemach rekonfigurowalnych, Ernest JAMRO. — Kraków : Wydawnictwa AGH, 2013.

Implementation of a RANLUX based pseudo-random number generator in FPGA using VHDL and Impulse C, Agnieszka DĄBROWSKA-BORUCH, Grzegorz GANCARCZYK, Kazimierz WIATR, Computing and Informatics, Slovak Academy of Sciences. Institute of Informatics — 2013 vol. 32 no. 6, s. 1272–1292.

A custom co-processor for the discovery of low autocorrelation binary sequences, Paweł RUSSEK, Michał KARWATOWSKI, Ernest JAMRO, Kazimierz WIATR, Measurement, Automation, Monitoring, 2016 vol. 62 no. 5, s. 154–156.

Informacje dodatkowe:

Na wykładach student zachęcany jest do aktywnego uczestnictwa poprzez zadawanie pytań oraz udział w grywalizacji (aplikacja Kahoot – strona www.kahoot.com lub aplikacja na systemy Android i iOS).