Вы находитесь на странице: 1из 54

Captulo 2

A Tecnologia de Circuitos CMOS


Este1 captulo contm uma breve introduo tecnologia de circuitos digitais
CMOS (pronuncia-se c-ms), sigla para Complementary Metal-Oxide Semiconductor, que usada na implementao de circuitos digitais. O mtodo
de fabricao e o comportamento dos dois dispositivos bsicos da tecnologia
transistores do tipo P e do tipo N so introduzidos na Seo 2.1. Com
estes dispositivos podem ser implementados o inversor e as portas lgicas nand
e nor, bem como circuitos com um terceiro estado alm dos estados 0 e 1. Tais
circuitos so estudados na Seo 2.2. A Seo 2.3 introduz o importante tpico
tempo de propagao de sinais e discute algumas das razes para os atrasos
nos sinais introduzidos pelas portas lgicas.
Para mais detalhes veja Weste & Harris [WH10], Rabaey [RCN03], Kang &
Leblebici [KL96], ou Sedra & Smith [SS90], que so textos com nfase em
Eletrnica. Veja o artigo clssico sobre circuitos integrados de Clark [Cla80]
como no caso de verdadeiros clssicos, a antiguidade deste texto no implica
em que as ideias fundamentais nele apresentadas estejam obsoletas.

2.1

Semicondutores e Transistores CMOS

Um condutor slido tipicamente um metal, no qual os eltrons da camada de


valncia so fracamente atrados pelo ncleo e se movem livremente entre tomos vizinhos. A cada eltron corresponde um prton, e portanto um condutor
em estado natural eletricamente neutro. Um isolante slido um material no
qual os eltrons da camada de valncia esto firmemente ligados ao ncleo. No
que se segue, ignoramos a conduo em fludos (ons na gua ou ar) ou plasma
(centelhas), e isolantes lquidos ou gasosos.
1

Roberto Andr Hexsel, 2012-2016. Verso de 10 de agosto de 2016.

61

62

Captulo 2. A Tecnologia de Circuitos CMOS

Materiais semicondutores diferem dos condutores e dos isolantes, porque em


algumas circunstncias se comportam como isolantes, e em outras como condutores. Estes materiais so empregados na construo de circuitos digitais
para implementar chaves que podem ser controladas por sinais digitais. Tais
chaves tem dois estados, ou esto fechadas conduzindo corrente eltrica ou
esto abertas impedindo a passagem de corrente.
O que segue uma descrio muito simplificada da fabricao e do funcionamento de circuitos CMOS.

2.1.1

Materiais e Fabricao

O material mais frequentemente empregado na fabricao de circuitos CMOS


o silcio (Si). Um basto de silcio, tipicamente com 20 cm de dimetro e um
a dois metros de comprimento, serrado em discos com 20-30 cm de dimetro
e 0,3 a 1 mm de espessura. O basto, que um monocristal de silcio,
fabricado com elevadssimo nvel de pureza. O disco de silcio polido at que
na sua superfcie ocorra menos do que um defeito por centmetro quadrado. Por
defeito entende-se uma cavidade na qual faltam poucas centenas de tomos,
ou a existncia, no monocristal, de tomos que no sejam de silcio.
Durante a fabricao de circuitos integrados so acrescentados impurezas ao
substrato de silcio que agregam eltrons ao cristal tornando-o eletricamente
negativo ou que subtraem eltrons tornando-o eletricamente positivo. Estas
impurezas, chamadas de dopantes, so incorporadas ao retculo cristalino pela
sua exposio, em alta temperatura, a uma elevada concentrao do dopante.
Este processo conhecido como dopagem por difuso.
A superfcie do disco coberta com um polmero, com certas reas mantidas
sem a cobertura. Uma mscara usada para definir quais reas so cobertas e quais so expostas. Tais mscaras so semelhantes ao negativo de uma
fotografia em preto e branco; as partes claras na mscara sero expostas, e as
partes escuras sero encobertas durante o processo de difuso.
O disco levado a um forno com temperatura da ordem de 800 a 1000 C, no
qual insuflado gs de fsforo (P), arsnio (As), ou de boro (B). tomos destes
elementos se difundem atravs do cristal de silcio e se alojam na estrutura
cristalina. Aps a difuso, a concentrao de dopantes nas reas expostas pela
mscara da ordem de 1 tomo de dopante para 107 tomos de silcio.
Um transistor CMOS produzido por uma sequncia de passos de fabricao.
Tipicamente um passo se inicia com a exposio do polmero para formar a a
mscara que usada para selecionar as regies do disco que sero expostas,
seguido de difuso com o tipo de dopante e a concentrao adequados, e concludo pela remoo da mscara. Dependendo do processo de fabricao, so
necessrios de 100 a 400 passos de processamento, o que toma 2 a 3 semanas.

2.1. Semicondutores e Transistores CMOS

63

O tomo de silcio possui 4 eltrons na sua camada de valncia. Num retculo


cristalino composto somente de silcio, cada tomo se liga a exatamente quatro
vizinhos e o cristal tem carga eltrica lquida igual a zero porque todos os
eltrons das camadas de valncia esto ligados aos seus tomos.
O tomo de fsforo possui 5 eltrons na sua camada de valncia, e quando
se liga a quatro tomos no retculo cristalino de silcio, o quinto eltron fica
fracamente ligado ao tomo de fsforo. Cada tomo de fsforo contribui com
um eltron adicional ao material e a regio dopada com fsforo chamada de
semicondutor tipo N porque a regio possui um excesso de portadores de carga
negativa. Fsforo chamado de doador porque acrescenta eltrons ao material.
O tomo de boro possui 3 eltrons na sua camada de valncia, e quando se
liga ao retculo cristalino, uma das quatro ligaes fica faltando. Esta ligao
resulta no buraco deixado pelo eltron faltante, e o buraco portanto um
portador de carga positiva. Boro chamado de receptor porque cada tomo de
boro aceita um eltron, contribuindo com uma carga positiva ao material. A
regio dopada com boro chamada de semicondutor de tipo P porque a regio
possui excesso de portadores de carga positiva.
Os eltrons da camada de valncia de um material condutor tem alta mobilidade porque so fracamente ligados aos tomos, enquanto que num isolante os
eltrons so fortemente ligados aos seus tomos e sua mobilidade pequena.
Num material semicondutor, a mobilidade dos eltrons ou dos buracos depende da concentrao dos dopantes, e da aplicao de um campo eltrico para
aumentar a energia dos portadores de carga. Como nos condutores, se uma
diferena de potencial aplicada sobre o material, eltrons se movero lentamente na direo do potencial mais positivo, e buracos se movero, ainda mais
lentamente, na direo do potencial mais negativo. A mobilidade dos eltrons
aproximadamente o triplo daquela dos buracos. Removido o campo eltrico,
o material volta a se comportar como um isolante.

2.1.2

Operao dos Transistores

O termo transistor uma abreviatura para transfer-resistor, ou resistor de


transferncia. Este termo define dispositivos de trs terminais, nos quais a
resistncia entre um par de terminais pode ser controlada pelo terceiro terminal.
Dependendo dos potenciais eltricos relativos entre os terminais do transistor,
este se comporta como uma baixa resistncia um condutor ou como uma alta
resistncia um isolante. este comportamento que permite que transistores
sejam usados como chaves.
A Figura 2.1 mostra um corte transversal de um transistor do tipo N. O substrato contm material do tipo P e os dois poos so dopados com material do
tipo N. A cada poo so ligados os terminais com a fonte e o dreno de portado-

64

Captulo 2. A Tecnologia de Circuitos CMOS

res de carga do transistor. O terceiro terminal, chamado de gate, isolado do


substrato por uma fina camada de xido de silcio, que um excelente isolante.
Esta camada isolante tem espessura de 20, que a espessura de 6 ou 7 tomos
empilhados. O gate consiste de uma camada de metal ou de polisilcio. Entre
os dois poos, abaixo do gate, se estabelece o canal de conduo do transistor.
O termo gate no tem relacionamento com porta lgica, ou logical gate.
gate

dreno

............
.............
..............
.............
.
.
.
.
.
.
.
.
.
.
.
.
.
........
.....................
........
...
..............................
..
..............................
.. ........................

...
...

n
.....

fonte

canal
.....

....

....

......................................
...........................

metal ou polisilcio
camada de isolante
poo de tipo n

substrato do tipo p

Figura 2.1: Estrutura fsica de um transistor CMOS tipo N.


O substrato mantido no potencial eltrico correspondente ao nvel lgico
0. Se o potencial correspondente ao nvel lgico 1 aplicado no gate, como
mostrado no lado esquerdo da Figura 2.2, este terminal fica com carga lquida
positiva. No substrato, sob o gate, acumulam-se cargas eltricas negativas
atradas da vizinhana pelo campo eltrico provocado pela carga positiva no
gate. O acmulo de cargas sob o gate transforma o canal num condutor, e se
uma diferena de potencial for aplicada entre fonte e dreno, por causa da baixa
resistncia no canal, uma corrente se estabelece da fonte para o dreno, como
indica a seta no diagrama do lado direito da Figura 2.2. Valores tpicos para o
potencial que representa o nvel lgico 1 so de 1,25 a 2,5V.
+
gate

dreno

fonte

gate

dreno

+++++

.....

.....

fonte

+++++

    

n
.....

substrato do tipo p

 ..   

n
.....

.....

.........

.....

.....

.....

substrato do tipo p

Figura 2.2: Modo de operao de um transistor CMOS tipo N.


Se o potencial do gate for reduzido para 0 V, a corrente se interrompe porque os
eltrons se afastaro do canal retornando aos seus ons de origem, aumentando

2.1. Semicondutores e Transistores CMOS

65

a resistncia do canal. Quando a tenso no gate corresponde ao nvel lgico 1,


o transistor conduz e se comporta como uma chave fechada porque h um
caminho de baixa resistncia entre fonte e dreno. Quando a tenso no gate
corresponde a 0, o transistor se comporta como uma chave aberta e os terminais
fonte e dreno ficam isolados.
Este transistor chamado de transistor tipo N porque os portadores de carga
so eltrons, com carga negativa portanto. Num transistor tipo P, as polaridades se invertem e os portadores de carga so buracos.
A Figura 2.3 mostra a estrutura e o funcionamento de um transistor tipo P. O
substrato do tipo N, e os dois poos so do tipo P. O substrato mantido no
mesmo potencial que a fonte de alimentao. Se o potencial no gate corresponde
ao nvel lgico 0, este fica com carga lquida negativa, e esta carga provoca o
afastamento dos eltrons sob o gate, reduzindo a resistncia no canal. Se um
potencial positivo aplicado entre fonte e dreno, se estabelecer um um fluxo
de buracos da fonte para o dreno.
 +
gate

dreno

fonte

    
+++++

p
.....

.....

substrato do tipo n

+ ..+ + + +

p
.....

fonte

    

p
.....

gate

dreno

.....

.........

.....

.....

.....

substrato do tipo n

Figura 2.3: Modo de operao de um transistor CMOS tipo P.


Se a fonte de um transistor N est ligada ao nvel lgico 1, no dreno o sinal
eltrico ser equivalente a um nvel 1 fraco porque os portadores de carga
so eltrons, e no buracos. Efeito similar ocorre com transistores P: se a
fonte est ligada a um nvel lgico 0, o dreno apresentar uma verso fraca
de 0 porque seus portadores de carga so buracos, e no eltrons. A fora,
ou a intensidade, de um sinal relacionada capacidade de fornecer corrente
eltrica em quantidade suficiente para a correta operao dos circuitos ligados
quele sinal. No que concerne a fora dos sinais com a polaridade distinta dos
portadores de carga, transistores so simtricos e fonte e dreno se comportam
da mesma forma.
Os transistores descritos acima so chamados de FETs, ou Field Effect Transistors (Transistor de Efeito de Campo), porque o canal somente se estabelece
pelo o efeito do campo eltrico provocado pelas cargas acumuladas no gate. O
nome por extenso destes transistores MOSFETs, abreviatura para Metal

66

Captulo 2. A Tecnologia de Circuitos CMOS

Oxide Semiconductor, Field Effect Transistor, e o Metal-Oxide indica a construo do transistor com um gate metlico sobre a camada de xido de silcio.

2.2

Implementao de Portas Lgicas

Esta seo mostra como construir portas lgicas com transistores CMOS. A Seo 2.2.1 emprega chaves controladas como uma primeira abstrao para os
transistores e descreve os circuitos do inversor e das portas nand e nor. Na Seo 2.2.2, as chaves so substitudas por modelos lgicos para os transistores,
modelos estes que permitem que se empregue a abstrao de bits para descrever
o comportamento dos circuitos com transistores CMOS.

2.2.1

Circuitos com chaves

Os transistores descritos na Seo 2.1.2 se comportam como chaves e por isso


interessante examinarmos a implementao de funes lgicas com chaves,
antes de abordar a implementao com transistores.
Uma chave digital um dispositivo de trs terminais, um terminal de controle
que abre ou fecha o contato entre os outros dois terminais. Chaves do tipo N
so mostradas a Figura 2.4.
c=0

pppp
p ppppppp p
ppppppppppp pppp
N

c=1

chave aberta

pppppppppppppppp ppppppppppp
N

chave fechada

Figura 2.4: Smbolos para as chaves digitais de tipo N.


Se o terminal de controle est em 1, ento os contatos se fecham, do contrrio,
os contatos abrem. Seu comportamento descrito pela Equao 2.1.
chave tipo N :

(c = 1) (a = b)

(2.1)

Se o sinal de controle est ativo (c = 1), ento os nveis lgicos em a e b so


iguais. Do contrrio, nada se pode afirmar a respeito de seus valores.
Note que no h contato entre o terminal de controle e os terminais a e b.
Chaves so uma abstrao para o comportamento dos transistores: o terminal

2.2. Implementao de Portas Lgicas

67

de controle c o gate do transistor e os terminais a e b, ligados ao contato da


chave, so a fonte e o dreno no transistor.
conveniente usarmos chaves nas quais o sinal de controle ativo em 0. Estas
so chamadas de chaves digitais de tipo P e so mostradas na Figura 2.4.
O crculo no terminal de controle indica a inverso, e seu comportamento
descrito pela Equao 2.2.
chave tipo P :

(z = 0) (x = y)

(2.2)

Se o sinal de controle est ativo (z = 0), ento os nveis lgicos em x e y


so iguais. Do contrrio, nada se pode afirmar a respeito de seus valores.

z=1

z=0

ppppppppppppp
pppp
p ppppppp p
ppppppppppp pppp

ppppppppppppp

chave aberta

pppppppppppppppppppppppppppp

chave fechada

Figura 2.5: Smbolos para as chaves digitais de tipo P.

Inversor O circuito com chaves que implementa um inversor mostrado na


