Skip to main content
Skip header

Computer Architecture and Parallel Systems

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code460-2034/01
Number of ECTS Credits Allocated6 ECTS credits
Type of Course Unit *Compulsory
Level of Course Unit *First Cycle
Year of Study *Third Year
Semester when the Course Unit is deliveredWinter Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites
PrerequisitiesCourse Unit CodeCourse Unit Title
440-2104Introduction to Digital Systems
460-2052Introduction to Programming
Name of Lecturer(s)Personal IDName
LIC10prof. Ing. Lačezar Ličev, CSc., prof.h.c.
OLI10Ing. Petr Olivka, Ph.D.
Summary
Students in the course will get basic knowledges about computer parts and they will understand the base principles of the computer operation.
Learning Outcomes of the Course Unit
The aim of this subject is to acquaint students with a technical equipment of computers and principles of operation of individuals parts. The selected principles are demonstrated on microcomputers, personal computers and GPU (available architectures).
Students by completion of this course will get basic knowledges about computer parts and they will understand the base principles of the computer operation. During practical parts of course students will learn to programm microcomputer, multicore computer and GPU. The will also learn the base principles of the assembly language programming.
Course Contents
1. Production technology of digital circuits. Computer architectures according to the von Neumann and Harvard, the essential characteristics and operating principles.
2. Machine instructions, addressing, address space. Computer performance measurements.
3. Principles of communication with peripherals, I/O gates, program controlling, interrupts, priorities solving.
4. CISC and RISC processors, basic features and incentives for the creation, concatenation, prediction jumps, hazards, basic RISC representatives.
5. Intel, developmental series, the basic features and internal architecture.
6. Processors from other companies, their properties and applications. Signal processors.
7. Monolithic computers, requirements for the construction, properties and usage, typical integrated peripherals. Microchip and Atmel microcontrolers.
8. Memory organization in computers, memory hierarchy. Internal memory, static, dynamic, virtual memory organization. External memory - magnetic, optical, magneto-optical. IDE PATA / SATA.
9. Bus, division of the addresses to signals, data and control. Bus cycle. Basic features of PCI, AGP and PCI Express technology. USB.
10. Video adapter and display units. Principles of displays unit and image creation.
11. Modern trends in computer architecture. Parallel systems and computer architecture .
12. Advanced GPU architecture – CUDA. GPU computing history.
13. GPU parallel architecture.
14. Super computing and clusters. High Performance Computing.

Labs:
1. Safety training, development Kit introduction, programming IDE, simple application.
2. Pulse wide modulation, LED control, simple animation.
3. Pulse wide modulation, LED control, RGB color composition, animation with button use.
4. LCD display control, color composition, use of fixed size font.
5. LCD control, displaying graphical and text information, simple application with buttons control.
6. I2C bus, expander and LED control.
7. I2C bus, FM radio module control. display RDS information.
8. Revision of micro-controller programming.
9. Multi thread application, algorithm design for multiple thread.
10. Programming of basic algorithm with multiple thread, comparison of sequential and parallel implementation.
11. Technology CUDA, base program concept, simple application with vectors and matrices.
12. Technology CUDA, digital image processing, simple image transformation programming.
13. Technology UCDA, simple graphical animations.
14. Revision of parallel programming.

Project:
The project is individual work of students between laboratory assignments.
Recommended or Required Reading
Required Reading:
[1] Olivka, P.: Computer Architecture and Paralles Systems, http://poli.cs.vsb.cz/edu/apps/eng
[2] Olivka, P.: Assembly Language Programming, http://poli.cs.vsb.cz/edu/soj
[3] Olivka, P., Seidl, D.: Syllabus for laboratory exercises, http://poli.cs.vsb.cz/edu/apps
[4] Patterson, D.: The Top 10 Innovations in the New NVIDIA Fermi Architecture, and the Top 3 Next Challenges. 2009.
[1] Olivka P.: Studijní materiály v elektronické verzi pro předmět APPS (česky), http://poli.cs.vsb.cz/edu/apps/osnova.html
[2] Olivka P.: Programování ve jazyce symbolických instrukcí, elektronická verze studijních materiálů, http://poli.cs.vsb.cz/edu/soj
[3] Olivka, P., Seidl, D.: Návody do cvičení, elektronická verze, http://poli.cs.vsb.cz/edu/apps/
[3] Ličev L.: Architektury počítačů, 2010, Elektronický sborník přednášek k předmětu Architektury počítačů.
[4] Patterson, D.: The Top 10 Innovations in the New NVIDIA Fermi Architecture, and the Top 3 Next Challenges. 2009.
Recommended Reading:
[1] Hennessy J. L, Patterson D. A., Computer Architecture, 4th ed., A Quantitative Approach, Morgan Kaufmann, 2006, ISBN 978-0-12-370490-0
[2] Hennessy J. L, Patterson D. A., Computer Architecture, 5th ed., A Quantitative Approach, Morgan Kaufmann, 2011, ISBN 978-0123838728
[3] David Patterson, John Hennessy, Computer Organization and Design, 4th ed., Morgan Kaufmann, 2011, ISBN 9780080886138
[4] David Patterson, John Hennessy, Computer Organization and Design MIPS Edition, 5th ed., Morgan Kaufmann, 2013, ISBN 978-0124077263
[1] Hennessy J. L, Patterson D. A., Computer Architecture, 4th ed., A Quantitative Approach, Morgan Kaufmann, 2006, ISBN 978-0-12-370490-0
[2] Hennessy J. L, Patterson D. A., Computer Architecture, 5th ed., A Quantitative Approach, Morgan Kaufmann, 2011, ISBN 978-0123838728
[3] David Patterson, John Hennessy, Computer Organization and Design, 4th ed., Morgan Kaufmann, 2011, ISBN 9780080886138
[4] David Patterson, John Hennessy, Computer Organization and Design MIPS Edition, 5th ed., Morgan Kaufmann, 2013, ISBN 978-0124077263
Planned learning activities and teaching methods
Lectures, Tutorials, Experimental work in labs
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Exercises evaluation and ExaminationCredit and Examination100 (100)51
        Exercises evaluationCredit45 (45)23
                Microcomputer programmingOther task type21 11
                Threads and CUDAOther task type24 12
        ExaminationExamination55 28