Computer Architecture [Matricole pari] (2020/2021)

Course code
Franco Fummi
Academic sector
Language of instruction
Teaching is organised as follows:
Activity Credits Period Academic staff Timetable
Teoria 10 II semestre, I semestre Franco Fummi, Luca Geretti, Davide Quaglia

Go to lesson schedule

Laboratorio 2 II semestre, I semestre Stefano Centomo

Go to lesson schedule

Learning outcomes

This course presents the theoretical and practical knowledge to implement an algorithm into a digital architecture. Some design alternatives are presented ranging from a pure software, running on a general purpose computer, to an ad-hoc hardware implementation. At the end of the course, the student shall prove: to possess the practical and theoretical notions required for the digital realization of an algorithm, along with an understanding of the issues related to hardware implementation of such algorithms; to be able to apply the acquired notions for the identification of the requirements of a machine able to realize the given task; to evaluate the underlying complexity of the digital realization; to be able to present the main features of a project developed autonomously, and to interact with colleagues when working on a common project; to be able to autonomously build the competences required to continue studies in the field of digital systems design.


* Fundamentals:
- information coding,
- Boolean functions,
- arithmetic.

* Digital devices design:
- combinational circuits,
- sequential circuits,
- controller-datapath circuits,
- programmable units.

* Computer architecture:
- basic principles,
- instruction set,
- elaboration unit,
- memory hierarchy,
- I/O organization,
- actual architectures (cache, virtual memory, pipeline),
- parallel architectures.

* Automatic design of a programmable device
* Assembly programming of the Intel 80X86 architecture
* Interaction between assembly and high-level code

Assessment methods and criteria

To pass the exam, the students must show that:
- they are able to design a digital device,
- they have understood the principles of a computer architecture,
- they are able to program in assembly code by correcly interacting with all computer components,
- they are able to apply the acquired knowledge to solve application scenarios described by means of exercises,, questions and projects.
Theory comprehension is checked through a written examination, eventually divided in parts that will be checked during each semester.
Practical skills are evaluated through two designs which can have a maximal impact of 4/30 on the final mark.
Theory without practical marks are preserved through examination sessions at the cost of a reduction.

Reference books
Activity Author Title Publisher Year ISBN Note
Teoria C. Hamacher, Z. Vranesic, S. Zaky, N. Manjikian Introduzione all'architettura dei calcolatori (Edizione 1) McGraw-Hill 2012 9788838667510 (seconda parte del corso)
Teoria Franco Fummi, Mariagiovanna Sami, Cristina Silvano Progettazione Digitale (Edizione 2) McGraw-Hill 2007 8838663521 (prima parte del corso)
Teaching aids
Title Format (Language, Size, Publication date)
Orario dettagliato e link Zoom 1 semestre html html (it, 108 KB, 11/01/21)