5.2.11 · D1 · HinglishProcessor Datapath & Pipelining

FoundationsDeep pipelining trade-offs

2,574 words12 min read↑ Read in English

5.2.11 · D1 · Hardware › Processor Datapath & Pipelining › Deep pipelining trade-offs


0. Woh picture jis par sab kuch baith ta hai: the assembly line

Kisi bhi symbol se pehle, dekho ki pipeline kya hoti hai.

Figure — Deep pipelining trade-offs

Har instruction (ek car body) fixed stations (stages) mein left se right move karti hai. Har clock tick par, sab ek saath ek station right shift karte hain. Red car woh hai jo hum follow kar rahe hain; uske peeche black cars pehle se kaam mein hain. Woh "sab ek saath" hi poora trick hai — jab ek instruction decode ho rahi hai, doosri fetch ho rahi hai.

Neeche sab kuch is picture ko describe karne wale numbers hain.


1. Har tick ka time:

Picture: assembly-line figure mein, shifts ke beech pause ki length hai. Ise chota karo → cars zyada baar move karti hain → zyada cars per second khatam hoti hain.

Topic ko isko kyun chahiye: deep pipelining ka poora game ko shrink karna hai. Har trade-off ultimately yahi hai — "kya chota hua, aur kis cost par?"

Kyunki sab stations ek saath shift karte hain, sabko ek jitna time milta hai. Isliye sabse slow station se chota nahi ho sakta — chain apni slowest link jitni slow hoti hai.


2. Ticks per second: aur kyun

Yeh exact formula kyun? Agar har tick seconds leti hai, toh ek poore second mein tum fit kar sakte ho Yeh bas "ek second mein kitne 2-ns gaps fit hote hain?" hai — yeh physics nahi, counting hai. Hum reciprocal (one-over) use karte hain kyunki "time per event" aur "events per time" hamesha reciprocals hote hain, jaise "seconds per lap" aur "laps per second" hote hain.

Topic ko isko kyun chahiye: designers frequency advertise karte hain, lekin frequency sirf cycle time ke baare mein chupaaya hua statement hai. Jab parent kehta hai "more stages → higher ", iska literally matlab hai "thinner stages → smaller ".


3. Ek stage mein kaam: (the "combinational delay")

Picture: har station ke andar, signals logic gates mein ripple karte hain jaise dominos girte hain. woh time hai jo aakhri domino girne mein lagta hai.

Figure — Deep pipelining trade-offs

Greek letter kyun? Bas tradition — engineers reserve karte hain "ek choti delay" ke liye. Koi hidden meaning nahi; ise "ek stage ki think-time ka letter" samjho.

Topic ko isko kyun chahiye: ek bade station ko do mein split karne ka matlab hai ki har half ka chota hoga. Chota → chota cycle → higher . Yahi poori motivation hai deeper jaane ki.


4. Stations ke beech ka glue: pipeline registers aur

Yahan woh hidden cost hai jo assembly-line picture ne nahi dikhaya. Do stations ke beech ek holding shelf hai jo ek stage ka result pakad ke rakhti hai taaki agla stage use saaf tarike se padh sake.

Figure — Deep pipelining trade-offs

Woh shelf instant nahi hai. Isme teen pieces se bana time lagta hai:

Topic ko isko kyun chahiye — yeh sabse crucial hai: ek fixed cost hai jo stages add karne par shrink nahi hota. shrink hota hai jab tum split karte ho; nahi hota. Isliye real cycle time hai aur chahe kitna bhi thin slice karo, tum kabhi se neeche nahi ja sakte. Yahi ek fact woh wall hai jiske around poora parent note ghumta hai.


5. Stations count karna: aur total kaam

Isse pehle ki hum keh sakein ki badhne par kya hota hai, hume "poore kaam" ke liye ek naam chahiye jo stages milkar karte hain.

Picture: §3 wali domino chain ki poori length hai isse stations mein kaatne se pehle. Use equal pieces mein kaato aur har piece lambi hai.

Topic ko isko kyun chahiye: ka naam hone ke baad, hum cycle time ko depth ke function ke roop mein likh sakte hain. padhte hain "woh cycle time jo tum stages choose karne par paaoge" — parentheses sirf matlab hai " depend karta hai par", jaise "" ka matlab hai price weight par depend karti hai.

Jaise badhta hai pehla term zero ki taraf melt karta hai aur — register floor. Yahi limit hai kyun "deeper" help karna band kar deta hai.


6. Har tick mein kaam, aur total throughput: CPI aur

