Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte...

36
Storia dell'informatica Storia dell'informatica e del calcolo automati e del calcolo automati co co I Computer I Computer Come si è giunti alle Come si è giunti alle moderne scelte moderne scelte architetturali. architetturali. Michelangelo Lamonica

Transcript of Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte...

Page 1: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

I ComputerI Computer

Come si è giunti alle moderne scelte Come si è giunti alle moderne scelte architetturali.architetturali. Michelangelo Lamonica

Page 2: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

AmbientazioneAmbientazione

Il presente documento è progettato per Il presente documento è progettato per introdurre ad una visione complessiva introdurre ad una visione complessiva dello sviluppo della tecnologia dello sviluppo della tecnologia attualmente presente sul mercato .attualmente presente sul mercato .

Esso è di compendio alle attività didattiche Esso è di compendio alle attività didattiche tradizionali ed è destinato a studenti che tradizionali ed è destinato a studenti che stanno terminando il corso di studi di stanno terminando il corso di studi di scuola superiore.scuola superiore.

Page 3: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

PrerequisitiPrerequisiti

Avere comprensione della terminologia Avere comprensione della terminologia tecnica legata ai Personal Computer.tecnica legata ai Personal Computer.

Avere interesse nel comprendere il Avere interesse nel comprendere il percorso storico che ha portato alla percorso storico che ha portato alla attuale tecnologia.attuale tecnologia.

Page 4: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

ObiettiviObiettivi

Dare il quadro storico dello sviluppo della Dare il quadro storico dello sviluppo della tecnologia legata ai Processori.tecnologia legata ai Processori.

Permettere di comprendere le scelte Permettere di comprendere le scelte tecnologiche relativamente tali tecnologie.tecnologiche relativamente tali tecnologie.

Page 5: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

MaterialeMateriale

Materiale Cartaceo disponibileMateriale Cartaceo disponibile Slides in PowerPoint®Slides in PowerPoint® BibliografiaBibliografia

Page 6: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Si parte ….Si parte ….

Mettetevi Mettetevi comodi …..comodi …..

Page 7: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

L’osso di LupoL’osso di LupoRisale al 30000 a.c. un osso di lupo in cui sono state incise 55 tacche a gruppi di 5.Risale al 30000 a.c. un osso di lupo in cui sono state incise 55 tacche a gruppi di 5.

Si pensa sia stato impiegato come base di calcolo (in base 5 … come le dita).Si pensa sia stato impiegato come base di calcolo (in base 5 … come le dita).

Rappresenta il primo tentativo (conosciuto) dell’essere umano di sistematizzare l’universo dei numeri, primo passo per il dominio Rappresenta il primo tentativo (conosciuto) dell’essere umano di sistematizzare l’universo dei numeri, primo passo per il dominio dei dati e delle informazioni.dei dati e delle informazioni.

Page 8: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

L’abacoL’abacoLa prima macchina calcolatrice risale a La prima macchina calcolatrice risale a

5000 anni fa, e permetteva di eseguire 5000 anni fa, e permetteva di eseguire calcoli utilizzando le perline che scorrono calcoli utilizzando le perline che scorrono sulla tastiera.sulla tastiera.

Page 9: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

La PascalinaLa PascalinaMolto dopo Blaise Pascal (1623-1662), Molto dopo Blaise Pascal (1623-1662),

figlio diciottenne di un esattore delle figlio diciottenne di un esattore delle tasse francese, inventa la calcolatrice ad tasse francese, inventa la calcolatrice ad ingranaggi.ingranaggi.

Page 10: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

CaratteristicheCaratteristiche usava otto ingranaggi mobiliusava otto ingranaggi mobili somma numeri fino ad otto cifre somma numeri fino ad otto cifre I numeri erano in base 10I numeri erano in base 10 Utilizza ruote dentate ( a 10 denti )Utilizza ruote dentate ( a 10 denti )

Utile solo per le addizioni !!!!!!!Utile solo per le addizioni !!!!!!!

Page 11: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Difference Engine ed Difference Engine ed Analitycal MachineAnalitycal Machine

““I wish to God these calculations had been executed by steam”I wish to God these calculations had been executed by steam” Il matematico inglese  Charles Babbage (1791-1871) presentò una Il matematico inglese  Charles Babbage (1791-1871) presentò una