Figura 2.6. As linhas horizontais no topo e na base representam as ligaes
fonte de alimentao; a linha no topo do diagrama , por conveno, a ligao
ao potencial mais alto (VCC) que representa uma fonte inesgotvel de nvel
lgico 1, enquanto que a linha na base a ligao referncia de tenso (GND,
de ground), que representa uma fonte inesgotvel de nvel lgico 0. Do ponto
de vista eltrico, estas so ligaes a um nvel lgico 1 forte, e a um nvel
lgico 0 forte.

e=1

pppp

VCC
C2
ppp ppp
p
pppppppp pppp P
pp
pp p
pp
s=0
pppp pp
ppp
ppp N
pp
ppppp
C1
GND

pppppppppp
pppppp p pp
pppp pppp p p p
pppppppppp

VCC
s
GND

Figura 2.6: Inversor implementado com chaves.

68

Captulo 2. A Tecnologia de Circuitos CMOS

O circuito, com duas chaves, mantm a sada s ligada a VCC (1) ou a GND (0).
Se a entrada e est em 1, a chave C1 fica fechada, ligando s a 0. Se a entrada
est em 0, a chave C2 fica fechada, ligando s a 1. Os sinais de controle de C1
e de C2 so complementares: o terminal de controle de C2 ativo em 0, e o de
C1 ativo em 1. Se as duas chaves forem ativadas simultaneamente, ocorrer
um curto circuito na fonte de alimentao, atravs de C1 e de C2, o que pode
danificar o dispositivo ou provocar o seu mau funcionamento, sendo as duas
ocorrncias altamente indesejveis.
Ligao em Srie A ligao de duas chaves em srie equivale conjuno
de dois sinais, como indicado na Figura 2.7 o sinal x ligado ao sinal y, se
ambos os terminais de controle, p e q esto em 1. Se p ou q estiver em 0, nada
se pode dizer sobre os nveis de x e y. A conjuno dos sinais de controle pode
ser descrita sucintamente por [(p = 1) (q = 1)] (x = y) .

ppppppppppp
pppp ppppppppp pppp

ppppppppppp
pppp ppppppppp pppp

Figura 2.7: Ligao em srie.

Ligao em Paralelo A ligao de duas chaves em paralelo, como mostra a


Figura 2.8, equivale disjuno de dois sinais. Se qualquer um dentre p ou q
estiver em 1, ento uma das chaves liga x a y. Se ambos p e q estiverem em 1,
as duas chaves ligam x a y; se ambos estiverem em 0, as duas chaves ficam
abertas e nada se pode dizer sobre os nveis de x e y. A disjuno dos sinais
de controle pode ser descrita por [(p = 1) (q = 1)] (x = y) .
p

qqq

pppppppppp
pppp pppp ppppp pppp
pppp pppppppppp pppp
pppppppppp

qqqq

Figura 2.8: Ligao em paralelo.

2.2. Implementao de Portas Lgicas

69

Porta nand O circuito que implementa uma porta nand mostrado na Figura 2.9. A sada s fica em 0 exatamente quando a e b esto em 1, ou s = a b.
Para tanto, a sada deve ser ligada a 0 por em circuito com duas chaves em
srie, controladas por a e b. A sada fica em 1 quando, no mnimo, um dentre
a ou b 0, ou s = a b . A sada deve ser conectada a 1 pela ligao em
paralelo de duas chaves controladas por a e por b. O circuito da porta nand
composto por duas redes, uma que liga a sada VCC, e outra que liga a
sada GND, e as equaes que definem o comportamento dessas redes so
equivalentes segundo o DeMorgan. Na Figura 2.9 as entradas a e b esto em 1,
e portanto a sada s 0.
VCC
a=1

p p ppp
pppppppp pppppp P
pppp

b=1

qqqq
a=1

b=1

pppppp
ppp
ppppp N
pppppp
ppp
ppppp N

pp pppp
pppppppp pppppp P
pppp
qqqq

s=ab
s=0

a
b

pp p ppp pp
ppppppp
ppppp p
p
p
pp p ppp

VCC
s
GND

s=ab

GND

Figura 2.9: Porta nand implementada com chaves.


Os dois pontos escuros na linha do sinal s representam ligaes nos sinais, como
um ponto de solda que une dois ou mais fios. Se duas linhas se cruzam sem o
ponto de solda, ento no h ligao entre elas.
Porta nor Uma porta nor pode ser implementada com chaves aplicando-se a
dualidade ao projeto da porta nand: cada rede srie substituda por uma rede
paralela, e cada rede paralela substituda por uma rede srie. A Figura 2.10
mostra uma porta nor implementada a partir do circuito da porta nand. A
rede ligada em srie que conecta a sada a 0 substituda por uma rede ligada
em paralelo; a rede ligada em paralelo que conecta a sada a 1 substituda
por uma rede ligada em srie. Assim como para a porta nand, as equaes das
duas redes so equivalentes segundo DeMorgan. Na Figura 2.10 a entrada a
0 e b 1, e portanto a sada s 0.
No coincidncia que as chaves que ligam a sada VCC tenham o terminal
de controle com uma negao. A razo para tal esclarecida na Seo 2.2.2.

70

Captulo 2. A Tecnologia de Circuitos CMOS


VCC
a=0

pppppp
pppppppp ppppp P
p pp

b=1

pp ppp
pppppppp pppppp P
ppp

s=ab

qqq
pppppp
ppp
ppppp N

qqq
a=0

p p p ppp
ppp N
ppppp
p

b=1

p p p p p p p p p pp p p
ppp ppp ppp
p ppppppp
pp p ppppppppppp

a
b

s=0

VCC
s
GND

s=ab

GND

Figura 2.10: Porta nor implementada com chaves.

2.2.2

Portas Lgicas CMOS

A Figura 2.11 mostra os smbolos usuais para os dois transistores CMOS, transistores tipo P e tipo N. Estes transistores se comportam como chaves e quando
o terminal g (gate) est ligado ao nvel lgico adequado, o nvel lgico dos outros
dois terminais f e d equivalente, porque a chave est fechada.
transistor P
g

pppppp

f
P

transistor N
g

f
N

Figura 2.11: Transistores CMOS.


Quando o gate est no outro nvel, a chave fica aberta e nada se pode dizer
quanto aos valores em f e em d, porque estes dependero dos circuitos aos quais
aqueles terminais esto ligados. O terminal f chamado de fonte (source) porque este terminal ligado fonte de cargas eltricas, enquanto que o terminal d
chamado de dreno (drain) porque ele ligado ao dreno por onde as cargas
eltricas escoam.
Num transistor P, os portadores da carga no canal entre os terminais fonte e
dreno so os buracos que resultam da falta de eltrons, sendo portanto cargas
eltricas positivas. Os portadores de carga no canal entre fonte e dreno de um
transistor tipo N so eltrons, com carga eltrica negativa. por causa dos
dois tipos de transistores, que so normalmente usados como pares complementares, que o nome desta tecnologia Complementary-MOS.
O crculo no gate do transistor tipo P indica que o nvel lgico 0 reduz a
resistncia entre os terminais fonte e dreno, como uma chave fechada. Comple-

2.2. Implementao de Portas Lgicas

71

mentarmente, o nvel lgico 1 no gate faz o transistor de tipo N conduzir. A


Equao 2.3 define o comportamento dos transistores.
(g = 0) (f = d)
(g = 1) (f = d)

transistor P
transistor N

(2.3)

Os circuitos CMOS so tipicamente constitudos de duas redes, uma rede que


puxa a sada para cima (para 1, ou pull-up) e outra rede que puxa a sada
para baixo (para 0, ou pull-down) A rede que puxa para cima composta
somente de transistores tipo P porque estes conduzem bem sinais de nvel lgico 1, e por conta disso, nesta rede h uma conexo com a fonte de alimentao
(VCC), que a fonte de nvel lgico 1. A rede que puxa para baixo composta
somente de transistores do tipo N porque estes conduzem bem sinais de nvel 0,
e esta rede ligada referncia de tenso (GND), que a fonte de nvel lgico 0.
VCC

......................
..
..
..
..
..
..
..
..
..
..
......................

tipo P

r
......................
..
..
..
..
..
..
...
...
..
.
.....................

tipo N

rede

pull-up

s
rede

pull-down

GND

Figura 2.12: Modelo de porta CMOS com redes pull-up e pull-down.


Como o nome indica, uma rede composta por fontes de alimentao (VCC e
GND), por transistores e pelos fios que os interligam. Um n da rede uma
ligao entre dois ou mais de seus componentes. Para simplificar a anlise
destes circuitos, emprega-se uma abstrao para o comportamento dos fios que
interligam os componentes: os fios, e portanto os ns do circuito, se comportam
como superfcies equipotenciais. Isso significa que uma mudana de tenso em
qualquer ponto de um fio se propaga instantaneamente por todos os pontos
daquele fio, ou por toda a superfcie coberta por aquele n equipotencial.
Inversor
A tcnica de projeto para portas lgicas com transistores CMOS descrita empregando o inversor como exemplo. A Figura 2.13 mostra o Mapa de Karnaugh
do inversor com entrada e e sada s. Para projetar a rede que puxa para baixo
(pull-down), a funo lgica que define esta rede obtida da(s) clula(s) do
mapa que esto preenchidas com 0, como indicado pelo agrupamento da clula 1. Neste caso, a rede contm um transistor N cujos terminais fonte e dreno
so GND e s respectivamente, e o gate e. A rede que puxa para cima (pull-up)

72

Captulo 2. A Tecnologia de Circuitos CMOS

o dual da funo pull-down, e neste caso, pull-up = pull-down = e. Esta rede


consiste de um transistor P cuja fonte ligada a VCC, o dreno s, e o gate
controlado por e. Note que a inverso no gate do transistor P corresponde
negao de e e portanto no necessrio inverter o sinal ligado ao terminal gate.
A implementao de um inversor mostrada na Figura 2.14. Normalmente, as
ligaes fonte de alimentao so omitidas dos esquemticos, embora estas
ligaes devam sempre existir.
e

s:
1
0


0
1

Figura 2.13: Mapa de Karnaugh para o inversor.


VCC

g p pp
p pp

d
d

g
GND

VCC

f
s

pppppppppp
p p p p p p p p p p pp p p
ppp p
pppppp ppp p p p
p
pp ppppppp

GND

Figura 2.14: Inversor CMOS.


O sinal de entrada e ligado ao gate dos dois transistores e a sada s ligada aos
seus drenos. Quando a entrada est em 1, o transistor P est aberto (circuito
aberto) e com uma ligao de alta resistncia entre sua fonte e a sada. O
transistor N est fechado (circuito fechado) e portando h um caminho de
baixa resistncia entre a sada e GND, fazendo s = 0. Quando a entrada est
em 0, o transistor P uma chave fechada, ligando a sada VCC, enquanto que
o transistor N uma chave aberta. A Figura 2.15 mostra o inversor nas duas
situaes. O transistor que est aberto mostrado com linhas pontilhadas,
indicando que aquele transistor se comporta como um isolante.
Porta nor
O Mapa de Karnaugh da porta nor mostrado na Figura 2.16. As clulas
preenchidas com 0 esto agrupadas e estas determinam a rede que puxa a sada
para baixo: pull-down = b a. Esta rede implementada com uma ligao em
paralelo de dois transistores N, com os sinais a e b ligados aos seus gates, como
mostra a Figura 2.17. A rede que puxa para cima o dual da rede pull-down:

2.2. Implementao de Portas Lgicas


VCC

73
VCC

ppppp ....... P
.

.......

ppppp

......

e=1

s=0

e=0

...
....
....
....
....

N
... ..
.....

GND

r
.......
..
.
... N
..
......

cargas

cargas
.......
.......

...........
....

s=1

GND

Figura 2.15: Operao do circuito inversor CMOS.


pull-up = pull-down = b a. Esta rede implementada pela ligao em srie
de dois transistores P, com seus gates ligados a a e b. Lembre que as inverses
da funo pull-up esto implcitas no comportamento dos transistores P.
s:

a

1
0
0
1
0
0
2 3

Figura 2.16: Mapa de Karnaugh para a porta nor.


A implementao da porta nor mostrada na Figura 2.17. A rede que puxa
para 1 comporta-se como uma porta and com as entradas complementadas,
enquanto que a rede que puxa para 0 comporta-se como uma porta nor. O
Teorema de DeMorgan garante que as portas lgicas destas duas redes tm
comportamento equivalente. A sada 0 se qualquer das entradas estiver em 1
a ligao em paralelo dos transistores N equivale a a b. A sada 1 somente
se as duas entradas forem 0 a ligao em srie dos transistores P equivale
a ab. As duas redes so necessrias por causa das caractersticas de conduo
dos transistores aqueles do tipo P conduzem bem cargas positivas, enquanto
que transistores do tipo N conduzem bem cargas negativas.
Porta nand
O Mapa de Karnaugh da porta nand mostrado na Figura 2.18. A rede
pull-down a b, e portanto implementada pela ligao em srie de dois
transistores N. A rede que puxa a sada para cima pull-up = pull-down = ba,
implementada pela ligao em paralelo de dois transistores P. Lembre que as
negaes em pull-up so implcitas ao comportamento dos transistores P.
A Figura 2.19 mostra a implementao da porta nand. Os circuitos das portas nand e nor so chamados de duais por causa da dualidade nas ligaes

74

Captulo 2. A Tecnologia de Circuitos CMOS

VCC

ppppp

pppppp

pppppppp
ppppppppp

p p p p p pp p p
ppp
pp
p
p
p p p p p pp p

VCC

pp p p p p p p pp p p
ppp
pp p p pp p p
p
p p p pp
ppp p ppppppp ppp p

N
N

GND

GND

Figura 2.17: Porta nor implementada em CMOS.


a

s:
1
0

1
2

1

0
3
1

Figura 2.18: Mapa de Karnaugh para a porta nand.


entre os transistores P e N. Neste caso, dualidade significa que uma ligao em
srie () substituda por uma ligao em paralelo (), e que uma ligao em
paralelo () substituda por uma ligao em srie (). Conforme a Definio 1.10, um circuito dual de um circuito se para todas as ligaes em
srie no circuito existem ligaes em paralelo correspondentes no circuito ,
e se para as ligaes em paralelo em existem ligaes em srie em .
a
b

VCC

ppppp

r
r
r
N

GND

ppppp
s

ppppppppppppp ppppppp ppppp


p
pp
pppppppppp p ppppp pppp pp

VCC

p p p p p pp p p
ppppppp
pppppp
p
p
p p p p p pp
GND

Figura 2.19: Porta nand implementada em CMOS.

2.2. Implementao de Portas Lgicas

75

Aspectos tecnolgicos dos circuitos CMOS


