Calcolatori elettronici/L'evoluzione dei sistemi di elaborazione
Un sistema di elaborazione è un sistema, generalmente dotato di input e output, in grado di eseguire operazioni logiche ed aritmetiche su dati.
Un calcolatore deve rappresentare delle informazioni, manipolare delle informazioni tramite operazioni automatizzate (algoritmi), e memorizzare dei dati.
Ere
modifica1. Era meccanica (sino al 1945)
modificaI dispositivi sono di tipo meccanico. Le prime macchine rappresentano i numeri decimali e svolgevano le operazioni elementari.
Nell'Ottocento, nascono le macchine programmabili, ovvero delle macchine per automatizzare processi che possono essere programmati dall'utente.
Negli anni '40 si passa ai relè elettromagnetici, che rappresentano numeri binari tramite on/off, ma hanno ancora parti in movimento.
2. Era elettronica (dal 1945 al 1975)
modificaNasce l'informatica teorica: si comincia a studiare la complessità degli algoritmi e a determinare ciò che è computabile o no.
I relè sono sostituiti da tubi a vuoto/valvole, basati sul movimento degli elettroni, che però sono ancora pesanti e di grandi dimensioni.
L'EDVAC (progettato nel 1951) passa dalla rappresentazione decimale a quella binaria, e ha una memoria che oltre a memorizzare i dati memorizza anche il programma.
L'architettura Harvard si differenzia dall'architettura di Von Neumann per la separazione della memoria dati e della memoria codice.
Prima generazione (anni '50)
modificaInizia la produzione commerciale di macchine basate su tubi a vuoto, che però sono molto semplici e richiedono l'uso del linguaggio macchina (strettamente dipendente dalla macchina).
Seconda generazione (anni '60)
modificaCompare il transistor: più piccolo, più risparmioso e più veloce. Le CPU introducoro il supporto alla rappresentazione dei numeri in virgola mobile. Iniziano a comparire i linguaggi di alto livello.
Compaiono i primi sistemi operativi, che possono eseguire programmi in batch (ovvero in sequenza automatica), e possono supportare più utenti per volta.
Terza generazione (anni '65)
modificaNascono i circuiti integrati, e si introducono le memorie a semiconduttore (simili a quelle odierne).
3. Era del VLSI (dal 1975 ad oggi)
modificaLa VLSI è la possibilità di integrare in un unico chip decine di migliaia di transistor.
I chip in silicio vengono inseriti in un package con pin (DIP, PGA, BGA).
- Legge di Moore
- Il massimo numero di transistor integrabili su un singolo circuito raddoppia ogni 18/24 mesi.
I miglioramenti di prestazioni non sono semplicemente dovuti a miglioramenti di tipo tecnologico, perché oltre all'aumento delle frequenze e del numero di transistor c'è un miglioramento dell'architettura.
Architetture di processori
modificaGeneral-purpose
modificaI microprocessori, nati alla fine degli anni '70, sono dei processori integrati a bordo di singoli circuiti integrati. I computer basati su microprocessori sono detti microcomputer.
Nel mercato general-purpose sono importanti le prestazioni:
- CISC: (fino agli anni '70) per eseguire un'istruzione è necessario un certo numero di colpi di clock;
- RISC: (anni '80) completano un'istruzione in un solo colpo di clock, e hanno un set di istruzioni più ridotto;
- superscalari: (anni '90) a ogni colpo di clock completano più di un'istruzione;
- multicore: (anni 2000) circuiti integrati che integrano più processori (detti core).
Special-purpose
modificaI sistemi special-purpose sono progettati per eseguire una sola applicazione. Nel mercato special-purpose, generalmente nei sistemi embedded, non sono fondamentali le prestazioni, ma il costo di sviluppo/progettazione e il costo di produzione dell'elettronica. I microcontrollori sono dei sistemi programmabili che, integrando discrete CPU, memoria e porte, si interfacciano con dei dispositivi di input/output, eseguono delle operazioni semplici e costano poco.
- soluzione software (SW): si compra un microprocessore/microcontrollore già esistente e si sviluppa solo il software → costo di sviluppo basso;
- soluzione hardware (HW): si costruisce un hardware specifico integrando solo i dispositivi specifici per compiere una funzione, per esigenze di dimensioni o di consumo di energia → bassa flessibilità (una volta realizzata non si può più modificare), ma personalizzabilità.
I dispositivi System on Chip integrano al loro interno un numero significativo di componenti (processori, memoria, moduli) che sono specifici per un'applicazione, ma sono più complicati dei microcontrollori.