• Nenhum resultado encontrado

Computer Architecture

N/A
N/A
Protected

Academic year: 2021

Share "Computer Architecture"

Copied!
59
0
0

Texto

(1)

Computer Architecture

! "#

$

% & ' $( ) *+$ , 1389

(2)

% 12 3

4 (5 6 6" $ 4 7 '" , "

8 &

9: & ) ; $ -' = ! > , ! "# $

7 "# $ % ", ) (RTL

7 "# $

!& D ED

7F + G' 3$ H'" I ! >,

J3$ 1 I I

(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)

4 '" ,

= %

% I

35

%

= %

% I

45

%

,

"+ 'I 3 )N

15

%

' O 7 2 5 8 2 P

10

%

4 7

http://profs.basu.ac.ir/khotanlou

8 2 P

4

4

hassan.khotanlou@gmail.com

khotanlou@basu.ac.ir

(11)

8

9:

4 $ $ " , 7 , '( : " 3 " 7 % " ^ : !P $P G > ) :E ) I$ G7 > ' : = $ P G _5 I '&

7 !$ 3 " ) I$ ' > & I " 3 " . " 7 % !$ 4 $ $ " , 7 3 " ,5 : : _5 I '"$ !& * % " 3 " G $ !2 $* : ` = $ ( $ *9 ,5 7: 8 : a , +

, > = & " ,5 7: $ *9 $ ) b " _$ ! DN .

(12)

2 3 , 8 &

" 1 $ =

1 : $ 7! &

:

" ' $+

!$ ,

7

5

P" ) $,

!$

!

" ' $+

!$ '

$

$ "

* 4

, $+

% ,

" ' $+

> =

$$

....

7

(13)

152

*

I/O system Processor Compiler Operating System (Windows 2K) Application (Netscape) Digital Design Circuit Design Instruction Set Architecture Datapath & Control

transistors

Memory

Hardware

(14)

9:

ENIAC 1943

200 $ F$ -30 %, % -18000 g h -!+ ` J " 8 ( – 1500 i5 6" Von neuman 1946

(15)
(16)

@ A

B

2X transistors/Chip Every 1.5 to 2.0 years

2 H H / I JK 1.5 2 L N H J O

(17)
(18)

'

=

$"

) ,$ +

$"

7 &

$"

'

&

P

3: ,

P+

&

,

' $ =^

$+ ,

; $

(19)

7 "#

$

&

>,

(20)

!" #$

%&'(

%&'( )

(21)

$ % ",

7 "#

"

m:+

%

`

"

,

%

$ +

:

o

& & ' $ %b & >

o 2 "$ ! > , & ) + ) :E 7 >O3 " " ^ o '2 $ 3 + n> " = $ > '2 , %+ P & ' + .

% ",

$

RTL

:

$

$

& $ > ,

2 "$ 8 (

72 !

"

=

"

)N ; $ =

, &

% " )

RTL

+ ) F

.

, ) F

RTL

8 ( 72 ! 1"

*

%b 'I 3

' I

P >

.

(22)

! "# $% & ' ( ) *+ * & " , -& .* & / ) 0 1 . / / 3 # # " " ' # * -& "# 4 #5 ." 6 ! " & . / :

8! 9 ! / .

8! : " ' # ;& - 1 " &/ ! <#, ' # ! .

*+ -& = : " ' ! -> #? *+ #@ .

(23)

#* +" I : ' & 7 ) + ) h o ," 8 I " $ + m:+ . _$ :

MAR=Memory Address Register PC= Program Counter IR= Instruction Register R1=( ) +1 )

