Architetture degli Elaboratori I, Laboratorio A.A. 2019/2020

Corso di Laurea: triennale in Informatica
Ricevimento studenti: concordare appuntamento via e-mail (stanza 3010 terzo piano dipartimento di Informatica, via Celoria 18, Milano).
Docente: Matteo Re
Email: matteo.re (at) unimi.it


In questa pagina troverete il materiale didattico (slide, soluzioni degli esercizi,...) utilizzato durante le lezioni. I file delle slide verranno caricati il giorno successivo ad ogni lezione mentre le soluzioni degli esercizi saranno rese disponibili nella lezione successiva, dopo la discussione delle soluzioni proposte da voi. Per problemi inerenti agli esercizi potete contattarmi tramite email. Le lezioni si terranno ogni venerdi' 13.30-15.30 aula OMEGA presso il dipartimento di Informatica. Variazioni a questo schema verrano comunicate mediante una mailing-list dedicata al corso e mediante la sezione Avvisi di questa pagina web.



Modalita' d'esame:.

Slide lezioni :

Lezione 1 :
Codifica dell'informazione numerica: Rappresentazione dei numeri: notazione posizionale. Da base B a base decimale. Da base decimale a base B. Da base B = 2 a base B = 16 e vice versa. Somma di interi non negativi. Interi: complemento a 2. Somma di interi. Overflow. Somma di interi: esempi. Interi: complemento a 2. Numeri frazionari. Rappresentazione dei numeri frazionari. Virgola fissa e virgola mobile: confronto.Approssimare i numeri reali. Numeri reali: lo standard IEEE 754.

Lezione 2 :
Introduzione alla progettazione digitale in Logisim. Realizzazione di un semplice circuito di esempio. Area di lavoro di Logisim. Barra degli strumenti, libreria componenti, pannello proprieta' componenti. Simulazione ed analisi di circuiti. Operatori logici e proprieta' di utilizzo frequente. Esercizi. Tabella di verita'. Conversione di funzioni logiche in circuiti. Equivalenza di funzioni logiche. Test mediante porta XNOR. Porte universali. Utilizzo di porta NAND per realizzare NOT, OR e NOR. Esercizi.

  1. Slide Lab 2
  2. Operatori logici e loro propieta'

Lezione 3 (8/11/2019) :
Forme canoniche. Prima e seconda forma canonica. Determinazione forma canonica somma di prodotti (SOP) e prodotto di somme (POS) a partire da forma algebrica, tabella di verita' e circuito. Esercizi. Cammino critico. Esercizi. Introduzione al processo di semplificazione di circuiti. Esercizi.

  1. Slide Lab 3
  2. es0
  3. es1_a
  4. es1_b_confronto
  5. es1_c_pos
  6. es2_a
  7. es2_a_orig portenegate
  8. es2_b_sop
  9. es2_b_sop porte negate
  10. es2_b semplificato
  11. es3
  12. es4

Lezione 4 (15/11/19) :
Circuiti combinatori notevoli e aritmetici. Decodificatore a 2 bit. Utilizzo del decodificatore a 2 bit per l'implementazione di un multiplexer a 4 vie. Creazione e riutilizzo di elementi di libreria in Logisim. Addizionatore ad 1 bit senza riporto (Half adder). Addizionatore ad 1 bit con riporto in ingresso (Full adder). Costruzione di un full adder a partire da half adder. Realizzazione di addizionatore a 4 bit e analisi del cammino critico per somma e uscita riporto. Realizzazione di circuito per conversioni in complemento a 2. Circuito per operazioni multiple (somma e sottrazione) con bit di selezione dell'operazione. Rilevazione overflow.

  1. Slide Lab 4

Lezione X (22/11/19) :
Macchine a stati finiti (MSF). Esercizi sintesi macchine a stati finiti di Moore. Dal testo dell'esercizio alla definizione degli insiemi dei valori di input e output. Schema blackbox. State Transition Graph (STG). State Transition Table (STT). STT codificata. Sintesi MSF: funzionidi uscita e funzioni di stato prossimo. Circuito.

  1. Macchine a stati finiti

Lezione 5 (29/11/19) :
Moltiplicazione e ALU. Ripasso. Half adder e Full adder. Creazione di componenti riutilizzabili in Logisim. Aspetto dei componenti creati dall'utente e relazione con il loro riutilizzo in circuiti piu' complessi. Moltiplicazione binaria. Prodotti parziali. Somma di prodotti parziali. Implementazione in Logisim. Arithmetic Logic Unit (ALU). Creazione di un componente 1bit ALU. Utilizzo del componente 1bit ALU per la costruzione din una 8bit ALU.

  1. Slide lezione 5
  2. circuito Moltiplicatore a 3 bit
  3. ALU

Lezione 6 (06/12/19) :
Circuiti sequenziali. Ripasso. Bistabili. Clock. Architetture sincrone e asincrone. Bistabili sensibili al livello e al fronte. Flip-Flop. Registri (PIPO, SISO, SIPO).

  1. Slide lezione 6
  2. circuiti
  3. LFSR

Lezione 8 (13/12/19) :
Macchine a stati finiti (MSF) II . Sintesi ed implementazione di circuito per la gestione di luci semaforiche. Breve introduzione alle mappe di Karnaugh.

  1. Slide lezione 8 .
  2. Circuito semaforo

Lezione 9 (20/12/19) :
Memorie, parte II : registri. Tipi di registro. Realizzazione di diversi tipi di registro. Esempio di retroazione: linear feedback shift registers (LFSR).

  1. Slide lezione 9
  2. esempi circuiti LFSR

Lezione 10 (10/01/20) :
Simulazione CPU MIPS in Logisim. Esempi componenti fondamentali: RAM, Register File, ALU. Librerie esterne cnotenenti componenti CPU MIPS. Realizzazione register file utilizzando unicamente componenti della libreria standard di Logisim.

  1. Slide lezione 10
  2. circuiti
  3. libreria

Lezione 11 (17/01/20) :
Simulazione esame - Turno C.

  1. Simulazione esame


Calendario per la consegna dei progetti :


Avvisi :

Materiale aggiuntivo usato a lezione :

In questa sezione del sito verranno caricati, di volta in volta, i file aggiuntivi necessari per completare gli esercizi proposti a lezione. Fate riferimento al contenuto della sezione Avvisi per ulteriori dettagli riguardanti le modalita' di salvataggio dei file ed il loro caricamento in LogiSim.

  1. Esempi svolti IEEE 754
    1. Esempi conversioni IEEE 754
    2. Addizione e sottrazione IEEE 754
  2. Materiale LAB 4 (file da caricare in LogiSIM) :
    1. Esercizio 1
    2. Esercizio 1 decodificatore
    3. Esercizio 2
    4. Esercizio 3 a
    5. Esercizio 3
    6. Esercizio 3 full adder via half adder
    7. Esercizio 4
    8. Esercizio 4 half adder
    9. Esercizio 5
    10. Esercizio 5 corretto
    11. Esercizio 6
    12. Esercizio 7
    13. Esercizio 7 overflow