Scheda programma d'esame
COMPUTER ARCHITECTURES
MARCO DANELUTTO
Academic year2020/21
CourseCOMPUTER SCIENCE
Code267AA
Credits9
PeriodSemester 1
LanguageItalian

ModulesAreaTypeHoursTeacher(s)
ARCHITETTURE DEGLI ELABORATORIINF/01LEZIONI72
MARCO DANELUTTO unimap
JACOPO SOLDANI 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. Reti logiche combinatorie e sequenziali 
  3. Linguaggi per la descrizione dell'hardware
  4. Assembler
  5. Micro architettura base
  6. Performance dei rocessori
  7. Gerarchie di memoria
  8. Parallelismo a livello di istruzioni (ILP) e cenni a sistemi multicore
Syllabus
  1. Computer systems fundamentals
  2. Combinatorial and sequential logic design 
  3. Hardware description languages
  4. Assembler
  5. Micro architecture
  6. Performance
  7. Memory hierarchies
  8. Instruction level parallelism CPUs and multicores

 

Bibliografia e materiale didattico

Libro di testo:

  • Harris, Harris, Digital design and computer architecture: ARM edition, Morgan Kaupfmann 2017. Anche ni versione italiana pubblicata da Zanichelli

Letture consigliate: 

  • M. Danelutto, Introduzione a Verilog, 2015, PDF available from the web page
  • D.A. Patterson, J.L. Hennessy, Computer Organization & Design – The Hardware/Software Interface. Morgan Kaufmann Publishers.
Bibliography

Textbook:

  • Harris and Harris, Digital Design and Computer Architecture, 2017, Morgan Kaupfmann

Other recommended readings: 

  • M. Danelutto, Introduzione a Verilog, 2015, PDF available from the web page
  • D.A. Patterson, J.L. Hennessy, Computer Organization & Design – The Hardware/Software Interface. Morgan Kaufmann Publishers.

 

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

Updated: 28/07/2020 10:47