Computer Structure and Architecture
Code  Completion  Credits  Range  Language 

BIKSAP  Z,ZK  6  13KP+4KC  Czech 
 Lecturer:
 Martin Daňhel (guarantor), Kateřina Hyniová
 Tutor:
 Martin Daňhel (guarantor), Kateřina Hyniová
 Supervisor:
 Department of Digital Design
 Synopsis:

Students understand basic digital computer units and their structures, functions, and hardware implementation: ALU, control unit, memory system, inputs, outputs, data storage and transfer. In the labs, students gain practical experience with the design and implementation of the logic of a simple processor using modern digital design tools. The subject teaches basic knowledge of digital computer construction principles, how a computer performs its operations, what is machine code, and what are its connections to higher programming languages.
 Requirements:

Basic knowledge of physical principles of digital circuits (transistors as switches, implementation of registers, data storage principles) and fundamentals of discrete mathematics (number representation systems, Boolean algebra).
 Syllabus of lectures:

1. Computer organization, units and their interfaces. Logic functions, combinatorial components, gatelevel design.
2. Structure of sequential components, description and implementation. Mealy and Moore type of implementation. Typical combinatorial and sequential components of a computer.
3. Data, storage and processing. Representation of negative numbers, fixpoint and floating point numbers.
4. Implementation of arithmetic operations. Memory structures and design principles.
5. Computer memory system. Inputoutput components, buses and communication.
6. Instruction set architecture and machine code. Instruction cycle.
7. Control units.
 Syllabus of tutorials:

1. Numeral systems and conversions. Representation of negative numbers and arithmetic operations. Fix point and floating point numbers. Combinatorial components design (gate level). Implementation of sequential components.
2. [2] Implementation of logic circuits. Hardware implementation of arithmetic operations. Memories. Simple processor structure and machine code. Machine code design. Machine code debugging. Assessment.
 Study Objective:

The subject teaches basic knowledge of digital computer construction principles, how a computer performs its operations, what is machine code and what are its connections to higher programming languages.
 Study materials:

1. Douša, J., Pluháček, A. ''Introduction to Computer Systems''. Praha: ČVUT, 2000. ISBN 8001021033.
2. Gajski, D. D. ''Principles of Digital Design''. Prentice Hall, 1996. ISBN 0133011445.
3. Friedman, A. D., Menon, P. R. ''Theory and Design of Switching Circuits''. Computer Science Press, 1975. ISBN 0914894528.
4. McCluskey, E. J. ''Logic Design Principles''. PrenticeHall, 1986. ISBN 0135397685.
5. Sasao, T. ''Switching Theory for Logic Synthesis''. Springer, 1999. ISBN 0792384563.
 Note:
 Further information:
 https://courses.fit.cvut.cz/BISAP/
 Timetable for winter semester 2020/2021:
 Timetable is not available yet
 Timetable for summer semester 2020/2021:
 Timetable is not available yet
 The course is a part of the following study plans:

 Bachelor program Informatics, unspecified branch, in Czech, parttime, 2015–2021 (compulsory course in the program)
 Bachelor branch Security and Information Technology, in Czech, parttime, 2015–2019 (compulsory course in the program)
 Bachelor branch Web and Software Engineering, spec. Software Engin., in Czech, parttime, 2015–2020 (compulsory course in the program)
 Bachelor branch Security and Information Technology, parttime, in Czech, 2020 (compulsory course in the program)