Esistono due tipi di architetture digitali per computer che descrivono la funzionalità e l'implementazione dei sistemi informatici. Uno è l'architettura Von Neumann che è stata progettata dal famoso fisico e matematico John Von Neumann alla fine degli anni '40, e l'altra è l'architettura di Harvard che si basava sul computer originale basato su relè Harvard Mark I che utilizzava sistemi di memoria separati per memorizzare dati e istruzioni.
L'architettura originale di Harvard utilizzata per memorizzare le istruzioni su nastro perforato e dati nei contatori elettromeccanici. L'architettura Von Neumann costituisce la base dell'informatica moderna ed è più facile da implementare. Questo articolo esamina le due architetture dei computer individualmente e spiega la differenza tra i due.
È un progetto teorico basato sul concetto di computer con programma memorizzato in cui i dati del programma e i dati delle istruzioni sono memorizzati nella stessa memoria.
L'architettura fu progettata dal famoso matematico e fisico John Von Neumann nel 1945. Fino al concetto di computer design di Von Neumann, le macchine informatiche furono progettate per un unico scopo prestabilito che sarebbe privo di sofisticazione a causa del ricablaggio manuale dei circuiti.
L'idea dietro le architetture di Von Neumann è la capacità di memorizzare le istruzioni nella memoria insieme ai dati su cui operano le istruzioni. In breve, l'architettura Von Neumann si riferisce a un quadro generale che l'hardware, la programmazione e i dati di un computer dovrebbero seguire.
L'architettura Von Neumann è composta da tre componenti distinte: una unità di elaborazione centrale (CPU), un'unità di memoria e interfacce di input / output (I / O). La CPU è il cuore del sistema informatico costituito da tre componenti principali: l'unità aritmetica e logica (ALU), l'unità di controllo (CU) e i registri.
L'ALU è responsabile dello svolgimento di tutte le operazioni aritmetiche e logiche sui dati, mentre l'unità di controllo determina l'ordine del flusso di istruzioni che devono essere eseguite nei programmi emettendo segnali di controllo sull'hardware.
I registri sono fondamentalmente posizioni di memorizzazione temporanee che memorizzano gli indirizzi delle istruzioni che devono essere eseguite. L'unità di memoria è costituita da RAM, che è la memoria principale utilizzata per memorizzare i dati del programma e le istruzioni. Le interfacce I / O consentono agli utenti di comunicare con il mondo esterno, come i dispositivi di archiviazione.
Si tratta di un'architettura computerizzata con percorsi di memorizzazione e segnali fisicamente separati per i dati e le istruzioni del programma. A differenza dell'architettura Von Neumann che utilizza un singolo bus per recuperare le istruzioni dalla memoria e trasferire i dati da una parte all'altra del computer, l'architettura di Harvard ha uno spazio di memoria separato per dati e istruzioni.
Entrambi i concetti sono simili, tranne il modo in cui accedono ai ricordi. L'idea dietro l'architettura di Harvard è quella di dividere la memoria in due parti: una per i dati e l'altra per i programmi. I termini erano basati sul computer basato su relè Harvard Mark I originale che utilizzava un sistema che consentiva di eseguire contemporaneamente sia i dati che i trasferimenti e le partenze di istruzioni allo stesso tempo.
I progetti di computer reali sono in realtà basati sull'architettura modificata di Harvard e sono comunemente usati nei microcontrollori e DSP (Digital Signal Processing).
L'architettura Von Neumann è un progetto teorico di computer basato sul concetto di programma memorizzato in cui programmi e dati sono memorizzati nella stessa memoria. Il concetto è stato progettato da un matematico John Von Neumann nel 1945 e che attualmente funge da base per quasi tutti i computer moderni. L'architettura di Harvard si basava sul modello di computer originale basato su relè Harvard Mark I che utilizzava bus separati per dati e istruzioni.
L'architettura di Von Neumann ha un solo bus che viene utilizzato sia per il recupero delle istruzioni che per il trasferimento dei dati, e le operazioni devono essere programmate perché non possono essere eseguite contemporaneamente. L'architettura di Harvard, d'altra parte, ha uno spazio di memoria separato per istruzioni e dati, che fisicamente separano i segnali e l'archiviazione per la memoria di codice e dati, che a sua volta consente di accedere a ciascuno dei sistemi di memoria contemporaneamente.
Nell'architettura Von Neumann, l'unità di elaborazione avrebbe bisogno di due cicli di clock per completare un'istruzione. Il processore recupera l'istruzione dalla memoria nel primo ciclo e la decodifica, quindi i dati vengono prelevati dalla memoria nel secondo ciclo. Nell'architettura di Harvard, l'unità di elaborazione può completare un'istruzione in un ciclo se sono in atto strategie di pipeline appropriate.
Poiché le istruzioni e i dati utilizzano lo stesso sistema di bus nell'architettura Von Neumann, semplifica la progettazione e lo sviluppo dell'unità di controllo, che alla fine riduce al minimo il costo di produzione. Lo sviluppo dell'unità di controllo nell'architettura di Harvard è più costoso del precedente a causa della complessa architettura che impiega due bus per istruzioni e dati.
L'architettura Von Neumann viene utilizzata principalmente in tutte le macchine che si vedono dai computer desktop e notebook ai computer e alle workstation ad alte prestazioni. L'architettura di Harvard è un concetto abbastanza nuovo utilizzato principalmente nei microcontrollori e nell'elaborazione del segnale digitale (DSP).
L'architettura di Von Neumann è simile all'architettura di Harvard ad eccezione del fatto che utilizza un singolo bus per eseguire fetch di istruzioni e trasferimenti di dati, quindi le operazioni devono essere programmate. L'architettura di Harvard, d'altra parte, utilizza due indirizzi di memoria separati per dati e istruzioni, che consente di alimentare i dati in entrambi i bus allo stesso tempo. Tuttavia, l'architettura complessa non fa altro che aumentare i costi di sviluppo dell'unità di controllo rispetto ai minori costi di sviluppo dell'architettura Von Neumann meno complessa che impiega una singola cache unificata.