matite e gomma

Logo di Conformità WCAG-1 di Livello Tripla A, W3C-WAI Web Content Accessibility Guidelines 1.0

Validazione XHTML 1.0 Validazione CSS 3

Guida rapida all'insegnamento

Architettura degli elaboratori

Docente: Giuseppe Scollo

Università di Catania
Dipartimento di Matematica e Informatica
Corso di Laurea in Informatica, I livello, AA 2011-12

Indice

  1. Guida rapida all'insegnamento
  2. Organizzazione dell'insegnamento
  3. Obiettivi formativi
  4. Attività formative
  5. Modalità di valutazione
  6. Programma delle lezioni (1)
  7. Programma delle lezioni (2)
  8. Testi consigliati
  9. Testi per consultazione
  10. Simulatori
  11. Interazioni

Organizzazione dell'insegnamento

Obiettivi formativi

Acquisizione e sviluppo della capacità di:

Attività formative

L'organizzazione dell'insegnamento prevede 72 ore di lezione ed esercitazione (lunedì e mercoledì, aula 2, h. 10:00-13:00)

L'acquisizione di concetti e metodi nella disciplina è sostenuta da:

Modalità di valutazione

Il superamento dell'esame porta all'acquisizione di 9 crediti.

N.B. le stesse modalità di valutazione si applicano a studenti di edizioni precedenti dell'insegnamento, ma con il programma e i testi di riferimento dell'A.A. 2010-2011. La differenza rispetto alle precedenti modalità di valutazione sta dunque nella struttura della prova scritta, che ora consta soltanto di quesiti a risposta aperta. Ciò vale anche per l'esame da 6 CFU, per studenti dell'AA 2007-08, ma su un programma ridotto, che esclude dalla valutazione gli argomenti delle seguenti lezioni dell'AA 2010-2011: 6 (sono esclusi dalla valutazione solo gli argomenti delle note integrative 2), 14, da 19 a 22

Programma delle lezioni (1)

  1. Finalità e organizzazione dello studio.  Macchine da calcolo: cenni storici
  2. Macchine da calcolo: unità funzionali, architetture
  3. Aritmetica Maya. Rappresentazione binaria di numeri e caratteri
  4. Introduzione alle strutture algebriche, reticoli
  5. Algebre di Boole, logica della commutazione, porte e funzioni logiche
  6. Sintesi di reti combinatorie
    • Hamacher A.2-4
  7. Realizzazione di porte logiche, reti sequenziali, flip-flop
    • Hamacher A.5-6
  8. Registri, componenti di chip di memoria e del processore, FPGA, ALU
  9. Istruzioni macchina, architetture RISC e CISC
    • Hamacher 2.0-3, 2.A1
  10. Modi d'indirizzamento, linguaggio assemblativo, direttive di assemblatore
    • Hamacher 2.4-5, 2.A2-3
  11. Pile e sottoprogrammi, macroistruzioni
    • Hamacher 2.6-7, 2.A4
  12. Tipi di istruzioni, esempi di ISA reali e di programmi assemblativi
    • Hamacher 2.8-12.1, 2.13-14, 2.A5-6

Programma delle lezioni (2)

  1. Operazioni di I/O, controllo e servizio delle interruzioni
    • Hamacher 3.0-2.4, 3.A1
  2. I/O, interruzioni ed eccezioni in architetture reali
    • Hamacher 3.2.5-6, 3.A2-3
  3. Software di supporto. Struttura del processore, microarchitettura
    • Hamacher 4.0-6, 5.0-3
  4. Progettazione di microarchitetture cablate
    • Hamacher 5.4-6
  5. Microprogrammazione. Processori ad alte prestazioni, pipelining
  6. Tecniche predittive, processori superscalari, pipelining CISC
    • Hamacher 6.6.4-6.11
  7. Bus e circuiti d'interfaccia, standard d'interconnessione (cenni)
    • Hamacher 7.0-4 [+ Hamacher 7.5-7 + Sim. 7]
  8. Dispositivi di memoria principale, DMA, gerarchia delle memorie
    • Hamacher 8.0-5
  9. Memorie cache, miglioramento delle prestazioni
  10. Memoria secondaria. Circuiti efficienti per l'aritmetica binaria
    • Hamacher 8.10-11, 9.2-5.1
  11. Architetture di sistemi embedded
    • Hamacher 10.0-3.4, 10.5-8
  12. Elaborazione parallela, multiprocessori e reti di calcolo

