Professional Documents
Culture Documents
2 Protocnost1b
2 Protocnost1b
Protonost (pipelining)
Protonost (pipelining)
Protonost je tehnika projektovanja hardvera
Protonost (nast.)
Hardver za izraunavanje bilo koje podfunkcije
Protonost (nast.)
Sinhroni model razmenom podataka upravlja
le
le
le
le
clk
A=a*2 , B=b*2
Protoni sabira
Protoni sabira
Neaka su kanjenja koja unose pojedini stepeni
T1=60 ns
T2=50 ns
T3=80 ns
T4=50 ns
T5=80 ns
TL=10 ns
Klok perioda protonog sistema je T=max {60, 50,
a protonom
Tpr=450+(n-1)*90 ns
Za n=10
Tnp=10*320=3200 ns
Tpr=450+9*90=1360 ns
Gantov dijagram
Prikazuje zauzetost pojedinih stepena u
vremenu
S5
P1 P2 P3 P4 P5 P6 P7
P1 P2 P3 P4 P5 P6 P7
S4
S3
P1 P2 P3 P4 P5 P6 P7
P1 P2 P3 P4 P5 P6 P7
S2
S1 P1 P2 P3 P4 P5 P6 P7
0
10
t [*90ns]
stepena:
prethodnog primera)
Nelinearni pored kaskadnih veza postoje veze
ulaz
izvedene u napred i povratne
(u nazad)
S1
S2
izlaz A
S3
linearno
P0
P1
P2
Pn-1
Primer n=5
P0
1
2
3
Vreme
(ciklusi)
4,3,1,2
4,3,1
4
5
5
5
5
10
P3
P4
5 1
P2
4,3,1,2,5
4,3
P1
3
4
2
2
3
4
1
2
3
1
2
1
2
1
1
Primer (nast.)
Analiza performansi
Sekvencijalni algoritam
Usvojimo da poredjenje i dodeljivanje vrednosti traju 1
vremensku jedinicu;
Sekvencijalno vreme izvrenja
T1=(n-1)+(n-2)+...+2+1=n(n-2)/2O(n2/2)
Paralelni algoritam
Paralelna implementacija ima n+n-1=2n-1 ciklusa, ako ima n
procesora i n brojeva koje treba sortirati
Svaki procesor u u jednom ciklusu obavlja poredjenje i prijem i predaju
podataka (izuzev poslednjeg)
Tciklusa = 1 + tkomunikacije
Ubrzanje
n(n 1)
T
n(n 1)
n
2
S 1
O
Tp
3n 1
2(3n 2)
6
Primer: Mnoenje
Matrica C=A*B, A3X3, B3x3
bin
aout : ain
ain
aout
bout : bin
c : c ain * bin
bout
Funkcionalno svostvo
procesnog elementa
0
0
b33
b32
b23
b31
b22
b13
b21
b12
b11
0
0
0 0 a13 a12
0
0
b31
0
b32
b33
b22
b21
b12
b13
a11 *b11
a11
b11
b23
0
0
0
0
b31
a11 * b11
0 0 a13
a12 * b21
a12
b 21
0 a23 a22
a21 *b11
b11
a33 a32 a31
0
b32
b33
b22
b13
a11 *b12
b12
a21
b23
a11
0
0
a11 * b11
00
a12 * b21
b32
a13
a13 * b31
b 31
a21 * b11
0 a23
a22 * b21
a31 *b11
a11 * b12
a12 * b22
b23
a12
b 22
a22
b 21
a33 a32
b33
a21 *b12
b12
a31
a11 *b13
b13
a21
a11 * b11
a12 * b21
a23 * b31
a23
b 31
a31 * b11
a33
a32 * b21
a12 * b22
a13
a21 * b12
a22 * b22
b 23
a22
a31 *b12
a21 *b13
b13
b 22
a32
a11 * b13
a12 b23
b 32
0
a22 * b21
a11 * b12
a13 b32
a13 * b31
a21 * b11
b33
a31
a11 * b11
a12 * b21
0
0
a32 * b21
a33 * b31
a21 * b12
a22 * b22
a13 * b33
b33
a23
b 32
a33
a31 * b12
a32 * b22
a11 * b13
a12 b23
a23 * b32
0
a31 * b11
a21 * b11
a23 * b31
a12 * b22
a13 b32
a13 * b31
a22 * b21
a11 * b12
a21 * b13
a22 * b23
b 23
a32
a 31 *b13
a11 * b11
a12 * b21
a13 * b31
a21 * b11
a22 * b21
a23 * b31
a11 * b12
a12 * b22
a12 b23
a13 b32
a21 * b12
a22 * b22
a13 * b33
a32 * b21
a33 * b31
a31 * b12
a32 * b22
a33 * b32
a21 * b13
a22 * b23
a23 * b32
a23 * b32
b33
0
a31 * b11
a11 * b13
a33
a 31 *b13
a32 * b23
a11 * b11
a12 * b21
a13 * b31
a21 * b11
a22 * b21
a23 * b31
a31 * b11
a32 * b21
a33 * b31
a11 * b12
a12 * b22
a13 b32
a11 * b13
a12 b23
a13 * b33
a21 * b12
a21 * b13
a22 * b22
a22 * b23
a23 * b32
a23 * b32
a31 * b12
a32 * b22
a33 * b32
a 31 *b13
a32 * b23
a33 * b33
Performanse:
Proizvod se dobija nakon 3n-2 koraka
Na jednoprocesorskom sistemu proizvod se dobija nakon n3 koraka
Ubrzanje:
T (1)
n3
S
O(n 2 )
Tparallel 3n 2
C11
C12
C13
C21
C22
C23
C31
C32
C33