CALCOLATORI ELETTRONICI - I Modulo (5 crediti - Ing. Elettronica nuovo ordinamento - Consorzio Nettuno)

Prova di esame: la prova di esame consiste in un compito scritto. Per prepararsi all'esame sono disponibili una prova di autovalutazione , nonchè alcuni esercizi di esame con le relative soluzioni.

PROGRAMMA

RIFERIMENTI

A.S. Tanembaum, Architettura del computer: un approccio strutturato, 5a (4a) Ed., Utet, 2000.
Materiale distribuito dal docente

Evoluzione dei sistemi di elaborazione.
Struttura a livelli dell’organizzazione hardware e software del sistema di elaborazione – Evoluzione storica dei sistemi di elaborazione – Generazioni di sistemi di elaborazione – Dalla macchina di Babbage al Personal Computer – Leggi di Moore e di Nathan – Tipologie di computer – La famiglia Intel – Java e la Java Virtual Machine

Struttura del sistema di elaborazione.
Architettura a livelli – Il processore e la sua organizzazione interna – Esecuzione ed interpretazione delle istruzioni – Il ciclo fetch-decode-execute – Architetture CISC E RISC – Forme di parallelismo, pipelining, architetture superscalari, architetture multiprocessore. – La memoria centrale, organizzazione interna, ordinamento dei dati – Codici a rilevazione e correzione di errore – Gerarchie di memoria, memorie cache – Dischi magnetici, dischi IDE, EIDE e SCSI – Dischi RAID – Dschi ottici, CD ROM e DVD – Monitors e Diplay Flat-Panel – Terminali a mappa di caratteri e di bit – Stampanti ink-jet e laser – Modem e linee ISDN – Codifica di caratteri, codici ASCII e UNICODE.

Logica digitale, memorie, microprocessori e bus.
Circuiti digitali – I circuiti dell’Unit`a Aritmetico Logica, latch, flip-flop, registri, shifter, addizionatori – La memoria centrale e la sua organizzazione interna, RAM statiche e dinamiche, ROM, EPROM, memorie flash – Chip di memoria e schede di memoria, SIMM e DIMM – Bus sincroni ed asincroni – Arbitraggio del bus – Controllori di interruzioni – Esempi di microprocessori, Pentium II – Il bus ISA del PCI/AT – Il bus PCI, segnali, transazioni, arbitraggio – Il bus USB, specifiche e struttura dei frame – Chip di I/O, UART, PIO, decodifica degli indirizzi
 

Microarchitetture, cache e pipeline.
La microarchitettura, il cammino dei dati – Ciclo di esecuzione delle microistruzioni – Accesso alla memoria – Formato delle microistruzioni – La sezione di controllo – Memorie cache, memorie associative pure, a mappa diretta, associative ad insiemi – Gestione della cache in lettura e scrittura – Pipeline ed architetture superscalari – Gestione dei salti, previsione statica e dinamica – Esecuzione in-order – Esecuzione in-order – Microarchitettura del Pentium II, unità di fetch-decode, dispatch e retire

  Il livello delle istruzioni macchina.
Registri, Program StatusWord e modello della memoria – Il livello ISA del Pentium II – Formato delle istruzioni – Espansione dei codici operativi – Formato delle istruzioni nel Pentium II – Modalit`a di indirizzamento – Indirizzamento a stack – Ortogonalit`a – Gestione dell’I/O, I/O programmato, con interruzioni e DMA – Repertorio di istruzioni del Pentium II – Chiamate di procedura e passaggio dei parametri, gestione dello stack frame – Gestione delle trap e delle interruzioni

Struttura e funzioni del sistema operativo. (Non richiesto nei due appelli ordinari)
Traduzione e collegamento – Interpretazione - Linguaggi assemblativi e pseudoistruzioni - Macro e procedure -Assemblatori a una e a due passate - Collegamento e caricamento - Struttura del modulo oggetto - Collegamento dinamico.

Esercitazioni

Sistemi di numerazione binaria: Sistemi di numerazione posizionale – Conversioni di base, binaria, decimale esadecimale – Rappresentazione degli interi negativi, notazioni in complemento a uno e a due, in eccesso 2m – Addizioni e moltiplicazioni fra interi

Rappresentazioni in virgola mobile: Intervalli di rappresentazione, overflow, underflow – Addizioni e moltiplicazioni in virgola mobile – Lo standard IEEE 754, numeri denormalizzati – Errore assoluto e relativo
 

Esercizi numerici sulle memorie cache
Esercizi sull’espansione dei codici operativi
Esercizi numerici sui file e le strutture di accesso