PC PC = $ + ) F 3 ` , : I` ; $Q " 3 %b + $ + 3 3 4 4 5 5 6 6 7 7 22 11 00 I H Q : ` & 7 " n , ' " 0 ) 7 7 ( n-1 ) g9 7 7 " % ( $ + ED ) + 7 7 15 15 88 PC(L) PC(L) PC(H) PC(H) 0 0 ;, = 7 " 2 " ' " 16 ` '& D + = , 7 (" ;, 7 ^ ` % m:+ " ) + , $ , + ) F , PC(H)= PC(8-15) PC(L)= PC( 0-7 )

(24)

." " & $ 7 >O3 ` " * " ( 7 , ; $ ) + : R2 R1 7 "> J 5 7 I $ ) $& % +$ R1 " R2 7 . I R1 w % " '^ " $ ' '2 I R2 I " " " R1 + . J S T U L V : 1 -' : , % " R1 " R2 2 -R2 , % " 7 " ^ " ) Parallel Load ( + " + .

(25)

-9# +A B

$ 3 +

:

= $ m : '2 $ 3 + ` J I 7 ( " 3 5 $ 7 ^ '& D 7 "> _$ + : 6" '2 $ : % ` F( 7 '2 " 7 "> ` 6" , 7 (" 7 "> %+ P ) $ $D + P: R2 R1 If (P=1) ( then (R2 R1) Control Circuit R2R2 R1 R1 Load Load n n P P CLK CLK

(26)

$"$ ,

Clk Clk t+1 t+1 Load (P) Load (P) t t > $ % % , J ' 5 "2 $ % zO{ t+1 5 | J F . D P z , ; " Clk + " 5

5 & : J F =& & zO{ $ > . $ 42 zO{ z > % " + n> " "2 " % " 5 = . % , ${ t $* P zO{ | ^ E2 ${ 5 t+1 " $ } ^ " P 5 " $ n> " ) + R1 " R2 + . T: R2 R1 R1 R2

(27)

" '$ = " , C : & # " " *D #4 & ) ( + -& *( / .

P: R3

R5

,

MAR

IR

#4 :+ " P=1 & ? ) *, R5 ) R3 IR ) MAR " , -& +& .

(28)

) 9 GH , )! - . / 0 1 MAR, R2 12 () , 5 )! - . R2(0-7), R2(L) 6'2 78 )! - . R2 R1 -: :1 !; < * 2 )! - . P: )!!; )= > " ; -A B, B A ? @1( L ]

(29)

A' B *

&

I

#@ ' =

: "

!

"

8 # JK

L& #M " H

#

.

I ' #

n

) #M *L )

n(n-1)

-?

N1

8! /

.

)+

:

O(n

2

)

8 - " / " *D ' ! ' #

C )

# & *& )

:&

/

' ( )

. 4 J4

bus

" , -& ." 6 !

H?

' #

(30)

@ ^@ _

L V

B

(BUS)

!$b & , ` , ( 72 ! " $ + ( =& " '> $ " " Bus + ' ) F . Bus " + JO • + 3 3: , > " % + n & 7 >O3 $$ ' 3: n " ' " $$ $ % , & 3 . , ) " Bus + ' ) F J 3 , : o & P ' 2 o ' : " & 7 D 3 2 I

(31)

Bus

B a

H

MUX

0 0 1 1 2 2 3 3 S0 S0 S1 S1 S0 S0 S1

S1 4 line Bus4 line Bus

4x1 4x1 MUX MUX A A B B C C D D 1 1 D C 1 0 B 0 1 A 0 0 Reg Selected S0 S1 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 4x1 4x1 MUX MUX 4x1 4x1 MUX MUX 4x1 4x1 MUX MUX MUX & : & ! " " ) Mux 0 & = F( 7 " bus & ^ ( ... MUX & : & "

(32)

h

&

" (

&

BUS

(

$+ "

.

,

$

7 5

S

1

S

0

+ 1 : $

I$"

'

:

BUS

D

^

.

% , &

Load

(

, $

+

5

)

,

"

"

(

$

"

."

#

"

$

A

"

B

,

J 3

4 "

"

1

,

>

+

:

'

(

BUS

= $

"^ '$ i 7 ("

=

$ ' )

7 ("

BUS A , B Bus B A

(33)

, )

Bus

! D , ) F

"

3

2 I

:

TriState

BUS

2 I

7 D

:

" ) O> %b '

:

7

2

72 I

IO3(

D

^ '

7 i

$

' `

F(

72 I %

) + )

$ h " 4$

72 I

7 D '

:

" $ 7

(

F( " $ '$

$P

> , "

7 ("

`

.

Output Y Output Y Input A Input A Control C Control C Y=A c=1 Y=High Impedance c=Ø " z 5 3 %b { > 2 I

(34)

, )

Bus

! D , ) F

"

3

2 I

:

TriState BUS

1" 2 I ! D , ) F ` % " + Bus ' : ( J 3 , ' I " ) F 2 I & b " 2 I 5 " ` , & " 1_ " 3 5 & 7 D , 'P 3 5 _I2 " % $ 3 % + " 5 2 I ` , ) F Decoder ( I +

Bus line for bit 0

A0 A0 B0 B0 C0 C0 D0 D0 2x4 2x4 Decoder Decoder Enable S0 S0 S1 S1

(35)

} $

! >,

(Micro Operation)

! >,

&

)

,

) +

&

$ ">

,

:

.1

$

7 "#

:

` ,

7 >O3

7 "#

"

$

*

$$ '

.

.2

' " I

:

) + ) :E )

' " I 7 >

"#

$ !

=

$& '

.

.3

' 3$

:

& 7 "

P

7 >

! "#

& ' = $

.

.4

Shift

:

) + ) :E )

7F +

>

! "#

$& ' = $

.

(36)

)O@ > " P ) )O@ > QR! " M -& ." " " , .

" #O " & ' ( * 8! S %& T " *+U & , )O@ > U " , $% & )O@ > .

" . %9" T " )O@ > ) - !" ' # '# ;& ' ! " " , -& ." " #5 $% & .

Memory Address Register ) MAR AR ( " , -& .* & .

' V& " , -& - !" )O@ > - 5 MAR

T " W R1 ' T " + )

"# 4 -& #5 ." 6 ! " & )O@ > . AR Memory unit Read Write Data in Data out M

(37)

)O@ > / * 1

- L, )

/ )O@ > )

/ * 1 ' #

" , -& ) , # /

:

"# JK -& C : # /

X @

Y& C : ' #

:

' V& MAR " , -& ." !#@ T " W R1 ' .

+M ! Read (= 1) " , -& ." !#@ )O@ > *> ) .

"# 4 -& #5 ." " W R1 ' .*, $% & T " ' V& .

) . 4 J4 / * & R1 " , -& +& . R1 M[MAR]

(38)

)O@ > "

,

- L, )

/ )O@ > " )

, ' #

" , -& ) , # / ) ,

:

"# JK -& C : # /

X @

Y& C : ' #

:

' V& MAR " , -& ." !#@ T " W R1 ' .

+M ! write (= 1) " , -& ." !#@ )O@ > *> ) .

* & R1 " , -& +& . 4 J4 ) .

" , -& +& )O@ > " .*, $% & V& ) * & .

(39)

'

# ' #&

A B AR DR(AD) A constant ABUS R1, R2 ABUS AR DR M[R] M DR M M DR / B ) A 8 5 AD / DR ) AR ) '#+ 8 * & A / & R1 ) . 4 J4 / . 4 J4 ) R2 T " ." " .*, $% & )O5 > ) R ' ( ) 5 - 4 M[AR] " -& ) . .*, $% & ) / AR ) DR / DR .*, $% & ) ) AR

(40)

C D" R3 R1 + R2 < = R3 R1 - R2 E 1&* R2 R2’ R2 , 6" R2 R2’+ 1 R2 - 6" R3 R1 + R2’+ 1 E 1&* R1 R1 + 1 ) , F R1 R1 - 1 ) , F ;

*

) K - > '

:

B (

Z #6

*> [ @

*> [

(41)

$ " ) $$ 6

$ >, " & 6 > 7 " , $ 6 & = $ . % , n = 6 ) $$ FA + ' : . " % ` & , & R1 R2 " $ ' ' : !$b , ` & + $ * . B3 A3 B2 A2 B1 A1 B0 A0 FA FA M S0 S1 S2 S3 C0 C4 C3 FA C2 FA C1 M=0 S=A+B M=Z S=A-B

(42)

'$ )" S1 S0 0 1 2 3 4x1 MUX X0 Y0 C0 C1 D0 FA S1 S0 0 1 2 3 4x1 MUX X1 Y1 C1 C2 D1 FA S1 S0 0 1 2 3 4x1 MUX X2 Y2 C2 C3 D2 FA S1 S0 0 1 2 3 4x1 MUX X3 Y3 C3 C4 D3 FA Cout A0 B0 A1 B1 A2 B2 A3 B3 0 1 S0 S1 Cin S1 S0 Cin Y Output 0 0 0 B D = A + B Add

0 0 1 B D = A + B + 1 Add with carry

0 1 0 B’ D = A + B’ Subtract with borrow

0 1 1 B’ D = A + B’+ 1 Subtract 1 0 0 0 D = A Transfer A 1 0 1 0 D = A + 1 Increment A 1 1 0 1 D = A - 1 Decrement A 1 1 1 1 D = A Transfer A < = %' < = G15 %' E 1&* E 1&* A F A F ; A A

(43)

- R+& ' ' - " " ) *+ - - R+& ' *+ " -& C : ' 8 / ' ) , .

= ) 9" ) *++ -& ." " 8 ' - R+& bit-wise *+ 4 -& . - 5 - 8 " HY& not -& C : " , -& C : & ? ) 8 # ' " , .

