Scheda programma d'esame
ARCHITETTURA DEGLI ELABORATORI
MAURIZIO ANGELO BONUCCELLI
Anno accademico2019/20
CdSINFORMATICA
Codice267AA
CFU9
PeriodoPrimo semestre
LinguaItaliano

ModuliSettore/iTipoOreDocente/i
ARCHITETTURE DEGLI ELABORATORIINF/01LEZIONI72
MAURIZIO ANGELO BONUCCELLI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Gli studenti acquisiranno una buona conoscenza dei fondamenti scientifici e tecnologici delle architetture dei sistemi di elaborazione che permetterà loro di capire le caratteristiche dei diversi livelli dei sistemi di elaborazione, le loro relazioni con gli strumenti di programmazione e la strutturazione dei sistemi in termini di moduli concorrenti e cooperanti. 

Knowledge

Students are expected to achieve a good knowledge of computer architecture scientific and technological foundations in order to understand the characteristics of computers at various levels, and their relations with programming tools, as well as structuring of systems via concurrent and cooperating modules.

Modalità di verifica delle conoscenze

Gli studenti dimostreranno le loro capacità utilizzando le diverse metodologie di risoluzione dei problemi presentate e discusse durante le lezioni per risolvere problemi relativi alla progettazione di semplici moduli e alla determinazione delle loro performance. La parte scritta dell'esame permette anche di verificare le capacità dello studente nella presentazione delle metodologie applicate e dei risultati ottenuti. 

 

Metodi per la verifica

  • Test periodici
  • Prova finale scritta e orale

Ulteriori informazioni:

Sono previste due prove di verifica intermedia. Se superate entrambe con esito positivo, le prove intermedie sostituiscono la prova d'esame scritta.

Assessment criteria of knowledge

The student should demonstrate the ability to properly correlating the various issues studied in the course in order to solve problem solving tasks in the definition and design of simple system modules and program performance evaluation. The written part will also assess the ability to present in a clear way a report of the solved problem.

Methods:

  • Final oral exam
  • Final written exam
  • Periodic written tests

Further information:
Two midterms are provided: if taken with sufficient rating, they replace the written part of the exam.

Capacità

Gli studenti svilupperanno capacità di analisi e progettazione di semplici sistemi di elaborazione. 

Skills

Students will learn to analise and design simple computer systems. 

Modalità di verifica delle capacità
  • Home work con auto valutazione
  • Prove di verifica intermedie
  • Prova scritta e prova orale 
Assessment criteria of skills
  • Home work with self-assessment forms
  • Mid term essays
  • Final written and oral exam
Prerequisiti (conoscenze iniziali)

Linguaggi di programmazione imperativi, complesità di algoritmi, semplici nozioni di analisi matematica.

Prerequisites

Imperative programming languages, algorithm complexity, simple mathematical analysis concepts.

Indicazioni metodologiche

Lezioni frontali

Attività di apprendimento: 

  • frequentazione delle lezioni
  • partecipazione a seminari
  • partecipazione a discussioni
  • studio individuale

Frequenza: raccomandata

Metodi di insegnamento: 

  • Lezioni frontali
  • Seminari
  • Apprendimento guidato da obiettivi, problemi e quesiti.
Teaching methods

Delivery: face to face

Learning activities:

  • attending lectures
  • participation in seminar
  • participation in discussions
  • individual study

Attendance: Advised

Teaching methods:

  • Lectures
  • Seminar
  • Task-based learning/problem-based learning/inquiry-based learning
Programma (contenuti dell'insegnamento)
  1. Fondamenti dei sistemi di elaborazione
  2. Livello Firmware
  3. Livello della macchina assembler
  4. Livello dei processi 
  5. Architettura base e performance del processore
  6. Gerarchie di memoria
  7. Fondamenti di sistemi paralleli
  8. Parallelismo a livello di istruzioni (ILP)
  9. Introduzione ai multiprocessori
Syllabus
  1. Computer systems fundamentals
  2. Firmware level
  3. Assembler machine level
  4. Process level
  5. Elementary processor architecture and performance
  6. Memory hierarchies
  7. Fundamentals of parallel systems structuring and evaluation
  8. Instruction level parallelism CPUs
  9. Introduction to multiprocessors
Bibliografia e materiale didattico

Libro di testo:

  • M. Vanneschi, Architettura degli Elaboratori. Pisa University Press, seconda edizione, 2013

Letture consigliate: 

  • M. Danelutto, Introduzione a Verilog, 2015, PDF available from the web page
  • Harris and Harris, Digital Design and Computer Architecture, 2017, Morgan Kaupfmann
  • D.A. Patterson, J.L. Hennessy, Computer Organization & Design – The Hardware/Software Interface. Morgan Kaufmann Publishers.
  • G. B. Gerace, La Logica dei Sistemi di Elaborazione. Editori Riuniti.
Bibliography

Textbook:

  • M. Vanneschi, Architettura degli Elaboratori. Pisa University Press, seconda edizione, 2013

Other recommended readings: 

  • M. Danelutto, Introduzione a Verilog, 2015, PDF available from the web page
  • Harris and Harris, Digital Design and Computer Architecture, 2017, Morgan Kaupfmann
  • D.A. Patterson, J.L. Hennessy, Computer Organization & Design – The Hardware/Software Interface. Morgan Kaufmann Publishers.
  • G. B. Gerace, La Logica dei Sistemi di Elaborazione. Editori Riuniti.
Indicazioni per non frequentanti

Le lezioni, registrate, veranno rese disponibili via WEB

Non-attending students info

Lesson recordings will be available on WEB

Modalità d'esame

Prova scritta e orale

Assessment methods

Written and Oral exam

Ultimo aggiornamento 02/09/2019 10:39