1C18TNS1006 - Architecture of Computer Systems
Course specification | ||||
---|---|---|---|---|
Type of study | Bachelor academic studies | |||
Study programme | ||||
Course title | Architecture of Computer Systems | |||
Acronym | Status | Semester | Number of classes | ECTS |
1C18TNS1006 | mandatory | 3 | 2L + 2E | 6.0 |
Lecturers | ||||
Lecturer | ||||
Lecturer/Associate (practicals) | ||||
Prerequisite | Form of prerequisites | |||
Learning objectives | ||||
Introduction to basic concepts and relationships related to computer architecture and organization; Introduction to mathematical concepts of data storage and representation; Introduction to computer arithmetic; Introduction to logical foundations of data processing on computers; Studying the construction and functionality of the computer processor, including considerations related to instruction sets; Introduction to machine instructions and assembly language; Studying various types of memory in computer systems; Studying the bus and connections that enable communication between hardware components; Studying the I/O subsystem; Introduction to algorithms for error detection and correction; Laying the groundwork for the follow-up course Computer Organization and Architecture 2. | ||||
Learning outcomes | ||||
Students should master the following: Understanding the history of information technology development; Knowledge of generations of electronic computers; Differentiation between digital and analog computing technologies; Understanding the functional characteristics of computers; Understanding computer data representation; Ability to manually perform basic arithmetic operations on integers in different number systems and in various forms of denoted numbers; Knowledge of the IEEE 754 standard; Skill to minimize a given logical function in various ways; Skill to construct and appropriately represent a simple combinatorial or sequential network graphically; Understanding the significance, history of origin, and characteristics of the Von Neumann computer concept; Understanding the basics of computer processor organization (central processing unit); Understanding memory hierarchy; Knowledge of basic I/O modules and the operations that characterize them; Understanding basic algorithms for error detection and correction; Basics of programming in machine language; Differentiation between computer architecture and organization. | ||||
Content | ||||
1. Basic ideas and concepts. History of computer systems. Introduction to the mathematical foundations of data storage. 2. Numbers and their notation. Conversion between different number systems. Representation of marked numbers. 3. Integers and integer arithmetic. 4. BCD numbers. Packed and unpacked BCDs. 5. “Real” numbers and the corresponding arithmetic. 6. Digitization. Representing text, sound and image in a computer. 7. Basics of digital logic: Boolean algebra, logical elements, minimization of logical functions. 8. Combinational and sequential logic. 9. Von Neumann's concept of the computer. RAM. 10. Bus. I/O. 11. Central data processing unit (processor). Multiprocessor systems. 12. Error detection and correction. 13. Introduction to machine instructions. | ||||
Teaching Methods | ||||
Lectures. Guided discussion. Classroom exercises. | ||||
Literature | ||||
| ||||
Evaluation and grading | ||||
Colloquium(s). Written (practical) test. Theoretical exam, as a combination of oral exam and written test. |