INMOS Transputer: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m ops
m correzioni varie
Riga 1:
Il '''INMOS Transputer''' era un pioneristicopionieristico design di un [[microprocessore]] per il [[calcolo parallelo]] prodotto dalla [[INMOS]], una piccola azienda inglese, negli [[Anni 1980|anni '80]]. Per qualche tempo, fin quasi al termine di quel decennio, molti considerarono il Transputer come il nuovo grande progetto per il futuro del calcolo. Oggi i suoi derivati sono utilizzati in macchine fotografiche, sistemi GPS e decoder per la TV digitale.
 
== Background ==
Nei primi anni '80 sembrava che le [[CPU]] convenzionali avessero raggiunto il loro limite riguardo alle ''performance''. Fino a quel momento i progettisti erano stati limitati principalmente dall'ammontare di circuiti che potevano piazzare su un [[chip]] a causa di problemi di costruzione. Ma con il continuo migliorare dei processi prroduttiviproduttivi il problema mutò: i chip potevano contenere più circuiti di quelli che i progettisti sapevano sfruttare. Presto le tradizionali architetture [[Complex instruction set computer|CISC]] avrebbero raggiunto il loro limite massimo possibile, e non era ben chiaro se si sarebbe potuto superarlo.
 
Sembrò che l'unico modo fosse implementare l'uso del parallelismo, cioè l'uso di svariate CPU che avrebbero lavorato assieme per compiere diversi compiti allo stesso tempo. Tutto ciò dipendeva dalla possibilità della macchina di essere in grado di eseguire più processi allo stesso tempo, capacità nota come [[multitasking]], troppo difficile da eseguire fino ad allora, ma supportata dai processori di nuova generazione. Fu chiaro che in futuro questa caratteristica sarebbe stata supportata da tutti i [[sistema operativo|sistemi operativi]].
 
Un effetto collaterale di molte architetture ''multitasking'' è che spesso permette di eseguire i processi su CPU fisicamente differenti, nel qual caso il processo è noto come ''[[multiprocessing]]''. Una CPU a basso costo, pensata in quest'ottica, avrebbe permesso di aumentare la velocità di calcolo di una macchina aggiungendo altri processori simili, scelta potenzialmente molto più economica di una basata su un singolo e più potente processore.
 
== Design==
Riga 29:
 
=== Programmazione ad alto livello ===
Per la programmazione dei transputer, la INMOS ha progettato un linguaggio apposito, ispirato ai [[Communicating Sequential Processes|CSP]] di [[C. A. R. Hoare]] e chiamato [[linguaggio di programmazione Occam|Occam]]. In effetti è più corretto dire che il Transputer fu progettato specificatamente per eseguire codice Occam, come molti processori CISC dell'epoca erano pensati per eseguire [[Pascal (linguaggio)|Pascal]] o [[C (linguaggio)|C]]. L'Occam supportava lo sviluppo di applicazioni divise in più processi e spesso la semplice scrittura di un programma in Occam risultava un'applicazione di questo tipo. Con il supporto per i task e le comunicazioni integrati nel chip e il linguaggio di programmazione che vi interagiva direttamente, scrivere il codice per cose come controllorarecontrollare un device controller divenne una banalità: anche il codice più semplice poteva controllare le porte seriali per l'I/O, e si sarebbe automaticamente messo in pausa in assenza di dati.
 
== Implementazioni ==
Riga 48:
Nonostante il Transputer fosse semplice ma allo stesso potente rispetto a molte architetture contemporanee, non riuscì mai ad avvicinarsi al suo obiettivo di essere usato universalmente sia come CPU sia come microcontrollore. Il secondo campo era dominato da macchine a 8-bit e il costo era il solo parametro considerato. Anche il T-2s era troppo potente e costoso per la maggior parte degli utenti. La mancanza di supporto del Transputer per la memoria virtuale impedì il [[porting]] delle principali varianti dei sistemi operativi [[Unix]] (anche se vennero prodotte varianti come [[Minix]] e [[Idris (sistema operativo)|Idris]] di [[Whitesmiths]].)
 
Nel campo [[desktop]] / [[workstation]] il Transputer era abbastanza veloce, operando a circa 10 [[MIPS (unità di misura)|MIPS]] a 20MHz, un'eccellente ''performance'' per i primi anni Ottanta, ma, al momento in cui venne venduto il T800, fornito di una [[Floating Point Unit|FPU]], le altre architetture RISC l'avevano già sorpassato. Questo avrebbe potuto essere mitigato dalla possiblitàpossibilità di creare macchine con più Transputer, ma il T800 costava circa 400$ al pezzo quando venne rilasciato, quindi il rapporto prezzo/potenza era svantaggioso.
 
== T9000 ==
Riga 60:
 
== Voci correlate ==
*[[architetturaArchitettura parallela]]
*[[linguaggioLinguaggio di programmazione Occam]]
 
[[Categoria:Microprocessori]]
[[categoria:microprocessori]]
 
[[de:Transputer]]