Studiare

In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.

Queste informazioni sono destinate esclusivamente agli studenti e alle studentesse già iscritti a questo corso.
Se sei un nuovo studente interessato all'immatricolazione, trovi le informazioni sul percorso di studi alla pagina del corso:

Laurea in Bioinformatica - Immatricolazione dal 2025/2026
Le attività formative in ambito D o F comprendono gli insegnamenti impartiti presso l'Università di Verona o periodi di stage/tirocinio professionale.
Nella scelta delle attività di tipo D, gli studenti dovranno tener presente che in sede di approvazione si terrà conto della coerenza delle loro scelte con il progetto formativo del loro piano di studio e dell'adeguatezza delle motivazioni eventualmente fornite.

 
Anno accademico:
I semestre Dal 01/10/20 Al 29/01/21
anni Insegnamenti TAF Docente
Linguaggio Programmazione Matlab-Simulink D Bogdan Mihai Maris (Coordinatore)
II semestre Dal 01/03/21 Al 11/06/21
anni Insegnamenti TAF Docente
Introduzione alla stampa 3D D Franco Fummi (Coordinatore)
Linguaggio programmazione Python D Vittoria Cozza (Coordinatore)
Progettazione di componenti hardware su FPGA D Franco Fummi (Coordinatore)
Prototipizzazione con Arduino D Franco Fummi (Coordinatore)
Tutela dei beni immateriali (SW e invenzione) tra diritto industriale e diritto d’autore D Roberto Giacobazzi (Coordinatore)
Elenco degli insegnamenti con periodo non assegnato
anni Insegnamenti TAF Docente
Conoscenze per l'accesso: matematica D Rossana Capuani
Lab.: The fashion lab (1 cfu) D Maria Caterina Baruffi (Coordinatore)
Linguaggio Programmazione LaTeX D Enrico Gregorio (Coordinatore)

Codice insegnamento

4S008224

Crediti

6

Coordinatore

Tiziano Villa

Lingua di erogazione

Italiano

Settore Scientifico Disciplinare (SSD)

ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

L'insegnamento è organizzato come segue:

Teoria

Crediti

5

Periodo

I semestre

Laboratorio

Crediti

1

Periodo

I semestre

Obiettivi formativi

Obiettivo del corso è fornire le nozioni teoriche e pratiche per la realizzazione in forma digitale di un algoritmo nelle possibili alternative dalla costruzione di un dispositivo digitale dedicato all'utilizzo di un processore universale. Gli studenti capiranno i fondamenti dei meccanismi di funzionamento di un processore, del processo di traduzione di un programma da codice astratto a linguaggio macchina e della sua esecuzione; Al termine del corso, gli studenti saranno in grado di progettare architetture digitali dedicate per algo-ritmi semplici; tradurre programmi semplici da una descrizione ad alto livello in linguaggio macchina.

Programma

Introduzione all'architettura degli elaboratori.
Realizzazione di funzioni logiche elementari con circuiti a interruttore e porte logiche CMOS.
Tipologie di circuiti: digitali e analogici; combinatori e sequenziali; sequenziali sincroni e asincroni.

Introduzione alla logica combinatoria.
Assiomi e teoremi dell'algebra di Boole.
Riscrittura di espressioni con le regole dell'algebra di Boole.

Forme normali congiuntive e disgiuntive.
Funzioni incompletamente specificate.
Ipercubi Booleani e mappe di Karnaugh.

Minimizzazione logica usando le mappe di Karnaugh.
Implicanti, primi ed essenziali.
Calcolo degl'implicanti primi di funzioni a una o piu' uscite.
Minimizzazione esatta con il metodo di Quine-McCluskey.

Ritardi nei circuiti combinatori e circuiti oscillatori.
Logica regolare e programmabile per circuiti combinatori.
Selettori e deselettori.

Progettazione di circuiti combinatori dalla specifica in linguaggio naturale alla realizzazione in una tecnologia data.
Linguaggi di descrizione dei sistemi elettronici.

Aritmetica binaria con numeri negativi.
Condizioni di trabocco in complemento a due.
Rappresentazione dei numeri reali con aritmetica in virgola fissa e virgola mobile.

Addizionatori a propagazione di riporto, ad anticipo di riporto, a selezione di riporto.
Addizionatore binario modulo e segno e addizionatore di numeri in codifica BCD.
Sottrattore binario.
Unita' aritmetico-logica.

Introduzione alla logica a piu' livelli.
Conversione tra AND/OR, OR/AND e NAND, NOR.

Introduzione ai circuiti sequenziali.
Lucchetto ("latch").
Cella di memoria statica con coppia ad anello d'invertitori.
Cella di memoria SR con coppia di porte NOR (o NAND) incrociate.
Bistabili ("flip-flop").
Metodologie di temporarizzazione sincrona.

Registri di base. Registri a scorrimento. Contatori.
Analisi di registri a scorrimento e contatori dallo schema logico al grafo degli stati.
Sintesi di registri a scorrimento e contatori dal grafo degli stati allo schema logico.

Analisi e sintesi di macchine a stati finiti.
Macchine di Moore, Mealy, Mealy sincronizzate.
Trasformazione da macchine di Moore a macchine di Moore temporizzate.
Confronto tra macchine di Moore temporizzate e macchine di Mealy sincronizzate.

Minimizzazione degli stati di macchine a stati finiti.
Impatto della minimizzazione degli stati sulla minimizzazione logica.

Codifica degli stati di macchine a stati finiti.

Progettazione di circuiti sequenziali dalla specifica,
alla macchina a stati finiti, alla rappresentazione logica minimizzata.
Relazioni tra i percorsi critici e la frequenza/periodo di un circuito sequenziale.

Architettura di un processore.
Unita' di controllo e unita' esecutiva.
Ciclo di prelievo-decodifica-esecuzione di un'istruzione.
Tipi d'istruzioni. Registri fondamentali.

Interazione con le unita' d'ingresso-uscita.

Cicli di esecuzione delle operazioni di somma tra registri,
lettura/scrittura da/a memoria, salto (macchina di Mealy sincrona).

Macchine a stati finite estese.
Progettazione di processori dedicati: esempio del processore che realizza l'algoritmo di Euclide del Massimo Comun Divisore.

Introduzione all'architettura LC-3.

Bibliografia

Testi di riferimento
Attività Autore Titolo Casa editrice Anno ISBN Note
Teoria Randal E. Bryant, David R. O'Hallaron Computer Systems: A Programmer's Perspective (Edizione 3) Pearson; 3 edition (March 12, 2015) 2015 978-0134092669
Teoria R.Katz, G.Borriello Contemporary logic design (Edizione 2) Pearson Education International 2005 0-13-127830-4
Teoria Y.N. Patt, S.J. Patel Introduction to Computing Systems (Edizione 2) McGrawHill 2004 978-0-07-246750-5
Teoria Franco Fummi, Mariagiovanna Sami, Cristina Silvano Progettazione Digitale (Edizione 2) McGraw-Hill 2007 8838663521

Modalità d'esame

Le competenze sono verificate con una prova scritta di teoria e con una prova scritta o progetto di programmazione nel linguaggio macchina dell'architettura LC-3 per il laboratorio; il voto della prima contribuisce per i 5/6 del voto finale e quello della seconda per 1/6.

Le/gli studentesse/studenti con disabilità o disturbi specifici di apprendimento (DSA), che intendano richiedere l'adattamento della prova d'esame, devono seguire le indicazioni riportate QUI

Materiale e documenti