Very long instruction word: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m WPCleaner v2.04 - fix redirect da grafia non conforme o d'uso comune - Hewlett Packard |
fix /migliorata leggibilità wikitesto |
||
(4 versioni intermedie di 3 utenti non mostrate) | |||
Riga 1:
{{F|informatica|dicembre 2023}}
[[File:Itanium2.JPG|thumb|upright=1.4|Un processore a istruzioni lunghe]]
I primi metodi prevedevano la realizzazione di unità di elaborazione di tipo [[pipeline dati]], in queste unità le istruzioni vengono elaborate come fossero in una catena di montaggio. ▼
▲La '''Very Long Instruction Word''' è un'architettura obsoleta di processori. Fu sviluppata basandosi sul [[Instruction level parallelism|parallelismo di istruzione]]. Si tratta di tecniche rudimentali per eseguire più istruzioni in parallelo. I primi metodi prevedevano la realizzazione di unità di elaborazione di tipo [[pipeline (CPU)|pipeline dati]], in queste unità le istruzioni vengono elaborate come fossero in una catena di montaggio.
Un miglioramento fu portato dall'introduzione di più unità di calcolo in parallelo (più pipeline) al fine di ottenere un [[microprocessore superscalare]]. Un'ulteriore miglioria è stata l'[[esecuzione fuori ordine]] delle istruzioni. Con questa modalità di esecuzione le istruzioni non vengono eseguite secondo l'ordine previsto dal programmatore ma secondo l'ordine che permette al processore di eseguirle in parallelo.
Queste tecniche hanno un fondamentale difetto: incrementano molto la complessità del microprocessore. Per poter eseguire le operazioni in parallelo il microprocessore deve costantemente verificare le dipendenze tra le varie istruzioni e i dati al fine di eseguire correttamente i programmi. Esistono più tipologie di dipendenze, per esempio un'istruzione potrebbe dover elaborare un dato ottenuto, come risultato, da un'altra istruzione e quindi questa non potrebbe essere eseguita prima dell'altra istruzione. I moderni microprocessori dedicano molte risorse al controllo delle dipendenze e all'arrangiare le istruzioni in modo da poterne eseguire il maggior numero possibile in parallelo.
Line 14 ⟶ 12:
== Progetto ==
[[File:CPU VLIW e tradizionale.png|thumb|upright=1.4|Confronto tra una CPU tradizionale e una CPU VLIW]]
In un processore superscalare il numero di unità di calcolo non è visibile nel set di istruzioni. Ogni istruzione in formato binario codifica una sola istruzione da eseguire, che normalmente è di 32-64 bit o meno.
Line 49 ⟶ 48:
Nel 1984 Fisher abbandonò Yale per avviare la società [[Multiflow]] che fondò con John O'Donnell e John Ruttenberg. La società produsse la serie di [[minisupercomputer]] TRACE basati sull'architettura VLIW. Il primo sistema venne messo in commercio nel 1988 ed era in grado di eseguire 28 operazioni in parallelo per istruzione. I sistemi TRACE implementavano un mix di componenti MSI/LSI/VLSI su scheda, dato che per ragioni tecnologiche questo era più economico che integrare tutti i componenti in un solo integrato. La società non riuscì a vendere molti sistemi, perché i continui incrementi dell'elettronica permisero alle società produttrici di microprocessori "classici" di mantenere il passo con le soluzioni VLIW in molti campi; comunque le altre società riconobbero il valore tecnologico dell'idea difatti la Multiflow riuscì a vendere molti brevetti.
Nello stesso periodo (anni ottanta) venne
Uno dei licenziatari della tecnologia Multiflow fu la [[Hewlett-Packard]], nella quale entrò anche Fisher dopo la fine della Multiflow. Nel 1988 Bob Rau entrò a far parte della società dopo il fallimento della Cydrome, HP acquisì proprietà intellettuali anche dalla Cydrome. I due progettisti lavorarono per la società per tutti gli [[anni 1990|anni novanta]].
Line 63 ⟶ 62:
== Evoluzioni ==
L'architettura VLIW ha indubbiamente molti vantaggi ma i suoi problemi ne rendono problematico l'utilizzo in processori per computer. La necessità di ricompilare il codice per ogni generazione di processori in particolare si scontra con la necessità degli utenti di poter mantenere il parco software. Per eliminare questi problemi diverse società hanno sviluppato delle evoluzioni dell'architettura VLIW, tra le varie evoluzioni la più famosa è l'architettura [[Explicitly parallel instruction computing|EPIC]] sviluppata da [[Intel]] e [[Hewlett-Packard|HP]] congiuntamente. L'architettura EPIC ([[explicitly parallel instruction computing]]) raggruppa le istruzioni elementari in parole come una classica architettura VLIW e inserisce inoltre delle informazioni sul parallelismo tra le varie parole. In questo modo le varie generazioni del processore possono variare internamente la loro architettura senza troppi problemi. Le informazioni sul parallelismo permettono di realizzare unità di decodifica che sfruttano il parallelismo efficientemente ma sono nel contempo semplici dato che l'analisi del codice parallelo e la sua suddivisione è stata effettuata dal compilatore.
Un'altra architettura che può essere considerata un'evoluzione dell'architettura VLIW è l'[[architettura TRIPS]]. Questa architettura a differenza delle precedenti architetture richiede anche una radicale modifica del [[set di istruzioni]], difatti questa architettura utilizza un nuovo set di istruzioni chiamato [[Explicit Data Graph Execution]] (EDGE). Questo set di istruzioni considera le istruzioni come degli elementi che ricevono dati, li elaborano e li inviano ad altre istruzioni. Quindi le varie istruzioni sono legate dai dati che elaborano. EDGE in sostanza raccoglie le istruzioni che elaborano gli stessi dati in blocchi e le invia al processore. Ogni blocco di istruzioni è collegato agli altri blocchi da un grafo delle dipendenze che viene generato dal compilatore. Questo set di istruzioni permette di sviluppare il processore come tante unità di calcolo che ricevono blocchi di dati e li elaborano in parallelo, le singole unità di calcolo alla fine dell'elaborazione di un blocco possono scambiarsi delle informazioni se necessario. Questo permette di incrementare notevolmente il numero di operazioni eseguite in parallelo dal singolo processore. Quest'architettura tuttavia è attualmente (2009) un progetto di ricerca e non è detto che diventerà un prodotto commerciale.
== Note ==
<references
== Voci correlate ==
* [[Pipeline (CPU)|Pipeline]]
* [[Instruction level parallelism]]
== Altri progetti ==
{{Interprogetto|preposizione=sulla}}
== Collegamenti esterni ==
* {{FOLDOC||Very Long Instruction Word}}
* {{cita web|1=http://www.hpl.hp.com/news/2005/jul-sep/VLIW_retrospective.pdf|2=ISCA "Best Papers" Retrospective On Paper That Introduced VLIWs|lingua=en|accesso=24 ottobre 2007|dataarchivio=10 marzo 2012|urlarchivio=https://web.archive.org/web/20120310074119/http://www.hpl.hp.com/news/2005/jul-sep/VLIW_retrospective.pdf|urlmorto=sì}}
{{Portale|informatica}}
|