A topologia de implementao de circuitos CMOS com redes pull-up e pulldown implica em que as portas CMOS sejam sempre inversoras. Como a rede
pull-down composta somente por transistores do tipo N, quando as entradas
esto em 1, a sada puxada para 0. Da mesma forma, quando as entradas da
rede pull-up so 0, os transistores do tipo P puxam a sada para 1.
A implementao de inversores, portas nand e portas nor emprega circuitos
com um nmero mnimo de transistores. A implementao de portas and e
or em CMOS implica, necessariamente, na ligao de inversores adicionais nas
sadas destas portas ou s suas entradas.
A dualidade das redes pull-up e pull-down tem um efeito colateral assaz importante: uma vez que as entradas estejam em repouso por tempo o suficiente
para que todos os ns da rede tenham completado as transies de 1 para 0
e de 0 para 1, uma das duas redes interrompe o fluxo de corrente entre VCC
e GND, e portanto o circuito no dissipa energia. Isso significa que circuitos
CMOS em repouso no dissipam energia porque no circula corrente atravs
das resistncias entre fonte e dreno dos transistores. Se, por um erro de projeto
as redes pull-up e pull-down conduzirem ao mesmo tempo, a corrente entre
VCC e GND pode danificar o dispositivo, ou no mnimo, drenar a bateria mais
rapidamente do que o desejvel.
O comportamento dinmico dos circuitos CMOS faz com que, durante um
breve intervalo de tempo, as duas redes conduzam e portanto o circuito dissipa
energia na vizinhana das transies. Considere a transio de 0 para 1 na
entrada de um inversor; a transio no instantnea e a tenso no gate dos
transistores fica indeterminada enquanto sobe de 0V at VCC, o que faz com
que o pull-up deixe de conduzir sua resistncia aumenta ao mesmo tempo
em que o pull-down comea a conduzir sua resistncia diminui. Durante a
breve transio na entrada, os dois transistores conduzem e o circuito dissipa
energia. Finda a transio, a dissipao tende rapidamente a zero.

2.2.3

Portas Complexas e Clulas

Um dos grandes atrativos da tecnologia CMOS advm da possibilidade de projetar funes lgicas algo mais complexas do que portas lgicas a partir de redes
de transistores. Funes como a soma de dois bits e vem-um, ou o multiplexador
de duas entradas, podem ser implementadas com um nmero de transistores
que menor do que se fossem empregadas portas lgicas individuais.
Estes circuitos so chamados de clulas, e uma vez que uma clula tenha sido
otimizada para velocidade e/ou tamanho, ela pode ser replicada em circuitos
ainda mais complexos. Por exemplo, um circuito que efetua a soma em 16 bits

76

Captulo 2. A Tecnologia de Circuitos CMOS

consiste de 16 rplicas da clula que computa a soma e o vai-um de trs bits.


Chamamos de portas complexas queles circuitos que so algo mais complexos
do que uma porta lgica. Tais circuitos so projetados da mesma forma que as
portas lgicas: a partir da especificao lgica, derivamos a rede pull-down, e
ento derivamos seu dual, que a rede pull-up. Vejamos alguns exemplos.
Exemplo 2.1 Considere a funo
r = (a b) (c d) .
A rede pull-down derivada a partir do complemento de r estas so as clulas com
zeros no Mapa de Karnaugh. A Equao 2.4 contm a derivao de pull-down.
pull-down: r

=
=
=

(a b) (c d)
(a b) (c d)
(a b) (c d)

DeMorgan
DeMorgan

(2.4)

O circuito que puxa a sada para baixo contm duas ligaes em paralelo (a b) e
(c d), e estas duas so ligadas em srie por causa do , como mostra a parte de
baixo da Figura 2.20.
O circuito que puxa a sada para cima contm duas ligaes em srie (a b) e (c d),
e estas so ligadas em paralelo (), como mostra a parte de cima da Figura 2.20.
A porta complexa que implementa a funo r um multiplexador de duas entradas
quando b = d.
/

a
b
c
d

pppppppppp
p p p p p p p pp p p
p p p p p p pp p p p
pppppp pppp
pppppppppp
p p p p p p p p pp
p p p p p p pp p p p
ppppppppppp
pppppppppp
pppppp p p p p
pp pppp ppppp
ppppp ppppp
pppppppppp
pppppp p p p
p ppppp pp pppp
ppp pppppp

pppppp

ppppp

a
b
c
d

a
d

c
d
q
q
qq
q

VCC

pppppp
ppppp

b
c

Figura 2.20: r = (a b) (c d).


Exemplo 2.2 O multiplexador da Figura 2.20 emprega oito transistores, alm
de mais oito transistores para obter os complementos dos sinais das entradas. Se
iniciarmos o projeto com o complemento de r
r = (a b) (c d) ,

2.2. Implementao de Portas Lgicas

77

a rede pull-down usa variveis de entrada sem complementar, o que resulta num circuito mais compacto. A Equao 2.5 contm a derivao da rede pull-down.
= (a b) (c d)
= (a b) (c d)

pull-down:

DeMorgan

(2.5)

O circuito que puxa a sada para baixo contm duas ligaes srie (a b) e (c d), e
estas duas so ligadas em paralelo por causa do , como mostra a parte de baixo da
Figura 2.21.
necessrio um inversor para complementar a sada r = s, e esta implementao
economiza seis transistores, com relao da Figura 2.20. Por outro lado, as portas
lgicas CMOS so naturalmente inversoras e provvel que os complementos dos
sinais estejam disponveis. Qual das duas a soluo mais econmica depende do
circuito volta do multiplexador.
/
VCC

pppppp

p ppppp

q
qq
qq

pppppp

p ppppp

d
q r

ppppppppp
pppppppp ppppppppppppppppp
pppppppp

s = (a b) (c d)

Figura 2.21: s = r = (a b) (c d).


Quantos transistores so necessrios para implementar um multiplexador com
portas lgicas? Como este nmero se compara aos 10 transistores do circuito da
Figura 2.21? O ganho no est somente no nmero de transistores; este circuito
pode ser implementado de forma mais compacta do que aquele com portas
lgicas individuais circuitos compactos implicam numa melhor utilizao da
superfcie do circuito integrado, e com a reduo na rea, geralmente se obtm
uma reduo no tempo de propagao do circuito.

78

Captulo 2. A Tecnologia de Circuitos CMOS

Exemplo 2.3 Implementemos a funo


t = (a b) c .
As funes pull-down e pull-up esto indicadas na Equao 2.6. A rede que puxa a
sada para baixo composta uma ligao em paralelo (a b), que ligada em srie
com c (c). A rede que puxa a sada para cima uma ligao em paralelo, na qual
um ramo c e o outro a ligao em srie de a com b (a b). A Figura 2.22 mostra o
circuito que implementa t.
/
=
=

(a b) c
(a b) c

involuo

pull-down =
=
=

(a b) c
(a b) c
(a b) c

DeMorgan
DeMorgan

pull-down: t

pull-up:

pppppp

pppppp

(2.6)

VCC

pppppp

qq
c

qq t

ppppppppp
pppppppp pppppppppppppppp
ppppppppp

qq
b

GND

Figura 2.22: t = (a b) c.
Exemplo 2.4 Implementemos uma funo algo mais complexa:
x=abc abc abc
A Equao 2.7 mostra a derivao da rede pull-down.
x

= (a b c)
= (a b c)
= (a b c)
= (a b c)

(a b c)
(a b c)
(a b c)
(a b c)

(a b c)
(a b c)
(a b c)
(a b c)

pull-down
DeMorgan
DeMorgan
involuo

(2.7)

A rede pull-down a srie de trs redes (R1 , R2 , R3 ), cada uma destas um paralelo de
trs transistores: R1 = (a b c), R2 = (a b c), e R3 = (a b c). A rede
pull-up um paralelo de trs redes, cada uma destas a srie de trs transistores. Por
exemplo, R10 = (a b c). A Figura 2.23 mostra o circuito completo.
/

2.2. Implementao de Portas Lgicas


R10

79

R20

R30

pppppp

pppppp

pppppp

pppppp

pppppp

pppppp

pppppp

pppppp

pppppp

q
a

q
b

VCC

R3

R2

q
q
a

b
q
q

R1
GND

Figura 2.23: x = a b c a b c a b c.

2.2.4

Terceiro Estado

possvel projetar circuitos digitais com um terceiro estado, alm dos estados 0 e 1. No terceiro estado a sada do circuito forma um caminho que oferece
alta resistncia passagem de corrente eltrica, desligando-a dos circuitos aos
quais est ligada. Circuitos que operam com os trs estados so chamados de
three-state ou tri-state.
Estes circuitos possuem um sinal de controle que permite colocar a sada no
terceiro estado com o efeito de deslig-la dos circuitos que est conectada.
A Figura 2.24 mostra o circuito interno de um buffer three-state um buffer
funciona como um amplificador que no altera o nvel lgico do sinal, apenas
torna-o mais forte. O smbolo do circuito mostrado no lado direito da figura.
O asterisco junto sada uma indicao visual de que esta sada pode operar
no terceiro estado. Quando o sinal de habilitao est inativo (hab = 0) os
gates dos dois transistores ligados sada fazem com que eles fiquem abertos,
de forma a que no haja nenhum caminho de baixa resistncia que ligue a sada
VCC ou GND. Um sinal ligado a uma sada three-state est flutuando se
no h um circuito que puxe o nvel lgico neste sinal para 0 ou para 1.
Circuitos three-state so usadas para a ligao de vrias sadas a um mesmo fio,
formando um barramento, como mostra a Figura 2.25. Os circuitos que geram
os sinais an , bn e cn tm suas sadas ligadas ao fio barrn , e este conduz o sinal
que entrada para outros circuitos que produzem os sinais xn e yn . O circuito
de controle deve ser projetado para garantir que no mximo um dentre habA,

80

Captulo 2. A Tecnologia de Circuitos CMOS


VCC

hab s

a s

ppppppppp

hab

p p p p p pp p p
ppppppp
pp pp p
p
p
p
p p p p pp

gp ppp
pp

p p p p p pp p p
ppp
p
p
p
p
p
p p p pp

gn

pppppppppp
pppppppppp
pppp
p*pppp pppp
p
p
ppppppp

s
P

hab a gp gn
0
1
1

GND

X
0
1

1
1
0

0
1
0

aberto aberto desligado


aberto conduz
0
conduz aberto
1

Figura 2.24: Buffer three-state CMOS.


habB, ou habC, esteja ativo a qualquer momento. Se mais de uma sada estiver
ligada simultaneamente, o nvel de sinal resultante em barrn pode assumir um
nvel lgico indeterminado, se um dos sinais estiver em 1 e o outro em 0. Note
que este circuito implementa um multiplexador de trs entradas.
VCC

habA
an
habB
bn
habC
cn

pppppppppp
pppppppppp
pppp
p*p ppppppp
p
p
p
p
p
ppppp
pppppppppp
pppppppppp
pppp
p*ppppppp p
pppppppppp
pppppppppp
pppppppppp
pppp
p*pppppp pp
pp ppppppp

pppppppppppppp
ppppppppppppp
pppppppppppp
s

pull-up

s
s
f
s
s

pppppppppp
p p p p p p p p p pp
p p p p p p pp p p p
ppppppp pp

xn

p p p p p p p p p pp p p
ppp ppp ppp
p
ppp p pppppppp pp pp
p pppp

yn

barrn

Figura 2.25: Ligao de sadas three-state.


Quando todas as sadas esto no terceiro estado, o nvel lgico do sinal indeterminado porque nada se pode dizer sobre ele. Para garantir que este sinal
fique em um nvel lgico determinado, um resistor ligado VCC. Este resistor chamado de pull-up porque sua funo puxar o nvel lgico do sinal
para 1 se todas as sadas esto no terceiro estado. Quando uma das sadas
ativada e est em 0, o transistor N desta sada puxa o nvel lgico para 0,
sem que o pull-up interfira. O pull-up chamado de circuito passivo porque
somente atua quando nenhum dos circuitos ativos portas lgicas ou buffers
est puxando o nvel lgico do sinal para 0 ou para 1.

2.2. Implementao de Portas Lgicas

2.2.5

81

Portas de Transmisso

O terceiro estado empregado por causa das caractersticas dos transistores


CMOS que permitem o desligamento do circuito de sada. Outro circuito til,
tambm dependente do comportamento eltrico dos transistores a porta de
transmisso (transmission gate). A Equao 2.3 indica que se o gate de um
transistor CMOS est no nvel lgico ativo, ento seus terminais fonte e dreno
esto conectados (chave fechada). Lembre que transistores do tipo P transmitem bem o nvel lgico 1 e transmitem mal o nvel 0. O mesmo vale para
transistores do tipo N, com os nveis trocados o nvel 0 transmitido bem, e
fracamente o nvel 1.
Uma porta de transmisso pode ser implementada com dois transistores e sinais
de controle adequados, como indica a Figura 2.26. Os dois transistores so
necessrios para garantir que sinais dos dois nveis so transmitidos entre os
terminais de dados. Como os transistores so simtricos com relao aos
nveis nos terminais fonte e dreno, este circuito permite a circulao de corrente
eltrica da entrada para a sada, e da sada para a entrada, ao contrrio das
outras portas lgicas que estudamos. Por esta razo, estes circuitos so tambm
chamados de chaves analgicas.
p
pppppp
r

P
N

p
r

pppppppp ppppppppp ppppppp


pp p
ppppppppppppppppp pppppppppppppppp
ppp
p
p
p
ppppppp ppppppppp

Figura 2.26: Porta de transmisso.


Quando os sinais de passagem esto ativos, p = 1 e p = 0, os terminais r e
s ficam interligados e no mesmo nvel lgico. O smbolo desta porta parece
com dois buffers, um em cada direo, justamente para indicar a capacidade
de transmisso nos dois sentidos.
Portas de transmisso podem ser usadas para implementar multiplexadores e
circuitos de deslocamento e rotao. A Figura 2.27 mostra um multiplexador de
duas entradas para sinais com 3 bits de largura. Quando selA = 1, as portas de
transmisso ligadas ao sinal A=ha0 , a1 , a2 i transmitem, enquanto que as portas
ligadas ao sinal B=hb0 , b1 , b2 i so desligadas. Quando selA = 0, a situao se
inverte e o sinal B ligado a C.

82

Captulo 2. A Tecnologia de Circuitos CMOS


pp

selA

a0

b0

a1

b1

a2

b2

pppppppppp
pppppppppp p p p
pppp p pp
pppp ppppp pp p
p
p
p
ppppppp
pppppppppppppppppp pppppppp
pp
ppppppppppppppppp pppppppppppppppp
pp p
p
p
p
p
p
ppppp ppppppppp
pp
pp
pp
pppppppppppppppppp pppp pppp
p
pppppppppppppppppp pppppppppppppppp
pppp ppppp pppppppppppp
pp
pp
pppppppppppppppppppp ppppp
pp
ppppppppppppppppp ppppppppppppppp
p
pp
pp ppppppp ppppppppp
pp
pp
pp
pppppppp pppppppppppppppp
p pp
p ppppppppppppppp ppppppppppppppp
pppp
p
pppppppp ppppppppp
pp
pp
pppppppp ppppppppp pppppppp
p pp
ppppppppppppppppp pppppppppppppppp
ppp
p
p
p
ppppppp ppppppppp
pp
pp
pppppppppppppppppppppppp pp
p
pppppppppppppppppp pppppppppppppppp
p
p
p
p
p
p
p
ppppp ppppppppp