macchina per le equazioni differenziali, detta “Difference Machine”.macchina per le equazioni differenziali, detta “Difference Machine”.L'assistente di Babbage, Augusta Ada King, figlia del poeta inglese L'assistente di Babbage, Augusta Ada King, figlia del poeta inglese

Lord Byron, fu la prima programmatrice della storia creando una Lord Byron, fu la prima programmatrice della storia creando una routine di istruzioni della Analitical Machine, precursore del routine di istruzioni della Analitical Machine, precursore del moderno Calcolatore.moderno Calcolatore.

Page 12: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

CaratteristicheCaratteristiche Alimentate a vaporeAlimentate a vapore grandi quanto una  locomotivagrandi quanto una  locomotiva Dotate di oltre 50000 componentiDotate di oltre 50000 componenti Input con schede perforateInput con schede perforate Archivio di memoria per 1000 numeriArchivio di memoria per 1000 numeri

La La Analitical Machine Analitical Machine conteneva anche conteneva anche un'unità di elaborazione con un'unità di un'unità di elaborazione con un'unità di controllo che consentiva di processare controllo che consentiva di processare istruzioni in ogni sequenza.istruzioni in ogni sequenza.

Page 13: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Nota StoricaNota StoricaNel 1889, un inventore americano,  Herman Hollerith Nel 1889, un inventore americano,  Herman Hollerith

(1860-1929), applicò il concetto delle schede (1860-1929), applicò il concetto delle schede perforate al censimento degli Stati Uniti (che fu perforate al censimento degli Stati Uniti (che fu terminato in sei settimane invece dei 10 anni terminato in sei settimane invece dei 10 anni previsti !!!!).previsti !!!!).

Hollerith nel 1886 fondò la Hollerith nel 1886 fondò la Tabulating Machine Tabulating Machine CompanyCompany che divenne che divenne International Business International Business MachineMachine (IBM) nel 1924. (IBM) nel 1924.

Page 14: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Differencial AnalyzerDifferencial Analyzer

Il prof Vannevar Bush ed altri docenti del MIT progettano il Il prof Vannevar Bush ed altri docenti del MIT progettano il “Differential Analyzer”, il primo calcolatore di uso pratico “Differential Analyzer”, il primo calcolatore di uso pratico alimentato elettricamente.alimentato elettricamente.

Da questo momento in poi, i prototipi di macchinari computazionali Da questo momento in poi, i prototipi di macchinari computazionali si susseguono quasi annualmente fino ai giorni nostri.si susseguono quasi annualmente fino ai giorni nostri.

Page 15: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

EvoluzioneEvoluzioneDa allora si susseguonoDa allora si susseguono una serie di scoperte e una serie di scoperte e

innovazioni che portano all’affinamento delle tecniche innovazioni che portano all’affinamento delle tecniche per la realizzazione dei computer.per la realizzazione dei computer.

Il problema principale dell’epoca era l’eccessivo Il problema principale dell’epoca era l’eccessivo ingombro dei macchinari dovuto essenzialmente alla ingombro dei macchinari dovuto essenzialmente alla difficoltà di rappresentazione dei numeri e delle difficoltà di rappresentazione dei numeri e delle relazioni tra questi.relazioni tra questi.

Il problema fu risolto realizzando Computer tramite la Il problema fu risolto realizzando Computer tramite la semplice (e ripetitiva) algebra Binaria.semplice (e ripetitiva) algebra Binaria.

Page 16: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Nota StoricaNota Storica Il sistema Binario era noto già in Cina nel 1100 a.c.Il sistema Binario era noto già in Cina nel 1100 a.c. Il gesuita padre Bouvet descrive per corrispondenza tale sistema Il gesuita padre Bouvet descrive per corrispondenza tale sistema

a Leibnitza Leibnitz Leibnitz (fine 1600) realizza che qualsiasi informazione può essere Leibnitz (fine 1600) realizza che qualsiasi informazione può essere

formalizzata in binario.formalizzata in binario. Il matematico Boole (fine 1800) costruisce la sua logica sul lavoro Il matematico Boole (fine 1800) costruisce la sua logica sul lavoro

di Leibnitz.di Leibnitz. Nel 1931 il tedesco Zose costruisce il primo computer Nel 1931 il tedesco Zose costruisce il primo computer

elettromeccanico sulla logica binaria (Relè)elettromeccanico sulla logica binaria (Relè) Nel 1939 l’americano Atanasoff realizza il primo computer Nel 1939 l’americano Atanasoff realizza il primo computer

