Warsaw University of Technology - Central Authentication SystemYou are not logged in | log in
course directory - help

Computer Architecture

General data

Course ID: 103B-INxxx-ISP-ARKO Erasmus code / ISCED: (unknown) / (unknown)
Course title: Computer Architecture Name in Polish: Architektura komputerów
Department: The Faculty of Electronics and Information Technology
Course groups: ( Fundamentals of Computer Science )-Computer Science-B.Sc.-EITI
( Technical Courses )---EITI
ECTS credit allocation (and other scores): 5.00
Language: Polish
(in Polish) Jednostka decyzyjna:

(in Polish) 103000 - Wydział Elektroniki i Technik Informacyjnych

(in Polish) Kod wydziałowy:

(in Polish) ARKO

(in Polish) Numer wersji:

(in Polish) 2

Short description:

To familiarize students with the architecture of modern processors and computers. During the lecture the theoretical foundations of computer architecture are discussed, as well as principles of constructing program models of processors and lists of instructions, and implementation of high-level languages, and also principles of processor operation, construction of memory hierarchy and systemic aspects of processor architecture. The lecture also presents the architecture of contemporary single and multi-processor computers.

Full description: (in Polish)

Zapoznanie studentów z architekturą współczesnych procesorów i komputerów. W trakcie wykładu są omawiane podstawy teoretyczne architektury komputerów, zasady konstruowania modeli programowych procesorów i list instrukcji oraz implementacji języków wysokiego poziomu, zasady działania procesorów, konstrukcja hierarchii pamięci oraz systemowe aspekty architektury procesora. Wykład prezentuje rónież architektury współczesnych komputerów jedno i wieloprocesorowych.


Treść wykładu
Taksonomie architektur komputerów. Maszyna von Neumanna, architektury Harvard, Princeton, Harvard-Princeton. Pojęcie hierarchii pamięci.

Typy i formaty danych. Interpretacja danych binarnych. Kody używane do reprezentacji znaków pisarskich, liczb całkowitych, stało- i zmiennopozycyjnych. Adresaowanie pamięci. Konwencje Big i Little Endian.

Wymagania języków wysokiego poziomu wobec architektury procesora. Identyfikacja klas pamięci. Stos. Przekazywanie sterowania pomiędzy procedurami - konwencje wołania. Mapa pamięci programu. Ramka stosu w rejestrach i w pamięci. Model programowy procesora - zestawy rejestrów, tryby adresowania, model operacji warunkowych. Konstrukcja listy instrukcji - podejście RISC i CISC. Formaty instrukcji. Prezentacja modelu programowego RISC i CISC.

Wykonanie instrukcji przez procesor. Procesor z jednofazowym wykonaniem instrukcji. Procesor wielofazowy z jednostką sterującą. Prefetch i kolejka instrukcji. Potok. Synchronizacja potoku - hazardy i opóźnienia. Superpotok. Potokowa implementacja procesora CISC - potok CISC, potok z transkodowaniem. Architektury superskalarne. Synchronizacja wielopotokowej jednostki wykonawczej. Prezentacja współczesnych architektur wielopotokowych z transkodowaniem instrukcji.

Kieszenie - zasada działania, warianty organizacji. Problem spójności zawartości pamięci operacyjnej i kieszeni. Analiza wydajności.

Wymagania systemu operacyjnego. Systemowy model programowy procesora. Zasady ochrony zasobów. Zarządzanie pamięcią. Funkcje systemu zarządzania pamięcią. Metody zarządzania pamięcią - prosta relokacja, segmentacja, stronicowanie. Implementacja systemu pamięci wirtualnej. Optymalizacja systemu zarządzania pamięcią. Zarządzanie pamięcią we współczesnych procesorach RISC. Zarządzanie działaniem hierarchii pamięci - zarządzanie pamięcią a kieszenie - sprzężenie kieszeni i jednostki zarządzania pamięcią.

Sytuacje wyjątkowe. Klasy sytuacji wyjątkowych i zasady ich obsługi w procesorach CISC i RISC. Specyficzne sytuacje wyjątkowe - podwójny błąd i restart.

Budowa komputera. Podsystem wejścia-wyjścia. Zasady współpracy z urządzeniami wejścia-wyjścia.

Procesory wbudowane. Procesory specjalizowane. Procesory sygnałowe.

Struktura współczesnego komputera PC. Wprowadzenie do systemów wieloprocesorowych - proste architektury systemów wieloprocesorowych (wieloprocesory symetryczne).