- ' L !" ' # * -& - R+& / ) bit manipulations ( " ) ." " . - ? ) 16 # ^ & " ' * -& - R+& 6 &

" , C : - " " . 0 0 0 0 0 m 1 1 1 0 1 0 0 0 m 1 1 1 1 0 0 0 1 m 0 1 1 1 1 0 1 0 m 1 0 1 A B F0 F1 F2 m F13 F14 F15

(44)

- R+& ' 8 9 • !" % ': -16 J$ K" !" 2 1'M " n -1; J 1D* !" C* " 1'M " . 2 2n- - 1'M " - 1 O )= 0 0 0 0 F0 = 0 F 0 Clear 0 0 0 1 F1 = xy F A B AND 0 0 1 0 F2 = xy' F A B’ 0 0 1 1 F3 = x F A Transfer A 0 1 0 0 F4 = x'y F A’ B 0 1 0 1 F5 = y F B Transfer B 0 1 1 0 F6 = x y F A B Exclusive-OR 0 1 1 1 F7 = x + y F A B OR 1 0 0 0 F8 = (x + y)' F (A B)’ NOR 1 0 0 1 F9 = (x y)' F (A B)’ Exclusive-NOR 1 0 1 0 F10 = y' F B’ Complement B 1 0 1 1 F11 = x + y' F A B 1 1 0 0 F12 = x' F A’ Complement A 1 1 0 1 F13 = x' + y F A’ B 1 1 1 0 F14 = (xy)' F (A B)’ NAND 1 1 1 1 F15 = 1 F all 1's Set to all 1's