selA
c0
a0
a1
a2
b0
b1
b2
c1

pppppppppppppp
pppppppppppppp
pppp
mux-2

c0
c1
c2
ppppp
pppppppppp ppp
pp pppppppppp

c2

Figura 2.27: Multiplexador com trs bits de largura.


Exerccios
Ex. 2.1 Projete as portas complexas que implementam as seguintes funes:
a) m = a b c ;
b) n = a b c ;
c) p = a b c d ;
d) q = a b c d ;
e) s = a b v a b v a b v a b v ; (soma, Eq. 1.23)
f) v = a b a v b v ; (vai-um, Eq. 1.23)
g) x = a b a b ; ( )
h) e = a b a b ; ( )
i) y = (a s) (b s) (a b) (multiplexador bem comportado).

2.2. Implementao de Portas Lgicas

83

Ex. 2.2 Mostre como implementar portas xor e xnor de duas entradas.
Ex. 2.3 possvel implementar um buffer three-state com menos de 10 transistores? No use portas de transmisso.
Ex. 2.4 Um somador parcial um circuito combinacional de entradas a e
b e sadas s (soma) e v (vai-um), definidas na Equao 2.8. Mostre como
implementar um somador parcial em CMOS.
s = a b, v = a b

somador parcial

(2.8)

Ex. 2.5 Um somador completo um circuito combinacional com entradas a, b


e vem (vem-um), e sadas s (soma) e vai (vai-um), que implementa as funes
s (soma) e vai (vai-um) definidas na Equao 2.9. Mostre como implementar
um somador completo em CMOS. Pista: a operao associativa.
s =
vai =

a b vem,

somador completo

(2.9)

a b a vem b vem

Ex. 2.6 Um somador completo pode ser implementado com dois somadores
parciais e uma porta or, como mostra a Figura 2.28. (i) Verifique que este
circuito implementa a especificao para o somador completo especificado na
Equao 2.9; (ii) implemente esta verso do somador completo em CMOS; e
(iii) qual das verses do somador completo emprega menos transistores? Pista:
no esquea de que as portas lgicas CMOS so inversoras.
a

vai

pp
pp p p pp p p
ppppp
p p p pp p p
pppp

ppp
pppp
pp p

somCompleto

a
b
v somParc
s
vem
a
b
v somParc
s
s

Figura 2.28: Somador completo com dois somadores parciais.


Ex. 2.7 Usando a tcnica da Figura 1.12, mostre como implementar um
multiplexador de 8 entradas com portas de transmisso.
Ex. 2.8 Mostre como implementar um deslocador exponencial similar ao da
Seo 1.6.1 que desloca at quatro posies, empregando portas de transmisso.

84

2.3

Captulo 2. A Tecnologia de Circuitos CMOS

O Tempo de Propagao Maior que Zero

Ao empregar bits como um modelo para sinais analgicos, uma caracterstica


importante foi escondida pela abstrao: os sinais se propagam atravs dos
circuitos em um tempo que no infinitamente pequeno. Como um mnimo,
no vcuo as ondas eletromagnticas se propagam na velocidade da luz, que
de c = 0, 3 109 m/s, ou numa escala mais prxima da prtica em sistemas
digitais, 30 cm por nanosegundo. Em meios guiados, como em condutores
metlicos, os sinais eltricos se propagam com velocidade entre 0, 6 e 0, 7c, que
de aproximadamente um palmo por nanosegundo. Num sistema com relgio
de 3,3 GHz, a mudana no valor de um bit percorre cerca de 7cm durante um
ciclo do relgio.
Circuitos CMOS acrescentam atrasos significativos ao tempo de propagao
de sinais, e estes atrasos decorrem da construo dos transistores, quando se
considera somente os efeitos de primeira ordem, que o caso deste texto. As
Sees 2.3.1 e 2.3.2 contm uma breve introduo ao comportamento fsico
dos dispositivos que influenciam no tempo de propagao dos circuitos, que
discutido na Seo 2.3.3. Para anlises mais completas, e complexas, veja as
referncias apontadas no incio deste captulo.

2.3.1

Um Breve Passeio Pelo Reino da Fsica

Todos os materiais condutores apresentam alguma resistncia passagem da


corrente eltrica. A Lei de Ohm nos informa que a corrente atravs de um
resistor proporcional tenso (ou voltagem) aplicada aos seus terminais,
como indicado na Equao 2.10, para o diagrama do circuito na Figura 2.29.
+ ...............
e

i ...........
pppppppppppppp
ppppppppppppppppppp R
pppp

e = iR

i = e/R

(2.10)

...............
Figura 2.29: Lei de Ohm, tenso e corrente num resistor.
Duas superfcies metlicas isoladas, que estejam prximas uma da outra, armazenam energia no campo eltrico que existe entre as cargas eltricas que
contm. O cabelo eriado aps uma sesso de escovadas, com uma escova sinttica um exemplo: os fios ficam carregados com os eltrons removidos da
escova, e como estes tm carga de mesmo sinal, elas se repelem deixando o
cabelo em p.

2.3. O Tempo de Propagao Maior que Zero

85

Um capacitor um dispositivo que armazena energia no campo eltrico que


se forma entre duas placas metlicas isoladas. A capacitncia medida em
Farads e a razo entre a carga lquida Q numa das placas e a tenso e entre
as placas: C = Q/e. Se rea A das placas grande, grande a quantidade de
carga lquida para uma dada tenso; se distncia D entre as placas pequena,
grande a fora entre as cargas e tambm a energia armazenada por unidade
de carga. Portanto: C A/D.
A corrente eltrica a variao da carga com o tempo: i = dQ/dt. A carga
lquida numa das placas de um capacitor , ao longo do tempo, a integral da
corrente que atravessa o dispositivo:
Z t
Q=
i dt .

A diferena de potencial, ou tenso, entre as placas de um capacitor proporcional corrente ao longo do tempo:
Z
1
1 t
i dt =
Q.
e=
C
C
A corrente atravs do capacitor proporcional variao de tenso entre os
seus terminais:
de
.
i=C
dt
Note que corrente atravs do capacitor significa a corrente que circula nos
seus terminais porque as placas so isoladas com a aplicao da diferena
de potencial, a carga lquida Q removida de uma placa e acrescida outra,
atravs do circuito externo.
A Figura 2.30 mostra o smbolo do capacitor e a relao entre tenso e corrente
nos seus terminais, na Equao 2.11.
+ ...............
e

i ............
C

e=

1
C

i dt

i=C

de
dt

(2.11)

...............
Figura 2.30: Relao entre tenso e corrente num capacitor.
Mais do que os dispositivos em si, nos interessa o comportamento dinmico de
circuitos com resistores fios e capacitores gates de transistores. Em breve
retornaremos aos transistores.

86

Captulo 2. A Tecnologia de Circuitos CMOS

O circuito na Figura 2.31 mostra uma fonte de alimentao de tenso E ligada


a um resistor R e a um capacitor C atravs de uma chave de duas posies. A
chave esteve na posio por um tempo longo o bastante para que a tenso
no capacitor seja igual da fonte (eC = E) e portanto no circula corrente no
circuito (i = 0).

+ppppppppppppp
pp p
p pp
pppp E pppp
p p p p p p p p p p pp p p
ppp

R i = ...0...
......
ppp ppppp ppppp ppppp p

pp

ppp pppppppppppppp pppppp

pp

eC = E

Figura 2.31: Circuito RC em repouso.


No instante t0 , a chave movida instantaneamente para a posio e a energia
acumulada no capacitor passa a se dissipar no resistor, na forma de calor. Como
este circuito uma malha fechada, a Lei de Kirchoff garante que a soma das
tenses ao longo da malha deve ser zero e portanto a tenso nos terminais do
capacitor eC a mesma que nos terminais do resistor eR , viz eR = eC , e
Z
1
eR + eC = 0 e R i +
i dt = 0 .
C t0

+ppppppppppppp
pp p
p pp
pppp E ppp
pp p p p p p p p p p p p pp p p

pp

pppp
pp
ppppp
p
ppppp

pp

R
i ............
ppppppppp pppppp pppppppp
ppp +
eR
+
eC

Figura 2.32: Resposta dinmica do circuito RC.


Derivando-se esta equao com relao ao tempo, para resolver a integral da
corrente, se obtm a equao diferencial
R

di
i
+
=0
dt C

cuja soluo, considerando-se que a tenso no capacitor E0 em t0 , dada


abaixo, para a tenso e a corrente nos terminais do capacitor.
iC =

E0
expt/RC
R

e eC = E0 expt/RC

A Figura 2.33 mostra a curva da tenso nos terminais do capacitor (eC ) ao


longo do tempo. Antes de t0 , a tenso no capacitor a mesma da fonte.

2.3. O Tempo de Propagao Maior que Zero

87

Quando a chave muda de posio, esta tenso aplicada sobre o resistor que
passa a dissipar a energia acumulada no capacitor, a uma taxa determinada
pelas constantes R e C.
eC

.
....
....
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

ppp
ppp
ppp
ppp
ppp
ppp
E0 expt/RC
ppp
.....
..
.
.
.
ppp
.....
.
ppp
....
.
ppp
....
ppp . ..... .....
ppp .......
pp p
ppp
ppp p
pppp p
p p p ppp
ppppp p p p p
pppppppppppppp
ppppppppppppppppp p p pppppppppppp p p p p p ppp p p pp p p p p ppp p p pp

E0

t0

...........
...

tempo

Figura 2.33: Tenso nos terminais do resistor ER na descarga do capacitor.


Se o produto RC muito pequeno (RC 0), o decaimento da curva rpido
este seria o caso de um curto-circuito nos terminais do capacitor. Se o produto RC grande (RC ), ento o decaimento da curva lento este seria
o caso de uma resistncia muito alta ligada aos terminais do capacitor. Com
um circuito aberto, o que equivale a uma resistncia infinita, um capacitor ideal
manteria sua carga indefinidamente.

2.3.2

Comportamento Dinmico de Circuitos CMOS

Considere o transistor tipo N mostrado na Figura 2.34. Para se compreender o


comportamento dinmico dos transistores, o comportamento eltrico da regio
que compreende gate, isolante e substrato pode ser aproximado quele de um
capacitor.
isolante

gate

...
...
...
...
..... .
..................

+++++
    

n
.....

....

substrato

isolante

+ + + + + + gate
      substrato

n
.....

....

Figura 2.34: Capacitncia entre gate e substrato.

88

Captulo 2. A Tecnologia de Circuitos CMOS

As placas do capacitor so o gate e o substrato, separadas pela camada isolante. Quando h uma diferena de potencial entre as placas, o campo eltrico
armazena energia, que no pode ser removida instantaneamente do dispositivo.
Geralmente, num circuito CMOS cada entrada ligada a dois transistores, um
do tipo N e outro do tipo P, e cada um dos dois gates contribui com uma frao
da capacitncia ligada sada do circuito que produz o sinal. A Figura 2.35
mostra um circuito com dois inversores, e o circuito equivalente ao inversor I2 ,
como visto pela sada do inversor I1 . Lembre que no circula corrente entre
a entrada e a sada de circuitos similares ao inversor.

x r

pppppp P1

pppppp P2

I1 r y r

I2 r z

N1

N2

circuito
equivalente a I2

ppppppppp
x I ppppppppppppppppppppppppp y
1pppppp p
p ppppppp p

.....
.. ....
....
..
.............
.................
. 2 .... ....
... ......
......

C2

Figura 2.35: Circuito equivalente entrada de um inversor.


Quando ocorre uma transio na entrada do inversor, o capacitor ligado a sua
sada deve ser carregado carga lquida numa das placas 0 ou descarregado
carga lquida = 0, dependendo do valor anterior na sua entrada. A Figura 2.36
mostra os circuitos equivalentes nas transies de 1 para 0 e de 0 para 1.
descarga de C2

ppppppppp
01 r

carga de C2

.. . . . .
.
.
.
.
.
.
.
.. . . . .

ppppppppp

r Y
.. ..... ..... ..... .....
...
ppp ......
p
p
p
pppppppppppppppp .....
p ppppppp ... RN

10 r
C2

..
........
...

...
.
...
.
...
.
...
P
.
...
.
...
..... ..... ..... ..... ..... ....
..
..
.......
.
.. . . . .
..
.
.
.
.
.
.
.
.. . . . .

ppppppppppppppppppp R
pp ppppppp
r

C2

Figura 2.36: Circuitos na carga e na descarga da capacitncia de sada C2 .


Antes da transio 0 1 na entrada, o capacitor estava carregado (VY = V CC)
porque a sada do inversor estava em 1. Logo aps a transio, o transistor P
fica aberto, e o transistor N conduz com uma resistncia RN . O modelo deste
circuito um resistor RN em srie com o capacitor C2 e a equao que descreve
o comportamento dinmico do potencial no ponto Y
VY (t) = (1 et/RN C2 )V CC .

2.3. O Tempo de Propagao Maior que Zero

89

A variao com o tempo t do potencial sobre os terminais do capacitor, na


descarga, mostrada no lado esquerdo da Figura 2.37. Na medida em que o
tempo passa, a exponencial cresce e o potencial em Y cai de V CC at GN D.
A declividade da curva determinada pelo produto RN C2 .
Na transio da 1 para 0 na entrada, o capacitor que estava inicialmente descarregado, carregado atravs da resistncia RP , e o potencial em Y sobe
de GN D a V CC com
VY (t) = et/RP C2 V CC .
Este comportamento mostrado no lado direito da Figura 2.37.
ppp
pppppppppp p ppppppp pp p p ppppp p p pp p p ppp p p p p
ppp
ppppppppp pppppp
p
p
p
p
p
ppp
p
p
p
1
ppp
pp
p p pppp
. . . . . . . p.p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .p pp.p . . . . . . . . . . . . . . . . . . . . . . . .
ppp
ppp p
ppp
pp
ppp
p pp
pp p
ppp
ppp
pp
ppp
nvel indeterminado
p
p
pp p
p
ppp
pp
ppp
p
p p pp
pp
pp
. . . . . . . . . . . . . . . .pp.pp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ppppp
pp p p p p p p
TI
pp TI
pppppppppppp
pp p
pppppppppppppppppp0pppp p ppppppppppp
pp p p p p p ppp p p pp p p p p ppp p p pp p
GND
tempo
VCC

Figura 2.37: Tempo de carga e de descarga da circuito de sada.


