La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Modello di Von Neumann ARCHITETTURA DEL CALCOLATORE.

Presentazioni simili


Presentazione sul tema: "Modello di Von Neumann ARCHITETTURA DEL CALCOLATORE."— Transcript della presentazione:

1 Modello di Von Neumann ARCHITETTURA DEL CALCOLATORE

2 Sommario –Cenni di algebra di Boole –Struttura CPU MEMORIA CENTRALE INTERFACCIA DI I/O BUS –Hardware e software

3 Cenni di algebra di Boole Il bit Premettiamo che per bit si intende un simbolo che può assumere solo due valori, spesso indicati sulla carta : con 0/1, vero/falso, on/off, mentre a livello circuitale dal livello di tensione 0V oppure 5V, corrente 0 mA oppure 20 mA

4 Cenni di algebra di Boole Oggetti rappresentabili Con 1 bit si possono individuare due oggetti (0, 1), con 2 bit 4 oggetti (00, 01, 10, 11) con n bit 2 n oggetti.

5 Cenni di algebra di Boole registro Dal punto di vista realizzativo, un dispositivo elettronico in grado di memorizzare n bit si dice registro a n bit. Es. registro ad 8 bit:

6 Cenni di algebra di Boole Gruppi di bit e multipli 8 bit = 1 Byte Il bit è abbreviato con la b il Byte con la B 1 KB = 1 KByte = 2 10 Byte = 1024 Byte 1 MB = 2 20 Byte = circa Byte 1 GB = 2 30 Byte = circa Byte 1 TB = 2 40 Byte = circa B 1 Kb = 1 Kbit = 2 10 bit = 1024 bit ….

7 Struttura John Von Neumann Negli anni Cinquanta John Von Neumann ideò un computer: molto semplice se paragonato a quelli attuali decisamente innovativo all'epoca, chiamato Macchina di Von Neumann

8 Struttura Descrizione Componenti 1.Esecutore (CPU) 2.Memoria 3.Interfacce di I/O 4.BUS

9 Struttura Descrizione Esecutore Memoria Si tratta di una macchina dotata di un esecutore (la CPU Central Processing Unit) in grado di: scandire (leggere, capire ed eseguire) un elenco di istruzioni (programmi) e accedere a dati memorizzati in un organo di memoria: MC memoria centrale;

10 Struttura Descrizione Esecutore I/O l'esecutore è in grado anche di scambiare dati con delle locazioni di memoria presenti su particolari dispositivi, dette interfacce di I/O (Input/Output), che provvedono ai trasferimenti con i dispositivi periferici che consentono lo scambio di informazioni con l'esterno, quali tastiera, monitor e stampanti.

11 Struttura Descrizione istruzioni macchina In relazione alla specifica realizzazione della CPU, è definito un insieme di sequenze binarie (set istruzioni), normalmente di lunghezza multipla di 8 bit, dette istruzioni macchina, che specificano precise azioni da eseguire. Esempio set istruzioni – IN leggere un valore da tastiera – OUT inviare un valore sul monitor – ADD sommare il contenuto dei registri A e B – SET B copiare il valore contenuto in A in B

12 Struttura Descrizione bus CPU, MC, interfacce di I/O sono collegate attraverso un sistema strutturato di conduttori detto bus

13 Struttura Schema

14 Struttura Evoluzione L'evoluzione tecnologica e quella delle architetture non hanno mantenuto lo stesso passo. Attualmente ci troviamo nella situazione in cui la quasi totalità dei sistemi di elaborazione ha un tipo di architettura che fa riferimento a quella di Von Neumann

15 Struttura Esempio Vediamo ora, con un semplice esempio, di capire come funziona la macchina di Von Neumann. Ci occuperemo solo della parte di esecuzione

16 Struttura Esempio Voglio che la mia macchina di Von Neumann esegua la somma di due numeri prelevati da tastiera e visualizzi a video risultato Devo: 1.predisporre un algoritmo risolutivo - programmatore 2.tradurlo in un linguaggio (sequenza di istruzioni) comprensibile al mio esecutore (CPU) – programma compilatore 3.caricarlo in memoria centrale (MC) – prg.caricatore 4.farlo eseguire allesecutore - CPU

17 Struttura Esempio Soluzione p.to 3-4 Uso Simulazione I punti 3 (caricamento) e 4 (esecuzione) li simuleremo tramite il modello riportato nelle slide che seguono

