Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Ingegneria
INGEGNERIA ELETTRONICA
Insegnamento
ARCHITETTURA DEGLI ELABORATORI (Numerosita' canale 3)
IN05122464, A.A. 2018/19

Informazioni valide per gli studenti immatricolati nell'A.A. 2018/19

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea in
INGEGNERIA ELETTRONICA
IN0507, ordinamento 2011/12, A.A. 2018/19
N4cn3
porta questa
pagina con te
Crediti formativi 9.0
Tipo di valutazione Voto
Denominazione inglese COMPUTER ARCHITECTURE
Dipartimento di riferimento Dipartimento di Ingegneria dell'Informazione (DEI)
Sito E-Learning https://elearning.dei.unipd.it/course/view.php?idnumber=2018-IN0507-000ZZ-2018-IN05122464-N4CN3
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Nessun docente assegnato all'insegnamento

Mutuazioni
Codice Insegnamento Responsabile Corso di studio
IN05122464 ARCHITETTURA DEGLI ELABORATORI (Numerosita' canale 3) -- IN0513
IN05122464 ARCHITETTURA DEGLI ELABORATORI (Numerosita' canale 3) -- IN0508

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
BASE Matematica, informatica e statistica INF/01 1.0
BASE Matematica, informatica e statistica ING-INF/05 8.0

Organizzazione dell'insegnamento
Periodo di erogazione Secondo semestre
Anno di corso I Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 9.0 72 153.0

Calendario
Inizio attività didattiche 25/02/2019
Fine attività didattiche 14/06/2019

Commissioni d'esame
Commissione Dal Al Membri
33 A.A. 2018/2019 (canale 4) 01/10/2018 15/03/2020 SILVESTRI FRANCESCO (Presidente)
MENEGATTI EMANUELE (Membro Effettivo)
COMIN MATTEO (Supplente)
CONGIU SERGIO (Supplente)
32 A.A. 2018/2019 (canale 1) 01/10/2018 15/03/2020 COMIN MATTEO (Presidente)
SILVESTRI FRANCESCO (Membro Effettivo)
CONGIU SERGIO (Supplente)
MENEGATTI EMANUELE (Supplente)
31 A.A. 2018/2019 (canale 2) 01/10/2018 15/03/2020 MENEGATTI EMANUELE (Presidente)
COMIN MATTEO (Membro Effettivo)
CONGIU SERGIO (Supplente)
MORO MICHELE (Supplente)
SILVESTRI FRANCESCO (Supplente)
30 A.A. 2018/2019 (canale 3) 01/10/2018 15/03/2020 CONGIU SERGIO (Presidente)
COMIN MATTEO (Membro Effettivo)
MENEGATTI EMANUELE (Supplente)
SILVESTRI FRANCESCO (Supplente)
28 A.A. 2017/2018 01/10/2017 15/03/2019 COMIN MATTEO (Presidente)
RODA' ANTONIO (Membro Effettivo)
FANTOZZI CARLO (Supplente)
MENEGATTI EMANUELE (Supplente)
SILVESTRI FRANCESCO (Supplente)

Syllabus
Prerequisiti: Fondamenti di Informatica.
Conoscenze e abilita' da acquisire: Conoscenza e comprensione delle principali funzioni svolte da un’architettura di calcolo.
Conoscenza e comprensione delle principali tecniche di organizzazione di un’architettura di calcolo.
Essere in grado di sviluppare semplici programmi in linguaggio assembly in architettura ARM.
Modalita' di esame: L’esame finale consiste in una parte scritta e una parte orale. La parte orale può essere sostituita dal superamento delle due prove intermedie.
Criteri di valutazione: La valutazione dello studente si basa sulla conoscenza e comprensione dei concetti e metodologie presentati durante il corso, e sulla capacità di applicarli per risolvere specifici problemi.
Contenuti: • Rappresentazione dell’informazione numerica: rappresentazione di numeri naturali, interi e razionali; complemento a due; floating point; rappresentazione delle informazioni non numeriche: testi, audio, immagini, video.
• Reti logiche: sistemi combinatori e sequenziali.
• Organizzazione di un elaboratore: datapath; memoria centrale; modulo di controllo; unità aritmetico e logica; dispositivi di input/output.
• Architettura di un elaboratore: istruzioni macchina; metodi di indirizzamento; chiamate a subroutine; allocazione dinamica della memoria.
• Introduzione all’architettura ARM: organizzazione; programmazione in linguaggio assembly.
• Compilazione di un programma: dal file sorgente al file eseguibile; compilatore, assemblatore, linker.
• Sistemi di interruzione: commutazione del contesto; riconoscimento delle interruzioni; interruzioni esterne e interruzioni software.
• Organizzazione della memoria: memoria cache; memoria virtuale; memory mapping and management unit (MMU); accesso diretto alla memoria (DMA).
• Tecniche avanzate di organizzazione di un elaboratore: pipelining; branch prediction; speculazione; out of order execution; acceleratori hardware; multicore.
• Prestazioni di un’architettura: misure di prestazioni; impatto dell’hardware sulle prestazioni.
Attivita' di apprendimento previste e metodologie di insegnamento: L’insegnamento prevede lezioni frontali in aula ed esercitazioni in un laboratorio informatico. Le esercitazioni in laboratorio consistono nel progetto e collaudo di semplici programmi in linguaggio assembly per l’architettura ARM, con la sperimentazione di alcuni aspetti avanzati dell'hardware (interrupt, DMA, ...).
Eventuali indicazioni sui materiali di studio: Il materiale di studio consiste nel testo di riferimento indicato e di altro materiale fornito in Moodle (slide, manuali ARM,…)
Testi di riferimento:
  • Stallings, William, Computer organization and architecture: designing for performance - tenth edition. --: Pearson education, 2016. Testo di riferimento del corso Cerca nel catalogo
  • Patterson, Hennessy, Computer Organization and Design ARM Edition: The Hardware Software Interface. --: Morgan Kaufmann, 2017. Testo per consultazione Cerca nel catalogo
  • Congiu, Sergio, Architettura degli elaboratoriorganizzazione dell'hardware e programmazione in linguaggio assembly. --: Patron, 2012. Testo per consultazione Cerca nel catalogo