Vai al contenuto principale

Università degli Studi di Parma, il mondo che ti aspetta

ARCHITETTURA DEGLI ELABORATORI ( cod. 13598)

Insegnamento di INFORMATICA (Corsi di Laurea)

Facoltà di Corsi di Laurea triennale (D.M. 270/04)

 

TIPOLOGIA DELL'INSEGNAMENTO: ATTIVITÀ FORMATIVE DI BASE

 
Lingua Insegnamento: 
Italiano

FREQUENZA FACOLTATIVA

Obiettivi

Proporre un percorso che, partendo dalla rappresentazione dell’informazione e passando per lo studio delle reti logiche, arrivi a definire i fondamentali aspetti architetturali dei calcolatori elettronici. Il corso prevede, oltre a lezioni teoriche, una serie di esercitazioni in aula sulla parte di reti logiche e in laboratorio sulla parte di assembly IA-32.

Prerequisiti

Nessuno

Contenuti dell'insegnamento

I parte – Introduzione ai sistemi di elaborazione II parte – Livello logico III parte – Livello funzionale IV parte – Architettura e linguaggio assembly IA-32 V parte – Livello software VI parte – Livello micro-architettura

Programma esteso

I parte – Introduzione ai sistemi di elaborazione Sistemi di elaborazione Evoluzione storica e tecnologica Architettura e organizzazione dei calcolatori elettronici Modelli di sistema e livelli di astrazione Sistemi di numerazione binario, esadecimale e ottale Rappresentazione binaria dei numeri reali Informazioni di carattere alfanumerico Rappresentazione di suoni, immagini e video II parte – Livello logico Algebra delle reti Circuiti logici elementari Forme canoniche e trasformazioni Minimizzazione logica Reti combinatorie Reti sequenziali III parte – Livello funzionale Relazione tra livello funzionale e livello micro-architettura Organizzazione di un calcolatore moderno Il repertorio delle istruzioni La CPU I sistemi di memoria Il sottosistema di I/O IV parte – Architettura e linguaggio assembly IA-32 Architettura IA-32 Le CPU IA-32: gestione della memoria, registri, flag Istruzioni dell’assembly IA-32 Set di istruzioni aggiuntive dei moderni microprocessori: MMX, 3DNow!, SSE, SSE2 Programmazione assembly ed interfaccia con il linguaggio C V parte – Livello software Cenni al sistema operativo Cenni alla struttura dei compilatori di linguaggi tipo-C Cenni alla generazione di codice assembly per un sotto-insieme del C VI parte – Livello micro-architettura La microarchitettura: progettazione hardwired e micro-programmata Approfondimenti sulle architetture micro-programmate Cenni alla struttura di una architettura micro-programmata compatibile con le CPU tipo NMOS 6502 Gestione del I/O a livello micro-architettura: interrupt e DMA Interazione con il livello software

Bibliografia Consigliata

David A. Patterson, John L. Hennessy. Struttura e Progetto dei Calcolatori, Zanichelli, 2006. Giacomo Bucci. Architettura e organizzazione dei calcolatori elettronici - Fondamenti, McGraw-Hill, 2004. William Stallings. Architettura e organizzazione dei calcolatori - Progetto e prestazioni, Addison Wesley, 2004. Andrew S. Tanenbaum. Architettura dei Calcolatori, 5a edizione, Prentice Hall, 2006. Randall Hyde. The Art of Assembly Programming, disponibile online.
Metodi di valutazione: 
Prova scritta e prova orale

Metodi didattici

Lezioni frontali ed esercitazioni in laboratorio
Anno accademico: 
2012
Anno di corso: 
1
Semestre: 
1
Numero CFU: 
6
SSD: 
INFORMATICA (INF/01)
Ambito: 
Formazione informatica di base
Ore di attivita frontale: 
48