elettronico sulla logica binaria (Valvole)elettronico sulla logica binaria (Valvole) Negli anni ’50 von Neumann formalizza l’architettura ancora oggi Negli anni ’50 von Neumann formalizza l’architettura ancora oggi

utilizzata.utilizzata.

Page 17: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

La architetturaLa architettura

Negli anni ’50 von Neumann definisce la architettura dei Negli anni ’50 von Neumann definisce la architettura dei Computer; tale architettura è tutt’ora alla base dei moderni Computer; tale architettura è tutt’ora alla base dei moderni Calcolatori.Calcolatori.

In particolare, viene definita la la distinzione tra memoria In particolare, viene definita la la distinzione tra memoria primaria (ROM) e secondaria (RAM), e lo stile di primaria (ROM) e secondaria (RAM), e lo stile di programmazione mediante diagrammi di flusso. programmazione mediante diagrammi di flusso. 

Page 18: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

ConsiderazioniConsiderazioniDa quanto fino ad ora visto:Da quanto fino ad ora visto: Dall’inizio dei tempi si comprende che operazioni Dall’inizio dei tempi si comprende che operazioni

complesse possono essere scomposte in operazioni complesse possono essere scomposte in operazioni semplici ripetute un numero elevato di volte.semplici ripetute un numero elevato di volte.

Lo sforzo degli scienziati è quello di utilizzare le scoperte Lo sforzo degli scienziati è quello di utilizzare le scoperte tecnologiche per potenziare i calcolatori (dalle ruote dentate tecnologiche per potenziare i calcolatori (dalle ruote dentate alle valvole fino ai circuiti integrati) utilizzando una alle valvole fino ai circuiti integrati) utilizzando una architettura definita a grandi linee già del 1600architettura definita a grandi linee già del 1600

Ai calcolatori viene tutt’ora chiesto di realizzare cose Ai calcolatori viene tutt’ora chiesto di realizzare cose semplici, ma in quantità tale da poter poi effettuare semplici, ma in quantità tale da poter poi effettuare operazioni molto complesse.operazioni molto complesse.

Page 19: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Le generazioniLe generazioniPrima Generazione (1945-1956) Prima Generazione (1945-1956) Valvole TermoionicheValvole Termoioniche

Seconda   Generazione (1956-1963) Seconda   Generazione (1956-1963) TransistorTransistor

Terza Generazione (1964-1971) Terza Generazione (1964-1971) Circuiti IntegratiCircuiti Integrati

Quarta Generazione (1971-Oggi) Quarta Generazione (1971-Oggi) Integrazione su larga scalaIntegrazione su larga scala

Page 20: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

I moderni ProcessoriI moderni ProcessoriTralasciando le realizzazioni effettuate nelle precedenti Tralasciando le realizzazioni effettuate nelle precedenti

generazioni, viene di seguito riproposto un “excursus” sulle generazioni, viene di seguito riproposto un “excursus” sulle scelte legate alla realizzazione dei processori della “quarta scelte legate alla realizzazione dei processori della “quarta generazione”.generazione”.

In particolare risulta interessante comprendere come non In particolare risulta interessante comprendere come non sempre il prodotto migliore è risultato vincente subito e sempre il prodotto migliore è risultato vincente subito e come, architetture diverse, sono state valutate e scelte in come, architetture diverse, sono state valutate e scelte in base a motivazioni “storiche” che hanno condizionato base a motivazioni “storiche” che hanno condizionato l’attuale stato di fatto.l’attuale stato di fatto.

Page 21: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Problemi di SpazioProblemi di SpazioStudi effettuati da informatici come Studi effettuati da informatici come Andrew TanenbaumAndrew Tanenbaum

dimostrarono che le CPU prodotte allora erano molto dimostrarono che le CPU prodotte allora erano molto sovradimensionate rispetto alle reali esigenze dei sovradimensionate rispetto alle reali esigenze dei programmi.programmi.

Tanenbaum dimostrò che il 98% delle costanti in un Tanenbaum dimostrò che il 98% delle costanti in un programma poteva essere memorizzato con parole di 13 bit programma poteva essere memorizzato con parole di 13 bit sebbene la maggior parte delle CPU utilizzasse parole a sebbene la maggior parte delle CPU utilizzasse parole a multipli di 8 bit (quindi 8/16/24 etc.) e quindi sprecasse multipli di 8 bit (quindi 8/16/24 etc.) e quindi sprecasse spazio. spazio.

