Lezione | Data | Slide / Riferimenti | Argomenti |
1 | 10/03/2014 |
|
Introduzione al Corso. Brevi cenni storici sulla evoluzione dei calcolatori elettronici. Primi cenni introduttivi sulla architettura di un calcolatore elettronico. |
2 | 12/03/2014 |
|
Informazione e sua rappresentazione. Codici a lunghezza fissa ed a lunghezza variabile. Codici binari. Esempi di codici. Codifica indiretta. |
3 | 14/03/2014 | Rappresentazione posizionale dei numeri. Sistemi binario, ottale ed esadecimale. Conversioni da base 2 a base 8 o 16 (e viceversa). Conversione da base 10 a base 2 per numeri interi (divisioni successive). Conversione da base 10 a base 2 per numeri frazionari (moltiplicazioni successive). Considerazioni sulla periodicità della parte frazionaria. Rappresentazione di numeri naturali. |
|
4 | 17/03/2014 |
|
Rappresentazione di numeri interi relativi: rappresentazione in segno e modulo ed in complementi. Rappresentazione in complementi alla base. Funzione resto-modulo-M. Algoritmi di complementazione. Estensione della rappresentazione. Aritmetica in complementi. Overflow. Rappresentazione in complementi diminuiti. Rappresentazione per eccessi. |
5 | 19/03/2014 | Rappresentazione di numeri in virgola fissa e mobile. Lo standard IEEE 754. Codifica di caratteri. Il codice ASCII. Algebra di Boole. Proprietà fondamentali. |
|
6 | 21/03/2014 |
|
Definizione di Algebra di Boole come reticolo. Teorema di De Morgan ed altre proprietà dell'algebra di Boole. Modelli di algebre di Boole: algebra delle proposizioni, algebra degli insiemi ed algebra dei circuiti. Porte logiche elementari e loro composizione. |
7 | 24/03/2014 |
|
Funzioni booleane di 2 variabili. Mintermini e maxtermini. Forma normale di tipo P (SOP) e di tipo S (POS) di una funzione booleana. |
8 | 26/03/2014 |
|
Implicanti di una funzione. Implicanti primi. Mappe di Karnaugh. Rappresentazione di clausole e fattori elementari sulle Mappe di Karnaugh. |
9 | 28/03/2014 |
|
Introduzione al problema della minimizzazione di funzioni booleane. Metriche per la misura del costo di una funzione: costo di porte, costo di letterali, costo di ingressi. Ricerca dei primi implicanti ed individuazione dei primi implicanti essenziali sulle mappe di Karnaugh. |
10 | 31/03/2014 |
|
Minimizzazione di funzioni booleane. Ricerca dei primi implicanti sulle mappe di Karnaugh. Problema di copertura: matrice di copertura, metodo delle righe e colonne dominanti. |
11 | 02/04/2014 |
|
Introduzione all'architettura del calcolatore. Il processore. Modello ad accumulatore. Modello a registri generali. Ciclo del processore. |
12 | 04/04/2014 | Progetto di macchine combinatorie. Funzioni incompletamente specificate. Minimizzazione di funzioni incompletamente specificate con le mappe di Karnaugh e matrice di copertura. Funzioni NAND e NOR. Proprietà di NAND e NOR. Forme NAND e NOR di una funzione booleana. |
|
13 | 07/04/2014 |
|
Progetto di un transcodificatore per display a 7 segmenti. Macchine combinatorie fondamentali: addizionatori binari. Half e full adder. |
14 | 09/04/2014 | La memoria centrale. Interfacciamento CPU-memoria. Processori big-endian e little-endian. Primi cenni sul processore MC68000: modello di programmazione e codifica delle istruzioni. Introduzione al linguaggio macchina. Classi di istruzioni l/m. |
|
15 | 11/04/2014 | Addizionatore binario parallelo a propagazione del riporto. Addizionatore binario con anticipo del riporto: rete di carry look-ahead. Macchine combinatorie fondamentali: encoder e decoder, multiplexer e demultiplexer. |
|
16 | 14/04/2014 |
|
Automi a stati finiti. Modelli di Moore e di Mealy. Rappresentazione di ASF mediante tabelle e mediante grafi. Macchine sequenziali. Def. di stato stabile sotto un dato ingresso. Macchine sequenziali asincrone. Modello fondamentale. |
17 | 16/04/2014 |
|
Introduzione al linguaggio assembly. Formato delle istruzioni in assembly. Etichette. Direttive di assemblaggio. Il programma assemblatore. Tabella dei simboli. Riferimenti in avanti ed assemblatore a 2 passi. |
18 | 28/04/2014 |
|
Macchine sequenziali asincrone. Modello fondamentale. Il flip flop RS fondamentale come macchina asincrona. Circuito a NOR ed a NAND: analisi. Problemi di tempificazione del flip-flop RS fondamentale. Flip-flop RS abilitato latch. Flip-flop D latch. |
19 | 30/04/2014 |
|
Primi esempi di programmi assembly per il processore MC68000. |
20 | 05/05/2014 |
|
Tempificazione dei flip-flop: latch ed edge-triggered. Flip-flop RS e D edge-triggered. Flip-flop JK e T. |
21 | 07/05/2014 |
|
Macchine sequenziali sincrone. Tabelle di transizione e schema realizzativo. Metodologia di progetto delle reti sincrone. Progetto di un contatore sincrono mod-8 con FF e.t. di tipo D. |
22 | 09/05/2014 |
|
Esercizi di programmazione assembly. AsimTool. Ambiente di simulazione Asim. |
23 | 12/05/2014 |
Lezione 23 (parte 2): |
Progetto di un contatore sincrono mod-8 con FF e.t. di tipo JK. Ingressi di posizionamento asincroni dei flip-flop commerciali. Contatori sincroni: ingressi di reset e precaricamento sia sincrono che asincrono. Macchine combinatorie: reti universali. Mux come generatore di funzioni. |
24 | 14/05/2014 |
|
Gestione degli indirizzi nel processore MC68000: aliasing degli indirizzi. Modi di indirizzamento: diretto a registro, assoluto ed immediato. Modi di indirizzamento: indiretto, indiretto con predecremento, indiretto con postincremento. Manuale assembler del processore MC68000. |
25 | 16/05/2014 |
|
Riduzione del modulo di un contatore mediante precaricamento o reset sincrono. Contatori sincroni composti. Contatore mod-256. Contatore mod-24. Contatori asincroni (ripple counter). |
26 | 19/05/2014 |
|
Concetto di equivalenza e compatibilità tra stati. Minimizzazione degli stati con il metodo di Paull-Unger per macchine completamente specificate. Riconoscitore di codice 8421. |
27 | 21/05/2014 |
|
Istruzioni aritmetiche, di comparazione e salto del processore MC68000. Esercizi di programmazione assembler MC68000. |
28 | 23/05/2014 |
|
Progetto di un riconoscitore di sequenza 1010 sincrono. Shift register. Contatori di Johnson. |
29 | 26/05/2014 |
Codifica in assembler di tipici costrutti di controllo del flusso di programma. MC68000: modi di indirizzamento avanzati: Indirect with displacement, Indirect with displacement and index. Gestione dei sottoprogrammi in linguaggio macchina: problema del collegamento e del passaggio dei parametri. Uso dello stack per il collegamento. |
|
30 | 28/05/2014 |
|
Gestione dei sottoprogrammi in linguaggio macchina: passaggio dei parametri.
Uso dello stack per l'allocazione del record di attivazione. Frame pointer. MC68000: istruzioni JSR, RTS, LINK, UNLK, MOVEM. |
31 | 30/05/2014 |
|
Il sistema delle interruzioni. Il sistema delle interruzioni del processore MC68000. Interruzioni vettorizzate ed autovettorizzate. Istruzione RTE. Interrupt, eccezioni e trap. |
32 | 04/06/2014 |
Memorie RAM. Schemi di selezione. Semiselezione. Tempo di accesse e tempo di ciclo. Collegamenti di chip di memoria per aumentare la capacità. Architettura interna della CPU. Cenni al ruolo della unità di controllo della CPU. |
|
33 | 06/06/2014 |
|
Il sistema di I/O. I/O memory mapped vs. I/O isolato. Sincronizzazione del colloquio CPU-periferica: I/O programmato, I/O con interruzioni. Esempio di driver con I/O programmato ed handskake. Interfacce con capacità DMA (cenni). |
34 | 11/06/2014 |
|
Esercizi di programmazione assembly. Esercizio "toupper.a68". Altri esercizi di progetto di macchine sequenziali. |
35 | 13/06/2014 |
|
Esercizi di programmazione assembly. Altri esercizi di progetto di macchine sequenziali. |
![]() |
|
O IN ALTERNATIVA: | ![]() |
|
![]() |
|
|||
![]() |
|
Ultimo aggiornamento: 16 giugno 2014