The course aims at introducing basic concepts of hardware and firmware architectures of computing systems, starting from digital circuit fundamentals up to the description of behavior and structure of the main parts of a computing system. The course consists in 36 lecture hours (4,5cfu) and 24 lab hours (1,5cfu).
Expected learning outcomes
Knowledge of basic elements related to structure and behavior of a computer. Ability of translating simple algorithms down to the level proper of the computer machine.
Lesson period: First semester
(In case of multiple editions, please check the period, as it may vary)
BEHAVIOR OF THE COMPUTER · Reference architecture. Von Neumann machine. Functional structure of the main parts of the machine. · Machine language. The Assembly language. Exercises. COMPUTER ARCHITECTURE · Functional principles of digital computing systems. Digital coding of information. Switching logic, logic gates, bistables. Combinational and sequential circuits. · Main parts of the microcomputer architecture. Memory circuits. Memory technologies (ROM, SRAM, DRAM). · I/O (Input/Output) peripherals architecture. Types and characteristics of I/O devices. The bus: structure and interconnection schemes. Software handling of I/O. · The CPU: Data Path design. Circuits performing Arithmetic operations. ALU model design. · The CPU: Control Path design. Control Unit design. Wired and microprogrammed control units. · Main architectural advances. Cache memories. Virtual memory. Pipelining