Boolean Function Micro-Operations Name x 0 0 1 1 y 0 1 0 1

(45)

,5 7:

, )

! > ,

' 3$

Ei S1 S0 Ai Bi S0 S1 MUX 0 1 2 0 0 0 1 1 0 1 1 S1 S0 OutPut B A E = B A E = B A E = A E = 3

(46)

- R+& ' =

' "#

4 #5 ." 6 ! " & - ' L !" ' # *+ -& - R+& ' * # . # ^ ' # -+D / . %9" 8 5 ' 8 . " ." " * + _#@ A *+ . B V& # ^ ' # * -& A " ) . – Selective-set A A + B – Selective-complement A A B – Selective-clear A A • B’ – Mask (Delete) A A • B – Clear A A B – Insert A (A • B) + C – Compare A A B – . . . rH T s rH T L t rH T u s ) v^ ( u w J V

(47)

- %

"#

- %

"#

"

B

/ -

8

D ' #

A

#5 )

"# 4 -& #5 ." 6 ! " & * ,

8!

.

1 1 0 0

A

t

1 0 1 0

B

1 1 1 0

A

t+1

(A

A + B)

" ) -

8 ' / )

B

" D& ' 8 * "

* &

" =

A

" , -&

.

' 8 )

A

*+ & -& # ^

*

.

(48)

- %

"#

L&

- %

"#

L& "

B

/ -

8

D ' #

A

#5 )

"# 4 -& #5 ." 6 ! " & * ,

8!

.

1 1 0 0

A

t

1 0 1 0

B

0 1 1 0

A

t+1

(A

A

B)

" ) -

8 ' / )

B

" D& ' 8 * "

* &

" =

A

L&

)

NOT

(

" , -&

.

' 8 )

A

*

*+ & -& # ^

.

(49)

- %

"# ` K

- % "# L& " B / - 8 D ' # A 8! #5 ) ` K ) #6P ( "# 4 -& #5 ." 6 ! " & * , . 1 1 0 0 At 1 0 1 0 B 0 1 0 0 At+1 (A A B’) " ) - 8 ' / ) B " = " D& ' 8 * " * & A " , -& #6P . ' 8 ) A *+ & -& # ^ * .

(50)

"#

! &

"# ! & " B / - 8 D ' # A 8! #5 ) ` K ) #6P ( "# 4 -& #5 ." 6 ! " & * , . 1 1 0 0 At 1 0 1 0 B 1 0 0 0 At+1 (A A B) " ) - 8 ' / ) B " = " D& ' 8 * " #6P * & A " , -& #6P . ' 8 ) A *+ & -& # ^ * .

(51)

"# ` K

' 8 #4 "# ` K " A B " " D& 8 " ) & A

* & -& # ^ * P # a " " , -& #6P . 1 1 0 0 At 1 0 1 0 B 0 1 1 0 At+1 (A A B)

(52)

86 , '

" " " ( S %& 86 , b )! : " ' ! " :

- R+& 86 ,

- 1#U 86 ,

- > 86 , 8! #! '" 8 " 86 , 6 . Serial input • 8! ) 86 , : g9 " 7F + 7 > Serial input

(53)

- R+& 86 ,

8! #6P '"

8 - R+& 86 , "

.

8! ) - R+& 86 ,

:

cU ) - R+& 86 ,

