|  
 Docente/i:
    Giovanni Danese  
 Denominazione del corso: Calcolatori elettronici (mn) 
Codice del corso: 062117 
Corso di laurea: Ingegneria Informatica 
Settore scientifico disciplinare: ING-INF/05 
Crediti formativi: CFU 6 
Sito web del corso: n.d. 
 Obiettivi formativi specifici
Gli obiettivi primari del corso sono quelli di introdurre l’architettura dei microcalcolatori e dei microprocessori, data la loro grande diffusione in impianti e strumenti di qualunque genere, e di spiegarne il funzionamento attraverso il linguaggio assemblativo di programmazione. Il corso si propone di affrontare gli aspetti tecnici e architetturali evidenziando la relazione esistente fra l’architettura di un calcolatore e le tecnologie microelettroniche, da un lato, e l’organizzazione del software di base dall’altro. Le esercitazioni riguardano il linguaggio assemblativo di un microprocessore, la scrittura e la messa a punto di semplici programmi attraverso un idoneo ambiente di sviluppo e simulazione.
 
Programma del corso
 
Architettura dei calcolatori 
Introduzione. Schema a blocchi. Hardware, firmware, software. Componenti elettronici di un calcolatore. Unità di memoria e relativa gestione. Unità di ingresso/uscita e relativa gestione. Interruzione. Interconnessione fra unità funzionali: bus. Rappresentazione e codifica dell’informazione.
 
Architettura di una CPU 
Unità funzionali, registri, linguaggio di trasferimento fra registri; unità di controllo, microcomandi, microprogrammazione; unità di elaborazione.
 
Microprocessore e linguaggio assemblativo 
Microprocessori e sistemi costruiti su microprocessori. Modalità di indirizzamento e istruzioni di un linguaggio assemblativo. Gestione dei segnali di interruzione. Esempi di programmi scritti in linguaggio assemblativo.
 
L’aritmetica dei calcolatori 
Rappresentazione dei numeri binari con e senza segno. Operazioni aritmetiche e logiche elementari. L’architettura di una unità aritmetico-logica. 
L’ambiente di sviluppo dei progetti 
Assemblatore. Linker-Loader. Simulatore. Esempi di programmi scritti in linguaggio assemblativo e relativa messa a punto mediante l’uso di un simulatore. 
Prerequisiti
Devono essere noti gli argomenti trattati nei corsi Fondamenti di Informatica e Fondamenti di Informatica (laboratorio). 
Tipologia delle attività formative
Lezioni (ore/anno in aula): 40 
Esercitazioni (ore/anno in aula): 10 
Laboratori  (ore/anno in aula): 0 
Progetti  (ore/anno in aula): 0 
Materiale didattico consigliato
Presso la biblioteca della Facoltà di Ingegneria di Pavia e Mantova sono disponibili diverse copie della versione italiana della seconda edizione del testo consigliato, non più reperibile in libreria (Patterson D.A., Hennessy J.L.: Struttura, organizzazione e progetto dei calcolatori, Jackson libri, 1999, Milano).
Dall'autunno 2006 dovrebbe essere disponibile in libreria la traduzione della terza edizione inglese (titolo originale "Computer Organization & Design") edito da Zanichelli.
Informazioni di utilità relative all’insegnamento sono reperibili al sito http://gamma.unipv.it/
  
Patterson D.A., Hennessy J.L.. Computer Organization and Design: The Hardware/Software Interface, Third Edition. Morgan Kaufmann Publishers, Inc. 2004. 
  
Patterson David A., Hennessy John L.. Struttura e progetto dei calcolatori (con CD-ROM) - l'interfaccia hardware software. Zanichelli. Seconda edizione.
  
Modalità di verifica dell'apprendimento
Prove degli appelli d’esame - Le prove d’esame prevedono una prova di teoria in cui vengono proposti argomenti trattati nel corso delle lezioni che devono essere approfonditi dal candidato e una prova pratica in cui viene valutata la capacità di utilizzare gli strumenti di sviluppo di progetti messi a disposizione.
Prove in itinere. Valgono le seguenti regole:
1. la prima prova verte su argomenti di teoria trattati nel corso delle lezioni e vengono proposti al candidato argomenti oggetto di approfondimento;
2. la seconda prova verte su argomenti di teoria trattati nel corso delle lezioni nel periodo che intercorre fra la prima prova in itinere e la fine delle lezioni; vengono proposti al candidato argomenti oggetto di approfondimento. L’accesso a questa prova è vincolata al superamento della prima prova.
3. Nella prova pratica conclusiva viene valutata la capacità di utilizzare gli strumenti di sviluppo di progetti messi a disposizione. 
 
	 |