Architektura komputerów

Transkrypt

Architektura komputerów
Katedra Mikroelektroniki i Technik Informatycznych
Politechnika Łódzka
Architektura komputerów
dr inż. Bartosz Pękosławski
Łódź, dn. 3.10.2015
Dane kontaktowe
Adres e-mail:
[email protected]
Bieżące informacje:
www.dmcs.pl/web/bartoszp/strona-pracownika
Materiały dla studentów:
fiona.dmcs.pl/~bartoszp
lux.dmcs.pl/ak
Godz. przyjęć:
poniedziałki 9:00-10:00, lab. 304 (budynek B19)
środy 14:00-15:00, lab. ZK (budynek B18)
soboty 10:00-11:00 (tygodnie zjazdowe), lab. ZK (budynek B18)
2
Plan wykładów
1. Wstęp. Systemy zapisu
Języki programowania.
liczb.
Historia
maszyn
liczących
i
komputerów.
2. Kodowanie liczb (NKB, U2, BCD, ZM, U1, IEEE 754)
3. Architektura typu single-cycle
4. Architektura typu multi-cycle
5. Mikroprogram
6. Architektura potokowa RISC. Konflikty zasobów i danych.
7. Rozwiązywanie konfliktów danych i sterowania w architekturze
Optymalizacja kodu. Forwarding. Wczesne wykrywanie skoków.
potokowej.
8. Pamięci cache
9. Przykład architektury RISC – mikrokontroler AVR ATmega
10. Programowanie mikrokontrolera AVR w języku C
3
Literatura
Literatura podstawowa:
1. J. L. Hennessy, D. A. Patterson, Computer organization & Design, 2nd Ed.,
Morgan-Kaufmann Publishers, 1998
2. A. S. Tanenbaum, Strukturalna organizacja systemów komputerowych.
Wydanie V, Helion, 2006
Literatura uzupełniająca:
3. R. Baranowski, Mikrokontrolery AVR ATmega w praktyce. BTC 2005
4. W. Stallings, Organizacja i architektura systemu komputerowego, WNT, 2000
5. J. Biernat, Arytmetyka Komputerów, Wydawnictwo Naukowe PWN, 1996
6. J. L. Hennessy, D. A. Patterson, Computer Architecture - A Quantitative
Approach, 2nd Ed., Morgan-Kaufmann Publishers, 1996
4
Ocena końcowa
60% ocena z egzaminu,
20% ocena z ćwiczeń,
20% ocena z laboratorium
(konieczna ocena pozytywna z każdej części)
Zaliczenie ćwiczeń i laboratorium jest warunkiem
koniecznym do dopuszczenia do egzaminu.
5
Laboratorium, ćwiczenia
Prowadzący ćwiczenia: mgr inż. Artur Andrzejczak, mgr inż. Bartosz Balcerzak
Prowadzący laboratorium: mgr inż. Artur Andrzejczak
Laboratorium – symulator Escape
Architektura mikroprogramowa
Architektura potokowa
6
Cele przedmiotu
Omówienie kodowania liczb i układów arytmetycznych w systemach
komputerowych
Przedstawienie zasady działania architektur CISC i RISC: rejestrów,
przepływu danych, jednostki sterującej oraz instrukcji maszynowych
Zapoznanie z zaawansowanymi cechami współczesnych
komputerowych: pamięć cache, pamięć wirtualna
systemów
Zapoznanie z procesem wykonywania instrukcji maszynowych i programów
w języku asemblera
7
Efekty kształcenia
Efekt 1: Student potrafi obliczać wartość liczby binarnej w różnych systemach kodowania.
Efekt 2: Student potrafi wyjaśnić ograniczenia arytmetyki komputerowej i metody sygnalizacji
błędów.
Efekt 3: Student potrafi wyjaśnić funkcje elementów składowych architektury procesora.
Efekt 4: Student potrafi analizować kod maszynowy i programy w języku asemblera.
Efekt 5: Student potrafi rozpoznawać i analizować konflikty podczas przetwarzania potokowego.
Efekt 6: Student potrafi wyjaśnić strukturę hierarchicznego systemu pamięci komputera.
Efekt 7: Student potrafi tworzyć i oceniać działanie programów w języku asemblera.
Egzamin pisemny: efekty 1 ÷ 6
8
Podstawy
Podstawy:
Podstawy informatyki
Wstęp do elektroniki
Wstęp do techniki cyfrowej i mikroelektroniki
9
Wykład 1 - plan
Slajdy autorstwa dr-a Witolda Marańdy
1. Bardzo krótka historia systemów liczących i maszyn liczących
2. Zastosowania komputerów
3. Języki programowania
4. Przyszłość – interfejsy, konwergencja technologii
10