18 Struttura Esempio Soluzione p.to 3 Caricamento

19 Struttura Esempio Soluzione p.to 4 Esecuzione IN

20 Struttura Esempio Soluzione p.to 4 Esecuzione SET B

21 Struttura Esempio Soluzione p.to 4 Esecuzione IN

22 Struttura Esempio Soluzione p.to 4 Esecuzione ADD

23 Struttura Esempio Soluzione p.to 4 Esecuzione OUT

24 Struttura Componenti CPU MEMORIA CENTRALE INTERFACCIA DI I/O BUS (Dati, Indirizzi, Controllo) Esaminiamo nel dettaglio i componenti fondamentali.

25 CPU Ha il compito di eseguire il ciclo istruzione; in pratica, intesa come black box, è in grado di effettuare operazioni di lettura/scrittura –della memoria centrale o –dei registri di I/O e di interpretare i codici delle istruzioni generando tutti i segnali elettrici necessari a svolgere l'operazione richiesta. L'attività della CPU è scandita da un segnale impulsivo periodico detto clock.

26 CPU sottosistemi Al suo interno abbiamo diversi sottosistemi. UG (UNITA DI GOVERNO). ALU (UNITA ARITMETICO LOGICA). BUFFER REGISTRI BUS

27 CPU sottosistemi BUFFER MDR (BUFFER DATI) MAR (BUFFER INDIRIZZI) REGISTRI IR (INSTRUCTION REGISTER). PC (PROGRAM COUNTER). ACC (REGISTRO ACCUMULATORE).

28 CPU sottosistemi la logica di interruzione la logica di controllo del bus

29 UG (UNITA DI GOVERNO). È l'unità di governo dell'intera CPU; riceve in ingresso dal registro IR, che in seguito assumeremo a 8 bit, il codice dell'istruzione macchina; in base a esso vengono generati tutti i segnali di temporizzazione dei dispositivi interni ed esterni. Si tratta di un sistema le cui transizioni sono cadenzate dal clock CLOCKCLOCK

30 ALU (UNITA ARITMETICO LOGICA). All'ALU è demandato il compito di effettuare le operazioni –logiche e –aritmetiche sulle sequenze binarie lette –dalla memoria centrale o –dai registri di I/O. È importante capire che la ALU è un sistema combinatorio ed è caratterizzata da quanti bit può elaborare simultaneamente; si definisce così il grado di parallelismo della CPU.sistema combinatorio

