L’EDVAC (Electronic Discrete Variable Automatic Computer) è tra i primissimi calcolatori elettronici digitali e uno dei primi a incarnare l’architettura di von Neumann: programma e dati risiedono nella stessa memoria.
EDVAC
È il passaggio chiave che traghetta l’informatica oltre i limiti dell’ENIAC, velocissimo ma complesso da programmare, poco affidabile e privo di una memoria adeguata: per cambiare algoritmo bisognava ricablare la macchina, operazione che richiedeva ore o giorni.
Con EDVAC entrano in scena due idee decisive:
- La prima è l’uso del sistema binario al posto del decimale, più naturale per l’elettronica.
- La seconda è il programma memorizzato: niente più patch di cavi per riconfigurare la macchina, ma istruzioni caricate in memoria come fossero dati.
Questi fattori permettono di avere programmi binari memorizzati nella stessa memoria dei dati, segnando il passaggio dall’era dei pannelli e dei cavi all’era dei linguaggi e delle istruzioni, alla base dell’informatica moderna.
La possibilità del calcolatore veramente “universale” sarà dimostrata pienamente nel 1948 con la Manchester Small-Scale Experimental Machine, ma EDVAC ne anticipa la visione e la porta in esercizio operativo.
Il progetto nasce nell’agosto 1944, quando J. Presper Eckert e John Mauchly (gli ingegneri dell’ENIAC) propongono l’EDVAC prima che l’ENIAC sia pienamente operativo. Il lavoro si svolge alla Moore School of Electrical Engineering dell’Università della Pennsylvania, per il Ballistic Research Laboratory dell’esercito USA (Aberdeen Proving Ground).
Il dott. W. W. Leutert e Thomas C. Hill davanti ad una fotografia dell’EDVAC (US Army Photo, Public domain, via Wikimedia Commons)
John von Neumann si unisce come consulente e, nel 1945, diffonde il celebre “First Draft of a Report on the EDVAC”: il documento che renderà nota al mondo l’architettura a programma memorizzato.
Il contratto viene firmato nell’aprile 1946 con un budget iniziale di 100.000 dollari; il costo finale sfiorerà i 500.000 dollari.
Le vicende che lo accompagnano, però, non sono lineari: dispute sui brevetti tra Eckert, Mauchly e l’Università della Pennsylvania rallentano il progetto. Eckert e Mauchly lasciano la Moore School e fondano la Eckert-Mauchly Computer Corporation portando con sé gran parte dei progettisti senior.
L’EDVAC viene assemblato presso il Ballistics Research Laboratory nell’agosto 1949. Dopo la risoluzione di vari problemi di messa a punto, la macchina diventa operativa nel 1951, inizialmente con funzionalità limitate.
Nel corso degli anni, riceve aggiornamenti importanti: lettore di schede perforate (1953), memoria a tamburo aggiuntiva (1954), unità in virgola mobile (1958). Intorno al 1960 è in esercizio per oltre 20 ore al giorno, con sessioni senza errori superiori a 8 ore. L’EDVAC resta in servizio fino al 1961, quando viene sostituito dal BRLESC.
L'EDVAC ha un’architettura più compatta ed efficiente: oltre 6.000 valvole (circa un sesto di quelle dell’ENIAC) e 12.000 diodi, consumi intorno a 56 kW, peso di 7.850 kg su 45,5 m². Il personale necessario resta imponente: circa 30 addetti per turno di 8 ore. Una realtà completamente diversa se raffrontata con l’ENIAC che è realizzato con migliaia di valvole termoioniche, consuma enormi quantità di energia e calore, e offre poco spazio di archiviazione,
La memoria principale è inizialmente basata su linee di ritardo al mercurio: impulsi elettrici viaggiano in condotti di mercurio a velocità nota e vengono “riciclati”, realizzando una memoria temporanea seriale. La scelta è molto più efficiente delle valvole come mezzo di storage: a parità di elettronica, consente di memorizzare più dati con maggiore affidabilità. In seguito, EDVAC adotta memoria a nuclei magnetici.
Come memoria ausiliaria, prima un cavo magnetico, poi nastro magnetico, con capacità dell’ordine di 20.000 numeri. La memoria “principale” parte da 1000 word da 44 bit (poi 1024 word, circa 5,5 KB).
EDVAC esegue addizioni in circa 864 microsecondi e moltiplicazioni in 2.900 microsecondi, supportando istruzioni di controllo di flusso (salti/diramazioni) e le quattro operazioni aritmetiche di base.
L’unità aritmetico-logica lavora su due operandi e invia il risultato in memoria dopo un controllo con unità duplicata: sono presenti timer, unità di controllo con oscilloscopio, sistemi di I/O su nastro, e un complesso di linee al mercurio organizzate in due banchi da 64 linee con 8 parole per linea, affiancati da tre armadi per buffer temporanei.
In definitiva, l’EDVAC è la cerniera tra sperimentazione bellica e calcolo scientifico generalista: meno spettacolare dell’ENIAC agli occhi del pubblico, ma più vicino ai computer di oggi per concezione, struttura e modalità d’uso.