A Figura 2.37 est dividida em trs faixas horizontais: no topo est a regio na
qual os sinais so considerados como sendo 1, enquanto que na base est a regio
na qual os sinais so considerados como 0. Na regio entre 0 e 1, os sinais tem
um nvel lgico indeterminado, que no 0 nem 1. Exceto em situaes em que
se deseja manter o sinal no terceiro estado, o nvel indeterminado pode causar
problemas porque a indeterminao tende a se propagar pelo circuito. Um sinal
num nvel indeterminado pode colocar os dois transistores de um inversor em
estado de conduo, fazendo com que sua sada tambm seja indeterminada.
O que se tenta garantir que os sinais permaneam indeterminados o menor
tempo possvel. No diagrama da Figura 2.37, o intervalo em que os sinais esto
indeterminados, delimitados pelas linhas verticais, definido como o tempo de
propagao do inversor, denotado por TI .
O tempo de propagao depende da resistncia entre VCC (ou GND) e a sada
da porta num nor de E entradas, so E transistores P em srie entre VCC
e a sada. O tempo de propagao tambm depende do nmero de entradas
alimentadas pela sada se a sada de uma porta lgica alimenta as entradas
de quatro outras portas, a capacitncia total aproximadamente o qudruplo

90

Captulo 2. A Tecnologia de Circuitos CMOS

daquela de uma nica porta, porque a capacitncia de capacitores ligados em


paralelo a soma de suas capacitncias.
A quantidade de portas lgicas alimentadas pela sada de uma porta lgica
chamada de fan-out. O tempo de propagao de uma porta lgica aumenta
com a carga capacitiva na sua sada, que proporcional ao seu fan-out. A
Figura 2.38 mostra um inversor ligado a trs outros inversores. O fan-out de
I0 trs e a carga capacitiva na sua sada Cy = C1 + C2 + C3 .
pppppppppp
ppppppp
I1pppppp ppppppppppppppppppp
p
ppppppp
pppppppppp
ppppppp
I2ppppppp pppppppppppppppppp
p ppppppp
pppppppppp
ppppppp
I3ppppp pppppppppppppppppppp
p
p
pppppp

ppppppppp
x I ppppppppppppppppppppppppp y qq
0pppppp p
p ppppppp p

circuito equivalente

ppppppppp
x I ppppppppppppppppppppppppp y
0pppppp p
p ppppppp p

qq
C1

qq
C2

C3

Figura 2.38: Fan-out e a carga capacitiva na sada de um inversor.


O nmero de entradas de uma porta lgica seu fan-in. Um inversor tem fanin de 1, enquanto que uma porta de trs entradas tem fan-in 3. A Figura 2.39
mostra o circuito equivalente para uma porta nand de duas entradas. Quando a
sada 1, a resistncia na rede pull-up, entre VCC e a carga capacitiva da porta
Rpu = RP /2 se as duas entradas esto em 0, ou Rpu = RP se uma entrada
est em 0. Com a sada em 0, as duas entradas esto em 1 e a resistncia na
rede pull-down, entre a carga capacitiva e GND, Rpd = 2RN .
a r VCC pppppp
b
r

r
r
r
N

GND

pp r pp
ppppppppppppppppppp ppppppppppppppppppp
ppppppp
ppppp
p r pp p

pppppp
s

circuito equivalente, s=1


Rpu RP /2

..............................................................

pp
pppppppppppppppppppp
ppppp
pp p
pppp
ppppppppppppppp
ppppppppp
pp

circuito equivalente, s=0


Rpd = RN + RN

Figura 2.39: Fan-in e a carga resistiva na sada de uma porta nand.


O nmero de transistores em srie proporcional ao nmero de entradas numa
porta lgica nand ou nor. O tempo de propagao de uma porta lgica deve ser
determinado, de forma conservadora, pela maior resistncia equivalente dentre
todas as combinaes possveis de entradas, e por isso, o nmero mximo de
entradas de uma porta lgica raramente ultrapassa 4 ou 5. Funes com mais
entradas so implementadas com associaes de portas de at 5 entradas.

2.3. O Tempo de Propagao Maior que Zero

91

A declividade da exponencial et/RC , e portanto o tempo de propagao da


porta, so afetados pelo fan-out ( C) e pelo fan-in ( R). Na medida em que
R e/ou C crescem, mais longo fica o tempo de propagao da porta lgica.
Temos abstrado o comportamento eltrico dos fios, usando superfcies equipotenciais para interligar os componentes. As ligaes fsicas entre componentes,
se curtas, so atravs de polisilcio, e se longas, atravs de fios em metal. Por
fio entenda-se que as ligaes fsicas se parecem mais com chapas retangulares
longas e estreitas do que com fios cilndricos. Por causa da geometria e da
proximidade com o substrato, estes fios exibem uma capacitncia que distribuda ao longo de todo o seu comprimento. Alm disso, as ligaes metlicas
tem resistncia hmica que proporcional ao comprimento e inversamente proporcional seco reta transversal do condutor. Tanto a capacitncia quanto
a resistncia dos condutores pioram o tempo de propagao dos sinais, porque
elas entram como fatores aditivos no R e no C da exponencial et/RC . Para
minimizar estes efeitos, fios longos so segmentados e inversores so colocados
ao longo do caminho para restaurar os nveis lgicos dos sinais.
Nestes ltimos pargrafos fizemos uso de uma simplificao, ao presumir que
a resistncia atravs dos transistores seja ou zero ou infinita. Considere um
transistor do tipo N: quando o transistor conduz, se a tenso no seu gate
prxima do valor do nvel lgico 1, a resistncia entre fonte e dreno baixa
e o transistor est na zona de saturao a corrente If d entre os terminais
fonte e dreno independe da tenso eg no gate. Se eg est prxima de 0, ento
a resistncia elevada o transistor est na zona de corte e a corrente If d
diminuta e da ordem de 106 A. Durante a transio entre nveis lgicos
vlidos, a resistncia do transistor varia de quase infinita para quase zero, e a
corrente If d proporcional a eg . Nesta zona de operao o transistor opera
como um amplificador: uma pequena variao na tenso no gate provoca uma
grande variao na corrente If d . O efeito da resistncia varivel se intensifica
com transies lentas nas entradas das portas lgicas e por isso os transistores
so dimensionados para produzir transies rpidas e assim manter curtos os
perodos em modo de amplificao.

2.3.3

Tempo de Propagao em Circuitos CMOS

Circuitos combinacionais so definidos na Seo 1.2 como sendo circuitos


(i) com entradas digitais; (ii) com sadas digitais; (iii) suas sadas produzem
os valores determinados pela especificao funcional; e (iv) com as entradas
estveis, decorrido o tempo de propagao do circuito, as sadas estabilizam.

92

Captulo 2. A Tecnologia de Circuitos CMOS

Tempo de propagao
Agora que entendemos o comportamento dinmico de circuitos CMOS possvel definirmos precisamente o que entendemos pelo tempo de propagao de
um circuito combinacional:
o tempo de propagao de um circuito combinacional o maior
intervalo entre o instante em que todas as entradas ficam estveis, e o instante em que sua sada fica vlida e estvel.
A Figura 2.40 mostra um diagrama com o comportamento temporal de um
inversor. A sada y fica estvel, no valor determinado pela especificao funcional do inversor, somente depois de decorrido o intervalo TI , que o tempo de
propagao do inversor. Durante o intervalo TI , entre a mudana na entrada e
seu reflexo na sada, o nvel lgico em y indeterminado e nada se pode afirmar
quanto a y durante este intervalo. A indeterminao indicada no diagrama
pelas regies hachuradas.

pppppppppp
pppppppppp p p p
pppp p
p ppppppp p p p p
ppp pppppp

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
I
...........
..........
... . . . . ...
.... ... ... ... ... ..
...... ... ... ... .....
.. ... ... ... ... ....
.. . . . . ..
.
.

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
I
...........
..........
..
...
.. ... ... ... ... ......
..... ... .. .. .. ..
.... ... ... ... ... ..
.. . . . . ..
.
.

Figura 2.40: Tempo de propagao do inversor.


Lembre que o tempo de propagao de um circuito com vrios dispositivos
o mximo dentre o tempo de propagao cumulativo atravs de todos os
caminhos entre as entradas e a sada. A Figura 2.41 mostra a ligao em srie
de dois inversores e o diagrama de tempos dos sinais nas suas entradas e sadas.
T

x
x

pppppppppp
p
pppppppppp p p p y ppppppppppppppppppp p p p z
pppppppp
p
pppp p
p
p
p
p
ppppp
p p p p p p p p p p p pp
ppppppp pp
ppppppp pp

y
z

I ......
...........
... ...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
..
...... .... .... .... .... ...
..
..... ... ... ... .....
. . . .
..
... .... ... ... ... .....
..
..
..
..
..
..
.. . . . . .. . . . . ...
... .... .... .... .... ..... .... .... .... .... .......
..... ... ... ... ........ ... ... ... ... ..
... .. .. .. .. .... .. .. .. .. ..
.
...........
...........
..
.

TI + TI

I ......
...........
... ...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.
..
... ... ... ... ... ......
..
..... ... ... ... ... ..
.
..
..... ... ... ... ... ...
..
..
..
..
..
..
.. . . . . .. . . . . ...
..... ... ... ... ... .... ... ... ... ... ..
....... ..... ..... ..... ............ ..... ..... ..... ........
.. ... .. .. .. .... ... .. .. .. ....
.
...........
...........
..
.

TI + TI

Figura 2.41: Tempo de propagao cumulativo de dois inversores.


O sinal z uma cpia de x deslocada no tempo, e o deslocamento de duas
vezes TI , porque o tempo de propagao do segundo inversor somente contado
a partir do instante em que o sinal y fica estvel. Assim que a entrada do

2.3. O Tempo de Propagao Maior que Zero

93

segundo inversor fica indefinida, sua sada fica indefinida, porque com entradas
invlidas, nada se pode dizer sobre as sadas de circuitos combinacionais.
Exemplo 2.5 O tempo de propagao de um multiplexador de duas entradas
determinado pelo caminho mais longo das entradas para a sada, e este caminho
mostrado pela linha tracejada na Figura 2.42.
O tempo de propagao do mux-2 a soma dos tempos de propagao dos componentes atravessados pelo caminho mais longo, ou pelo caminho crtico, que neste exemplo
dado por TM TI + TA + TO .
/
a
s

p p p p p pp p p
ppp TA
pp
p
p
p p p p p pp

pppppppppp
ppppppppppppp
ppppp p p p
pp pppppp pp

..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .... .....
. .......
........ ....
.
.

p p p p p pp p p
ppp
pp
p
p
p p p p p pp

TI

..
...
...

p.p.p pppppppTpp O
..p.p ......... .....pp ..... ........
p ..
pp
z
ppp
ppp p ppppppp pppp

Figura 2.42: Tempo de propagao do multiplexador.

Exemplo 2.6
V Considere a funo de 4 entradas, implementada com trs portas
and-2: c = (x, y, z, w) = x (y (z w)). Este circuito mostrado no lado
esquerdo da Figura 2.43 e seu tempo de propagao dado pelo caminho que atravessa
as trs portas and encadeadas: Tcadeia = 3 TA .
Outra implementao paraV
de 4 entradas obtida se tirarmos proveito da associatividade da conjuno: a = (x, y, z, w) = (xy) (z w). Este circuito mostrado
direita na Figura 2.43, e seu tempo de propagao menor do que o da cadeia de
ands: Tarvore = 2 TA .
Quando o operador associativo e o nmero de entradas N uma potncia de dois e
N 4, a implementao em rvore sempre mais rpida do que a cadeia de portas:
(N 1)TP = Tcadeia > Tarvore = (log2 N )TP .
/

O nmero de portas de duas entradas igual nos dois casos.

w
z
y
x

cadeia de portas
p p p pp p p
ppp
p p p pp p p
ppp
ppp
p
p p p pp p
p p p pp p p
ppp
ppp
p
p p p pp p
ppp
p
p p p pp p

w
z
y
x

rvore de portas
p p p pp p p
ppp
p p p pp p p
pp
p
ppp
p
p
ppppp
p p pp p p
ppp
p
ppp
p p p pp p
pp
p p p pp p p

Figura 2.43: Duas implementaes para and-4 com and-2.

94

Captulo 2. A Tecnologia de Circuitos CMOS

Tempo de contaminao
Alm do tempo de propagao, o tempo de contaminao pode ser usado para
especificar o comportamento temporal de um dispositivo.
O tempo de contaminao o menor intervalo no qual uma
sada permanece vlida aps a entrada tornar-se invlida.
A contaminao se refere ao efeito causado por uma entrada invlida nos ns
internos ao circuito que por sus vez se tornam invlidos, at que a sada seja
contaminada pelas mudanas nas entradas.
Para efeitos prticos, na maioria dos casos pode-se tomar o tempo de contaminao TC de um dispositivo como sendo zero uma entrada invlida contamina
imediatamente a sada, tornando-a tambm invlida.
A Figura 2.44 mostra o diagrama de tempo de um inversor e indica o intervalo
de contaminao e o tempo de propagao. Assim que o sinal x inicia a transio de 0 para 1, o sinal cruza a regio indeterminada, tornando-se portanto
invlido, mas a sada do inversor permanece vlida durante TC .
T

pppppppppp
pppppppppp pp p
pppp p
pp ppppppp p p p
p
p
p
p
p
ppppp

x
y

I
...........
..
.........
..
.. . . ... .
..
.. ... ... .....
..
..... ... ... ..
.
..
..... ... ... ..
..
..
..
..
.. .
..
.. ... . . . . . . . . . ...
...
. . .
. . .
.. ....... ..... .... .... .... ..... ..... .... .... .......
..
.. .. .. .. .. .. .. .. .. .. ...
..
.. ... ... ... ... ... ... ... ... ... ....
..
..
..
.
..
..........
...........
..
.

TC
Figura 2.44: Tempo de contaminao TC e tempo de propagao TI .
Lembre que o tempo de propagao o intervalo mais longo entre a entrada
vlida e a sada tambm vlida, enquanto que o tempo de contaminao o
intervalo mais curto entre a entrada invlida e a sada ainda vlida.
Para computar o tempo de propagao de um circuito com vrios componentes
escolhemos o caminho mais longo, aquele que acumula o maior atraso das
entradas para a sada porque o tempo de propagao um limite superior para
o intervalo entre entradas vlidas e sadas vlidas.
Para computar o tempo de contaminao de um circuito escolhemos o caminho
com o menor valor acumulado, porque o tempo de contaminao definido
como um limite inferior na validade de uma sada com entradas invlidas.
Exemplo 2.7 Considere que o tempo de contaminao das portas and nos circuitos
da Figura 2.43 seja de 50ps. O tempo de contaminao da cadeia de portas 50ps,
determinado pelo caminho x ; c , porque este caminho manteria a sada vlida por
50ps aps as entradas tornarem-se invlidas: TC,cadeia TA .