Page 22: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Anni ’80 – Il PanicoAnni ’80 – Il PanicoAll'inizio degli anni 80 si era diffusa l'idea che l'architettura dei All'inizio degli anni 80 si era diffusa l'idea che l'architettura dei

processori avesse raggiunto il suo limite teorico di velocità. processori avesse raggiunto il suo limite teorico di velocità.

Da qui lo sforzo di trovare nuove tecnologie e tecniche in Da qui lo sforzo di trovare nuove tecnologie e tecniche in grado di realizzare processori che potessero superare tale grado di realizzare processori che potessero superare tale limite.limite.

Le direzioni prese furono:Le direzioni prese furono: La realizzazione di un processore con un set ridotto di La realizzazione di un processore con un set ridotto di

operazioni base (RISC)operazioni base (RISC) La realizzazione di architetture parallele (TRANSPUTER)La realizzazione di architetture parallele (TRANSPUTER)

Page 23: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Il problema l’integrazioneIl problema l’integrazioneDunque con la realizzazione di processori su Circuiti Integrati Dunque con la realizzazione di processori su Circuiti Integrati

viene evidenziata agli inizi degli anni ’80 la necessità di non viene evidenziata agli inizi degli anni ’80 la necessità di non poter aumentare ulteriormente la scala di integrazione e di poter aumentare ulteriormente la scala di integrazione e di conseguenza non poter garantire il trend di crescita conseguenza non poter garantire il trend di crescita prefissato.prefissato.

Per tal motivo i tecnici in quel periodo si realizzano i primi Per tal motivo i tecnici in quel periodo si realizzano i primi processori RISC (Berkeley 1980) che, tramite la processori RISC (Berkeley 1980) che, tramite la combinazione di un numero finito di funzioni, riescono a combinazione di un numero finito di funzioni, riescono a gestire tutte le operazioni richieste.gestire tutte le operazioni richieste.

Page 24: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

CISC e RISCCISC e RISCCISC (Complex Instruction Set Computers) è la architettura CISC (Complex Instruction Set Computers) è la architettura

che prevede all’interno del processore la realizzazione di che prevede all’interno del processore la realizzazione di una grande quantità di funzioni.una grande quantità di funzioni.

RISC (Reduced Instruction Set Computers) è la architettura RISC (Reduced Instruction Set Computers) è la architettura che prevede all’interno del processore la realizzazione di che prevede all’interno del processore la realizzazione di solo una minima quantità di funzioni, le quali, combinate, solo una minima quantità di funzioni, le quali, combinate, permettono la realizzazione di operazioni complesse. permettono la realizzazione di operazioni complesse.

((le uniche operazioni in grado di accedere alla memoria sono le operazioni di load e di store)le uniche operazioni in grado di accedere alla memoria sono le operazioni di load e di store)

Page 25: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

La evoluzione sul mercato.La evoluzione sul mercato.Dopo un decennio ( 1980-1989 ) di studio si colma il divario e Dopo un decennio ( 1980-1989 ) di studio si colma il divario e

all'inizio degli anni 90 i processori RISC superano i all'inizio degli anni 90 i processori RISC superano i processori CISC praticamente in ogni campo.processori CISC praticamente in ogni campo.

Tuttavia scelte commerciali portano la INTEL ( e la AMD ) a Tuttavia scelte commerciali portano la INTEL ( e la AMD ) a continuare a mantenere una architettura CISC, prefendo continuare a mantenere una architettura CISC, prefendo demandare ai compilatori la scomposizione delle istruzioni demandare ai compilatori la scomposizione delle istruzioni complesse in istruzioni più semplici (RISC)complesse in istruzioni più semplici (RISC)

Attualmente – tranne il mondo x86 - la restante componente di Attualmente – tranne il mondo x86 - la restante componente di processori è RISC. (i-pod, decoder tv, x-box, etc )processori è RISC. (i-pod, decoder tv, x-box, etc )

Page 26: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

ParallelizzazioneParallelizzazioneContemporaneamente alla realizzazione di processori RISC, Contemporaneamente alla realizzazione di processori RISC,

un’altra direzione - per ovviare al problema della un’altra direzione - per ovviare al problema della saturazione della velocità raggiungibile - fu quella della saturazione della velocità raggiungibile - fu quella della parallelizzazione delle operazioni.parallelizzazione delle operazioni.

Una CPU a basso costo, pensata in quest'ottica, avrebbe Una CPU a basso costo, pensata in quest'ottica, avrebbe permesso di aumentare la velocità di calcolo di una permesso di aumentare la velocità di calcolo di una macchina aggiungendo altri processori simili, scelta macchina aggiungendo altri processori simili, scelta potenzialmente molto più economica di una basata su un potenzialmente molto più economica di una basata su un singolo e più potente processore.singolo e più potente processore.

Page 27: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

I TrasputerI TrasputerIl INMOS Transputer era un pionieristico design di un Il INMOS Transputer era un pionieristico design di un

microprocessore per il calcolo parallelo prodotto dalla microprocessore per il calcolo parallelo prodotto dalla INMOS, una piccola azienda inglese, negli anni '80. INMOS, una piccola azienda inglese, negli anni '80.

L'obiettivo era di produrre una famiglia di chip, limitati in L'obiettivo era di produrre una famiglia di chip, limitati in costo e potenza, che avrebbero potuto poi essere costo e potenza, che avrebbero potuto poi essere connessi tra loro per formare un computer completo. connessi tra loro per formare un computer completo.

Il nome era stato scelto per indicare il ruolo che il singolo Il nome era stato scelto per indicare il ruolo che il singolo Transputer avrebbe avuto: molti di loro sarebbero stati Transputer avrebbe avuto: molti di loro sarebbero stati usati come "mattoni di base", proprio come i transistor usati come "mattoni di base", proprio come i transistor lo erano stati precedentemente.lo erano stati precedentemente.

Page 28: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Set di Istruzioni InterneSet di Istruzioni InterneIl set di istruzioni macchina del Trasputer conteneva Il set di istruzioni macchina del Trasputer conteneva

la codifica dell'istruzione, rendendolo un vero la codifica dell'istruzione, rendendolo un vero RISC.RISC.

Inoltre le istruzioni meno frequentemente utilizzate Inoltre le istruzioni meno frequentemente utilizzate erano supportate tramite la codifica di istruzioni erano supportate tramite la codifica di istruzioni chiamata Operate (Opr), la quale decodificava la chiamata Operate (Opr), la quale decodificava la costante di dati come un codice di operazione costante di dati come un codice di operazione esteso, fornendo un'espansione del set di esteso, fornendo un'espansione del set di istruzione facile e quasi infinita.istruzione facile e quasi infinita.

Page 29: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

OCCAMOCCAMPer la programmazione dei transputer, la Per la programmazione dei transputer, la

INMOS ha progettato un linguaggio INMOS ha progettato un linguaggio apposito, chiamato Occam.apposito, chiamato Occam.

In effetti è più corretto dire che il Transputer fu In effetti è più corretto dire che il Transputer fu progettato specificatamente per eseguire progettato specificatamente per eseguire codice Occam, come molti processori CISC codice Occam, come molti processori CISC dell'epoca erano pensati per eseguire Pascal dell'epoca erano pensati per eseguire Pascal o C.o C.

Page 30: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

La evoluzione sul mercato.La evoluzione sul mercato.Nel 1983 esce in commercio il primo trasputer Nel 1983 esce in commercio il primo trasputer

la cui architettura e performances erano la cui architettura e performances erano nettamente superiori a “cugini” x86.nettamente superiori a “cugini” x86.

Nel 1987 esce il T9000, dotato di virgola Nel 1987 esce il T9000, dotato di virgola mobile e supporto alla “superscalarità”.mobile e supporto alla “superscalarità”.

Nel 1989 il progetto fallisce e la INMOS viene Nel 1989 il progetto fallisce e la INMOS viene acquisita dalla SGS-Thomson.acquisita dalla SGS-Thomson.

Page 31: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Considerazioni.Considerazioni.Nei primi anni '80 sembrava che le CPU Nei primi anni '80 sembrava che le CPU

convenzionali avessero raggiunto il loro convenzionali avessero raggiunto il loro limite riguardo alle performance.limite riguardo alle performance.

Le soluzioni proposte (RISC e TRASPUTER) Le soluzioni proposte (RISC e TRASPUTER) benchè realizzassero forti miglioramenti non benchè realizzassero forti miglioramenti non avevano fatto i conti con:avevano fatto i conti con:

Diffusione della architettura x86 (Diffusione della architettura x86 (CISCCISC)) Costo del processore prodotto (Costo del processore prodotto (TRASPUTERTRASPUTER))

Page 32: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Considerazioni.Considerazioni.I problemi ipotizzati nel 1980 (integrazione) si I problemi ipotizzati nel 1980 (integrazione) si

sono riproposti 15 anni dopo.sono riproposti 15 anni dopo.

Gli studi effettuati in quegli anni sono stati Gli studi effettuati in quegli anni sono stati dunque elaborati ed applicati ai moderni dunque elaborati ed applicati ai moderni processori.processori.

A tendere, le innovazioni introdotte negli anni A tendere, le innovazioni introdotte negli anni ’80 sono riuscite ad imporsi.’80 sono riuscite ad imporsi.

Page 33: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

RISC in maniera SoftwareRISC in maniera SoftwareI moderni processori x86 - pur mantenendo (I moderni processori x86 - pur mantenendo (per per

compatibilità con le versioni precedenticompatibilità con le versioni precedenti) una architettura ) una architettura CISC – lasciano ai compilatori la CISC – lasciano ai compilatori la scomposizione delle istruzioni complesse in scomposizione delle istruzioni complesse in istruzioni più semplici (RISC).istruzioni più semplici (RISC).

I nuovi x86 a 64 bit prevedono una ISA I nuovi x86 a 64 bit prevedono una ISA ottimizzata in questa direzione.ottimizzata in questa direzione.

Page 34: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Parallelizzazione nei x86Parallelizzazione nei x86La parallelizzazione dei processi è stata anche La parallelizzazione dei processi è stata anche

essa rielaborata ed utilizzata nei moderni essa rielaborata ed utilizzata nei moderni processori.processori.

Il compito di “parallelizzare” non viene però Il compito di “parallelizzare” non viene però demandato al programmatore ma al S.O. che demandato al programmatore ma al S.O. che gestisce più core in parallelo.gestisce più core in parallelo.

Di nuovo viene preferita la compatibilità con Di nuovo viene preferita la compatibilità con quanto presente attualmente sul mercato.quanto presente attualmente sul mercato.

Page 35: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

Cosa abbiamo tralasciato.Cosa abbiamo tralasciato.La analisi ivi proposta è ad alto livello e non La analisi ivi proposta è ad alto livello e non

tiene conto delle innovazioni avvenute nello tiene conto delle innovazioni avvenute nello stesso periodo a livello di integrazione.stesso periodo a livello di integrazione.

Il numero di transistor presenti sui chip varia Il numero di transistor presenti sui chip varia in maniera incrementale secondo la nota in maniera incrementale secondo la nota “legge di Moore” “legge di Moore”

Finchè il trend di integrazione non varia Finchè il trend di integrazione non varia (diminuendo) le architetture non avranno (diminuendo) le architetture non avranno sensibili variazioni.sensibili variazioni.

Page 36: Storia dell'informatica e del calcolo automatico I Computer Come si è giunti alle moderne scelte architetturali. Michelangelo Lamonica.

Storia dell'informatica e del calcolStoria dell'informatica e del calcolo automaticoo automatico

BibliografiaBibliografiaVon Neumann Von Neumann http://it.wikipedia.org/wiki/John_von_Neumannhttp://it.wikipedia.org/wiki/John_von_Neumann

Sist. BinarioSist. Binario http://http://itit..wikipediawikipedia..orgorg//wikiwiki/Sistema_numerico_binario/Sistema_numerico_binario

C.P.U. C.P.U. http://http://itit..wikipediawikipedia..orgorg//wikiwiki/CPU/CPU

IntegrazioneIntegrazione http://en.http://en.wikipediawikipedia..orgorg//wikiwiki//VeryVery--largelarge-scale_-scale_integrationintegration

TrasputerTrasputer http://http://itit..wikipediawikipedia..orgorg//wikiwiki/INMOS_/INMOS_TransputerTransputerX86X86 http://http://itit..wikipediawikipedia..orgorg//wikiwiki/Architettura_x86/Architettura_x86 ISAISA http://it.wikipedia.org/wiki/Instruction_sethttp://it.wikipedia.org/wiki/Instruction_setLegge Legge didi Moore Moore http://it.wikipedia.org/wiki/Legge_di_Moorehttp://it.wikipedia.org/wiki/Legge_di_Moore