Von-Neumann propose nel 1945 il suo progetto di architettura informatica, in seguito noto come Architettura Von-Neumann. Consisteva in un'unità di controllo, un'unità di memoria aritmetica e logica (ALU), registri e ingressi/uscite.
L'architettura di Von Neumann si basa sul concetto di computer a programma memorizzato, in cui i dati delle istruzioni e i dati del programma sono archiviati nella stessa memoria. Questo design è ancora utilizzato nella maggior parte dei computer prodotti oggi.
Un computer basato su Von Neumann:
- Utilizza un singolo processore
- Utilizza una memoria sia per le istruzioni che per i dati.
- Esegue i programmi seguendo il ciclo fetch-decode-execute
Componenti del modello di Von-Neumann:
- Unità centrale di elaborazione
- Autobus
- Unità di memoria
Unità centrale di elaborazione
La parte del computer che esegue la maggior parte delle operazioni di elaborazione dei dati è chiamata unità centrale di elaborazione e viene definita CPU.
L'Unità Centrale di Elaborazione può anche essere definita come un circuito elettrico responsabile dell'esecuzione delle istruzioni di un programma informatico.
La CPU esegue una varietà di funzioni dettate dal tipo di istruzioni incorporate nel computer.
I componenti principali della CPU sono l'unità aritmetica e logica (ALU), l'unità di controllo (CU) e una varietà di registri.
Automi finiti deterministici
Unità Aritmetica e Logica (ALU)
L'Unità Aritmetica e Logica (ALU) esegue le micro-operazioni richieste per l'esecuzione delle istruzioni. In parole semplici, ALU consente di eseguire operazioni aritmetiche (addizione, sottrazione, ecc.) e logiche (AND, OR, NOT, ecc.).
Centralina
L'unità di controllo di un sistema informatico controlla le operazioni di componenti come ALU, memoria e dispositivi di input/output.
L'unità di controllo è costituita da un contatore di programma che contiene l'indirizzo delle istruzioni da recuperare e da un registro delle istruzioni in cui vengono recuperate le istruzioni dalla memoria per l'esecuzione.
Registri
I registri si riferiscono ad aree di memorizzazione ad alta velocità nella CPU. I dati elaborati dalla CPU vengono prelevati dai registri.
Di seguito è riportato l'elenco dei registri che svolgono un ruolo cruciale nel trattamento dei dati.
Registri | Descrizione |
---|---|
MAR (Registro indirizzi di memoria) | Questo registro contiene la posizione di memoria dei dati a cui è necessario accedere. |
MDR (registro dei dati di memoria) | Questo registro contiene i dati che vengono trasferiti da o verso la memoria. |
CA (accumulatore) | Questo registro contiene i risultati aritmetici e logici intermedi. |
PC (contatore di programma) | Questo registro contiene l'indirizzo della prossima istruzione da eseguire. |
CIR (Registro delle istruzioni correnti) | Questo registro contiene l'istruzione corrente durante l'elaborazione. |
Autobus
I bus sono il mezzo attraverso il quale le informazioni vengono condivise tra i registri in un sistema di configurazione a registri multipli.
Una struttura di bus è costituita da un insieme di linee comuni, una per ogni bit di un registro, attraverso le quali vengono trasferite una alla volta informazioni binarie. I segnali di controllo determinano quale registro viene selezionato dal bus durante ogni particolare trasferimento di registro.
modello di riferimento osi nel networking
Architettura Von-Neumann composta da tre principali sistemi bus per il trasferimento dei dati.
Autobus | Descrizione |
---|---|
Indirizzo Autobus | L'Address Bus trasporta l'indirizzo dei dati (ma non i dati) tra il processore e la memoria. |
Bus dati | Il Data Bus trasporta i dati tra il processore, l'unità di memoria e i dispositivi di input/output. |
Autobus di controllo | Il Control Bus trasporta segnali/comandi dalla CPU. |
Unità di memoria
Un'unità di memoria è una raccolta di celle di memorizzazione insieme ai circuiti associati necessari per trasferire informazioni dentro e fuori la memoria. La memoria memorizza le informazioni binarie in gruppi di bit chiamati parole. La struttura interna di un'unità di memoria è specificata dal numero di parole che contiene e dal numero di bit in ciascuna parola.
Nei sistemi informatici vengono utilizzati due tipi principali di memorie:
- RAM (memoria ad accesso casuale)
- ROM (memoria di sola lettura)