Kan noen forklare meg pipelining konseptet og dets bruk ....

G

Guru59

Guest
Hi everyone ...........Kan noen forklare meg pipelining konseptet og dets bruk ....takk

 
la anta at du og din samboer ønsker å lage litt spagetti med litt salat individuelt.Hvis du okkuperer kjøkkenet under alle dine mattilberedingen vennen din bør vente lenge for å starte sin matlaging prosessen, men hvis du lar ham bruke komfyren mens du forbereder salat dette vil være pipelining.

 
yah nøyaktig
eller når u vil gjøre ur laundry tørk det da jern det
hvis u ha en vaskemaskin, en tørketrommel og et strykejern i et rom (og de er alle delte blant mange)
og u har tre venner for eksempel A, B og C
En venn kan begynne å gjøre hele prosessen fra begynnelse til slutt, bruker opp alle ressursene i rommet og ikke la noen andre å dele dem
eller han kan begynne å vaske da så snart han begynner tørking, starter venn B vasking
og når han begynner å stryke, ville venn B være tørking og venn C skulle starte vask

dette ville være perfekt selvsagt hvis alle prosesser tar samtidig
men dette er ikke alltid tilfelle
slik at alle ville være venter for den som tar mest tid
og total tid som de vil alle ferdig i vil også avhenge av at

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smil" border="0" />
 
Mens de ovennevnte eksemplene gir deg den generelle konsepter, lurer du kanskje på hvorfor du vil gjøre dette i en FPGA.Pipelining i FPGA er ofte gjøres ikke å få gjort to jobber samtidig.Hvis det brukes ofte for å få en enkelt jobben gjort på en høyere hastighet.
Innen en FPGA er den begrensende begrensning hvor mange logiske operasjoner kan oppnås i en klokke syklus.Siden komplekse logiske operasjoner skal fordeles over flere LUTs, (se opp tabeller), og alle LUTs må legges sammen med intern ruting, du raskt få prop forsinkelser som er større enn én klokke syklus.For å løse dette, bruker du flere klokke sykluser for å oppnå den totale oppgaven med på hvert rør scenen og liten del av oppgaven er fullført.Det er typen som samlebånd tilnærming til å bygge biler.Hvert så mange sekunder, samlebåndet avanserer ett stasjon.På hver stasjon, ikke en arbeidstaker en oppgave.Når linjen er oppe og går, en ny bil ruller utenfor linjen hver gang linjen fremskritt.Derfor synes de å lage én bil per "klokke".En enkelt arbeidstaker kan ikke lage en hel bil i en "klokke" som han eller hun ikke kan få alle oppgavene gjort raskt.Men mange arbeidstakere hvert gjør en liten del kan sammen lage én bil per "klokke".Ulempen er at det tar litt tid å få samlebånd fullastet ved starten av skift, fordi arbeiderne senere på samlebånd å vente på den delvise biler å komme til dem.Dessuten er deres en tid penality når du vil endre alternativene på bilene du gjør, fordi du må vente på samlebånd for å skylle ut de biler som er delvis gjort.
Rørledninger innen FPGA fungerer på samme måte.Du må bryte oppgaver i små biter som kan oppnås i en klokke syklus.Da må du spore hvilke stadium av rørledningen hvert signal ble generert slik at du kan rekombinerer dem i riktig rekkefølge.La oss for eksempel si at du trenger og i produksjon av to logiske operasjoner.En operasjon ble beregnet i trinn 2 og den andre var beregnet på etappe 4.Du må utsette trinn 2 resultatet to ekstra klokker slik at det linjer opp med scene 4 resultater.Utgangen av det og ville da bli registrert med en flopp og vil være på etappe 5 av rørledningen.

 
Hei

Du kan finne en god forklaring på hennesy & Patterson Book
"Computer Architecture en Qauntitive tilnærming"

Salam
Hossam Alzomor
ww.ig.org

 

Welcome to EDABoard.com

Sponsor

Back
Top