SPM Pipeline

Previzualizare referat:

Extras din referat:

A doua metoda de crestere a performantei, care este oarecum o consecinta indirecta a miniaturizarii, este paralelismul. Daca ai mai multi vîslasi barca merge mai repede. Cu cît vîslasii sînt mai mici, cu atît poti pune mai multi în cala. (Desigur, analogia nu e perfecta, pentru ca, spre deosebire de galere, pentru un microprocesor un vîslas mai mic face la fel de multa treaba ca unul mare). Cum se aplica deci conceptul în cazul microprocesoarelor? Care e treaba unui microprocesor? Sa execute, una cîte una, instructiunile programelor scrise de utilizatori. Dar executia unei instructiuni se poate descrie ca o serie de pasi succesivi; ceva de genul: adu instructiunea din memorie, uita-te ce fel de instructiune este (o operatie aritmetica/logica, un apel de procedura, un salt, etc.), decide care date trebuie procesate (care sînt registrii care contin acele date), extrage datele din registri, efectueaza operatia asupra datelor, pune rezultatul la loc unde trebuie, si ia-o de la capat cu instructiunea urmatoare.

Daca un procesor este implementat ca un pipeline, atunci între diferitele stagii ale tevii se afla niste "tampoane", care izoleaza stagiile unul de altul. Arhitectural vorbind, tampoanele sînt de fapt tot niste registri, numiti pipeline registers. Fiecare din acesti registri este comandat de ceasul microprocesorului, si încarca în interior toate rezultatele procesarii obtinute din stagiul anterior: instructiunea, rezultatele partiale, informatii de stare, etc. .Mai exista o gramada de probleme pe care le-am trecut cu vederea, dar care devin evidente de îndata ce ne aplecam putin asupra constructiei.

Prima problema care poate aparea provine din faptul ca una dintre asertiunile mele de mai sus poate fi falsa; anume aceasta: "cînd folosea unul dintre stagii, celelalte erau inutile". Iata un exemplu în care acest lucru nu este adevarat: un procesor trebuie dupa fiecare instructiune sa incrementeze adresa de unde se ia urmatoarea instructiune (adresa este aflata în registrul numit "program counter"). Pentru ca incrementarea este o operatiune aritmetica, procesorul ar putea folosi pentru acest scop unitatea aritmetica-logica (în figura noastra am fi avut în loc de ALU si circuitul de incrementare un singur circuit). Aici avem deci un conflict: o alta instructiune, aflata în stagiul de calcul ar putea dori sa foloseasca acea unitate în acelasi timp pentru ca trebuie sa adune doua numere.

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Pipeline.doc
Alte informații:
Tipuri fișiere:
doc
Nota:
8.7/10 (3 voturi)
Nr fișiere:
1 fisier
Pagini (total):
3 pagini
Imagini extrase:
3 imagini
Nr cuvinte:
1 030 cuvinte
Nr caractere:
4 963 caractere
Marime:
8.56KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Referat
Domeniu:
Calculatoare
Predat:
la facultate
Materie:
Calculatoare
Sus!