1s2006 2.1 mc542 2006 prof. paulo cesar centoducatte [email protected] ducatte mc542...

53
1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte [email protected] www.ic.unicamp.br/~ducatte MC542 Organização de Computadores Teoria e Prática

Upload: internet

Post on 17-Apr-2015

104 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.1

MC542

2006

Prof. Paulo Cesar Centoducatte

[email protected]

www.ic.unicamp.br/~ducatte

MC542

Organização de ComputadoresTeoria e Prática

Page 2: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.2

MC542

MC542

Circuitos Lógicos

Tecnologia de Implementação

“Fundamentals of Digital Logic with VHDL Design” - (Capítulo 3)

Page 3: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.3

MC542

Tecnologia de Implementação Sumário

• Introdução Transistor Como Chave• Portas Lógicas NMOS• Portas Lógicas CMOS

– Lógica Positiva e Negativa• Chips Padrões• Gate Array e FPGAs• CMOS: Fabricação e Comportamento

Page 4: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.4

MC542

IntroduçãoValores Lógicos como Voltagem

Logic value 1

Undefined

Logic value 0

Voltage

V DD

V 1,min

V 0,max

V SS (Gnd)

Page 5: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.5

MC542

Transistor como Chave

NMOS transistor as a switch

Drain Source

x = "low" x = "high"

A simple switch controlled by the input x

V D V S

NMOS transistor

Gate

Simplified symbol for an NMOS transistor

V G

Substrate (Body)

MOSFET: Metal oxide semiconductor field-effect transistor

MOSFET: NMOS e PMOS

Page 6: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.6

MC542

Transistorcomo Chave

PMOS transistor as a switch

Gate

x = "high" x = "low"

A switch with the opposite behavior of Figure 3.2

V G

V D V S

PMOS transistor

Simplified symbol for an PMOS transistor

V DD

Drain Source

Substrate (Body)

Page 7: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.7

MC542

Comportamento dos Transistores NMOS e PMOS em Circuitos

Transistor NMOS

V G

V D

V S = 0 V

V S = V DD

V D

V G

Closed switch whenV G =V DD

V D = 0 V

Open switch whenV G = 0 V

V D

Open switch whenV G =V DD

V D

V DD

Closed switch whenV G = 0 V

V D =V DD

V DD

Transistor PMOS

Page 8: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.8

MC542

Portas Lógicas com NMOS

Simplified circuit diagram

V x

V f

V DD

x f

Graphical symbols

x f

R

V x

V f

R +

-

Circuit diagram

5 V

A NOT gate built using NMOS technology

Page 9: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.9

MC542

Portas Lógicas com NMOS(NAND)

V f

V DD

Circuito Símbolo grafico Tabela Verdade

f

f

0 0 1 1

0 1 0 1

1 1 1 0

x 1 x 2 f

V x 2

V x 1

x 1 x 2

x 1 x 2

Page 10: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.10

MC542

Portas Lógicas com NMOS(NOR)

V x 1 V x 2

V f

V DD

(a) Circuit

(c) Graphical symbols

(b) Truth table

f

0

0

1

1

0

1

0

1

1

0

0

0

x 1 x 2 f

f x 1

x 2

x 1

x 2

Page 11: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.11

MC542

Portas Lógicas com NMOS(AND)

f

f

0 0 1 1

0 1 0 1

0 0 0 1

x 1 x 2 f V f

V DD

A V x 1

V x 2

x 1 x 2

x 1 x 2

V DD

Page 12: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.12

MC542

Portas Lógicas com NMOS(OR)

(a) Circuit

(c) Graphical symbols

(b) Truth table

f

0

0

1

1

0

1

0

1

0

1

1

1

x 1 x 2 f

f

V f

V DD

V x 2 V x 1

x 1

x 2

x 1

x 2

V DD

Page 13: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.13

MC542

Estrutura de um circuito NMOS

V f

V DD

Pull-down network

V x 1

V x n

(PDN)

Page 14: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.14

MC542

Estrutura de um Circuito CMOS(NMOS + PMOS)

A função é implementada por uma rede Nmos e uma Pmos simultaneamente

V f

V DD

Pull-down network

Pull-up network

V x 1

V x n

(PUN)

(PDN)

Page 15: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.15

MC542

NOT CMOS

V f

V DD

V x onoff

off on

1 0

0 1

f x T 1

T 2

T 1 T 2

Page 16: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.16

MC542

NAND CMOS

(a) Circuit

V f

