Pipeline (CPU): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Botcrux (discussione | contributi)
m Bot, replaced: Categoria:Instruction Processing → Categoria:Instruction processing
Folto82 (discussione | contributi)
Riga 14:
[[File:Fivestagespipeline.png|thumb|upright=1.2|Esecuzione delle istruzioni in un microprocessore con pipeline]]
Una CPU con pipeline è composta da cinque stadi specializzati, capaci di eseguire ciascuno una operazione elementare di quelle sopra descritte. La CPU lavora come in una catena di montaggio cioè ad ogni stadio provvede a svolgere in maniera sequenziale un solo compito specifico per l'elaborazione di una certa istruzione. Quando la catena è a regime, ad ogni ciclo di clock dall'ultimo stadio esce un'istruzione completata. Nello stesso istante ogni unità sta però elaborando in parallelo i diversi stadi di successive altre istruzioni. In sostanza quindi si guadagna una maggior velocità di esecuzione a prezzo di una maggior complessità circuitale del microprocessore, che non deve essere più composto da una sola unità, ma da cinque unità che devono collaborare tra loro.
 
== Storia ==
Il concetto di pipeline venne sviluppato dal ricercatore [[Robert Tomasulo]] dell'[[IBM]], il primo sistema dotato di pipeline fu il [[supercomputer]] IBM [[IBM System/360|System 360/91]] presentato nel [[1966]] che grazie alla pipeline otteneva un incremento anche del 33% delle prestazioni. La pipeline si diffuse rapidamente nei supercomputer e nei server. Il primo [[microprocessore]] a utilizzare una pipeline fu il [[MOS Technology 6502]] che tramite una semplice pipeline forniva prestazioni superiori a quelli della concorrenza a una frazione del loro costo. Nel settore di microprocessori le pipeline divennero comuni con i processori [[Reduced instruction set computer|RISC]] che data la loro semplicità consentì di implementare un'architettura a pipeline completa fin dalle loro prime implementazioni negli anni ottanta. I progetti [[Berkeley RISC]] e [[Architettura MIPS|MIPS]] infatti avevano già una pipeline. I processori [[Complex instruction set computer|CISC]] utilizzarono un'architettura a pipeline completa solamente alla fine degli anni 80 per via delle maggiori difficoltà di implementazione. Attualmente tutti i microprocessori utilizzano una struttura a pipeline per migliorare le loro prestazioni.
 
== Problematiche ==