Prefetch buffer
Già a partire dallo Stretch IBM (1959) i calcolatori erano in grado di leggere le istruzioni della memoria in anticipo in modo da averle a disposizione quando necessario.Tali istruzioni venivano immagazzinate in un insieme di registri chiamato "prefetch buffer".
Pipelining (1989,i486)
La tecnica di pipeline estende questa strategia ancora di più...
Infatti divide l'eecuzione in molte fasi, ognuna delle quali viene gestita da un pezzo di hardware in modo quasi "parallelo".

Fetch: lettura dell'istruzione in memoria che viene messa in un buffer
Decode: decodifica dell'istruzione (tipo e operandi)
Memory access: lettura degli operandi in memoria (o in un registro)
Execute: esecuzione dell'istruzione
Writeback: invio dei risultati al registro appropriato.
- Alcune definizioni
La latenza è il tempo di esecuzione di una istruzione.
L' ampiezza di banda è il numero di istruzioni eseguibili in un secondo (MIPS)
Con una velocità di ciclo di T nanosecondi ed n stadi di pipeline,
la latenza è nT (nanosecondi)
l'ampiezza di banda è 1000/T mips (million instructions second)
Ovviamente la latenza totale aumenta con il numero di pipeline...
- Architetture superscalari
Ormai all'ordine del giorno, con il termine a.scalare si intende l'utilizzo particolare di più pipeline in un processore.Tuttavia ciò comporta il presentarsi dei parecchi problemi dovuti alle esecuzioni in parallelo ( ).
Il problema più evidente che si manifesta con l'utilizzo di più pipeline è che le due (o più) istruzioni eseguite in parallelo non devono entrare in conflitto (ossia non devono utilizzare gli stessi registri o necessitare l'una del risultato dell'altra).
Per evitare questi conflitti si utilizzano calcoli statistici e buon senso.
Con CPU di più alto livello (si intende P2) viene utilizzato un approccio differente. Infatti esso è dotato di una pipeline singola ma con unità funzionali multiple e ovviamente necessita di più ALU che funzionino contemporaneamente.
Il termine "superscalare" venne coniato nel 1987 ad indicare tale genere di approccio al pipelining.
{mosgoogle}
Sostenete il rinnovamento del sito dando un'occhiata ai link pubblicitari che vi interessano.
| Commenti |
|