V DD

(b) Truth table and transistor states

on

on

on

off

0

1 0

0

1

1

0

1

off

off

on

off

off

on

f

off

on

1

1

1

0

off

off on

on

V x 1

V x 2

T 1 T 2

T 3

T 4

x 1 x 2 T 1 T 2 T 3 T 4

PDN

PUN

f = x1.x2

f = x11 + x2

Page 17: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.17

MC542

NOR CMOS

(a) Circuit

V f

V DD

(b) Truth table and transistor states

on

on

on

off

0

1

0

0

1

1

0

1

off

off

on

off

off

on

f

off

on

1

0

0

0

off

off on

on

V x 1

V x 2

T 1

T 2

T 3 T 4

x 1 x 2 T 1 T 2 T 3 T 4

PDN

PUN

f = x1+x2

f = x11.x2

Page 18: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.18

MC542

AND CMOS

V f

V DD

V x 1

V x 2

V DD

Page 19: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.19

MC542

Exemplo: Circuito Complexo

V f

V DD

V x 1

V x 2

V x 3

f = x1 + x2 x3

Page 20: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.20

MC542

Exercício

V f

V DD

V x 1

V x 2

V x 3

V x 4

Qual a função implementada por:

f = x1 (x2x3 + x4)

Page 21: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.21

MC542

Níveis de Tensão no Circuito

(a) Circuit

V f

V DD

(b) Voltage levels

L

H

L

L

H

H

L

H

H

H

H

L

V x 1

V x 2

V x 1 V x 2

V f

Tensão no circuito

Page 22: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.22

MC542

Lógica Positiva e Negativa

Logica Positiva: Tabela Verdade e Porta

f 0 0 1 1

0 1 0 1

1 1 1 0

x 1 x 2 f

x 1

x 2

1 1 0 0

1 0 1 0

0 0 0 1

x 1 x 2 f

f x 1 x 2

Níveis de Tensão

L H

L L H H

L H

H H

H L

V x 1 V x 2

V f

Logica Negativa: Tabela Verdade e Porta

Page 23: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.23

MC542

Lógica Positiva e Negativa

Logica Positiva: Tabela Verdade e Porta

Níveis de Tensão

Logica Negativa: Tabela Verdade e Porta

f 0 0 1 1

0 1 0 1

0 0 0 1

x 1 x 2 f

x 1 x 2

1 1 0 0

1 0 1 0

1 1 1 0

x 1

x 2 f

f x 1 x 2

L H

L L H H

L H

L L

L H

V x 1 V x 2

V f

Page 24: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.24

MC542

Chips Padrões

Dual-inline package

Structure of 7404 chip

V DD

Gnd

Page 25: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.25

MC542

Implementation of f = x1x2 + x2x3

V DD

x 1 x 2 x 3

f

7404

7408 7432

Page 26: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.26

MC542

Sea-of-gates Gate Array

Page 27: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.27

MC542

Gate Array

f 1

x 1

x 3

x 2

Page 28: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.28

MC542

FPGAField-Programmable Gate Array

Logic block Interconnection switches

I/O block

I/O block

I/O b

lock I/

O b

lock

Page 29: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.29

MC542

FPGA: Logic BlockLUT – lookup table

(a) Circuit for a two-input LUT

x 1

x 2

f

0/1

0/1

0/1

0/1

0 0 1 1

0 1 0 1

1 0 0 1

x 1 x 2

(b) f 1 x 1 x 2 x 1 x 2 + =

(c) Storage cell contents in the LUT

x 1

x 2

1

0

0

1

f 1

f 1

Page 30: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.30

MC542

FPGALUT

f

0/1

0/1

0/1

0/1

0/1

0/1

0/1

0/1

x 2

x 3

x 1

Page 31: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.31

MC542

FPGA

Out

D Q

Clock

Select

Flip-flop In1

In2

In3

LUT

Page 32: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.32

MC542

FPGA

0 1 0 0

0 1 1 1

0 0 0 1

x 1

x 2

x 2

x 3

f 1

f 2

f 1 f 2

f

x 1

x 2

x 3 f

Page 33: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.33

MC542

CMOS: Fabricação e Comportamento

++++++++++ ++++++ +++ ++++++++++++ ++++++ ++++++

+++++++++ +++++++++ +++++++++++ +++++++++++

Drain (type n)Source (type n)

Substrate (type p)

SiO 2

When V GS

= 0 V, the transistor is off

V S

0 V =

V G

0 V =

V

