Course Unit Code | 460-2034/04 |
---|
Number of ECTS Credits Allocated | 6 ECTS credits |
---|
Type of Course Unit * | Optional |
---|
Level of Course Unit * | First Cycle |
---|
Year of Study * | |
---|
Semester when the Course Unit is delivered | Winter Semester |
---|
Mode of Delivery | Face-to-face |
---|
Language of Instruction | English |
---|
Prerequisites and Co-Requisites | |
---|
| Prerequisities | Course Unit Code | Course Unit Title |
---|
| 440-2104 | Introduction to Digital Systems |
| 460-2052 | Introduction to Programming |
Name of Lecturer(s) | Personal ID | Name |
---|
| OLI10 | Ing. Petr Olivka, Ph.D. |
| KRU13 | Mgr. Ing. Michal Krumnikl, 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 |
---|
Lecture:
1. Computer architectures: von Neumann and Harvard. Base features and principles of operation.
2. Monolitic computers, base design requirements, features and usage, typical peripheral devices.
3. Base principles of communication with peripheral devices, buses, I/O gates, interrupt and programm control. DMA.
4. RISC and CISC processors, base features. Pipelining, jump predictions, hazard types.
5. Most used RISC processors and their features.
6. Intel processors, history and architecture of the latest processors.
7. Computer memory organization, memory hierarchy. Static and dynamic memories. Virtual memory organization.
8. Hard disks and optical drives. Operational principles, principle of storing data, data organization on the medium.
9. Displays, operational principles: CRT, LCD, OLED, E-Ink.
10. Advanced computer architectures - GPU, history of computing, CUDA technology.
11. The modern trends of computer architecture, parallel computers architectures.
12. Machine instruction, base addressing, registers of Intel CPU in 64bit mode.
13. Arithmetic-Logical unit, function calling, return values, passing arguments.
14. Stack organization, local variables, float point numbers usage.
Labs:
1. Safety training, development Kit introduction, programming IDE, simple application programming.
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. Technology CUDA, base program concept, simple application with vectors and matrices.
9. Technology CUDA, digital image processing, simple image transformation programming.
10. Technology CUDA, simple graphical animations.
11. Base assembly language programming, interfacing with C language, addressing, global variable usage.
12. Base ALU instructions, calling of functions from C language, passing arguments, local variables.
13. Passing and usage of float point numbers.
14. Base usage of SSEx unit. |
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 |
---|
Tasks are not Defined |