ARCHITETTURA DEGLI ELABORATORI E LABORATORIO
Yuri De Pra
The expected learning outcomes are, as reflected in the following Dublin Descriptors. (Skills related to the disciplines)
1.1 Knowledge and comprehension skills: past the exam, students will understand how computer hardware works; furthermore they will know the main factors that influence the performance of a computer.
1.2 Knowledge and comprehension applied skills: the laboratory activity will allow students to get used with the low-level design of both simple digital systems and programs in machine language, i.e. directly executable by the computer.
2.1 Judgement skills: students will learn tools for evaluating with ponder and choosing a hardware architecture.
2.2 Communication skills: students will learn the exact meaning of the different words used for properly describing characteristics and specifications of a computer.
2.3 Learning skills: the course aims at providing a conceptual framework, precise enough to secure a detail study of the diverse components finding place in a computer.
– Logic Circuits: logic gates, Boolean algebra, most frequently used combinatorial circuits, synthesis of sequential circuits, memory chips.
– Data Representation: binary representations, conversions, integer and floating-point numbers, character representation, error detection and correction.
– Processor: fetch-decode-execute cycle, data path, control unit, pipeline, superscalar processor, branch prediction, Intel Core and AMD ARM in few words.
– Machine language: evolution, data types, addressing, instruction types, instruction formats.
– Input/Output: programmed I/O, Interrupt, DMA, peripheral devices, bus, bus arbitration, strobe control, PCI, SCSI, USB.
– Memory hierarchies: cache memory, virtual memory, pagination and segmentation, MMU.
– Parallel architectures: classification, multiprocessor, multicomputer, processor interconnection, cache coherence.
– Assembly programming: ARM architecture. ARM assembly: assignment, branch instructions, arithmetic and logic instructions, subroutines.
– The Arduino board architecture and its Assembly programming for IoT applications.
The course consists also of 36 hours of laboratory activity. Subjects of this activity are the design of digital circuits and programming in assembly language.