Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 39

HC VIN CNG NGH BU CHNH VIN THNG

BI GING MN
KIN TRC MY TNH

Ging vin: Ths. Trng Giang


Ngy sinh: 05/01/1987
Chuyn mn: Th.s Cng ngh thng tin
in thoi: 0975.388.005
E-mail: giangdaohanam@gmail.com

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

NI DUNG
1.
2.
3.
4.
5.
6.
7.
8.

www.ptit.edu.vn

Gii thiu v CPU pipeline


Cc vn ca pipeline
Gii quyt vn xung t ti nguyn
Gii quyt vn xung t d liu
Qun l r nhnh trong pipeline
Gii thiu pipeline ca mt s CPU
Siu pipeline
Cu hi n tp

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 2

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline Dy chuyn lp rp t

Mi dy chuyn
lp rp c chia
thnh nhiu cng
on;

Nhiu t cng
c lp rp trn
mt dy chuyn;
Ti mi cng on,
mt phn vic c
hon thnh;
Sau mi nhp thi
gian mt t hon
thin cui dy
chuyn v mt t
bt u hnh thnh
u dy chuyn.
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 3

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline Nguyn l

Khng pipeline

C pipeline
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 4

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline Nguyn l


Vic thc hin lnh c chia nh thnh cc giai on
5 giai on ca mt h thng load-store n gin:
Instruction Fetch - IF: c lnh t b nh (hoc cache)
Instruction Decode - ID: gii m lnh v c cc ton hng
Execute - EX: thc hin lnh; nu l lnh truy nhp b nh: tnh
ton a ch b nh
Memory Access - MEM: c/ghi b nh; no-op nu khng
truy nhp b nh
Write Back - WB: Ghi kt qu vo cc thanh ghi.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 5

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline Nguyn l

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 6

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline c im


L dng x l song song mc lnh (instruction level
parallelism (ILP));
Mt pipeline l y (fully pipelined) khi n lun tip nhn
mt lnh mi ti mi chu k ng h;
Ngc li, mt pipeline l khng y khi c mt s chu
k tr trong tin trnh thc hin;
S lng cc giai on (stages) trong pipeline ph thuc
vo thit k vi x l:

2,3, 5 giai on (pipeline n gin)


14 giai on (PII, PIII)
20-31 giai on (P4)
12-15 giai on (Core)

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 7

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline P6 (PIII, M)

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 8

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.1 Gii thiu CPU pipeline S lng stages


Thi gian thc hin mi giai on
Cc stages nn c thi gian thc hin bng nhau
Cc stages chm cn c tch nh

Cc vn lin quan n ti nguyn


iu g xy ra khi hai giai on c lnh v c ton hng u
truy nhp b nh?
iu g xy ra khi hai giai on c lnh v thc hin lnh (tnh
a ch b nh) u truy nhp PC?

Pipeline di bao nhiu l tt?


V nguyn tc: cng nhiu stages, hiu qu cng cao
Pipeline di nu b trng rng v mt l do no s tn nhiu
thi gian in y.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 9

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.2 Cc vn ca pipeline Logic gate hazard

Logic Gate Hazard

Gi tr ra mong i (theo thit k) lun l 0 (false)


Tuy nhin, trong mt s thi im gi tr ra l 1 (true)
Hazard (khng theo thit k).

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 10

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.2 Cc vn ca pipeline
Vn xung t ti nguyn (resource conflicts)
Xung t truy nhp b nh
Xung t truy nhp cc thanh ghi

Tranh chp d liu (Data hazards):


Vn read after write hazard (RAW)

Cc lnh r nhnh (Branch instructions)


Khng iu kin
C iu kin
Gi thc hin v tr v t chng trnh con

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 11

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.3 Xung t ti nguyn


Khng ti nguyn phc v CPU;
V d: nu b nh ch h tr mt truy nhp ti mi thi im
v nu ti cng mt thi im, pipeline yu cu hai truy
nhp b nh (c lnh ti giai on IF v c d liu ti
giai on ID) ny sinh xung t.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 12

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.3 Xung t ti nguyn


