---++ Diario delle lezioni Per ogni lezione, in poche righe, saranno descritti gli argomenti affrontati. Con Rif, vi segnaliamo quali capitoli e paragrafi del libro di testo trattano gli argomenti del giorno. ---++++ martedì 25 febbraio Introduzione al corso. Il computer visto dall'alto. Il set di istruzioni. Prime istruzioni e loro rappresentazione in memoria. Rif: 2.1, 2.2., 2.3 e 2.4. ---++++ giovedì 27 febbraio Introduzione all'[[%ATTACHURL%/Intro.pdf][assembler MIPS]] e al [[%ATTACHURL%/SPIM.pdf][tool SPIM]]. Primi due programmini: somma di due numeri ([[%ATTACHURL%/somma-di-due-numeri-1.s][versione non interattiva]] e [[%ATTACHURL%/somma-di-due-numeri-2.s][versione interattiva]]). ---++++ venerdì 28 febbraio Istruzioni logiche, di shift e di salto condizionato. Formato interno. Rif. 2.5 e 2.6. ---++++ martedì 4 marzo Esercitazione. ---++++ giovedì 6 marzo Realizzazione di [[%ATTACHURL%/Istruzioni-in-SPIM.pdf][istruzioni di alto livello]] in assembler. Programma in assembler: [[%ATTACHURL%/somma-di-un-vettore.s][Somma degli elementi di un vettore]]. ---++++ venerdì 7 marzo Supporto hardware alla chiamata di procedure. Rif. 2.7. ---++++ martedì 11 marzo Esercitazione. ---++++ giovedì 13 marzo Programmi in assembler: [[%ATTACHURL%/palindroma.s][Test se una stringa è palindroma]]; [[%ATTACHURL%/media-naturali.s][Media di due numeri (con arrotondamento per difetto)]]; [[%ATTACHURL%/media.s][Media di due numeri (senza arrotondamento)]]. ---++++ venerdì 14 marzo ALU. Clock, latch e flip flop. Rif. B.5-B6 ([[%ATTACHURL%/App_B_-_The_basics_of_logic_design_(ALU).pdf][App_B_-_The_basics_of_logic_design_(ALU).pdf]]) e B.7-B.8 ([[%ATTACHURL%/App_B_-_The_basics_of_logic_design_(clock_e_memoria).pdf][App_B_-_The_basics_of_logic_design_(clock_e_memoria).pdf]]). ---++++ martedì 18 marzo 2007 Il processore: datapath e controllo. Una semplice implementazione a un clock per istruzione. Rif. 5.1, 5.2, 5.3 e 5.4. ---++++ giovedì 27 marzo Programmi sui vettori: [[%ATTACHURL%/rimpiazzavocali.s][Sostituzione con '*' di tutte le vocali in una data stringa]]; [[%ATTACHURL%/elem_pari.s][Richiesta di un vettore all'utente e stampa la somma degli elementi in posizione pari]]. ---++++ venerdì 28 marzo 2007 Il processore: datapath e controllo. Una semplice implementazione a un clock per istruzione. Rif. 5.1, 5.2, 5.3 e 5.4. Esercitazione: quali sono i segnali di controllo per le istruzioni add, sw, beq, j nell'architettura in questa [[%ATTACHURL%/17Figure_5.24.eps][figura]] (figura 5.24, capitolo 5 del libro, %RED%Attenzione%FINE%, la figura contiene un errore, se volete vedere come correggerlo, guardate [[%ATTACHURL%/17Figure_5.24.jpg][qui]]). ---+++ martedì 1 aprile Una implementazione multiciclo: il datapath. Ref. 5.5. ---++++ giovedì 3 aprile Gestione di matrici: somma degli elementi ([[%ATTACHURL%/stampa-matrice1.s][soluzione più vicina al codice di alto livello]]; [[%ATTACHURL%/stampa-matrice2.s][soluzione più efficiente]]). ---++++ venerdì 4 aprile Una implementazione multiciclo: il controllo. Ref. 5.5. ---++++ martedì 8 aprile Una implementazione multiciclo: il controllo. Ref. 5.5. Esercitazione, implementare sulla architettura multiciclo l'istruzione _jr_. ---++++ giovedì 10 aprile Le eccezioni. Ref 5.6. Esercitazione, implementare sulla architettura multiciclo l'istruzione _jal_. ---++++ martedì 15 aprile Esercizi su matrici: [[%ATTACHURL%/trasposta.s][calcolo della trasposta ]] e [[%ATTACHURL%/matrice_stampa_diag.s][stampa della diagonale di una matrice quadrata]]. ---++++ giovedì 17 aprile Esercizi di preparazione all'esonero: [[%ATTACHURL%/stampa-triang-inf.s][somma e stampa degli elementi della triangolare inferiore di una matrice]] e [[%ATTACHURL%/duplicati-in-un-vettore.s][conteggio degli elementi non duplicati in un vettore]]. ---++++ martedì 29 aprile Correzione esonero di teoria. ---++++ martedì 6 maggio Pipelining e hazard. Ref. 6.1. ---++++ giovedì 8 maggio Realizzazione di [[%ATTACHURL%/Funzioni.pdf][funzioni]] e funzioni ricorsive in assembler; esempio del [[%ATTACHURL%/factCorretto.s][fattoriale]]. ---++++ martedì 13 maggio Pipelining: Implementazione. ---++++ giovedì 15 maggio Semplice programma di stampa di una [[%ATTACHURL%/struct.s][struttura C]]; calcolo dei numeri di Fibonacci ([[%ATTACHURL%/fibonacci1.s][prima versione]], più intuitiva ma inefficiente, e [[%ATTACHURL%/fibonacci2.s][seconda versione]], più efficiente ma meno ovvia). ---++++ venerdì 16 maggio Pipelining: Forwarding e branch hazard. Ref. 6.1. ---++++ martedì 20 maggio Cache. Rif. 7.1-7.2. ---++++ giovedì 22 maggio Esempi di funzioni ricorsive: creazione e stampa di [[%ATTACHURL%/liste.s][liste di interi]]; bubble sort ([[%ATTACHURL%/sort.s][prima versione]]; [[%ATTACHURL%/sort-tail-recursion.s][seconda versione]], con tail recursion). ---++++ venerdì 23 maggio Cache: Performance e multi-way. ---++++ martedì 27 maggio I/O. Rif 8.1, 8.2, 8.4, 8.5 (riassunto di questi 4 paragrafi). ---++++ giovedì 29 maggio Seminario Ibm. ---++++ venerdì 30 maggio Seminario Ibm. ---++++ martedì 3 giugno Simulazione d'esame: [[%ATTACHURL%/simulazione2.pdf][simulazione2.pdf]]. ---++++ giovedì 5 giugno Funzioni mutuamente ricorsive: [[%ATTACHURL%/mutuaRicorsione1.s][primo esercizio]] e [[%ATTACHURL%/mutuaRicorsione2.s][secondo esercizio]].
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
eps
17Figure_5.24.eps
r1
manage
129.9 K
2008-03-28 - 16:32
AlessandroMei
figura
jpg
17Figure_5.24.jpg
r1
manage
1094.7 K
2008-03-31 - 12:33
AlessandroMei
qui
pdf
App_B_-_The_basics_of_logic_design_(ALU).pdf
r1
manage
206.8 K
2008-03-14 - 19:55
AlessandroMei
pdf
App_B_-_The_basics_of_logic_design_(clock_e_memoria).pdf
r1
manage
171.6 K
2008-03-14 - 19:56
AlessandroMei
pdf
Funzioni.pdf
r1
manage
212.8 K
2008-05-08 - 10:57
DanieleGorla
pdf
Intro.pdf
r1
manage
298.3 K
2008-03-05 - 11:28
DanieleGorla
pdf
Istruzioni-in-SPIM.pdf
r1
manage
191.9 K
2008-03-06 - 09:03
DanieleGorla
pdf
SPIM-instructions.pdf
r1
manage
249.2 K
2008-04-21 - 06:49
DanieleGorla
pdf
SPIM.pdf
r1
manage
562.7 K
2008-03-05 - 11:28
DanieleGorla
s
duplicati-in-un-vettore.s
r1
manage
1.0 K
2008-04-17 - 10:24
DanieleGorla
s
elem_pari.s
r1
manage
1.8 K
2008-03-27 - 12:35
DanieleGorla
s
factCorretto.s
r1
manage
0.5 K
2008-05-08 - 10:57
DanieleGorla
s
fibonacci1.s
r1
manage
1.2 K
2008-05-14 - 10:50
DanieleGorla
s
fibonacci2.s
r1
manage
1.1 K
2008-05-14 - 10:50
DanieleGorla
s
liste.s
r1
manage
1.2 K
2008-05-22 - 10:43
DanieleGorla
s
matrice_stampa_diag.s
r1
manage
1.9 K
2008-04-15 - 11:07
DanieleGorla
s
media-naturali.s
r1
manage
0.9 K
2008-03-13 - 10:22
DanieleGorla
s
media.s
r1
manage
1.5 K
2008-03-13 - 10:22
DanieleGorla
s
mutuaRicorsione1.s
r1
manage
1.5 K
2008-06-05 - 07:53
DanieleGorla
s
mutuaRicorsione2.s
r1
manage
1.6 K
2008-06-05 - 07:53
DanieleGorla
s
palindroma.s
r1
manage
1.9 K
2008-03-13 - 10:22
DanieleGorla
s
rimpiazzavocali.s
r1
manage
2.6 K
2008-03-27 - 12:35
DanieleGorla
s
somma-di-due-numeri-1.s
r1
manage
0.1 K
2008-03-05 - 11:29
DanieleGorla
s
somma-di-due-numeri-2.s
r1
manage
0.8 K
2008-03-05 - 11:29
DanieleGorla
s
somma-di-un-vettore.s
r1
manage
1.3 K
2008-03-06 - 09:22
DanieleGorla
s
sort-tail-recursion.s
r1
manage
1.7 K
2008-05-22 - 10:43
DanieleGorla
s
sort.s
r1
manage
1.6 K
2008-05-22 - 10:43
DanieleGorla
s
stampa-matrice1.s
r1
manage
1.3 K
2008-04-03 - 11:45
DanieleGorla
s
stampa-matrice2.s
r1
manage
1.0 K
2008-04-03 - 11:45
DanieleGorla
s
stampa-triang-inf.s
r1
manage
1.0 K
2008-04-17 - 10:24
DanieleGorla
s
struct.s
r1
manage
2.0 K
2008-05-14 - 10:50
DanieleGorla
s
trasposta.s
r1
manage
1.2 K
2008-04-15 - 11:07
DanieleGorla
This topic: Architetture2/PZ
>
WebHome
>
DiarioLezioni0708
Topic revision: r28 - 2008-07-02 - AlessandroMei
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback