Nazwa przedmiotu



Pobieranie 19,44 Kb.
Data03.03.2018
Rozmiar19,44 Kb.

Nazwa przedmiotu:

Projektowanie podzespołów komputerowych



Symbol bloku:


Kod przedmiotu:


Semestr/rok:

6/ III


Typ zajęć:

wyk. , lab.



Liczba godzin:

30 w., 30 lab.-studia stacjonarne

20w., 20 lab.-studia niestacjonarne


Stopień i rodzaj studiów:

I inżynierskie, stacjonarne


I inżynierskie, niestacjonarne

Liczba punktów

ECTS:



Autor: dr hab. inż. Oleg Maslennikow
Jednostka organizacyjna realizująca przedmiot:

Katedra Systemów Informatycznych



Opis przedmiotu: Celem zajęć jest uzyskanie przez studentów wiedzy i umiejętności w zakresie projektowania podzespołów klasycznych systemów komputerowych, m. in. bloków operacyjnych, jednostek arytmetyczno-logicznych, automatów sterujących, elementów interfejsów szeregowych i równoległych, itd. Zajęcia stanowią wprowadzenie do przedmiotów „Projektowanie systemów komputerowych” oraz „Systemy wbudowane”. Przedmiot jest realizowany na poziomie podstawowym. Na studiach niestacjonarnych realizowane są te same treści z zakresem godzinowym równym 2/3 zakresu studiów stacjonarnych.

Wymagania wstępne (przedmioty poprzedzające):
Podstawy logiki i teorii mnogości

Matematyka dyskretna


Treści programowe wykładu z liczbą godzin:


    1. Podstawowe metody minimalizacji funkcji binarnych. Typy i sposoby projektowania cyfrowych układów kombinacyjnych, w tym dekoderów, multiplekserów, sumatorów jedno- i wielobitowych, bloków przesunięć, itd. (4h).

    2. Typy i sposoby projektowania cyfrowych układów sekwencyjnych, m.in. przerzutników sterowanych poziomem i zboczem sygnału zegarowego, rejestrów przesuwnych, liczników rewersyjnych, itd. (4h).

    3. Zjawisko hazardu w układach cyfrowych i sposoby jego eliminacji (2h).

    4. Podstawowe algorytmy arytmetyki binarnej i struktury bloków operacyjnych dla ich realizacji sprzętowej (szeregowych i równoległych sumatorów, sumatorów szybkich i wieloargumentowych, bloków mnożenia i dzielenia, bloków przesunięć, itd.) (6h).

    5. Rodzaje i projektowanie jednostek arytmetyczno-logicznych (ALU) realizujących określony zbiór operacji i algorytmów arytmetyki binarnej. (2h).

    6. Projektowanie bloków pamięci różnego rodzaju (rejestrowej, RAM, ROM, kolejek FIFO i LIFO) oraz bloków sterowania pamięcią (generatorów adresów) (2h).

    7. Automaty skończone. Projektowanie automatów Mealy’ego i Moore’a. Projektowanie bloków sterowania jednostkami ALU oraz jednostkami przetwarzającymi systemów komputerowych (jednostkami ALU wraz z blokami pamięci) w oparciu o automaty sterujące Mealy’ego i Moore’a. (4h).

    8. Zasady działania i projektowanie elementów interfejsów sprzętowych systemów komputerowych – równoległych i szeregowych, m.in. LPT i COM komputerów PC/AT. Budowa układów interfejsu szeregowego (UART) Intel 8250 (16550A) oraz układu czasowego (timera) Intel 8253/8254 (4h).

    9. Współpraca procesora z urządzeniami zewnętrznymi. Programowa wymiana informacji z urządzeniami zewnętrznymi. Tryb obsługi przerwań. Budowa układu kontrolera przerwań Intel 8259 (2h).

Prace laboratoryjne w oparciu o autorskie oprogramowanie dydaktyczne:



  • „SBWin32Pro” – program do konstruowania, wizualizacji i symulacji schematów blokowych algorytmów;

  • „QM” – program do minimalizacji funkcji logicznych realizujący metodę Quine’a-McCluskey’a;

  • „Symulus” – program do projektowania, symulacji i wizualizacji schematów układów cyfrowych: kombinacyjnych i sekwencyjnych;

  • „eMieM” oraz „Asim” – programy do projektowania, symulacji i wizualizacji schematów automatów Mealy’ego i Moore’a;

  • „Galaxy” – program do projektowania i symulacji działania jednostek arytmetyczno-logicznych, posiadający własny asembler.


