Nazwa przedmiotu:
Układy cyfrowe
Koordynator przedmiotu:
Mariusz RAWSKI
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Telekomunikacja
Grupa przedmiotów:
Przedmioty techniczne - podstawowe
Kod przedmiotu:
UCYF
Semestr nominalny:
1 / rok ak. 2015/2016
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
148
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
2
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
1,5
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium30h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
ULOG
Limit liczby studentów:
pojemność największej sali wykładowej
Cel przedmiotu:
Nowoczesna technologia mikroelektroniczna umożliwia realizację bardzo złożonych systemów cyfrowych w pojedynczym układzie scalonym. Celem przedmiotu jest przedstawienie metod syntezy i weryfikacji układów i systemów cyfrowych realizowanych w nowoczesnych technologiach, a w szczególności opanowanie podstaw posługiwania się językami opisu sprzętu HDL w komputerowych systemach projektowania układów cyfrowych.
Treści kształcenia:
Układy cyfrowe - rola i zastosowanie: Rozwój technologii cyfrowej i jej wpływ na dziedziny życia. Rola i znaczenie układów cyfrowych we współczesnym świecie. Układy cyfrowe w przetwarzaniu informacji i sygnałów. Style projektowania układów cyfrowych. Klasyfikacja układów cyfrowych. Układy katalogowe, układy specjalizowane (ASIC), układy programowalne przez użytkownika (FPLD). Etapy procesu projektowego. Specyfika projektowania układów cyfrowych: Przykład syntezy układu cyfrowego realizującego prosty algorytm.Porównanie metodologii projektowania układu cyfrowego z projektowaniem oprogramowania realizującego to samo zadanie. Synteza strukturalna.Blok wykonawczy i sterujący. Komputerowe projektowanie. Możliwości narzędzi CAD. Metody reprezentacji systemów cyfrowych: Sposoby opisu i modelowania systemów cyfrowych. Diagram "Y". Cyfrowe kombinacyjne i sekwencyjne bloki funkcjonalne wykorzystywane w syntezie strukturalnej układów cyfrowych. Sposoby reprezentacji liczb w zapisie binarnym (NKB, U2, zapis stałopozycyjny oraz zmiennopozycyjny). Podstawowe działania arytmetyczne na liczbach przedstawionych binarnie. Zasady specyfikacji układów cyfrowych - języki opisu sprzętu: Ograniczenia tradycyjnych języków programowania. Zastosowania języków HDL (Hardware Description Language). Cechy języków HDL. Podstawowe koncepcje na przykładzie języka VHDL. Opis SOP (Sum-Of-Product). Opis strukturalny. Opis behawioralny. Testbench. Konfiguracja. Elementy języka VHDL. Omówienie różnych sposobów opisu projektowanego systemu. Realizacja logiki kombinacyjnej: Sposoby realizacji logiki kombinacyjnej z wykorzystaniem struktur języka VHDL. Sposoby implementacji podstawowych kombinacyjnych bloków funkcjonalnych, tj. multipleksery dekodery, moduły opisane tablicą prawdy i równaniami boolowskimi. Parametry czasowe układów kombinacyjnych. Pojęcie ścieżki krytycznej (topologicznej,rzeczywistej, fałszywej). Realizacja logiki sekwencyjnej: Wykorzystanie elementów pamięciowych. Model układu sekwencyjnego.Sposoby opisu sekwencyjnych bloków funkcjonalnych. Automat Mealy'ego.Automat Moore'a. Kodowanie stanów. Liczniki. Sposoby realizacji logiki sekwencyjnej z wykorzystaniem struktur języka VHDL. Sposoby implementacji podstawowych sekwencyjnych bloków funkcjonalnych, tj.rejestry, automaty, liczniki. Projektowanie układów synchronicznych z wykorzystaniem FSM i ASM: Zastosowanie automatów FSM i diagramów ASM do projektowania synchronicznych układów cyfrowych. Pojęcia: ripple and/or gated clocks,clock skew, clock enable. Dystrybucja sygnału zegara. Synchronizacja międzysymbolowa. Synchronizacja międzyramkowa. Generacja sekwencji.Sposoby współdziałania automatów w systemie cyfrowym. Obsługa portów dwukierunkowych. Wykorzystanie specjalizowanych bloków na przykładzie pamięci RAM. Domeny zegarowe i komunikacja między nimi. Projektowanie hierarchiczne i zaawansowane zagadnienia syntezy układów cyfrowych: Przedstawienie metodologii projektowania hierarchicznego (bottom-up itop-down). Moduły parametryzowane. Wykorzystanie pakietów. Kodowanie stanów automatu. Minimalizacja automatu. Zaawansowane metody syntezy FSM: dekompozycja, wykorzystanie pamięci ROM, układy modyfikacji adresu. Zjawisko wyścigów krytycznych - "szpilki". Zaawansowane metody projektowania: Różne sposoby projektowania układów cyfrowych. Strukturalna realizacja przepływu danych. Rozwijanie pętli (loop unrolling). Układ sterujący - układ operacyjny. Diagramy ASM. Diagramy ASMD. Operacje RT realizowane w trybie Mealy'ego. Współdzielenie zasobów. Potokowanie. Zastosowanie zaawansowanej syntezy logicznej.
Metody oceny:
8 laboratoriów ocenianych indywidualnie egzamin - część testowa egzamin - część zadaniowa
Egzamin:
tak
Literatura:
- wykład - dostępny na serwerze studia - Łuba T.(red.), Rawski M., Tomaszewicz P., Zbierzchowski B.: Programowalne Układy Przetwarzania Sygnałów i Informacji, WKŁ, Warszawa 2008. - Łuba T.: Synteza układów logicznych, Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 2005. - Łuba T., Zbierzchowski B.: Komputerowe projektowanie układów cyfrowych. WKŁ, Warszawa 2000. - Tyszer J., Mrugalski G.: Układy cyfrowe. Zbór zadań z rozwiązaniami. Wyd. Politechniki Poznańskiej, Poznań 2002. - Skahill K.: Język VHDL. Projektowanie programowalnych układów logicznych. Wyd. Naukowo-Techniczne, Warszawa 2001. - De Micheli G.: Synteza i optymalizacja układów cyfrowych. WNT, Warszawa 1998. - Brown S, Vranesic Z.: Fundamentals of Digital Logic with VHDL Design. McGraw Hill, Boston 1998. - Meyer-Baese U. : Digital Signal Processing with FPGAs. Springer Berlin 2007. - Zwoliński M.: Projektowanie układów cyfrowych z wykorzystaniem języka VHDL. WKŁ. Warszawa 2002. - Parchi K. K., Nishitani T.: Digital Signal Processing for Multimedia Systems, Marcel Dekker, Inc. New York 1999. - Zieliński C.: Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003.
Witryna www przedmiotu:
http://rawski.zcb.tele.pw.edu.pl/category/uklady-cyfrowe-wyklad/
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt Wpisz opis
potrafi stosować zaawansowane metody syntezy logicznej w projektowaniu systemów cyfrowych i wykorzystać elementy specjalizowane nowoczesnych struktur programowalnych
Weryfikacja: laboratorium
Powiązane efekty kierunkowe: K_W01, K_W05
Powiązane efekty obszarowe: T2A_W01, T2A_W03, T2A_W04

Profil ogólnoakademicki - umiejętności

Efekt Wpisz opis
potrafi stosować zaawansowane metody syntezy logicznej w projektowaniu systemów cyfrowych i wykorzystać elementy specjalizowane nowoczesnych struktur programowalnych
Weryfikacja: laboratorium
Powiązane efekty kierunkowe: K_U09
Powiązane efekty obszarowe: T2A_U05, T2A_U07, T2A_U09, T2A_U15