31 ACC (REGISTRO ACCUMULATORE). Tipico dei primi elaboratori, è il registro sempre coinvolto nelle operazioni di ALU, ovvero che fornisce uno (o l'unico) operando e memorizza il risultato.

32 B (REGISTRO GENERALI DATI). Un secondo registro (ma potrebbe essere anche più di uno) che memorizza temporaneamente i dati nella CPU, eventualmente inviandoli alla ALU come secondo operando.

33 MEMORIA CENTRALE La memoria centrale (MC) è un dispositivo contenente un elevato numero di registri (chiamati locazioni di memoria o celle di memoria) in cui la CPU può leggere o scrivere dei valori. La dimensione di ogni cella è normalmente 8 bit = 1 byte Ogni locazione è identificata da un indirizzo (un numero binario che identifica univocamente la cella).

34 MEMORIA CENTRALE

35 MEMORIA CENTRALE esempio memoria da 8 byte Indirizzo (3 bit)Contenuto (8 bit)

36 MEMORIA CENTRALE Oggi le MC sono realizzate con dispositivi a semiconduttore. Esse possono scambiare con la CPU un byte per volta, in lettura o scrittura; la scelta del byte da scambiare è determinata da un secondo tipo di informazione, che deve essere fornita dalla CPU: l'indirizzo trasmesso sul bus, parte indirizzi. Ipotizziamo che la nostra CPU emetta indirizzi a 16 bit e pertanto possa indirizzare fino 2 16 re- gistri di memoria centrale (65536); gli indirizzi partono quindi da 0 e arrivano a

37 MEMORIA CENTRALE BUS INDIRIZZI BUS DATI BUS CONTROLLO CPU Memoria centrale

38 MEMORIA CENTRALE BUS INDIRIZZI 3 bit BUS DATI 8 bit BUS CONTROLLO CPU Ind.Contenuto Che dimensioni in bit hanno i due bus?

39 MEMORIA CENTRALE caratteristiche La memoria centrale ha due caratteristiche fondamentali : che il tempo per trasferire un dato è dello stesso ordine di quello tipico di lavoro della CPU; che l'accesso è casuale: ciò significa che l'ordine di accesso può essere uno qualunque

40 MEMORIA CENTRALE tipologie RAM la parte di memoria centrale su cui è possibile sia leggere sia scrivere, ma che è volatile, ovvero perde i dati se non alimentata. ROM: la parte di MC non volatile ma su cui la CPU può solo leggere si chiama ROM (Read Only Memory).

41 MEMORIA CENTRALE ROM Si tratta di un tipo di memoria fondamentale, in cui i valori dei dati memorizzati sono predisposti in fase di fabbricazione; all'avvio la CPU carica un valore predefinito nel program counter e a quell'indirizzo deve trovare una serie di istruzioni valide: bisogna quindi utilizzare una ROM almeno per il programma di avvio.

42 INTERFACCIA DI I/O Input/Output Ogni dispositivo aggiuntivo (unità di ingresso, di uscita, dischi ecc.) interagisce autonomamente con il resto del sistema mediante un'interfaccia (circuito di raccordo) connessa al bus di sistema. L'aggiunta di una nuova interfaccia connessa al bus permette quindi di aggiungere dispositivi inizialmente non previsti nel sistema, senza modificare quelli esistenti. Queste interfacce mostrano alla CPU almeno due registri su cui appoggiare i dati in ingresso e in uscita; essi sono accessibili con specifiche istruzioni macchina.

43 INTERFACCIA DI I/O INPUT (UNITA DI INGRESSO). Permette all'utente di interagire con la macchina (per esempio utilizzando una tastiera numerica) per introdurre informazioni codificate con uno o più byte. OUTPUT (UNITA DI USCITA). Permette alla macchina di trasferire a una periferica uno o più byte che codificano informazioni (es. monitor)

44 INTERFACCIA DI I/O

45 BUS Il bus è il sistema di interconnessione strutturato che fornisce i percorsi per il trasferimento dei dati, degli indirizzi e dei segnali di controllo necessari allo scambio dei dati tra gli altri moduli. Fisicamente consiste in piste tracciate su circuito stampato e alcuni componenti elettronici per mantenere la correttezza delle forme d'onda dei segnali trasmessi.

46 BUS suddivisione Il bus è diviso in almeno quattro sezioni: dati, indirizzi, controlli e alimentazioni.

47 bus dati Il bus dati è bidirezionale e condiviso da tutti i moduli, quindi sono previste regole per evitare conflitti. Tramite i segnali di controllo si decide chi debba assumere la gestione del bus (come vedremo in seguito potrebbe non essere solo la CPU a poter pilotare il bus); successivamente viene abilitata solo la memoria o la periferica interessata tramite un segnale specifico chip select derivato dagli indirizzi emessi.

48 bus indirizzi Il bus indirizzi è unidirezionale (da chi pilota, di norma la CPU, alle memorie o le interfacce di I/O). Se il bus indirizzi ha n bit, si possono indirizzare 2 n locazioni di memoria centrale.

49 bus controlli Il bus controlli ha diversi segnali, tra cui certamente gli strobe (impulsi) di comando della lettura o della scrittura, i segnali per l'acquisizione del controllo del bus, i segnali di interruzione che consentono a un'interfaccia di I/O di chiedere servizio alla CPU, i chip select, il reset e i clock.

50 bus alimentazioni Il bus alimentazioni distribuisce la massa e le tensioni di alimentazioni positive e negative.

51 Hardware e software La Macchina di Von Neumann ci consente di capire bene la differenza tra hardware e software.

52 Hardware Esiste una componentistica tangibile di tipo elettronico, elettrico e meccanico: questa è chiamata hardware. Sono hardware l'unità centrale, il monitor, la tastiera, l'alimentatore, il disco, i microprocessori, i chip di memoria.

53 Software Affinchè la Macchina di Von Neumann funzioni, però, è necessario che le celle della memoria centrale riportino sequenze binarie opportune, dette istruzioni macchina codificanti, operazioni significative della CPU tramite le quali realizziamo un programma, ovvero in ultima analisi la codifica di un algoritmo di risoluzione di un problema.


Scaricare ppt "Modello di Von Neumann ARCHITETTURA DEL CALCOLATORE."

Presentazioni simili


Annunci Google