Treści programowe zajęć laboratoryjnych z liczbą godzin:


  1. Temat 1. Projektowanie cyfrowych układów kombinacyjnych. Minimalizacja opisów zadanych funkcji logicznych w oparciu o metody diagramów Veitch’a-Karnaugha oraz Quine’a-McCluskey’a – kilka różnych wariantów zadania, np. dekoder wyświetlacza LCD i in. Zapoznanie się z programem „QM” przeznaczonym do minimalizacji funkcji logicznych w oparciu o metodę Quine’a-McCluskey’a. Porównanie otrzymanych wyników minimalizacji z wynikami działania programu „QM”. Opracowanie w programie „Symulus” dwóch schematów układów kombinacyjnych realizujących zadane funkcje binarne i ich przetestowanie (4h).

  2. Temat 2. Projektowanie i badanie przerzutników bistabilnych. Opracowanie schematów dwóch zadanych przerzutników w oparciu o zadane bramki cyfrowe (np. NAND i NOR). Symulacja w programie „Symulus” układów opracowanych przerzutników (2h).

  3. Temat 3. Projektowanie rejestrów przesuwnych. Opracowanie schematów dwóch zadanych rejestrów w oparciu o zadane przerzutniki. Symulacja opracowanych rejestrów w programie „Symulus” (2h).

  4. Temat 4. Projektowanie i badanie liczników binarnych i moduloN. Opracowanie schematów dwóch zadanych liczników w oparciu o zadane przerzutniki. Symulacja opracowanych liczników w programie „Symulus” (2h).

  5. Temat 5. Projektowanie i badanie sumatorów wielobitowych. Opracowanie schematów dwóch n-bitowych sumatorów z zadanymi liczbą n oraz typem przeniesienia wyjściowego – kilka różnych wariantów zadania. Symulacja opracowanych sumatorów w programie „Symulus” (2h).

  6. Temat 6. Projektowanie i badanie automatów Mealy’ego i Moore’a. Opracowanie schematu bloku sterowania układem wykonującym mnożenie dwóch liczb n-bitowych bez znaku (kilka różnych wariantów zadania) w oparciu o automaty Mealy’ego lub Moore’a. Opracowanie schematu blokowego algorytmu sterowania w programie „SBWin”. Konstruowanie grafu stanów i tablicy przejść automatu w programie „eMieM”. Zapoznanie się z programem ASim przeznaczonym do konstruowania i symulacji układów Mealy’ego i Moore’a. Opracowanie i weryfikacja modelu bloku sterowania w programie Asim z uwzględnieniem i bez uwzględnienia czasu opóźnienia bramek (6 h).

  7. Temat 7. Projektowanie i badanie bloków operacyjnych wykonujących podstawowe operacje na liczbach binarnych w kodach KD i UD. Zapoznanie się z programem „Galaxy” – programem do projektowania i symulacji jednostek arytmetyczno-logicznych (ALU) komputerów. Zapoznanie się z instrukcjami i dyrektywami asemblera oraz strukturą projektu. Opracowanie i przetestowanie w programie „Galaxy” bloku operacyjnego przeznaczonego do wykonania operacji mnożenia liczb w formacie stałoprzecinkowym ze znakiem – kilka różnych wariantów zadania (4 h).

  8. Temat 8. Projektowanie i badanie zmiennoprzecinkowych bloków operacyjnych oraz układów ALU. Opracowanie i przetestowanie w programie „Galaxy” modelu jednostki ALU przeznaczonej do wykonania kilku różnych operacji arytmetycznych na liczbach stałoprzecinkowych lub jednej operacji na liczbach stałoprzecinkowych – kilka różnych wariantów zadania (4 h).

  9. Temat 9. Projektowanie układu priorytetowego kontrolera przerwań (KPP) – kilka różnych wariantów zadania. Symulacja opracowanego układu KPP w programie „Symulus” (4 h).



Metody nauczania i środki stosowane podczas realizacji przedmiotu:

Wykład z problemami i zadaniami przeznaczonymi do rozwiązania przez prowadzącego, przez studentów z pomocą prowadzącego oraz samodzielnego przez studentów (z podpowiedzią idei rozwiązania); każde ćwiczenie laboratoryjne – według urozmaiconych wariantów zadań.


Sposoby zaliczania wykładów: egzamin ustny, na ocenę pozytywną należy uzyskać zaliczenie laboratorium oraz uzyskać minimum 50% maksymalnej liczby punktów; pod uwagę brana jest też aktywność na zajęciach.
Sposoby zaliczania ćwiczeń laboratoryjnych: należy uzyskać pozytywną ocenę z każdego ćwiczenia; pod uwagę brana jest też aktywność na zajęciach.

Literatura:

  1. M. Mano, C. Kime. Podstawy projektowania układów logicznych i komputerów. WNT, 2007r., s.752.

  2. S. Gryś. Arytmetyka komputerów w praktyce. PWN, 2007r., s. 182.

  3. A. Tanenbaum. Strukturalna organizacja systemów komputerowych. Wyd. 5, Helion, 2006r., s. 864.

  4. W. Stallings. Organizacja i architektura systemu komputerowego. Projektowanie systemu a jego wydajność. WNT, 2000r., s.769.

  5. M. Gook. Interfejsy sprzętowe komputerów PC, Helion, 2005.

  6. G. deMichelli. Synteza i optymalizacja układów cyfrowych, WNT 1998.

  7. B. Chalk. Organizacja i architektura komputerów. WNT, 1998 r.

  8. O. Maslennikow, D. Gretkowski, J. Kaniewski, P. Sołtan „Logika i arytmetyka komputerów. Ćwiczenia laboratoryjne.”, Wyd. Uczelniane Politechniki Koszalińskiej, 2000 r., str. 95.




©operacji.org 2019
wyślij wiadomość

    Strona główna