Frequency akela jhooth bolta hai, kyunki har tick useful kaam nahi karta. Hume ek doosra number chahiye.

Picture: assembly line ko hiccup karte socho — kabhi kabhi ek station ko freeze karna padta hai (ek bubble, ek khaali slot) wait karte hue. Har frozen tick ek wasted cycle hai jo instructions mein spread hoti hai, CPI ko ideal se upar le jaati hai.

Ab hum woh cheez naam de sakte hain jis ki hume actually parwah hai — instructions finished per second.

Topic ko isko kyun chahiye: deep pipelines badhate hain lekin CPI bhi badhate hain (zyada hiccups). Agar dono same factor se badhein, toh unchanged rehta hai — tum kuch nahi gain karte, exactly Pentium 4 story. woh accountant hai jo hidden losses pakadta hai. Un hiccups ke causes ki apni note hai: Pipeline Hazards.


7. Deep hone par hiccups kyun bure ho jaate hain: flush penalty

Figure — Deep pipelining trade-offs

Picture: galat guess ka matlab hai ki line mein branch ke peeche currently har car scrap ho jaati hai. Ek 5-station line mein 4 cars tak scrap hoti hain (); ek 20-station line mein 19 tak (). Lambi line → galat guess par bahut bada loss. Isliye CPI ke saath climb karta hai aur isliye branch prediction accuracy deep pipelines mein itni zyada matter karti hai.


8. Power symbols: , , ,

Yeh shape kyun? Har switch ek energy move karta hai (size ka bucket pressure tak fill karne ki energy ke saath badhti hai), aur yeh times per second hota hai — energy per event times events per second = power. isliye sabse strong lever hai, jo Dynamic Voltage and Frequency Scaling (DVFS) se tied hai.

Topic ko isko kyun chahiye: deep pipelines push up karte hain aur sets of registers add karte hain (zyada ), isliye power do fronts par climb karti hai. Yahi woh thermal wall hai jisme Pentium 4 jakar pada.


Prerequisite map

Assembly line picture: stages

Tcycle: time per tick

tau: work in one stage

Pipeline register: t_reg overhead

f = 1 over Tcycle

Tcycle = tau + t_reg

k: number of stages

T0: total logic work

Penalty_misp = k minus 1

CPI: cycles per instruction

R throughput = f over CPI

P_dynamic = C V squared f

Deep pipelining trade-offs

Ise top-down padho: picture timing symbols spawn karti hai; timing deti hai; depth aur total kaam dono timing floor aur hazard cost mein feed karte hain; aur CPI milke throughput banate hain; poori cheez power ceiling se milti hai — aur woh collision hi topic hai.


Equipment checklist

Right side cover karo aur reveal karne se pehle har ek ka jawab dene ki koshish karo.

kya measure karta hai, aur uska minimum kya set karta hai?
Do clock ticks ke beech ka time; uska minimum slowest single stage ki delay plus register overhead se set hota hai.
kyun hai kuch aur kyun nahi?
Kyunki "ticks per second" "seconds per tick" ka reciprocal hai — pure counting, jaise laps/second vs seconds/lap.
kya hai aur ise kya shrink karta hai?
Ek stage ke andar useful logic delay; ek stage ko zyada, thinner stages mein split karne se har stage ka shrink hota hai.
kya hai aur se uska kya relation hai?
Ek un-split block mein poore instruction ki total logic delay; use equal stages mein split karne se milta hai.
ke teen pieces kya hain, aur yeh depth ke saath kyun nahi shrinkta?
; yeh ek fixed per-register tax hai jo har stage par pay hoti hai chahe stage kitni bhi thin ho.
aur ke terms mein real cycle time likho.
.
Jab fixed total work ke saath, kis cheez ke paas jaata hai?
— register floor; deeper ise beat nahi kar sakta.
Ek perfect pipeline ke liye CPI kya hota hai, aur deep pipelines mein yeh kyun badhta hai?
Ideally ; yeh badhta hai kyunki deeper pipelines zyada bade stalls aur flushes (bubbles) suffer karte hain.
Misprediction penalty kitni badi hai aur depth kyun hurt karta hai?
cycles; lambi pipe mein galat guess par scrap karne ke liye zyada wrongly-fetched instructions hoti hain.
Frequency badhane se power roughly quadratically kyun badhti hai?
: power directly ke saath aur voltage squared ke saath scale hoti hai, aur voltage ko often higher hit karne ke liye badhana padta hai.
aur CPI ko ek true throughput measure mein combine karo.
— frequency akela jhooth bol sakta hai agar CPI worsens.