Computer Architecture Ii
A.Y. 2025/2026
Learning objectives
The course provides the knowledge of the digital architectures and in particular of pipelines, multi-core and memory hierarchies better understand operating systems and to deeply understand how software can be optimized. The instruments for a quantitative evaluation of an architecture are also provided.
Expected learning outcomes
The student will be able to understand how pipeline and multicore architectures work, how memory hierarchies are handled and what is the hardware support to virtual memory;
(s)he will understand the types of connections between different components and the various policies to handle I/O. The student will have the tools needed to evaluate computer performances and to optimize applications.
(s)he will understand the types of connections between different components and the various policies to handle I/O. The student will have the tools needed to evaluate computer performances and to optimize applications.
Lesson period: Second semester
Assessment methods: Esame
Assessment result: voto verbalizzato in trentesimi
Single course
This course cannot be attended as a single course. Please check our list of single courses to find the ones available for enrolment.
Course syllabus and organization
Edition 1
Responsible
Lesson period
Second semester
INF/01 - INFORMATICS - University credits: 6
Laboratories: 24 hours
Lessons: 36 hours
Lessons: 36 hours
Professors:
Borghese Nunzio Alberto, Luperto Matteo
Shifts:
Turno
Professor:
Borghese Nunzio AlbertoTurno A
Professor:
Luperto MatteoEdition 2
Responsible
Lesson period
Second semester
Course syllabus
For the theory part:
- Single-cycle and multiple-cycle CPU: pipeline, criticalities, interrupts, exceptions, and their management;
- static and dynamic memory, virtual memory, memory hierarchy;
- input/output;
- performance evaluation metrics.
For the laboratory part, in addition to a tutorial on the use of software tools, sessions will propose Assembly programming exercises covering the following topics:
- use of memory;
- system calls;
- flow control;
- definition and call to procedures;
- handling of exceptions.
The theory and laboratory parts are carried out in parallel. The beginning of the lab sessions is usually delayed of one/two weeks.
- Single-cycle and multiple-cycle CPU: pipeline, criticalities, interrupts, exceptions, and their management;
- static and dynamic memory, virtual memory, memory hierarchy;
- input/output;
- performance evaluation metrics.
For the laboratory part, in addition to a tutorial on the use of software tools, sessions will propose Assembly programming exercises covering the following topics:
- use of memory;
- system calls;
- flow control;
- definition and call to procedures;
- handling of exceptions.
The theory and laboratory parts are carried out in parallel. The beginning of the lab sessions is usually delayed of one/two weeks.
Prerequisites for admission
Attendance of the course Computer Architecture I is suggested.
Teaching methods
The theory part is given with frontal lectures where slides are presented. Slides are made available in PDF format through the myAriel platform.
The laboratory part proposes guided exercising sessions at the PC. The adopted software tools and the exercises (instructions and selected solutions) are made available through the Ariel platform.
Attendance is recommended for both the theory and the laboratory part.
The laboratory part proposes guided exercising sessions at the PC. The adopted software tools and the exercises (instructions and selected solutions) are made available through the Ariel platform.
Attendance is recommended for both the theory and the laboratory part.
Teaching Resources
Both the theory and the laboratory part are based on the topics covered in: "Computer Organization & Design: The Hardware/Software Interface" by David A. Patterson and John L. Hennessy, Morgan Kaufmann Publishers.
For further support, slides, exercises, and other supplementary material are provided during the course on the myAriel platform.
For further support, slides, exercises, and other supplementary material are provided during the course on the myAriel platform.
Assessment methods and Criteria
For the theory part, there will be a written test lasting at most 3 hours where the resolution of an adequate number of exercises is proposed. Each exercise involves the application of the principles and techniques presented during the lectures. During the exam, consulting any material is forbidden. "In itinere" tests could be done during the course.
For the laboratory part, the exam consists in carrying out some proposed exercises on the PC and lasts about 1 hour. Each exercise requires writing an Assembly program for the MIPS architecture according to specific functional requirements. During the exam, specific material approved by the teacher can be consulted.
Both tests, theory and laboratory, result in a grade out of thirty which is communicated through the Ariel platform (optionally also by email). If both grades are greater than or equal to 18, the exam is passed with a grade equal to the weighted average of the theory grade (weight 2/3) and the laboratory grade (weight 1/3). The two tests can be passed in different exam sessions but in a time span of at most three successive exam sessions or six months (the less restrictive rule will be applied).
The assessments will take into account: confidence in applying techniques, correctness and elegance of the solutions, clarity of presentation. The tests and their assessments will not be differentiated on the basis of attendance.
For the laboratory part, the exam consists in carrying out some proposed exercises on the PC and lasts about 1 hour. Each exercise requires writing an Assembly program for the MIPS architecture according to specific functional requirements. During the exam, specific material approved by the teacher can be consulted.
Both tests, theory and laboratory, result in a grade out of thirty which is communicated through the Ariel platform (optionally also by email). If both grades are greater than or equal to 18, the exam is passed with a grade equal to the weighted average of the theory grade (weight 2/3) and the laboratory grade (weight 1/3). The two tests can be passed in different exam sessions but in a time span of at most three successive exam sessions or six months (the less restrictive rule will be applied).
The assessments will take into account: confidence in applying techniques, correctness and elegance of the solutions, clarity of presentation. The tests and their assessments will not be differentiated on the basis of attendance.
INF/01 - INFORMATICS - University credits: 6
Laboratories: 24 hours
Lessons: 36 hours
Lessons: 36 hours
Professors:
Basilico Nicola, Re' Matteo
Shifts:
Turno
Professor:
Basilico NicolaTurno B
Professor:
Re' Matteo