2.3. O Tempo de Propagao Maior que Zero

95

O tempo de contaminao da rvore de 100ps porque todos os caminhos entre entrada e sada atravessam duas portas lgicas: TC,arvore 2TA .
/
Exemplo 2.8 O tempo de contaminao do multiplexador de duas entradas
determinado pelo caminho mais curto das entradas para a sada, e este caminho
mostrado pela linha tracejada na Figura 2.45. O tempo de contaminao do mux-2
dado por TC,M TA + TO , porque uma alterao nas entradas s se manifesta na
sada aps a mudana propagar-se atravs de uma das portas and e da porta or.
/
p p p p p pp p p
ppp TA
pp..... ................... .. pp pppppppTO
r
p
p
.. ... ...p.p.
p p p p p pp
pp .......... ...p.p.ppp.p.... ..........
p ........ .....p p..... ........ z
p p p p p pp p p
p
p...pp..... ................ ..... p.p..p.. . ppppppp pp p ..
.
.. p
..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .....
p .
b
pppppp ppp TA
a
s

pppppppppp
p p p p p p p p p pp
pppp pp p p p
pppppppppp

..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ...
.. .....

Figura 2.45: Tempo de contaminao do multiplexador.

Comportamento transitrio
O tempo de contaminao uma espcie de memria de curto prazo e este comportamento ser explorado adiante. O tempo de contaminao ajuda a explicar
certos comportamentos inesperados. Nos circuitos mostrados na Figura 2.46,
quando se considera seu comportamento esttico, o sinal c sempre 0, enquanto
que o sinal r sempre 1, se todos os dispositivos se comportam de acordo com
nossa definio para circuitos combinacionais.
a pp

pppppppppp
pppppp p p p b
pppp ppppppppp
pppppp ppp

p p p p p pp p p
ppp c
pp
p
p
p p p p pp

p pp

p p p p p p p p p pp p p
pp p p r
pp
pppppppppp
pppppppp pppp q pp
pp p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
pppppp

Figura 2.46: Circuitos com comportamento esttico bem definido.


Contudo, se considerarmos o comportamento dinmico destes circuitos, as afirmaes da frase anterior so falsas durante um intervalo relativamente curto
aps as transies nas entradas. Vejamos o circuito com a porta and. Para
simplificar, suponha que o tempo de contaminao da porta and e do inversor so idnticos. A Figura 2.47 mostra um diagrama de tempo que considera
somente os efeitos do tempo de contaminao, e TI = TA = 0.
No intervalo , a entrada b zero e a sada aquela esperada. No intervalo , o
atraso de contaminao mantm a sada do inversor vlida aps a alterao na
sua entrada, as duas entradas da porta and so 0 e sua sada permanece em 0.
No intervalo a sada do inversor muda para 1 e a sada c permanece em 0.

96

Captulo 2. A Tecnologia de Circuitos CMOS

a pp

p p p p p pp p p
ppp c
pp
p
p
p p p p pp

pppppppppp
ppppppp p p p b
pppp pp pppppp
pppppp ppp

b
c

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

TC,I .... TC,A ....

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

TC,I .... TC,A ....


..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..

Figura 2.47: Circuito com comportamento dinmico distinto do esttico.


No intervalo os sinais ficam estveis. No intervalo  o atraso de contaminao
mantm a sada do inversor em 1, enquanto a entrada a muda para 1. No
intervalo , com suas duas entradas em 1 a sada da porta and muda para 1,
e este pulso tem durao TC,A , que o tempo de contaminao do and. No
intervalo , a sada do and reflete sua entrada b em 0.
O autor recomenda enfaticamente ao leitor que desenhe, sem demora, um diagrama de tempo similar ao da Figura 2.47 para o circuito com a porta or.
A definio de circuito combinacional que adotamos considera o seu comportamento correto aps o decurso do seu tempo de propagao, caso sua especificao funcional seja satisfeita pelas sadas. Isso significa que o comportamento
descrito no diagrama de tempos da Figura 2.47 uma ocorrncia observvel e
indesejada, mas quando se considera o tempo de propagao das portas lgicas,
aquele circuito se enquadra na definio de circuito combinacional.
A Figura 2.48 expande o diagrama da Figura 2.47 com a incluso do tempo
de propagao, que o intervalo mais longo necessrio para a sada estabilizar,
aps as entradas estabilizarem. Os efeitos da contaminao esto indicados por
traos espessos, e o tempo de propagao por regies hachuradas.
T

.....
..
I
...........
.......
..
A
...........
..........
...
..
..
..
..
..
..
..
..
..
.. C,I .. C,A ...
..
..
..
..
..
..
..
..
..
..
..
..
..
.
..
..
..
..
..
.
.
..
.. . . . . .. . . . . ....
..
.. .... .... .... .... ...... .... .... .... ......
..
.. .. .. .. .. ... .. .. .. .. ..
..
..... .... .... .... .... ...... .... .... .... ..
..
..
..
..
..
..
..
..
.
.
... .. .. .. .... .. .. .. .. .... .. .. .. .. .. .. .. .. .. ...
.. ... ... ... ... .... ... ... ... ..... ... ... ... ... ... ... ... ... ... ..
.. ... ... ... ... .... ... ... ... ... .... ... ... ... ... ... ... ... ... .....
.
.
..... ... ... ... ... ..... ... ... ... ...... ... ... ... ... ... ... ... ... ... ...
..
..
..
..
..
..
..
..
.
.
.
..

a
b
c

..
I
...........
...........
..
........
A
...........
..
.. ..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.. C,I .. C,A ..
..
..
..
..
..
.
..
..
..
..
..
.
..
.
.. . . . . .. . . . . ....
..
.. .... .... .... .... ...... .... .... .... ......
..
.. .. .. .. .. ... .. .. .. .. ..
..
..... .... .... .... .... ...... .... .... .... ..
..
..
..
..
..
..
..
..
..
.
... .. .. .. .... .. .. .. .. .... .. .. .. .. .. .. .. .. ....
.. ... ... ... ... .... ... ... ... ..... ... ... ... ... ... ... ... ... .....
.. ... ... ... ... .... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ..
.
.
.
..... ... ... ... ... ..... ... ... ... ..... ... ... ... ... ... ... ... ... ...
..
..
..
..
..
..
..
..
..
.
.
.

Figura 2.48: Comportamento dinmico considerando o tempo de propagao.


Nos intervalos e que se estendem por TI segundos, a sada c invlida
porque a entrada b do and invlida. No intervalo , b fica vlido mas a sada c
invlida durante o intervalo TA , que o tempo de propagao da porta and.

2.3. O Tempo de Propagao Maior que Zero

97

No intervalo a sada aquela determinada pelas especificaes do inversor e


da porta and. Nos intervalos  e a sada c invlida porque b invlido, em
que pese a ocorrncia do pulso em c durante . Decorrido o segundo TA (), a
sada fica vlida e correta no intervalo .
Exemplo 2.9 Considere o circuito da Figura 2.49, que detecta tanto as bordas
de subida quanto as bordas de descida na sua entrada. A cada borda no sinal e, o
xor produz um pulso em sua sada porque suas entradas esto distintas. Desenhe
um diagrama de tempos como o da Figura 2.47 somente considerando o tempo de
contaminao para certificar-se de que o comportamento o esperado.
/
e

pp

p
pppppppppp
pppppppp pppp f ppppp ppppppppppppppp p pp
p p p p p p p ppppppp ppp
p
p
p
p
p
p
p
p
pppppp
pppppp

pppppppppppppppppppppppppppp
ppp pppppppppppppp pp
pp p p p p p p p
pppppppp
pp p
s

Figura 2.49: Detector de bordas com porta xor.

Exemplo 2.10 Vejamos uma aplicao para o comportamento dinmico do circuito


com a porta or e dois inversores ou um buffer, como o mostrado na Figura 2.50. Para
simplificar a discusso, suponha que o tempo de propagao da porta or zero.
Considere um pulso de curta durao, ou um espculo (glitch), de 1 ; 0 ; 1, que
dura uma frao do tempo de propagao do buffer TB . O buffer atrasa o espculo no
sinal q o suficiente para que a entrada p do or estabilize, de tal forma que a sada r no
apresenta o espculo, e assim o pulso filtrado pelo circuito. Isso o que mostra o
lado esquerdo do diagrama de tempos. Contudo, o lado direito do diagrama apresenta
dois espculos, um reproduzido a partir do sinal original e um segundo, que a verso
atrasada pelo buffer. Melhora um lado, piora o outro.
/
p p

p p p p p p p p p pp p p
pp p p r
pp
pppppppppp
pppppppp q pp
pp
p
p
p
p
p
ppppp
p p p p p p p pp
ppppppp pp
TO = 0

p
q

.
.
.
.
.
.
.
.........
.

.........

TB

Figura 2.50: Filtro de espculos com porta or.

.
.
.
.
.
.
.
.........
.

TB

.........

98

Captulo 2. A Tecnologia de Circuitos CMOS

Implicativos Primrios, Implicativos Essenciais e Temporizao


O multiplexador mostrado na Figura 2.51 exibe um comportamento similar
ao circuito com a porta or da Figura 2.46. Quando as entradas a e b esto
ambas em 1, os sinais m e n refletem, a menos do tempo de propagao das
portas and, os valores de s e s. Dependendo de como este multiplexador
empregado, o comportamento do sistema pode ser errtico por causa do pulso
esprio causado pela corrida entre os sinais s verso atrasada em n e s
verso atrasada em m nas entradas da porta or. A deteco destas corridas
problemtica porque, durante a depurao, pode ser difcil de reproduzir as
condies que provocam o pulso esprio na sada do multiplexador.
a=1
s

pppppppppp
p p p p p p pp p p
p p p p p p p p pp p p
ppppp pppp

b=1

p p p p p pp p p
ppp m
pp .........
p
p
p
..
p p p p pp
p p p p p pp p p
ppp ......
p ..
p
p p p pp p pp n

p p p p p p p p p pp p p
pp p p
pp
ppp p p ppppp pp p
p pp

Figura 2.51: Multiplexador com pulso esprio na sada.


A Figura 2.52 mostra o Mapa de Karnaugh para o multiplexador de duas entradas. O pulso esprio na sada do multiplexador ocorre quando as entradas
passam da configurao correspondente clula 7 (hs,a,bi = 111) para a configurao da clula 3 (hs,a,bi = 011). Se um agrupamento adicional for includo
no mapa, cobrindo as clulas 3 e 7, o pulso indesejado no ocorrer. Este agrupamento corresponde a a b e mantm a sada em 1, independentemente do
que ocorra com s. O circuito mais complexo, com a adio de uma porta and
e de uma entrada adicional no or, mas seu comportamento dinmico exatamente o desejado, e independe dos efeitos transitrios causados pelo tempo de
contaminao.
s
z:
b


0
0
1
0
0
5
4
 1

1
1 
1 0

2 3

7
6

Figura 2.52: Mapa de Karnaugh do multiplexador de duas entradas.

2.3. O Tempo de Propagao Maior que Zero

99

A sada do multiplexador de duas entradas pode ser descrita em termos de uma


soma de produtos com os termos
z(s, a, b) = (s b a) (s b a) (s b a) (s b a)

(2.12)

Do ponto de vista lgico, cada um dos termos da soma implica z = 1, embora


somente a disjuno dos quatro seja equivalente a z. Assim,
(s b a) (z = 1)
O mesmo vale para a verso simplificada, como a do mapa da Figura 2.52:
(s a) (z = 1)
Os termos individuais da soma de produtos so chamados de implicativos porque, quando as variveis fazem o termo igual a 1, esta mesma combinao de
variveis implica em que o resultado da soma de produtos seja 1.
Todos os quatro termos da Equao 2.12 so termos implicativos. Os trs
termos simplificados obtidos do Mapa de Karnaugh h (s a), (s b), (a b) i so
chamados de implicativos primrios, porque so implicativos que no podem
ser simplificados. Um termo da soma de produtos que no pode ser agrupado
a nenhum outro, sendo portanto imprescindvel para representar uma funo
chamado de implicativo essencial. Para uma funo com um certo nmero
de mintermos, pode haver mais de um conjunto de implicativos primrios que
simplificam aquela funo.
O mapa da Figura 2.53 mostra trs implicativos essenciais que no podem ser
eliminados por simplificao: um que cobre o mintermo 0, um que cobre os
mintermos 3 e 7, e o que cobre os mintermos 12, 13, 14 e 15. O implicativo
primrio mostrado com o trao fino que cobre os mintermos 7 e 15 no
essencial. Este implicativo primrio deve ser implementado caso a aplicao
do circuito especifique um comportamento dinmico sem corridas, que neste
exemplo so transies 1 ; 0 em x. No caso geral, a sada de um circuito
implementado com todos os implicativos primrios livre dos pulsos esprios
provocados por corridas.
O comportamento dinmico destes circuitos distinto daqueles previstos pela
nossa abstrao para dispositivos combinacionais. Nosso modelo abstrai particularidades dos circuitos CMOS que se manifestam em circuitos reais. Circuitos CMOS so projetados para melhorar os sinais em suas sadas, com relao
aos sinais nas suas entradas. Os nveis lgicos nas sadas das portas lgicas so
mais fortes do que aqueles presentes em suas entradas porque as redes pull-up
e pull-down puxam as sadas para VCC e para GND, que so 1 e 0 fortes. Por
causa deste comportamento os circuitos CMOS so chamados de restauradores
(restoring logic) porque entradas fracas resultam em sadas fortes. Veja a Figura 2.37: assim que um sinal de entrada sai da regio indeterminada, a sada
puxada para 1 ou 0, porque os transistores funcionam como amplificadores:
um nvel eltrico fraco numa entrada amplificado at as fontes de 0 ou de 1.

100

Captulo 2. A Tecnologia de Circuitos CMOS


z
t:

y
x


1
0
0
0
0
1
4
 5

1
0
0
1


7
6
2
3
$
'
0
0

1 1

10

11

0
8

15

0
9

14

&
%
13
12

Figura 2.53: Funo de quatro variveis e seus implicativos.


Exerccios
Ex. 2.9 Desenhe um diagrama de tempos similar ao do Exemplo 2.10 para
um filtro com uma porta and.
Ex. 2.10 Ainda com referncia ao Exemplo 2.10, desenhe outro diagrama de
tempos para um filtro que combina uma porta or e uma porta and.
Ex. 2.11 Qual a largura mxima dos pulsos que podem ser filtrados pelos
circuitos do Exemplo 2.10 e dos Ex. 2.9 e 2.10?
Ex. 2.12 Mostre como implementar portas lgicas and, or, xor, nand e nor de
16 entradas empregando somente portas nand e nor de 4 ou menos entradas e
inversores. Sua implementao deve minimizar o tempo de propagao.

2.4

Bits que no pertencem B

Neste captulo introduzimos novos valores para os bits, valores estes que no
pertencem B, e passamos a usar valores no terceiro estado e sinais fracos.
Como possvel conciliar a nossa lgica quase-Booleana com estes novos valores,
sem aumentar exageradamente a complexidade dos modelos que empregamos
para nossos circuitos?
Uma soluo, relativamente simples, adotada na linguagem VHDL, quando se
empregam sinais da chamada lgica padro, de tipo std_logic . Sinais deste tipo
podem estar num de nove nveis: no-inicializado, desconhecido-forte, 0-forte,
1-forte, alta-impedncia, desconhecido-fraco, 0-fraco, 1-fraco e no-importa.

2.5. ROM Read-Only Memory

101

Se um sinal fraco ligado a um sinal forte, o nvel do sinal forte predomina. Um


curto circuito entre 1-forte e 0-forte resulta em desconhecido-forte. Um sinal
desconhecido-forte contamina todos os circuitos aos quais esteja ligado. Para
fins de simulao, sinais no-inicializados equivalem a desconhecido-forte porque a mquina de simulao incapaz de adivinhar os valores iniciais desejados
para os sinais.

2.5

ROM Read-Only Memory

Memrias somente de leitura Read-Only Memory (ROM) so memrias que


podem ser lidas mas no podem ser alteradas enquanto o circuito est em operao normal, ao contrrio das memrias de leitura e escrita Random Access
Memory (RAM) cujos contedos podem ser alterados durante a operao
normal do circuito.
Memrias so geralmente construdas como uma matriz de bits, e para acessar
um determinado bit, sua linha e coluna na matriz devem ser selecionadas. A
linha escolhida por um decodificador de linha que um seletor, enquanto
que a coluna selecionada por um multiplexador de colunas. A Figura 2.54
mostra esta organizao. Para uma matriz com 2N linhas e 2M colunas, so
necessrias N + M linhas de endereo para selecionar a clula de memria
apontada pelo endereo indicado nos sinais N e M . Geralmente, os bits mais
significativos do endereo selecionam uma das linhas da matriz.
decodicador
de linha qqqqqqqqqqqqq
qqqqqqqq
0
RAS
1

pppppp

pppp
pp

matriz de
clulas
de memria

qqqq2qqqqqq -1
qqqqqqqqqq
qqq
N

M+N
CAS

qqq
qqq 0
pppppqqpqq
qqq

pp pp pp
1

q
qq
qq q multiplexador
de coluna
qq

2M -1

..
....
.....
..

D(i, j)

Figura 2.54: Organizao de memria.


O sinal RAS, ou Row Address Strobe, fica ativo para selecionar, ou ativar, uma
das linhas da matriz. O sinal CAS, ou Column Address Strobe, fica ativo para
selecionar uma das colunas.

102

Captulo 2. A Tecnologia de Circuitos CMOS

No momento, nos interessam memrias relativamente estreitas, que no empregam um multiplexador de colunas. Na Seo 2.6 veremos matrizes mais largas.

2.5.1

Decodificador de Linha

Vejamos como uma porta or com vrias entradas pode ser implementada usando
transistores do tipo N. O circuito da Figura 2.55 mostra uma porta or com
4 entradas. Se qualquer uma das entradas 1, ento o sinal r puxado para 0
e a sada s 1. Se todas as entradas forem 0, ento o pull-up puxa r para 1 e
portanto a sada fica em 0.
...............
....................
...................
......

pull-up

q
a

.
...
...
...
...
.
.
.
.
.
........

ppppppppp
q r pppppppp pppppppppppppppp
ppppppp p

.
...
...
.......
.....

nor
or

s=abcd

Figura 2.55: Funo or de quatro entradas.


Necessitamos de uma porta and para implementar um decodificador de linhas.
Se a memria uma matriz com L linhas, ento o decodificador necessita
` = log2 L bits de endereo, e cada uma das linhas selecionada pela conjuno
dos bits apropriados de endereo, ou de seus complementos. O circuito da
Figura 2.56 mostra a funo and implementada com a funo or.
................
....................
...................
......

pull-up

ppppppppp
pp
ppp pp pppppp
pp
pp

ppppppppp
pp
ppp pp pppppp
pp
pp

s=pq

....
.....

and
.....
....

p p p p p p p p p p p p p p p pp p
p
ppp
pppppppp pppppppp

ppppppppp
pp
ppp pp pppppp
pp
pp

ppppppppp
pp
ppp pp pppppp
pp
pp

.......

nor
.......

Figura 2.56: Funo and de duas entradas.


Um decodificador de 2 bits para 4 linhas mostrado na Figura 2.57. Nesta figura VCC, indicado como uma barra horizontal, e GND como um tringulo;
a caixa pontilhada mostra a representao para diagramas de bloco. Este decodificador uma coleo de ands e por isso chamado de and array. Cada uma

2.5. ROM Read-Only Memory

103

das L linhas da matriz corresponde a um mintermo e qualquer funo de at


` variveis pode ser implementada pela disjuno dos mintermos apropriados.
..................
................. .
......................
.....

l0 = a1 a0

.................
....................
....................
.....

ppppppppp
q

ppppppppp

l1 = a1 a0

................
....................
....................
.....

ppppp ppp

q
q

............... .
.....................
....................
.....

pppp ppp p

a1

l3 = a1 a0

q
ppppppp p

q
ppppppppp
pp
ppp pp pppppp
pp
pp

l2 = a1 a0

q
pppp ppp p
q

ppppppppppp
ppp pp pppppp
pp
pp

ppppp ppp

ppppppppppp
ppp pp pppppp
pp
pp
a0

ppppppp p
pppp
ppppppp pp
p ppppppp 0

q
ppppppppp
pp
ppp pp pppppp
pp
pp

1
2

a0
a1

a1

pppppppppp 3
pppppppppp
ppp

l0
l1
l2
l3

a0

Figura 2.57: Decodificador de 2 bits para 4 linhas.

2.5.2

Matriz de Dados da ROM

Uma funo or similar a da Figura 2.55 pode ser usada para implementar a
disjuno dos mintermos gerados pelo decodificador. Com vrias disjunes
obtemos um or array, que combinado com um and array, resulta numa coleo
de somas de produtos, que justamente a matriz de memria M que estamos
a construir. A Figura 2.58 mostra uma memria com n + 1 bits de endereo e
w + 1 bits de dados tais que cada um dos bits de dados a disjuno de um
certo nmero de mintermos
_
rk =
lj , j [0, m], k [0, w]

104

Captulo 2. A Tecnologia de Circuitos CMOS

e cada mintermo lj uma conjuno de endereos ou de seus complementos


^
lj =
ai , i [0, n] .

lj =

ai , i [0, n]

..... ..... ..... ..... ..... ..... ........


..
.
.
...
..
.
.
and
...
..
.
.
...
array
...
.
.
...
...
.
.
...
...
.
.
...
...
.
.
...
..
.
.
...
...
.
.
...
...
.
...... ..... ..... ..... ..... ..... .....

conjunes
de
variveis

l0
l1

pp
p

lm

ppp

a0

..... ..... ..... ..... ..... ..... ..... ..... ....


.
..
.
...
..
.
.
or
...
..
.
.
...
array
...
.
.
...
...
.
.
...
...
.
.
...
...
.
.
...
..
.
.
...
...
.
.
...
...
.
... ..... ..... ..... ..... ..... ..... ..... .....

disjunes
de
mintermos

ppp

an

r0 r1

rk =

rw

lj , j [0, m]

Figura 2.58: Memria ROM como soma de produtos.


A Figura 2.59 mostra o circuito de uma memria ROM com 4 bits de altura
e 1 bit de largura. As sadas do decodificador ativam exatamente uma das
quatro entradas do or estas sadas so as linhas da matriz 4 1. Se na
interseco de uma linha com a coluna houver um transistor, quando aquela
linha selecionada o transistor conduz, r fica em 0 e a sada s em 1. Se no h
um transistor na interseco, quando a linha selecionada, o pull-up mantm
o sinal r em 1 e a sada s fica em 0.

a0
a1

T1

....................
........................
.............................

pppp p
pppppppppp
p
p
p
p
p
p
p
p
p
ppppppppp
0
1

pppppppppppp 3
pppppppppppp
pppppppp

nvel lgico 1 fraco

0
.............
. .......

pp

T2
pppp ppp p

dec-4

pull-up

T3

sem transistor: sada em 0

1
.............
. .......

pp

com transistor: sada em 1

ppppppp p

0
r

ppppppppp
pppppppp pppppppppppppppp
ppppppp p

Figura 2.59: ROM 4x1.

2.5. ROM Read-Only Memory

105

O circuito da Figura 2.59 uma memria ROM com 4x1 bits quatro palavras
de um bit. Esta nomenclatura a usual para descrever a organizao externa de
memrias: alturalargura, sendo a altura o nmero de palavras da memria,
e a largura o nmero de bits de cada palavra. Para escolher uma das quatro
palavras so necessrias duas linhas de endereo, que so os sinais a0 e a1 . A
sada da ROM apresenta a palavra selecionada, e neste exemplo o valor do
bit selecionado por ha1 , a0 i. Qual a funo de duas variveis, f (a0 , a1 ) = s,
implementada nesta memria ROM?
No topo da figura, o transistor T1 um transistor do tipo N e seus terminais
gate e fonte esto ligados VCC, e seu terminal dreno ligado porta or.
Transistores tipo N no conduzem bem o nvel lgico 1 e quando no h um
transistor tipo N puxando a linha de bit para zero (T2 ou T3 ), T1 mantm um
nvel lgico 1 fraco. O inversor na sada garante nveis lgicos fortes para os
circuitos que usam a sada da ROM. Da forma como desenhada, uma linha
vertical da matriz, que uma disjuno, chamada de linha de bit (bit line),
enquanto que as sadas do decodificador so chamadas de linhas de palavra
(word line) porque selecionam uma palavra da memria.
Nas linhas 0 e 3, o cruzamento da linha de seleo com a linha de bit significa
que no h contato eltrico entre estes dois sinais. A Figura 2.60 (a) mostra uma
verso simplificada do diagrama da ROM 4x1. Quando a linha 0 selecionada,
no h ligao entre a sada do decodificador e a linha de bit, e portanto a
sada da ROM o complemento do 1 fraco no dreno de T1 .

a0 =0
a1 =0

T1
ppppppp
pppppppppp
p
p
p
p
p
p
p
p
ppppppp
0

1
ppppppppp
ppppppppp ppppppppppppppp
ppppppppp

s=0

pppppppp
ppppppppp pppppppppppppppp
ppp pppppp

s=1

(a)

a0 =1
a1 =0

T1
ppppppppp
pppppppppp
pppp pppppp ppp
1

pp

T2
ppppppppp
(b)

Figura 2.60: ROM: (a) bit em 0; (b) bit em 1.

106

Captulo 2. A Tecnologia de Circuitos CMOS

Nas linhas 1 e 2, h um transistor tipo N, com seu gate ligado sada do


decodificador com o dreno ligado linha de bit, e a fonte ligada GND.
Quando a linha 1 selecionada, o gate de T2 fica em 1 e a linha de bit ligada
GND. Esta ligao produz um 0 forte na linha de bit, que se sobrepe ao
sinal fraco produzido por T1 . A Figura 2.60 (b) mostra o transistor na linha 1.
Memrias ROM permitem implementaes compactas de tabelas verdade, de
uma forma similar quela apresentada na Seo 1.4.1. O circuito da Figura 2.59
implementa a tabela verdade da funo xor: s = a0 a1 .
Exemplo 2.11 Vejamos como implementar um somador completo com uma memria ROM. A Figura 2.61 mostra a tabela verdade de um somador completo e a
implementao das funes soma e vai-um com uma memria ROM de oito linhas de
dois bits cada, ou uma memria ROM 8x2. H uma correspondncia exata entre as
linhas da tabela e as ligaes nas interseces com as disjunes implementados nas
colunas.
Considere a soma de produtos da funo vai-um. O decodificador gera todos os oito
mintermos, um por linha, enquanto que o or da coluna soma os produtos distintos
de 0, que so as linhas com transistores nas interseces.
/
Memrias como estas permitem a implementao rpida e eficiente de funes
lgicas com muitas entradas. Por exemplo, a implementao de uma funo de
oito entradas com Mapas de Karnaugh e portas lgicas um processo tedioso
e complexo, enquanto que a gerao de uma ROM para esta funo consiste
essencialmente em copiar a tabela verdade da funo para a ROM. Este ltimo
processo pode ser trivialmente automatizado veja o Exerccio 2.13.
Na medida do possvel, tenta-se projetar a memria para que ela seja mais quadrada do que alta e estreita, porque linhas longas tem tempo de propagao
tambm longo veja o Exerccio 2.14.
Memrias ROM podem ser gravadas uma nica vez, durante sua fabricao,
no que chamado de programao por mscara. Todas as interseces entre
linhas e colunas possuem transistores mas somente aquelas posies com bits
em 1 tem seus gates ligados linha de seleo. Isso obtido num dos passos
finais do processo de fabricao, no qual uma das mscaras da metalizao s
contm conexes para os gates que correspondem a 1s na ROM.
Memrias PROM so Programmable ROM se os transistores nas interseces
podem ser programados eletricamente, ao invs de somente durante a fabricao. Memrias EPROM so Erasable Programmable ROM e depois de programadas eletricamente podem ser apagadas, tipicamente pela exposio luz ultravioleta. Memrias EEPROM so Electrically-Erasable Programmable ROM
e podem ser apagadas eletricamente. Estas ltimas so extremamente teis
porque permitem a reprogramao sem que seja necessrio remover o circuito
integrado de memria para sua exposio a uma fonte de luz.

2.5. ROM Read-Only Memory

107

vai-um

b
a
v

soma

pp
ppppppp ppppppppppp
p p p p p p p p p p p p p p p p p p s0
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
pppp s
s1
0
2
pp
1

ppppppppp

pp
3
dec-8

ppppppppppppppppppp
7
ppppppppppppppppppp
ppppppppppppppppppp
pppp

pppppp pp
ppppppppp

a
0
0
1
1
0
0
1
1

b
0
1
0
1
0
1
0
1

vai
0
0
0
1
0
1
1
1

s
0
1
1
0
1
0
0
1

pp
pp

pppp ppp p

ppppppp p

4
5

pp

v
0
0
0
0
1
1
1
1

ppppppppp

pp
pp

pp

ppppp ppp
ppp p pp
ppp pp p
ppp pp
ppppppppp

ppppp ppp
ppp p p p
ppp pp p
ppp p p
ppppppppp

vai

Figura 2.61: Somador completo implementado com uma ROM 8x2.


Exerccios
Ex. 2.13 Escreva um programa que, dada uma funo de V variveis, produz
os nmeros das linhas da ROM nas quais devem ser ligados os transistores.
Ex. 2.14 Converta o projeto da Figura 2.61 para uma memria de altura 4,
usando dois multiplexadores de duas entradas.

