Storicamente ci sono stati 2 tipi di computer:
- Computer a programma fisso – La loro funzione è molto specifica e non potevano essere programmati, per esempio le calcolatrici.
- Computer a programma memorizzato – Questi possono essere programmati per svolgere molti compiti diversi, le applicazioni sono memorizzate su di loro, da qui il nome.
I computer moderni sono basati sul concetto di programma memorizzato introdotto da John Von Neumann. In questo concetto di programma memorizzato, i programmi e i dati sono immagazzinati in un’unità di memorizzazione separata chiamata memoria e sono trattati allo stesso modo. Questa nuova idea significava che un computer costruito con questa architettura sarebbe stato molto più facile da riprogrammare.
La struttura di base è come,
È anche conosciuto come computer IAS e ha tre unità di base:
- L’unità di elaborazione centrale (CPU)
- L’unità di memoria principale
- Il dispositivo di ingresso/uscita
Prendiamo in considerazione questi dettagli.
- Unità di controllo –
Un’unità di controllo (CU) gestisce tutti i segnali di controllo del processore. Dirige tutto il flusso di input e output, recupera il codice per le istruzioni e controlla come i dati si muovono nel sistema.
- Unità Aritmetica e Logica (ALU) –
L’unità logica aritmetica è quella parte della CPU che gestisce tutti i calcoli di cui la CPU può avere bisogno, per esempio addizione, sottrazione, confronto. Esegue operazioni logiche, operazioni di spostamento di bit e operazioni aritmetiche.
Figura – Struttura base della CPU, che illustra l’ALU - Unità di memoria principale (registri) –
- Accumulatore: Memorizza i risultati dei calcoli fatti dall’ALU.
- Contatore di programma (PC): Tiene traccia della posizione di memoria delle prossime istruzioni da trattare. Il PC passa poi questo indirizzo successivo al Memory Address Register (MAR).
- Memory Address Register (MAR): Memorizza le posizioni di memoria delle istruzioni che devono essere recuperate dalla memoria o memorizzate nella memoria.
- Memory Data Register (MDR): Memorizza le istruzioni recuperate dalla memoria o qualsiasi dato che deve essere trasferito e memorizzato nella memoria.
- Registro delle istruzioni correnti (CIR): Memorizza le istruzioni più recentemente recuperate in attesa di essere codificate ed eseguite.
- Instruction Buffer Register (IBR): L’istruzione che non deve essere eseguita immediatamente viene messa nel registro buffer delle istruzioni IBR.
- Dispositivi di ingresso/uscita – Il programma o i dati vengono letti nella memoria principale dal dispositivo di ingresso o dalla memoria secondaria sotto il controllo dell’istruzione di ingresso della CPU. I dispositivi di uscita sono usati per emettere le informazioni da un computer. Se alcuni risultati sono valutati dal computer e sono memorizzati nel computer, allora con l’aiuto dei dispositivi di uscita, possiamo presentarli all’utente.
- Bus – I dati sono trasmessi da una parte all’altra di un computer, collegando tutti i principali componenti interni alla CPU e alla memoria, per mezzo dei bus. Tipi:
- Data Bus: trasporta i dati tra l’unità di memoria, i dispositivi I/O e il processore.
- Address Bus: trasporta l’indirizzo dei dati (non i dati veri e propri) tra la memoria e il processore.
- Control Bus: trasporta i comandi di controllo dalla CPU (e i segnali di stato da altri dispositivi) per controllare e coordinare tutte le attività all’interno del computer.
Collo di bottiglia di Von Neumann –
Qualunque cosa si faccia per migliorare le prestazioni, non si può sfuggire al fatto che le istruzioni possono essere fatte solo una alla volta e possono essere eseguite solo in sequenza. Entrambi questi fattori frenano la competenza della CPU. Questo viene comunemente chiamato “collo di bottiglia di Von Neumann”. Possiamo fornire un processore Von Neumann con più cache, più RAM, o componenti più veloci, ma se si vogliono ottenere guadagni originali nelle prestazioni della CPU, allora è necessario un controllo influente della configurazione della CPU.
Questa architettura è molto importante ed è usata nei nostri PC e persino nei Super Computer.