Testi consigliati

Testo di riferimento

Architettura degli elaboratori, A.A. 2011/2012, basato su:
C. Hamacher, Z. Vranesic, S. Zaky & N. Manjikian :
Computer organization and embedded systems
Sixth edition, McGraw-Hill (2012)

Note integrative

0.  Cenni storici sulle macchine da calcolo (G. Scollo)

  1.   Aritmetica Maya (G. Scollo)
  2.   Strutture algebriche, algebre di Boole (G. Scollo)

Testi per consultazione

Libri di testo

A. S. Tanenbaum: Architettura dei calcolatori: un approccio strutturale
Quinta edizione, Edizione italiana, Pearson Prentice Hall (2006)

G. Bucci: Calcolatori elettronici - Architettura e organizzazione, McGraw-Hill (2009)

J.L. Hennessy , D.A. Patterson : Architettura degli elaboratori, Apogeo (2008)

D.A. Patterson, J.L. Hennessy : Struttura e progetto dei calcolatori, 3/e, Zanichelli (2010)

W. Stallings: Architettura e organizzazione dei calcolatori, 8/e, Pearson (2010)

Note integrative per consultazione

  1.  Macchine astratte e struttura a livelli dei computer moderni
        in: N. Fazio, A. Nicolosi e F. Barbanera, Introduzione alle Macchine Astratte
  2.  Attualità e pratica dell'aritmetica Maya, A. D'Agata, B. Radelli, G. Scollo, IDD'97.
  3.  La radice quadrata con l'aritmetica Maya, L.F. Magaña, Atti Convegno IILA, 2003.
  4.  Note introduttive sul livello logico-digitale, F. Barbanera, 2008.
  5.  IJVM Assembly Language Specification, D. Stone, 1999.
  6.  Note introduttive sul linguaggio Mic-1, F. Barbanera, 2008.
  7.  Introduction to OpenCL, D. Kanter, 2010.

altri materiali potranno essere indicati nel prosieguo dell'insegnamento (nel frattempo molti materiali sono reperibili presso il sito della precedente edizione dell'insegnamento)

Simulatori

  1.  Conversione della rappresentazione dei numeri su abaco Maya
        (v. 1.0, Java: R. Carrubba)
  2.  Operazioni aritmetiche additive su abaco Maya
        (v. 1.0, Java: S. Alparone, P. Catania)
  3.  Simulatore di ALU a 8 bit
        (v. 1.0, Flash: S. Lentini, G. Nicotra)
  4.  Simulatore di ALU a 8 bit (v. 1.0, Java: F. Vindigni)
  5.  Simulatore di PLA (v. 1.0, Python: A. Plebe)
  6.  Emulatore Mic-1, con traduttore MAL→Mic-1
        (v. 1.3, Java: M.R. Aiello, v. 1.2: D. Spitaleri, E. Torre, F. Ravì)
  7.  Arbitraggio del bus (Java: R. Capuano)
  8.  Simulatore di cache (v. 1.0, Java: P. Calanna, V. Tosto)
  9.  JCacheSim (v. 1.0, Java: A. Guarneri)
  10.  Simulatore CodeXor (v. 1.0, Java: L. Morreale, G. Valenti)
  11.  Logic Circuit Editor
         (v. 1.0, Java: M. Bellocchi, G. Carpinato, A. Marcellino)

v. anche altri simulatori dalla precedente edizione dell'insegnamento

Interazioni

Forum, Moodle, Galileo: cosa va dove?