Nicola Cavallo  

 

horizontal rule

Architettura degli elaboratori

A.A. 2006-2007

horizontal rule

AVVISO IMPORTANTE

Le trasparenze, frutto di un’attiva collaborazione con i proff.  F. Cevenini e G .Spadaccini dell’Università di Napoli, non sono da intendersi assolutamente come un libro di testo.

Per quanti sforzi si siano compiuti al fine di rendere il filo logico quanto più trasparente ed omogeneo, esse sono e restano un complemento indispensabile solo durante le lezioni frontali.

 

horizontal rule

Descrizione del Corso

bullet

Facoltà di Scienze MM. FF. NN. - Corso di Laurea in Informatica

bullet

Anno Accademico 2006-2007

bullet

Docente: Prof. Nicola Cavallo

bullet

Tipo: Corso fondamentale

bullet

Impegno lezioni frontali [ore]: 72

bullet

Crediti : 9

________________________________________________________________________________

Scopo del Corso

Il corso si propone di introdurre l'architettura di un elaboratore, mettendo in luce sia le varie componenti sia le scelte progettuali e le tecniche implementative attraverso i seguenti argomenti: Rappresentazione e trasmissione delle informazioni. Algebra di Boole. Reti combinatorie e sequenziali. Cenni sugli automi a stati finiti. Unità di elaborazione logico-aritmetica ed architettura di un computer minimale. Memorie, bus, dispositivi di I/O.

________________________________________________________________________________

Prerequisiti

Nessuno

________________________________________________________________________________

Propedeuticità

Nessuna

________________________________________________________________________________

Programma del Corso

PARTE PRIMA: Informatica di base

Introduzione alle informazioni in forma digitale 

Concetto di comunicazione ed informazione. La rivoluzione digitale e l'ICT. Breve storia dell'elaboratore elettronico. Visione generale dei componenti di un computer. Fattori di progresso nello sviluppo degli elaboratori. Impatto delle nuove tecnologie. La rivoluzione digitale 

Concetti di base: Introduzione 

Comunicazione, rappresentazione digitale dei dati, multimedialità, interattività e ipertestualità, Hardware e Software, input e output, i diversi tipi di computer, il computer nella vita quotidiana, telecomunicazioni, reti di computer ed Internet

Concetti di base: l'Hardware 

L'architettura del personal computer, la memoria RAM, microprocessore e CPU, memorizzazione dei dati (kard disk, Floppy disk, supporto ottici), periferiche di output, periferiche di input

Concetti di base: il Software 

Software di sistema e applicazioni, il sistema operativo, interfaccia grafica, software applicativo, sicurezza dei dati e privacy, diritti d'autore, freewave e shareware, concetto di ergonomia e salute

PARTE SECONDA: Architettura di un sistema di elaborazione digitale

Introduzione alla logica  digitale

Differenza tra segnali analogici e digitali. Architettura della macchina digitale. Livelli logici e forme d’onda digitali.

Rappresentazione delle informazioni

Informazione e rappresentazione dell’informazione.  Codifica. Codici, alfabeti, grammatiche. Rappresentazione dei numeri naturali in diverse basi e conversione da una base all'altra. Rappresentazione e Aritmetica degli  interi. Rappresentazione e Aritmetica dei numeri reali. Standard IEEE. Rappresentazione di caratteri alfanumerici. Codifica delle immagini. 

Trasmissione delle informazioni

Mezzi trasmissivi. Canale. Ridondanza dell'informazione. Rumore elettronico.  Rilevazione e correzione degli errori.

Algebra di Boole

Definizione e proprietà degli operatori booleani.  Modelli dell’algebra di Boole: algebra delle classi.  algebra dei divisori, algebra delle commutazioni, algebra degli interruttori, algebra delle porte.  Espressioni ed equivalenza di espressioni Booleane. Teoremi dell’algebra di Boole. Funzioni ed espressioni booleane. Rappresentazioni canoniche. Tecniche per la semplificazione di espressioni booleane in forma canonica.  Mappe di Karnaugh.

Reti logiche, reti combinatorie, reti sequenziali e cenni sugli Automi a stati finiti

Definizione di rete logica. Concetto di rete logica come elemento di sistema. La variabile “Tempo” e l’andamento temporale. Suddivisione della Reti Logiche: Reti Combinatorie e Sequenziali. Il progetto logico. Definizione di rete combinatoria. Logiche combinatorie. Tempo di propagazione. Encoder a 4 elementi su 2 bit. Decimal-to-BCD Encoder. BCD-to- Decimal Encoder. Decimal-to-BCD Priority Encoder. Priority encoder. Codifica e decodifica. Display a 7 segmenti. Commutazione logica. Multiplexer e Demultiplexer. Tecniche di sintesi. Half adder e Full adder. Limiti delle reti combinatorie. Definizione di Rete Sequenziale. Flip-flop SR. Flip-flop come elemento di memoria. Flip-flop “toggle”. Flip-flop D. Reti sequenziali sincrone. Concetto di clock. Generazione e distribuzione del clock. Flip-flop Master/Slave. Registri a scorrimento (Shift Registers). Comparatori. L’automa come modello per reti sequenziali. Automi a stati finiti ed equazione dell’automa. Tabella di flusso e diagramma degli stati. Addizionatore. Contatore modulo 4. Modelli di automi. Automa di Moore. Automa di Mealy. Automa per il conteggio delle monete. Dalla Tabella di flusso alla Tabella delle transizioni. Riconoscimento di sequenze. Il Flip-flop come macchina a stati

Dispositivi di memoria

Celle elementare di memoria. Disposizione in array. Indirizzamento e capacità. Operazioni sulla memoria e segnali di servizio: address bus, write, read. Cella elementare di memoria. Classificazione delle memoria e terminologia. Modalità di accesso. Correzione degli errori. Tipologie fisiche di memoria. Gerarchie di memorie. La famiglia delle ROM (PROM, EPROM, EEPROM). Famiglia della RAM (SRAM, DRAM). FLASH Memory. Organizzazione ed espansione di memoria. Banchi di memoria (schema a blocchi e schema funzionale). Meccanismi di selezione multiplexing delle uscite con "buffer tristate". Tipi speciali di memorie (FIFO, LIFO, memory stack, CCD). Dispositivi programmabili (PLA, PAL, PLS).

Elaborazioni logico-aritmetiche e sistemi di elaborazione

Tecniche di trasferimento dati tra registri. RTL - “Register Transfer Language”, Reti per microoperazioni. ALU - “Arithmetic Logic Unit”. Unità operativa ed unità di controllo. Sviluppo dell’istruzione. Operazioni semplici (microoperazioni).. Schemi ed esempi di reti che implementano microoperazioni aritmetiche, logiche e di scorrimento. ALU. Operazioni complesse: definizione. Esempi. Controllo di piccoli sistemi. Separazione di parte controllo e parte operativa. Esempi di sistemi di elaborazione microprogrammati. Esecuzione delle istruzioni in un sistema a controllo microprogrammato.

Architettura di un computer minimale: La “macchina di Morris Mano”

Concetto di istruzione. Compiti del processore, linguaggio macchina, formato d’istruzione, indirizzamento diretto ed indiretto, registri della CPU.  Caratteristiche dei registri, bus di collegamento, Repertorio di istruzioni, completezza del set di istruzioni, temporizzazione e controllo, cicli di istruzione, configurazione di ingresso e di uscita, istruzioni di ingresso/uscita, interruzione di programma. Descrizione globale della macchina. Logica di controllo.

La memoria cache

Concetto di memoria cache. Architetture (look aside e look through). Regole di accesso ("write back" e "write through"). Organizzazione. Modalità di indirizzamento. Algoritmi di sostituzione.

Strutture e protocolli dei bus

Introduzione alle strutture di connessione. Il concetto di bus. Struttura fisica e gerarchia di livelli. Linee indirizzi, linee dati e linee di controllo e temporizzazione; protocollo del bus, transazioni. Caratteristiche di progetto. Bus paralleli e bus seriali. Bus sincroni ed asincroni. Arbitraggio: gestione delle interruzioni e dei conflitti. Program Interrupt. DMA. Esempi di strutture a bus: ISA (Industry Standard Architecture), PCI (Peripheral Component Interconnect), AGP (Accelerated Graphics Port), SCSI (Small Computer Systems Interface), USB – Universal Serial Bus, FireWire (IEEE 1394)

Struttura “pipeline”

Il problema della velocità e delle performances. I primi microprocessori. Instruction Set Architeture. Macchine CISC e RISC. Architetture superscalari. Tassonomia di Flynn (SISD, SIMD, MISD, MIMD). Il concetto di catena di montaggio, tempo di esecuzione e frequenza di completamento delle istruzioni (throughput). Stadio della pipeline e buffer interstadio. Necessità del parallelismo e concetto di pipeline. Parallelismo temporale e parallelismo spaziale. Elementi di una pipeline. Esecuzione in pipeline. Organizzazione dell’hardware. Concetto di Stallo. Ruolo della memoria Cache. Stallo da ritardo di esecuzione. Stallo da Read Miss nella memoria Cache. Stallo da istruzione di Branch. Evoluzione delle istruzioni nelle CPU. Processori a 64 bit: ITANIUM. Speculative loading. Branch prediction. Parallelismo esplicito. Multicore processors. INTEL e AMD Roadmap.

PARTE TERZA: Hardware di un sistema di elaborazione digitale (Modulo 1 Certificazione EUCIP IT-Administrator)

bullet

Introduzione al PC

bullet

Scheda madre

bullet

BIOS

bullet

Processore

bullet

Memoria

bullet

Bus di comunicazione

bullet

Risorse di Sistema

bullet

Interfacce

bullet

Memoria di massa

bullet

Visualizzazione

bullet

Stampanti,

bullet

Hardware di rete

bullet

Alimentazione di sistema

bullet

Istallazione di nuovo hardware

bullet

Diagnosi e risoluzione dei problemi 

bullet

Evoluzione e tendenze

 

________________________________________________________________________________ 

Testi consigliati

Il libri di testo che verranno seguiti per la maggior parte degli argomenti del corso delle lezioni sono:

 

William Stallings

 Architettura e organizzazione dei calcolatori - Progetto e prestazioni

cura di Ottavio D'Antona

Pearson Education Italia - 2004

 ________________________________________________________________________________

Esercitazioni

Il corso di Architettura degli elaboratori é affiancato da una serie di esercitazioni in aula.

________________________________________________________________________________

Frequenza al corso

La frequenza al corso non é obbligatoria ma é ritenuta di importanza essenziale per l'apprendimento dei concetti fondamentali e per acquisire la necessaria manualità nella risoluzione degli esercizi che costituiranno le due prove scritte di esonero.

________________________________________________________________________________

Esame

L'esame consta (a) di una prova scritta, costituita da test e/o risoluzioni di esercizi, riguardanti gli argomenti trattati nel corso delle lezioni, e (b) una  prova orale.

________________________________________________________________________________

Ricevimento degli studenti

Giovedì, ore 10:30-12:30 (Macchia Romana 1° piano, stanza n.94b)