Gii php: Thm ti
nguyn hoc nng cao
nng lc phc v ca ti
nguyn:
Memory/Cache: h tr
nhiu truy nhp ti mt
thi im;
Chia cache thnh 2 phn:
I-Cache v D-Cache
ci thin kh nng truy
nhp.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 13

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.4 Xung t d liu RAW


Xem xt hai lnh:
ADD R1, R1, R3 ;R1 R1+R3
SUB R4, R1, R2 ;R4 R1-R2

Lnh SUB s dng kt qu ca ADD c s ph thuc d


liu gia hai lnh
SUB c R1 trong giai on 2 (ID), cn ADD ghi kt qu
trong giai on 5 (WB)
SUB c gi tr c ca R1 trc khi ADD lu gi tr mi ca
R1.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 14

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.4 Xung t d liu RAW

ADD R1, R1, R3 ;R1 R1+R3


SUB R4, R1, R2 ;R4 R1-R2
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 15

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.4 Xung t d liu RAW Hng khc phc


Nhn dng RAW hazard khi n din ra
Khi RAW hazard xy ra, tm dng (stall) pipeline cho n
khi lnh pha trc hon tt giai on WB.
C th s dng compiler nhn dng RAW v:
Chn thm cc lnh NO-OP vo gia cc lnh c th gy ra
RAW;
Thay i trt t cc lnh trong chng trnh v chn cc lnh
c lp vo gia cc lnh c th gy ra RAW;

S dng phn cng nhn dng RAW v d on trc


gi tr d liu ph thuc.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 16

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.4 Xung t d liu RAW Hng khc phc

Li thi im thc hin SUB bng cch chn


thm 3 lnh NO-OP

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 17

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.4 Xung t d liu RAW Hng khc phc

Chn thm 3 lnh c lp d liu vo


gia 2 lnh ADD v SUB c th sinh ra RAW
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 18

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh trong pipeline


T l cc lnh r nhnh trong chng trnh khong 10-30%.
Lnh r nhnh gy ra:
Ngt qung qu trnh thc hin bnh thng ca chng trnh;
Lm cho pipeline trng rng nu khng c bin php phng
nga/ngn chn.

Vi cc VXL c pipeline di nh P4 (31 stages) v nhiu


pipeline chy song song, vn lnh r nhnh cng tr nn
phc tp:
Phi y ton b cc lnh ang thc hin cc ng khi gp
lnh r nhnh;
Np mi cc lnh t a ch r nhnh vo pipeline. Tiu tn
nhiu thi gian in y pipeline.
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 19

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh trong pipeline

Khi gp lnh r nhnh, cc lnh k tip np b y ra khi


pipeline v sau cc lnh t a ch ch c np vo
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 20

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh Cc gii php


1. Branch Targets (ch r nhnh)
2. Conditional Branches (r nhnh c iu kin)
Delayed Branching (lm chm r nhnh)
Branch Prediction (d on r nhnh)

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 21

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh PIII Branch Targets

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 22

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh Branch Targets


Khi mt lnh r nhnh c thc thi, lnh tip theo c
np l lnh a ch ch (target), khng phi lnh k tip
lnh nhy.

JUMP <Address>
ADD R1, R2
Address: SUB R3, R4

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 23

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh Branch Targets


Lnh r nhnh c nhn bit giai on ID, vy c th
bit trc chng bng cch gii m sm.
S dng Branch Target Buffer (BTB) lu vt ca cc
lnh r nhnh c thc thi:

Cc a ch ch ca cc lnh r nhnh
Lnh ch ca cc lnh r nhnh

Nu cc lnh r nhnh c ti s dng (trong vng lp):


/c ch r nhnh ca chng c th c s dng m khng
cn tnh ton li;
Cc lnh r nhnh c th c s dng ngay m khng cn
phi np li t b nh.
Vic ny thc hin c do a ch v lnh ch r nhnh
thng khng thay i.

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 24

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5 Qun l r nhnh R nhnh c iu kin


Vic qun l cc lnh r nhnh c iu kin (conditional
branches) phc tp hn do:
C 2 lnh r nhnh ch phi la chn;
Khng th xc nh chnh xc lnh ch r nhnh cho n khi
lnh r nhnh thc hin.
Branch Target Buffer cng khng th hn ch c tr do ta
vn phi ch cho n khi bit c ch ca lnh r nhnh.