:

" , -& ." 6 ! # / GH /

/ "

:

shl cU ) - R+& 86 ,

shr 8! ) - R+& 86 ,

Y& :

o

R2 shr R2

o

R3 shl R3 0 0

(54)

- 1#U 86 ,

#M " 8 ! / -( #1 8 #! '" 8 - 1#U 86 , " 8! . 8! ) - 1#U 86 , : cU ) - 1#U 86 , : " , -& ." 6 ! # / GH / / " :

cil cU ) - 1#U 86 ,

cir 8! ) - 1#U 86 ,

Y& : o R2 cir R2 o R3 cil R3

(55)

- > 86 ,

8! " -+D& " 8&H " * ' # - > 86 , . " " "* cU ) - > 86 , 2 *+ -& e#f . # " "* 8! ) - > 86 , 2 *+ -& . 86 , C M+ ) ) 8! - > 86 , -4g # =& ) e#f ( *+ -& h6> 8&H . 8! ) - > 86 , : cU ) - > 86 , : 0 sign bit sign bit

(56)

- > 86 ,

)9 & * cU ) 86 , " #! ) overflow ( " , U . 0 V 1PQ %' - ) " %&'( 5 1 %? - - R 1? >)( & " .

" , -& ." 6 ! # / GH /

/ "

:

ashl cU ) - > 86 ,

ashr 8! ) - > 86 ,

Y& : o R2 ashr R2 o R3 ashl R3 sign bit

(57)

86 , ' @ 8%! '/ ! ." K

S 0 1 H0 MUX S 0 1 H1 MUX S 0 1 H2 MUX S 0 1 H3 MUX

Select(A' 2(U)%?)ST %&'(%&'(01 Serial input (IR) A0 A1 A2 A3 Serial input (IL)

(58)

ALU

$

7 > $ D

& P$

"

%

G & =

' " I I ` ,

' 3$

" 7 > = $

"

) F

8 :

&

.

%

I

ALU

)

$

+

.

` = $

"

> ,

" "

'

:

ALU

'

: ) + (

ALU

"

(

(

+

.

'"

ALU

$

!

3

_$

>

= $

+ m:+

&

.

3

$

7F +

>

ALU

I 3

,

7 ( "

+ = $

*

.

(59)

- > - R+& 86 ,

*>

S3 S2 S1 S0 Cin y z { |

0 0 0 0 0 F = A Transfer A 0 0 0 0 1 F = A + 1 Increment A 0 0 0 1 0 F = A + B Addition

0 0 0 1 1 F = A + B + 1 Add with carry

0 0 1 0 0 F = A + B’ Subtract with borrow 0 0 1 0 1 F = A + B’+ 1 Subtraction 0 0 1 1 0 F = A - 1 Decrement A 0 0 1 1 1 F = A TransferA 0 1 0 0 X F = A B AND 0 1 0 1 X F = A B OR 0 1 1 0 X F = A B XOR 0 1 1 1 X F = A’ Complement A 1 0 X X X F = shr A Shift right A into F 1 1 X X X F = shl A Shift left A into F

rH rV C C 4 x 1 ty r } Select 0 1 2 3 F S3 S2 S1 S0 B A i A D A E shr shl i+1 i i i i+1 i-1 i i

Referências

Documentos relacionados

(a) Relation between GDE ’ s governance parameters and an operating mode, (b) operating modes de fi ning the structure of the control system architecture and (c) illustration of

Buscando estratégias para adaptar para o cinema as formas narrativas do romance, no fim do século XX, e não mais em 1928, como acontece no texto de Virginia Woolf, o protagonista

O inibidor de proteases causou redução na porcentagem de ganho de peso de lagartas e causou deterrência alimentar a esses insetos quando demonstrando ter potencial para uso na

1- Na execução do presente Contrato, as Partes, são responsáveis conjuntas pelo tratamento dos dados pessoais referentes à identificação e morada do(a) Mestrando(a), com

Por isso a concepção rousseauniana será a de uma educação natural e negativa, já que para o autor na ordem natural, os homens são todos iguais e sua vocação primeira são

observarem os momentos da aula em períodos de 5 segundos, em que a cada 3 minutos se pausavam 4, não traduzia a veracidade dos acontecimentos da aula. Este método não

O desafio que se põe à escola de hoje é o de receber, ensinar e lidar com todos estes alunos sem impor uma cultura homogeneizante (ROSALES, 2009), para que ninguém se

As migrações internacionais contemporâneas têm sido objeto de estudo de diferentes áreas das Ciências Humanas. Especificamente nas Ciências da Educação, uma das