Zakres laboratorium
Zasady programowania w językach asemblerowych. Programowanie hybrydowe. Konwencje wołania procedur. Przekazywanie parametrów.

Zadania projektowe: procedury assemblerowe dołączone do programu w języku wysokiego poziomu; algorytmy operacji arytmetycznych, optymalizacja kodu.

  1. Prosty program w środowisku symulatora procesora MIPS (2h).
  2. Program przetwarzania znaków lub liczb - MIPS (4h).
  3. Zasady programowania hybrydowego procesorów x86 - prosty program C plus asembler) (2h).
  4. Procedura asemblerowa realizująca nietrywialne przetwarzanie (np. implementacja wybranych algorytmów obliczeniowych z arytmetyki komputerów) łączona z programem w języku C (4h).


Przedmioty podobne
Kod przedmiotuNazwa przedmiotuDyskonto ECTS
103C-TExxx-ISP-SYKOSystemy komputerowe3
103A-CTxxx-ISA-ECOARComputer Architecture5

Bibliography: (in Polish)

    1. Patterson, Hennessy, Computer Organization / Design: The Hardware/ Software Interface, Morgan-Kauffmann 1994.
    2. J. Biernat, Arytmetyka Komputerów, Warszawa, PWN 1996.
    3. G. Mazur, Architektura Komputerów - preskrypt do wykładu.
    4. IA-32 Intel Architecture Software Developer`s Manual, Intel Corp., aktualna wersja dostępna w Internecie.
    5. MIPS32? Architecture for Programmers, MIPS Technologies, aktualna wersja dostępna w Internecie.

Classes in period "Winter Semester 2019/2020" (in progress)

Time span: 2019-10-01 - 2020-02-21
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 150 places more information
lectures, 45 hours, 150 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur, Sławomir Niespodziany, Krzysztof Opasiak
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2018/2019" (past)

Time span: 2019-02-18 - 2019-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 96 places more information
lectures, 45 hours, 96 places more information
Coordinators: Rajmund Kożuszek, Dariusz Turlej
Group instructors: Kazimierz Krosman, Sławomir Niespodziany, Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2018/2019" (past)

Time span: 2018-10-01 - 2019-02-17
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Kazimierz Krosman, Grzegorz Mazur, Sławomir Niespodziany
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2017/2018" (past)

Time span: 2018-02-19 - 2018-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 80 places more information
lectures, 45 hours, 80 places more information
Coordinators: Rajmund Kożuszek, Dariusz Turlej
Group instructors: Kazimierz Krosman, Sławomir Niespodziany, Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2017/2018" (past)

Time span: 2017-10-01 - 2018-02-18
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2016/2017" (past)

Time span: 2017-02-20 - 2017-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 100 places more information
lectures, 45 hours, 100 places more information
Coordinators: Dariusz Turlej
Group instructors: Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2016/2017" (past)

Time span: 2016-10-01 - 2017-02-19
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2015/2016" (past)

Time span: 2016-02-23 - 2016-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 80 places more information
lectures, 45 hours, 80 places more information
Coordinators: Dariusz Turlej
Group instructors: Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2015/2016" (past)

Time span: 2015-10-01 - 2016-02-22
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2014/2015" (past)

Time span: 2015-02-23 - 2015-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 95 places more information
lectures, 45 hours, 95 places more information
Coordinators: Dariusz Turlej
Group instructors: Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2014/2015" (past)

Time span: 2014-09-29 - 2015-02-22
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2013/2014" (past)

Time span: 2014-02-24 - 2014-09-28
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 80 places more information
lectures, 45 hours, 80 places more information
Coordinators: Dariusz Turlej
Group instructors: Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2013/2014" (past)

Time span: 2013-10-01 - 2014-02-23
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 120 places more information
lectures, 45 hours, 120 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Summer Semester 2012/2013" (past)

Time span: 2013-02-20 - 2013-09-30
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 80 places more information
lectures, 45 hours, 80 places more information
Coordinators: Dariusz Turlej
Group instructors: Dariusz Turlej
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Classes in period "Winter Semester 2012/2013" (past)

Time span: 2012-10-01 - 2013-02-19
Choosen plan division:


magnify
see course schedule
Type of class: laboratory, 15 hours, 100 places more information
lectures, 45 hours, 100 places more information
Coordinators: Grzegorz Mazur
Group instructors: Grzegorz Mazur
Students list: (inaccessible to you)
Examination: Overall grade
(in Polish) Jednostka realizująca:

(in Polish) 103200 - Instytut Informatyki

Course descriptions are protected by copyright.
Copyright by Warsaw University of Technology.