108

Captulo 2. A Tecnologia de Circuitos CMOS

Ex. 2.15 Projete uma memria ROM que implementa as funes and, nand,
or, nor com 4 entradas. Compare o nmero de transistores necessrios para a
implementao das portas lgicas como visto na Seo 2.2.2, com o nmero de
transistores na ROM. No esquea de contar os transistores no decodificador.

2.6

RAM Random Access Memory

Memrias que permitem leitura e escrita so chamadas de Random Access


Memory, ou RAM2 . Estas memrias so usadas para a armazenagem de dados,
e tipicamente so construdas com matrizes de armazenagem retangulares ou
quadradas.
Memrias RAM so construdas com duas tecnologias distintas. Memrias
Dinmicas so construdas com grande capacidade de armazenamento 4 a
16Gbits em 2016 e baixo custo. A outra tecnologia a das memrias estticas,
construdas para tempo de acesso curto, em detrimento da capacidade. As
prximas sees apresentam estas tecnologias.

2.6.1

DRAM Memria Dinmica

Memrias RAM dinmicas (DRAM) empregam clulas com somente dois transistores, donde advm a grande densidade muitas clulas por unidade de
rea e a grande capacidade. O dinamismo destas memrias um efeito colateral da clula minscula: um transistor com a geometria apropriada usado
como um capacitor, e a energia contida neste capacitor representa o valor do
bit armazenado na clula. Como o circuito de uma clula pequeno, com dimetro da ordem de 108 m, o isolamento eltrico dos componentes frgil e a
carga armazenada no capacitor escapa para a vizinhana, e o valor armazenado
no capacitor se perde. Por isso, o contedo destas memrias deve ser refrescado periodicamente. Durante o ciclo de refresh, o contedo das clulas
lido e ento reescrito, garantindo-se assim que os dados armazenados sejam
preservados. Tipicamente, um ciclo de refresh deve ocorrer a cada 50 ou 60ms.
Uma matriz de memria dinmica mostrada na Figura 2.62. Cada clula se
liga matriz por dois sinais, uma linha de bit (bit line), e uma linha de palavra
(word line). Estes sinais selecionam uma clula e ao mesmo tempo permitem
observar ou alterar seu contedo. Quando se usa o jargo de memria, as linhas
da matriz so chamadas de pginas. Cuidado com o uso da palavra linha: esta
palavra usada (i) para os sinais de acesso s clulas de memria, e (ii) para
a linha da matriz de dados, que uma pgina da DRAM.
2A

traduo correta para o Portugus memria de escrita e leitura e no o ridculo


memria de acesso randmico.

2.6. RAM Random Access Memory

decodicador
de linhaq
qqq
qqqqqqqqqq
qqqqqqqqqqq

c0

c1

109

linhas de bit
....
c2 .......... .......... cj
..
...
.....
.......

...
...
...........

c2M 1

pppppp

... ..
....

linhas de
palavra

l0

RAS

..
.......
......
.....
....
..
.......
...
...
...
..
..
.
.
.
......
......

l1

li

qqqqqqqqq2qq -1
qqqqqqqqqqq
qqqq

l2N 1

M+N
CAS

....................
...........

qqq
qq 0
ppppppqqqqq
qqq

2M -1

multiplexador de coluna
..
.....
.....
..

qq
qq q
q
qq

clula de
memria

D(i, j)

Figura 2.62: Memria DRAM com capacidade de N M bits.


Aplicando-se os nmeros da pgina (i) e da coluna (j) aos endereos, se obtm
acesso ao contedo da clula da memria que contm o bit D(i, j). A entrada
do decodificador de linha, com o nmero da linha, contm um registrador que
armazena todos os N bits com o nmero da linha, e este nmero capturado
quando o sinal RAS fica ativo. Uma vez que o endereo da pgina foi armazenado, o sinal CAS usado para selecionar uma das M colunas da matriz.
Um acesso matriz de dados ocorre em trs fases: (i) o nmero da pgina
armazenado, quando o sinal RAS fica ativo; (ii) uma coluna selecionada
quando o sinal CAS fica ativo; e (iii) o contedo da clula pode ser lido na
sada do multiplexador de coluna. O controlador de memria o circuito que
ativa os sinais certos na hora e na sequncia corretas. Parece complicado e
em breve retornaremos ao acesso uma clula na matriz de dados.
Uma clula de memria dinmica consiste de um transistor de passagem e de
um capacitor e este circuito mostrado na Figura 2.63. O capacitor o gate
de um segundo transistor, e a tenso entre as placas deste capacitor representa
o bit armazenado. Quando uma pgina da matriz selecionada, a linha de
palavra ativada, e o transistor de passagem conecta o terminal do capacitor
linha de bit (g = 1) (s = d) a variao de tenso na linha de bit
amostrada e amplificada, permitindo a recuperao do bit armazenado.

110

Captulo 2. A Tecnologia de Circuitos CMOS


q

linha de palavra
transistor
de passagem
d

clula de
memria

capacitor

linha de bit

Figura 2.63: Clula de memria dinmica.


Escrita
Numa escrita, a linha de bit colocada no valor do bit por escrever, e ento a
linha de palavra colocada em 1. O capacitor, quando est carregado com uma
tenso prxima de VCC representa nvel lgico 1, e quando est descarregado,
com 0V entre as placas, representa o nvel 0. A Figura 2.64 mostra a sequncia
de eventos de uma escrita. O amplificador na linha de bit usado nas leituras
para restaurar o valor armazenado na clula.

linha de bit

..
...
...
...

1
.
...
...
..

lin. palavra

VC

0=0V

pp
p p p pp p
p p p p p p p p p p p p p p p ppppppp

.
. .
.
...
.
...
.
...
.
.
.
.
.
.
..
..
.....
. ..
..
. ..
.
.
.
.
.
.
.
.
.
.
.

1=VCC

captura

linha de bit

qlinha de palavra
q

VC

ppp
p
ppp p pp pp
ppp p p
ppppp

bit

Figura 2.64: Escrita numa clula de DRAM.


Suponha que desejamos escrever 1 na clula de memria, e que o valor armazenado anteriormente era 0, e portanto o capacitor est descarregado. A linha
de bit colocada em 1, e quando a linha de palavra fica em 1, o capacitor, que
estava com 0V de tenso, se carrega at VCC. Quando a linha de palavra
desativada, o novo valor capturado porque a energia armazenada no capacitor
no tem por onde escapar. Contudo, sendo frgil o isolamento, a energia se
dissipa lentamente como calor.

2.6. RAM Random Access Memory

111

Se o novo valor igual ao anterior, a tenso armazenada sofre um reforo porque


o sinal na linha de bit mais forte do que o sinal no terminal do capacitor.
Se o bit por armazenar 0 e o valor anterior era 1, quando a linha de palavra
ativada, a tenso no capacitor cai para 0V, e assim permanece depois que a
linha de palavra for desativada.
Leitura
Leituras so algo mais complexas do que escritas porque a carga armazenada
nos capacitores minscula, da ordem daquela de 106 eltrons. Na preparao
para a leitura, a tenso na linha de bit colocada exatamente em VCC/2.
Quando a linha de palavra ativada e o terminal do capacitor ligado linha
de bit, a tenso entre as placas do capacitor gera uma pequena perturbao
na tenso da linha de bit. Essa perturbao mostrada com um trao mais
espesso na linha de seleo de bit. A perturbao amplificada e o valor original
recuperado da sada do amplificador mostrado na Figura 2.64.
linha de bit
lin. palavra

VC
bit

qqqqq
q

qq
qqqqqqqqq

.
.
.
.
. .......
.
.
. ...
.....
.....
......
........... ....
. .
.
..
.......
...
.
.........
.
.
...
.
.
.
...
...
...
.
.
.
.
.
.
.
..
...
...
....
..
.
.
.
.
...
.
.
...
....
...
.
.
.
.
.
.
...
...
....
.
. .
..
...
..
... .
... .
.
...
...
.
.
.
.
...
...
.
.
.
.
...
... .
.
.
.
.
.
.
.
....
...
.
.
.
.
.
...
.
.
.
. . . .. . . . . . . . . . . . . .. . . . . ... . . . . . . . .. . . . . . . . . ... .. . . . . .
...
.
.
.
.. .
.
.
.
.
.......
.
.
.
.
..
...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
......
..........
.
.
... ...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.....
.....
.....
.....
.
.

V CC/2

1=VCC

pppppppppppppppppppppppp
pppppppppppppppppppppppppp pppp pppppp ppppp ppppp ppppp ppppppppppppp

p
p pp
pp p

preparao

leitura

restaurao

Figura 2.65: Preparao, leitura e refresh de uma clula de DRAM.


As leituras so destrutivas: para obter o valor armazenado, o capacitor descarregado para VCC/2 se estava em 1, ou carregado para VCC/2 se estava
em 0. A descarga ocorre, e mostrada, na fase de leitura. VCC/2 um nvel
lgico indeterminado e pode contaminar o restante do circuito com valores indeterminados. Quando uma clula lida, o valor recuperado deve ser gravado
novamente, com seu nvel lgico restaurado. A restaurao do valor degradado
indicada como a fase de restaurao.
O refrescamento da memria efetuado com se fosse uma leitura. Veja, na
Figura 2.62, que todas as clulas de uma linha da matriz podem ser refrescadas
simultaneamente. Num ciclo de refresh, ao contrrio de uma escrita ou leitura,
todas as clulas de uma linha so lidas, e ento gravadas novamente. O controlador de memria dinmica deve varrer todas as linhas da DRAM, e refrescar
cada linha dentro de um intervalo de 50 a 60ms.

112

Captulo 2. A Tecnologia de Circuitos CMOS

2.6.2

SRAM Memria Esttica

Memrias estticas empregam clulas maiores e mais complexas que aquelas de


DRAM, sendo menos densas e com menor capacidade. Contudo, o parmetro
de projeto mais importante para memrias estticas o tempo de acesso, que
um tanto menor do que nas DRAMs. Em geral, memrias estticas so implementadas junto aos processadores, no mesmo circuito integrado, e portanto
seu tempo de acesso tende a ser to curto quanto o possvel, para uma dada
capacidade e tecnologia de circuitos.
Uma clula de memria esttica mostrada na Figura 2.66. Esta clula emprega 6 transistores ao invs dos dois de uma clula dinmica. A ligao circular
dos dois inversores viola a nossa definio de circuito combinacional memrias so circuitos sequenciais, mas os apresentamos nesta seo para manter a
continuidade do assunto.
q
linha de bit
b q

linha de palavra

.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

pppppppppp
pppppppppp pp p p p
pppp p
pp ppppppp p p p p p
p
p
p
p
p
ppppp

ppp
pp ppppppp
ppppppppppppppppppppppppppppp
pppppppppp
ppp

linha de bit
qb

clula de SRAM

Figura 2.66: Clula de memria esttica.


Os dois inversores formam um bsculo, que um circuito que se mantm num
determinado estado se as condies externas no se alterarem e a alimentao
do circuito for mantida. Quando a linha de palavra est em zero, se o sinal x
est em 1, ento o sinal y est em 0. Se y est em 0, ento x est em 1, e o
bsculo mantm um valor estvel. Este valor pode ser alterado se a linha de
palavra estiver em 1, e os sinais complementares em b e b forem diferentes dos
valores armazenados.
Os inversores do bsculo so projetados para gerar sinais mais fracos do que os
circuitos que geram os sinais b e b. Numa escrita, as linhas de bit complementares devem ser colocadas nos nveis apropriados e ento a linha de palavra
ativada. Se o contedo da clula se mantm, os valores em x e y no se alteram.
Se o contedo da clula deve ser alterado, os valores em b e b se sobrepem aos
sinais em x e y, que acabam trocando de nvel. Quando a linha de palavra
desativada, o novo valor capturado pelo bsculo.
Numa leitura, a tenso nas linhas de bit deve ser colocada em VCC/2. Quando
a linha de palavra ativada, as sadas dos inversores provocam uma perturbao

2.6. RAM Random Access Memory

113

nas linhas de bit, e um amplificador diferencial detecta a diferena entre as


tenses em b e b e recupera o valor armazenado na clula.
O diagrama de blocos da memria DRAM no mostra o circuito de escrita. A
Figura 2.67 mostra um diagrama de blocos de uma SRAM com mais detalhe do
que aquele da DRAM. Os circuitos de decodificao de linha e de multiplexao
de coluna so similares aos da DRAM. O topo do diagrama mostra o seletor
de escrita, que escolhe qual a coluna por atualizar. Se o sinal de escrita (wr)
estiver ativo, ento o valor de entrada D(i, j) aplicado ao circuito de escrita
da coluna selecionada.
wr

D(i, j) (entr.)
pp p
seletor de escrita

q
pppppqp qq
q
qq

circ. escr.

qqqq
qqqqqqqqqq
qqqqqqqqqq

2M -1

circ. escr.

circ. escr.

l0

decodif.
de linha
N

qqq
qqq
qqq
q
D qq

SRAM

q q q

SRAM

SRAM

l1

pppppp

qqqqqqq2qqq -1
qqqqqqqqqq
qqqq

SRAM

SRAM

q
q
q

q
q
q

q q q

SRAM

q
q
q
l2N 1

SRAM

SRAM

b b

SRAM

.....
. p
ppppppppp
ppppppppp
p p
p
ppppppppp
pppp pppp ppppppppppppppppp
pppp pppp
ppppppppp
pppp pppp
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
ppppppppp p pppppp
ppppppppp p pppppp
ppppppppp p pppppp
pp
pp
pp
amplicadores
qqq
q
qqq
0
1
2M -1
qq
p
p
p
q
p
q
pp qqq
q
M
multiplexador de coluna
qq
qqq
qq
pp p D(i, j) (sada)
.....
.

.....
.

.....
.

.....
.

.....
.

Figura 2.67: Memria SRAM com capacidade de N M bits.


Na base do diagrama esto os amplificadores diferenciais que amplificam a
diferena entre b e b para recuperar o valor armazenado na clula D(i, j).
No necessrio refrescar as clulas aps a leitura porque os bsculos mantm
o valor armazenado. Para acelerar o acesso ao contedo das clulas, o nmero
da linha e o da coluna so fornecidos simultaneamente matriz. Numa leitura,
decorrido o tempo de acesso do decodificador de linha, mais o tempo para

114

Captulo 2. A Tecnologia de Circuitos CMOS

acessar o contedo da clula, este valor apresentado na sada aps o tempo


de propagao do multiplexador de coluna.
O tempo de acesso SRAM menor do que o de uma DRAM porque a capacidade da memria esttica , em geral, uma frao daquela da DRAM, e
portanto o tempo para decodificar a linha e multiplexar a coluna mais curto
porque estes circuitos so menores. Alm disso, no h refresh nas SRAM, o
que tambm reduz seu tempo de acesso.

Вам также может понравиться