03716 - CALCOLATORI ELETTRONICI

Anno Accademico 2022/2023

  • Docente: Luca Roffia
  • Crediti formativi: 9
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Moduli: Luca Roffia (Modulo 1) Luca Roffia (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Cesena
  • Corso: Laurea in Ingegneria elettronica (cod. 5834)

    Valido anche per Laurea in Ingegneria biomedica (cod. 9082)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente dispone del metodo e degli strumenti con cui affrontare con consapevolezza il progetto di semplici sistemi a microprocessore. Lo studente impara ad analizzare e fare la sintesi di reti logiche combinatorie e sequenziali (sincrone e asincrone). Queste conoscenze costituiscono la base per lo studio delle architetture dei moderni calcolatori elettronici, delle quali lo studente ne apprende i principi generali di funzionamento, l'impatto sulle prestazioni, il progetto dell'unità di elaborazione e la mutua relazione esistente tra hardware e software. Al di là dei contenuti specifici, lo studente acquisisce una delle principali abilità che l'industria chiede oggi a un ingegnere dell'informazione, e cioè la capacità di gestire la complessità di un progetto, abituandolo alla pratica dell'astrazione, intesa come attività volta a rappresentare in modo efficace e gerarchico l'essenza del sistema di elaborazione.

Contenuti

L'insegnamento è suddiviso in tre parte strettamente correlate: la prima è propedeutica alle successive due e la seconda è propedeutica alla terza.

Primo parte: Codifica binaria dell'informazione. Analisi e sintesi di reti logiche combinatorie. Modello della macchina a stati finiti. Analisi e sintesi di reti sequenziali asincrone e sincrone.

Seconda parte: Principi di funzionamento e architettura dell'hardware dei calcolatori. Macchina di Von Neumann. Instruction Set Architecture (ISA) e struttura interna di una CPU (unità di controllo e data path). Architetture R-R (RISC) e Architetture M-R (CISC). Misura delle prestazioni. Impatto dell'architettura sulla prestazioni. Studio dettagliato della CPU RISC "DLX" con data path strettamente sequenziale.

Terza parte: Introduzione al progetto di sistemi a microprocessore. Indirizzamento della memoria e dei dispositivi di Input/Output. I principali dispositivi di Input/Output e l'interrupt controller. Gestione dell'Input/Output (polling e interrupt) sia dal punto di vista hardware sia software. Progetto di semplici sistemi a microprocessore.

Testi/Bibliografia

R. Laschi, M. Prandini: "Appunti di Reti Logiche", Esculapio 2007
Hennessy Patterson: "Computer architecture: a quantitative approach" - Morgan Kaufmann pub. Inc.
Giacomo Bucci: “Architetture dei calcolatori elettronici” McGraw-Hill

Metodi didattici

Verranno inizialmente introdotti i principi di funzionamento di un calcolatore e con un approccio "top-down" si illustrerà introduttivamente la struttura dell'hardware di un calcolatore.
Verranno quindi studiate le reti logiche, modello di tutti i sistemi digitali tra cui i calcolatri elettronici e successivamente con un procedimento "bottom-up" si giungerà a delineare la struttura interna di una CPU. Si mostrerà come la sua struttura sia legata all'architettura del suo set di istruzioni, e, infine, si mostrerà come la CPU interagisce con gli altri blocchi funzionali del calcolatore (memoria e interfacce di ingresso/uscita).

Modalità di verifica e valutazione dell'apprendimento

La prova d'esame mira a verificare:

  1. la comprensione dei principi fondanti e dei modelli alla base della progettazione digitale (codifica delle informazioni, algebra della commutazione, automi a stati finiti, schemi logici, analisi e sintesi di reti logiche combinatorie e sequenziali sincrone)
  2. la comprensione del filo conduttore che porta da semplici reti combinatorie e sequenziali sincrone alla struttura del data path e dell'unità di controllo di una CPU (in quanto "macchina programmabile a esecuzione sequenziale e programma memorizzato")
  3. la conoscenza e il progetto di un semplice Set di Istruzioni (ISA RISC del DLX)
  4. la capacità di interfacciare una CPU a semplici dispositivi di I/O e alla relativa gestione con semplici programmi a interrupt o a polling.

A tal fine l'esame consiste in una prova scritta da svolgere sulla piattaforma EOL (https://eol.unibo.it/). La prova viene valutata automaticamente da EOL ed al termine della prova stessa lo studente conoscerà il punteggio ottenuto e potrà vedere la soluzione. Su Virtuale sarà invece predisposto un forum attraverso il quale gli studenti potranno riportare dubbi e domande relativamente al risultato ottenuto e potranno chiedere una rivalutazione manuale della prova da parte del docente.

Trattandosi di una prova a carattere progettuale, durante l'esame lo studente può consultare tutto il materiale che desidera.

Non è prevista alcuna prova orale.

Strumenti a supporto della didattica

Le lezioni verrano svolte utilizzando slides disponibili sul sito Virtuale del corso. Dal sito Virtuale si può accedere ad una bacheca, all'interno della quale vengono esposti avvisi nonchè testi e soluzioni dei temi d'esame. Vengono inoltre usati strumenti come i forum e i sondaggi/questionari.

Su EOL saranno invece disponibili prove d'esame passate che possono essere usati ai fini di una autovalutazione.

Allo scopo di capire meglio gli argomenti presentati, verranno svolte delle esercitazioni usando lo strumento open-source LogiSim.

 

Orario di ricevimento

Consulta il sito web di Luca Roffia

SDGs

Istruzione di qualità

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.