Gii php:
Delayed branching: lm chm r nhnh
Branch prediction: d on r nhnh

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 25

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Delayed branching


tng chnh: lnh r nhnh s khng gy ra s r nhnh
tc th m c lm tr mt s chu k, ph thuc vo
chiu di ca pipeline.
c im ca Delayed branching:
Lm vic tt nht trn cc VXL RISC cc lnh c thi gian
thc hin ngang nhau;
Pipeline ngn (thng l 2 stages)
Lnh ngay sau lnh r nhnh lun c thc hin, khng ph
thuc vo kt qu ca lnh r nhnh.

Cch thc hin:


S dng compiler chn thm lnh NO-OP vo sau lnh r
nhnh, hoc;
Chuyn 1 lnh c lp t trc ra ngay sau lnh r nhnh.
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 26

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Delayed branching


Cho dy lnh:
ADD R2, R3, R4
CMP R1,0
JNE somewhere

Thm NO-OP sau lnh r nhnh


ADD R2, R3, R4
CMP R1,0
JNE somewhere
NO-OP

Chuyn lnh c lp pha trc ra ngay sau lnh r nhnh:


CMP R1,0
JNE somewhere
ADD R2, R3, R4
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 27

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Delayed branching

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 28

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Delayed branching


D thc hin thng qua ti u trong ho trnh bin dch,
khng i hi phn cng c bit;
Gim hiu nng khi pipeline di nu ch chn thm NO-OP.
V d nu pipeline c 5 stages -> i hi 5 lnh NO-OP.
Thay NO-OP bng lnh c lp c th gim ~70% NO-OP.
Tng phc tp ca m chng trnh.
i hi ngi lp trnh v ngi vit trnh bin dch phi c
hiu bit su v kin trc pipeline ca cc VXL -> y l mt
hn ch ln.
Gim tnh kh chuyn ca m chng trnh, do khi kin trc
VXL thay i -> vit li hoc dch li.
www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 29

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Branch prediction


tng: c th d on lnh ch ca lnh r nhnh c
iu kin.
on ng: gip tng hiu nng
on sai: y cc lnh np pha sau lnh r nhnh, np
lnh ch r nhnh.

Trng hp xu nht:
50% on ng v 50% on sai
Kt qu khng xu hn khng d on

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 30

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.5.1 R nhnh c iu kin - Branch prediction


Cc c s d on r nhnh:
Cc lnh nhy ngc:
Thng l mt phn ca mt vng lp;
Cc vng lp thng c thc hin nhiu ln
Ln lp cui c th sai

Cc lnh nhy xui kh d on hn:


C th l lnh kt thc vng lp
C th lnh nhy da trn mt iu kin

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 31

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.6 AMD K6-2 pipeline

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 32

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.6 Intel P6 (PIII, M) pipeline

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 33

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.6 Intel P4 pipeline

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 34

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.6 Intel Core 2 Duo pipeline

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 35

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.6 Intel Atom 16-stage pipeline

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 36

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a. 7 Siu pipeline


Siu pipeline (Superpipelining) l k thut cho php:
Tng su ca ng lnh
Tng tc ng h
Gim thi gian tr cho tng giai on thc hin lnh

VD: nu giai on thc hin lnh bi ALU ko di chia


thnh mt s giai on nh gim thi gian ch cho cc
giai on ngn.
Pentium 4 siu ng vi 20 giai on:

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 37

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a. 7 Siu pipeline

Pentium 4
siu ng
vi 20 giai
on

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 38

BI GING MN KIN TRC MY TNH

CHNG 3a CPU PIPELINE

3a.8 Cu hi n tp
1. CPU pipeline l g v cc c im?
2. Cc vn ca pipeline
3. Vn xung t d liu trong pipeline v gii php khc
phc
4. Vn r nhnh trong pipeline v gii php khc phc

www.ptit.edu.vn

GING VIN: TS. HONG XUN DU


B MN: KHOA HC MY TNH - KHOA CNTT1

Trang 39

You might also like