++++++

++++++++++++++++++

Transistor Nmos - off

D

Page 34: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.34

MC542

CMOS: Fabricação e Comportamento

Transistor Nmos - on

++++++++++ +++ ++++++++++++ ++++++

+++++++++ +++++++++++++++++++++ +++++++++++++++++

Channel (type n)

SiO 2

V DD

When V GS = 5 V, the transistor is on

+++++++++

V D 0 V =

V G 5 V =

V S 0 V =

Page 35: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.35

MC542

Transistor Nmos

Current-voltage relationship in the NMOS transistor

I

D

0

Triode

V DS

Saturation

V GS V T –

Page 36: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.36

MC542

Tensões em um Not Nmos

V DD

(b) V x = 5 V

I stat

R

R DS

V f V OL=

(a) NMOS NOT gate

V f

V DD

V x

Page 37: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.37

MC542

Transferência de VoltagemNot Cmos

V f

V x

V OL 0 V =

V OH V DD=

V T V IL V IH V DD V T – V DD

V DD

2 —

Slope 1 – =

Page 38: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.38

MC542

Margem de Ruído e Capacitância

NML = VIL - VOL

NMH = VOH - VIH

The capacitive load at node A

V f

V DD

V x

V DD

C

x f A

NOT gate driving another NOT gate

V A

N 1 N 2

Page 39: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.39

MC542

Margem de Ruído e Capacitância

Propagation delay

V DD

V DD

Gnd

Gnd

V x

V A

50% 50%

90%

Propagation delay

10%

t r

50%

90%

50%

10%

t f

Page 40: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.40

MC542

Transistor MOS

+

+

(a) Small transistor

L

W 1

L

W 2

(b) Larger transistor

Page 41: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.41

MC542

Consumo de Potência

VDD

Vf

Vx

IDVx

Vf

ID

Current flow when input Vx

changes from 0 V to 5 V

Current flow when input Vx

changes from 5 V to 0 V

Page 42: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.42

MC542

Passagem de 1s e 0s em MOS

transistor NMOS

V DD

transistor PMOS

V DD

A B

Page 43: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.43

MC542

Implementação “pobre” de um AND CMOS

AND gate circuit

V f

V DD

Truth table and voltage levels

1.5 V 1.5 V

0 1

0 0 1 1

0 1

1.5 V 3.5 V

f

0 0 0 1

V x 1

V x 2

x 1 x 2 V f

Voltage Logic value

Logic value

Page 44: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.44

MC542

Fan-IN

V f

V DD

V x 2

V x 1

V x 3

V x k

R = r1 + r2 + …. + rk

Atraso Vf

“0”

Page 45: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.45

MC542

Fan-Out

Equivalent circuit for timing purposes

x f

inverter that drives n other inverters

To inputs ofn other inverters

To inputs ofn other inverters

C n

x V f

forn = 1 V f

forn = 4 V f

V DD

Gnd

Time0

Propagation times for different values of n

N 1

Page 46: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.46

MC542

Buffer

Implementation of a buffer

V f

V DD

V x

x f

Graphical symbol

Page 47: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.47

MC542

Tri-state

Equivalent circuit

Truth table

x f

e

tri-state buffer

0 0 1 1

0 1 0 1

Z Z 0 1

f e x

x f

e = 0

e = 1x f

f x

e

Implementation

Page 48: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.48

MC542

Tri-state

x f

e

(b)

x f

e

(a)

x f

e

(c)

x f

e

(d)

Page 49: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.49

MC542

Uso de tri-state

f x 1

x 2

s

Page 50: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.50

MC542

Transmission Gates

Circuit

f x

Truth table

Z x

0 1

f s

s

s

s 0 =

s 1 =

x

x

f = Z

f = x

Equivalent circuit Graphical symbol

f x

s

s

Page 51: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.51

MC542

XOR

Graphical symbolTruth table

0 0 1 1

0 1 0 1

0 1 1 0

x 1 x 2

x 1

x 2

f x 1 x 2 =

f x 1 x 2 =

f x 1 x 2 =

x 1

x 2

Page 52: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.52

MC542

XOR – Transmission Gate

x 1

x 2

f x 1 x 2 =

Page 53: 1S2006 2.1 MC542 2006 Prof. Paulo Cesar Centoducatte ducatte@ic.unicamp.br ducatte MC542 Organização de Computadores Teoria e Prática

1S2006 2.53

MC542

Mux – Transmission Gate

x 1

x 2 f

s