Weitere ähnliche Inhalte Ähnlich wie Projeto Digital e Arquitetura de Computadores (20) Mehr von Sylvio Silveira Santos (9) Kürzlich hochgeladen (20) Projeto Digital e Arquitetura de Computadores1. Capítulo 1:: Sobre 0s e 1s
Digital Design and Computer Architecture
David Money Harris and Sarah L. Harris
Tradução: Prof. Sylvio Silveira Santos
Disciplina: Introdução à Arquitetura de Computadores
Curso de Sistemas de Informação – PUC Minas Betim
Fevereiro de 2011
Copyright © 2007 Elsevier 1-<1>
2. Capítulo 1:: Tópicos
• Background
• Plano do Jogo
• A Arte de Administrar a Complexidade
• A Abstração Digital
• Sistemas de Numeração
• Portas Lógicas
• Níveis Lógicos
• Transistores CMOS
• Consumo de Energia
Copyright © 2007 Elsevier 1-<2>
3. Plano de Fundo
• Os microprocessadores revolucionaram o mundo
– Celulares, Internet, avanços rápidos na medicina, etc.
• A indústria de semicondutores cresceu de 21 bilhões de
dólares em 1985 para 213 bilhões em 2004
Copyright © 2007 Elsevier 1-<3>
4. Objetivos do Curso
• O objetivo deste curso é levar você a:
– Aprender o que se situa dentro do gabinete, rack ou
caixa de um computador
– Aprender os princípios atualizados de um projeto
digital
– Aprender a depurar sistematicamente seus projetos
complexos de sistemas computacionais
– Compreender o funcionamento de um
microprocessador e como ele é construído
Copyright © 2007 Elsevier 1-<4>
5. A Arte de Administrar a Complexidade
• Abstração
• Abordagem disciplinada
• Para assim introduzir os três aspectos mais
importantes da Arquitetura de Computadores:
– Hierarquia
– Modularidade
– Regularidade
Copyright © 2007 Elsevier 1-<5>
6. Abstração
• Consiste na arte de Application
Software
programs
esconder detalhes Operating
Systems
device drivers
quando eles não são Architecture
instructions
registers
focus of this course
importantes Micro-
architecture
datapaths
controllers
adders
Logic
memories
Digital AND gates
Circuits NOT gates
Analog amplifiers
Circuits filters
transistors
Devices
diodes
Physics electrons
Copyright © 2007 Elsevier 1-<6>
7. Disciplina
• Procura-se restringir as escolhas de projeto
– De modo a poder trabalhar em um nível mais elevado de
abstração
• Exemplo: Sistemas Digitais
– Consideram-se tensões discretas em vez de tensões
contínuas usadas em circuitos analógicos
– Circuitos digitais são mais simples de projetar do que
circuitos analógicos – com eles podemos construir sistemas
mais sofisticados
– Sistemas digitais vem contínuamente substituindo
predecessores analógicos rápidamente:
• I.e., câmeras digitais, TVs digitais, telefones celulares, tablets, CDs,
Copyright © 2007 Elsevier etc. 1-<7>
8. Três Aspectos Importantes
• Hierarquia em um rifle de caça
– Este é um exemplo da divisão de um sistema em
módulos e sub-módulos
• Modularidade
– O estabelecimento de interfaces e funções bem
definidas
• Regularidade
– Encorajamento da uniformidade, de modo que os
módulos possam ser reutilisados com facilidade
Copyright © 2007 Elsevier 1-<8>
9. Exemplo: O Antigo Rifle Flintlock
• Hierarquia
– Três módulos
principais: gatilho,
corpo e cano
– Sub-módulos do
gatilho: martelo,
pederneira (pedra de
isqueiro), disparador,
etc.
Copyright © 2007 Elsevier 1-<9>
10. Exemplo: O Antigo Rifle Flintlock
• Modularidade
– Função do corpo do
rifle: assegurar a fixação
do cano e da trava do
gatilho
– Interface do gatilho:
comprimento e
localização dos pinos de
montagem
• Regularidade
– Partes intercambiáveis
Copyright © 2007 Elsevier 1-<10>
11. A Abstração Digital
• Sabemos que a maior parte das variáveis físicas é
contínua, por exemplo
– A tensão em um fio
– A frequência de uma oscilação
– A posição de uma massa
• Em vez de considerar todos os valores, a
abstração digital considera apenas um sub-
conjunto discreto de valores
Copyright © 2007 Elsevier 1-<11>
12. A Máquina Analítica
• Projetada por Charles Babbage de
1834 a 1871
• Considerada como sendo o primeiro
computador
• Construída a partir de engrenagens
mecânicas, onde cada engrenagem
representava um valor discreto de 0
a9
• Babbage morreu antes que ela fosse
finalizada
• Com base no projeto de Babbage, a
Máquina Analítica foi construída
recentemente. Veja-se em:
http://www.computerhistory.org/babbage/
Copyright © 2007 Elsevier 1-<12>
13. Disciplina Digital: Valores Binários
• Como sabemos, típicamente são considerados
apenas dois valores discretos:
– 1’s e 0’s
– 1, VERDADEIRO (TRUE, ALTO)
– 0, FALSO (LOW, BAIXO)
• 1 e 0 podem ser representados por níveis de
tensões específicas, engrenagens rotatórias, níveis
de fluidos, etc.
• Todos os circuitos digitais dependem de níveis de
tensões específicas para representar 1 e 0
• Bit: Binary Digit
Copyright © 2007 Elsevier 1-<13>
14. George Boole, 1815 - 1864
• Nascido de pais professores
• Aprendeu matemática sozinho,
associando-se em seguida ao
corpo de professores da faculdade
Queen’s College na Irlanda.
• Escreveu An Investigation of the
Laws of Thought (1854)
• Introduziu o conceito de variáveis
binárias
• Introduziu as três operações
lógicas: AND, OR, e NOT.
Copyright © 2007 Elsevier 1-<14>
15. Sistemas Numéricos
• Números decimais
1000's column
10's column
1's column
100's column
537410 =
• Números binários
8's column
2's column
1's column
4's column
11012 =
Copyright © 2007 Elsevier 1-<15>
16. Sistemas Numéricos
• Números decimais
1000's column
10's column
1's column
100's column
537410 = 5 × 103 + 3 × 102 + 7 × 101 + 4 × 100
five three seven four
thousands hundreds tens ones
• Números binários
8's column
2's column
1's column
4's column
11012 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 = 1310
one one no one
eight four two one
Copyright © 2007 Elsevier 1-<16>
17. Potências de Dois
• 20 = • 28 =
• 21 = • 29 =
• 22 = • 210 =
• 23 = • 211 =
• 24 = • 212 =
• 25 = • 213 =
• 26 = • 214 =
• 27 = • 215 =
Copyright © 2007 Elsevier 1-<17>
18. Potências de Dois
• 20 = 1 • 28 = 256
• 21 = 2 • 29 = 512
• 22 = 4 • 210 = 1024
• 23 = 8 • 211 = 2048
• 24 = 16 • 212 = 4096
• 25 = 32 • 213 = 8192
• 26 = 64 • 214 = 16384
• 27 = 128 • 215 = 32768
• São fáceis de memorizar até 29
Copyright © 2007 Elsevier 1-<18>
19. Conversão de Números
• Conversão de Binário para Decimal:
– Converter 101012 para decimal
• Conversão de Decimal para Binário:
– Converter 4710 para binário
Copyright © 2007 Elsevier 1-<19>
20. Conversão de Números
• Conversão de Binário para Decimal:
– Converter 100112 para decimal
– 16×1 + 8×0 + 4×0 + 2×1 + 1×1 = 1910
• Conversão de Decimal para Binário:
– Converter 4710 para binário
– 32×1 + 16×0 + 8×1 + 4×1 + 2×1 + 1×1 = 1011112
Copyright © 2007 Elsevier 1-<20>
21. Valores Binários e sua Faixa
• Número decimal de N- digitos
– Quantos valores? 10N
– Faixa? [0, 10N - 1]
– Exemplo: Nº decimal de 3 dígitos:
• 103 = 1000 valores possíveis
• Faixa: [0, 999]
• Número binário de N-bits
– Quantos valores? 2N
– Faixa: [0, 2N - 1]
– Exemplo: Nº binário de 3 dígitos:
• 23 = 8 valores possíveis
• Faixa: [0, 7] = [0002 to 1112]
Copyright © 2007 Elsevier 1-<21>
22. Números Hexadecimais
Hexadecimal Decimal Equivalente Binario Equivalente
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
A 10
B 11
C 12
D 13
E 14
F 15
Copyright © 2007 Elsevier 1-<22>
23. Números Hexadecimais
Hexadecimal Decimal Equivalente Binario Equivalente
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
A 10 1010
B 11 1011
C 12 1100
D 13 1101
E 14 1110
F 15 1111
Copyright © 2007 Elsevier 1-<23>
24. Números Hexadecimais
• Base 16
• Abreviação para se escrever números binários
muito longos
Copyright © 2007 Elsevier 1-<24>
25. Conversão de Hexadecimal para
Binário
• Conversão de hexadecimal para binário:
– Converter 4AF16 (também escrito 0x4AF) para
binário
• Conversão de hexadecimal para decimal:
– Converter 0x4AF para decimal
Copyright © 2007 Elsevier 1-<25>
26. Conversão de Hexadecimal para
Binário
• Conversão de hexadecimal para binário:
– Converter 4AF16 (também escrito 0x4AF) para
binário
– 0100 1010 11112
• Conversão de hexadecimal para decimal:
– Converter 4AF16 para decimal
– 162×4 + 161×10 + 160×15 = 119910
Copyright © 2007 Elsevier 1-<26>
27. Bits, Bytes, Nibbles…
• Bits 10010110
most least
significant significant
bit bit
byte
• Bytes & Nibbles
10010110
nibble
• Bytes CEBF9AD7
most least
significant significant
byte byte
Copyright © 2007 Elsevier 1-<27>
28. Potências de Dois
• 210 = 1 kilo ≈ 1000 (1024)
• 220 = 1 mega ≈ 1 milhão (1,048,576)
• 230 = 1 giga ≈ 1 bilhão (1,073,741,824)
Copyright © 2007 Elsevier 1-<28>
29. Estimando Potências de Dois
• Qual é o valor de 224?
• Quantos valores poderá uma variável de 32-
bits representar?
Copyright © 2007 Elsevier 1-<29>
30. Estimando Potências de Dois
• Qual é o valor de 224?
- 24 × 220 ≈ 16 milhões
• Quantos valores poderá uma variável de 32-
bits representar?
-22 × 230 ≈ 4 bilhões
Copyright © 2007 Elsevier 1-<30>
31. Adição
• Decimal 11 carries
3734
+ 5168
8902
• Binário 11 carries
1011
+ 0011
1110
Copyright © 2007 Elsevier 1-<31>
32. Exemplos de Adição Binária
• Adicionar os
1001
seguintes números
+ 0101
binários de 4 bits
• Adicionar os 1011
seguintes números + 0110
binários de 4 bits
Copyright © 2007 Elsevier 1-<32>
33. Exemplos de Adição Binária
• Adicionar os 1
1001
seguintes números
+ 0101
binários de 4 bits
1110
111
• Adicionar os 1011
seguintes números + 0110
binários de 4 bits 10001
Overflow!
Copyright © 2007 Elsevier 1-<33>
34. Overflow
• Os sistemas digitais trabalham com um
número fixo de bits
• Um overflow na adição ocorre quando o
resultado excede a capacidade de
armazenagem dos registros disponíveis
• Veja-se o exemplo anterior de 11 + 6
Copyright © 2007 Elsevier 1-<34>
35. Números Binários com Sinal
• Números representados por meio de
Sinal/Magnitude
• Números representados por meio de
complemento de dois
Copyright © 2007 Elsevier 1-<35>
36. Números Representados Através de
Sinal/Magnitude
• 1 bit de sinal, N-1 bits de magnitude
• O bit de sinal é o mais significativo (bit mais à esquerda)
– Nº positivo: bit de sinal = 0
– Nº negativo: bit de sinal = 1 A : a N 1 , a N 2 , a2 , a1 , a0
n 2
A ( 1) an 1
ai 2i
i 0
• Exemplo: representação de ± 6 por meio de sinal/magnitude:
+6 =
-6=
• Faixa de representação sinal/magnitude de um número de N
bits:
Copyright © 2007 Elsevier 1-<36>
37. Números Representados Através de
Sinal/Magnitude
• 1 bit de sinal, N-1 bits de magnitude
• O bit de sinal é o mais significativo (bit mais à esquerda)
– Nº positivo: bit de sinal = 0
– Nº negativo: bit de sinal = 1 A : a N 1 , a N 2 , a2 , a1 , a0
n 2
A ( 1) an 1
ai 2i
i 0
•
Exemplo: representação de ± 6 por meio de sinal/magnitude:
+6 = 0110
- 6 = 1110
• Faixa de representação sinal/magnitude de um número de N
bits: [-(2N-1-1), 2N-1-1]
Copyright © 2007 Elsevier 1-<37>
38. Números Representados Através de
Sinal/Magnitude
• Problemas:
– A adição não funciona, como por exemplo em
-6 + 6:
1110
+ 0110
10100 (errado!)
– Existem duas representações para o zero (± 0):
1000
0000
Copyright © 2007 Elsevier 1-<38>
39. Números Representados pelo
Complemento de Dois
• Não apresentam os problemas decorrentes da
representação tipo sinal/magnitude:
– A adição funciona!
– Existe uma única representação para o 0
Copyright © 2007 Elsevier 1-<39>
40. Números Representados pelo
Complemento de Dois
• O mesmo que binário sem sinal, mas o bit mais significativo
tem valor de -2N-1
n 2
A an 1 2n 1 ai 2i
i 0
• Número de 4 bits mais positivo:
• Número de 4 bits mais negativo:
• O bit mais significativo ainda indica o sinal
(1 = negativo, 0 = positivo)
• Faixa de um N-bit representado por meio de complemento de
dois:
Copyright © 2007 Elsevier 1-<40>
41. Números representados pelo
Complemento de Dois
• O mesmo que binário sem sinal, mas o bit mais significativo
tem valor de -2N-1
n 2
A an 1 2n 1 ai 2i
i 0
• Número de 4 bits mais positivo: 0111
• Número de 4 bits mais negativo: 1000
• O bit mais significativo ainda indica o sinal
(1 = negativo, 0 = positivo)
• Faixa de um N-bit representado por meio de complemento de
dois: [-(2N-1), 2N-1-1]
Copyright © 2007 Elsevier 1-<41>
42. “Tomando o Complemento de Dois”
• Tomando o Complemento de Dois
• Método:
1. Inverter os bits
2. Adicionar 1
• Exemplo: Inverter o sinal de 310 = 00112
Copyright © 2007 Elsevier 1-<42>
43. “Tomando o Complemento de Dois”
• Tomando o Complemento de Dois
• Método:
1. Inverter os bits
2. Adicionar 1
• Exemplo: Inverter o sinal de 310 = 00112
1. 1100
2. + 1
1101 = -310
Copyright © 2007 Elsevier 1-<43>
44. Exemplos de Complementos de Dois
• Tomar o complemento de dois de 610 =
01102
• Qual é o valor decimal correspondente a
10012?
Copyright © 2007 Elsevier 1-<44>
45. Exemplos de Complementos de Dois
• Tomar o complemento de dois de 610 =
01102
1. 1001
2. + 1
10102 = -610
• Qual é o valor decimal correspondente a
10012?
1. 0110
2. + 1
01112 = 710, portanto 10012 = -710
Copyright © 2007 Elsevier 1-<45>
46. Adição de 2 Números em
Complemento de Dois
• Adicionar 6 + (-6) usando números em complementos de
dois
0110
+ 1010
• Adicionar -2 + 3 usando números em complementos de dois
1110
+ 0011
Copyright © 2007 Elsevier 1-<46>
47. Two’s Complement Addition
• Adicionar 6 + (-6) usando números em complementos de
dois
111
0110
+ 1010
10000
• Adicionar -2 + 3 usando números em complementos de dois
111
1110
+ 0011
Copyright © 2007 Elsevier
10001 1-<47>
48. Aumento da Largura dos Bits
• Um valor pode ser extendido de N bits para M bits
(onde M > N) usando:
– Extensão de sinal
– Extensão de zero
Copyright © 2007 Elsevier 1-<48>
49. Extensão de Sinal
• O bit de sinal é copiado nos bits mais
significativos.
• O valor do número permanece o mesmo
• Exemplo 1:
– 4-bits: representação de 3 = 0011
– 8-bits: valor extendido em sinal: 00000011
• Exemplo 2:
– 4-bits: representação de -5 = 1011
– 8-bits: valor extendido em sinal: 11111011
Copyright © 2007 Elsevier 1-<49>
50. Extensão Zero
• Zeros são copiados nos bits mais significativos.
• O valor irá mudar no caso de números negativos.
• Exemplo 1:
– 4-bits; valor = 00112 = 310
– 8-bits: valor extendido em zero: 00000011 = 310
• Exemplo 2:
– 4-bits: valor = 1011 = -510
– 8-bits: valor extendido em zero: 00001011 = 1110
Copyright © 2007 Elsevier 1-<50>
51. Comparação de Sistemas Numéricos
Sistema Numérico Faixa
Sem Sinal [0, 2N-1]
Sinal/Magnitude [-(2N-1-1), 2N-1-1]
Complemento de Dois [-2N-1, 2N-1-1]
Por exemplo, representação em 4-bits:
-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Unsigned 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
1000 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111 Two's Complement
0000
1111 1110 1101 1100 1011 1010 1001
1000
0001 0010 0011 0100 0101 0110 0111 Sign/Magnitude
Copyright © 2007 Elsevier 1-<51>
52. Portas Lógicas
• Realizam funções lógicas:
– inversão (NOT), AND, OR, NAND, NOR, etc.
• Com uma única entrada:
– Porta NOT, buffer
• Com duas entradas:
– AND, OR, XOR, NAND, NOR, XNOR
• Com múltiplas entradas
Copyright © 2007 Elsevier 1-<52>
53. Portas Lógicas de Uma Entrada
NOT BUF
A Y A Y
Y=A Y=A
A Y A Y
0 1 0 0
1 0 1 1
Copyright © 2007 Elsevier 1-<53>
54. Portas Lógicas de Uma Entrada
NOT BUF
A Y A Y
Y=A Y=A
A Y A Y
0 1 0 0
1 0 1 1
Copyright © 2007 Elsevier 1-<54>
55. Portas Lógicas de Duas Entradas
AND OR
A A
Y Y
B B
Y = AB Y=A+B
A B Y A B Y
0 0 0 0 0 0
0 1 0 0 1 1
1 0 0 1 0 1
1 1 1 1 1 1
Copyright © 2007 Elsevier 1-<55>
56. Portas Lógicas de Duas Entradas
AND OR
A A
Y Y
B B
Y = AB Y=A+B
A B Y A B Y
0 0 0 0 0 0
0 1 0 0 1 1
1 0 0 1 0 1
1 1 1 1 1 1
Copyright © 2007 Elsevier 1-<56>
57. Mais Portas Lógicas de Duas Entradas
XOR NAND NOR XNOR
A A A A
Y Y Y Y
B B B B
Y=A+B Y = AB Y=A+B Y=A+B
A B Y A B Y A B Y A B Y
0 0 0 0 0 1 0 0 1 0 0
0 1 1 0 1 1 0 1 0 0 1
1 0 1 1 0 1 1 0 0 1 0
1 1 0 1 1 0 1 1 0 1 1
Copyright © 2007 Elsevier 1-<57>
58. Mais Portas Lógicas de Duas Entradas
XOR NAND NOR XNOR
A A A A
Y Y Y Y
B B B B
Y=A+B Y = AB Y=A+B Y=A+B
A B Y A B Y A B Y A B Y
0 0 0 0 0 1 0 0 1 0 0 1
0 1 1 0 1 1 0 1 0 0 1 0
1 0 1 1 0 1 1 0 0 1 0 0
1 1 0 1 1 0 1 1 0 1 1 1
Copyright © 2007 Elsevier 1-<58>
59. Portas Lógicas de Múltiplas Entradas
NOR3 AND4
A A
B Y
B Y C
C D
Y = A+B+C Y = ABCD
A B C Y
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Copyright © 2007 Elsevier 1-<59>
60. Portas Lógicas de Múltiplas Entradas
NOR3 AND4
A
A B
B Y C Y
C D
Y = A+B+C Y = ABCD
A B C Y A B C Y
0 0 0 1 0 0 0 0
0 0 1 0 0 0 1 0
0 1 0 0 0 1 0 0
0 1 1 0 0 1 1 0
1 0 0 0 1 0 0 0
1 0 1 0 1 0 1 0
1 1 0 0 1 1 0 0
1 1 1 0
1 1 1 1
• Multi-entrada XOR: Paridade ímpar
Copyright © 2007 Elsevier 1-<60>
• Obs: O que você nota de errado na figura à direita?
61. Níveis Lógicos
• Definem tensões discretas para representar 1 e 0
• Por exemplo, poderíamos definir:
– 0 como sendo TERRA ou 0 volts
– 1 como sendo VDD ou 5 volts
• O que se pode dizer de 4.99 volts? Representa um
0 ou um 1?
• O que se pode dizer de 3.2 volts?
Copyright © 2007 Elsevier 1-<61>
62. Níveis Lógicos
• Deve-se definir uma faixa de tensões para
representar 1 e 0
• Deve-se definir faixas diferentes para saídas e
entradas, afim permitir margem adequada para
flutuações devido a ruídos nos sistemas
• O que é ruído?
Copyright © 2007 Elsevier 1-<62>
63. Níveis Lógicos
• Deve-se definir uma faixa de tensões para
representar 1 e 0
• Deve-se definir faixas diferentes para saídas e
entradas, afim permitir margem adequada para
flutuações devido a ruídos nos sistemas
Copyright © 2007 Elsevier 1-<63>
64. O Que é Ruído?
Copyright © 2007 Elsevier 1-<64>
65. O Que é Ruído?
• Qualquer coisa que degrada o sinal
– Por ex., resistência, ruído devido à fonte de
alimentação, acoplamento indutivo de fios próximos,
etc.
• Exemplo: uma porta (driver) poderia ter na saída um
sinal de 5 volts mas, devido à resistência de um fio
longo, o sinal poderia chegar ao receptor com um valor
degradado, por exemplo, 4.5 volts
Noise
Driver Receiver
5V 4.5 V
Copyright © 2007 Elsevier 1-<65>
66. Adoção de Valores Limitados
• Tendo-se entradas válidas lógicamente
definidas, cada elemento do circuito deverá
produzir saídas lógicamente válidas
• Devemos ser cuidadosos do uso de faixas
limitadas de tensão para representar valores
discretos
Copyright © 2007 Elsevier 1-<66>
67. Níveis Lógicos
Driver Receiver
Output Characteristics Input Characteristics
VDD
Logic High
Output Range Logic High
VO H Input Range
NMH
Forbidden VIH
Zone VIL
VO L NML
Logic Low
Logic Low Input Range
Output Range
GND
Copyright © 2007 Elsevier 1-<67>
68. Margens de Ruído
Driver Receiver
Output Characteristics Input Characteristics
VDD
Logic High
Output Range Logic High
VO H Input Range
NMH
Forbidden VIH
Zone VIL
VO L NML
Logic Low
Logic Low Input Range
Output Range
GND
NMH = VOH – VIH
Copyright © 2007 Elsevier NML = VIL – VOL 1-<68>
69. Características de Transferência DC
Buffer Ideal: Buffer Real:
V(Y) V(Y)
A Y
VOH VDD VDD
VOH
Unity Gain
Points
VOL Slope = 1
VOL 0 V(A) V(A)
0
VDD / 2 VDD VIL VIH VDD
VIL, VIH
NMH = NML = VDD/2 NMH , NML < VDD/2
Copyright © 2007 Elsevier 1-<69>
70. Características de Transferência DC
A Y
V(Y)
Output Characteristics Input Characteristics
VDD VDD
VOH
VO H
NMH
Forbidden VIH
Zone VIL
Unity Gain NML
Points VO L
VOL Slope = 1
V(A)
0
VIL VIH VDD GND
Copyright © 2007 Elsevier 1-<70>
71. Escalonamento da Tensão VDD
• Chips nos anos 1970 e 1980 foram projetados usando
VDD = 5 V
• Com o aperfeiçoamento da tecnologia,
houve redução do VDD
– Para evitar queimar transistores delicados
– Economizar energia
• 3.3 V, 2.5 V, 1.8 V, 1.5 V, 1.2 V, 1.0 V, …
• Devemos tomar cuidado ao conectar chips com
tensões diferentes de alimentação
Chips muitas vezes operam dentro do limite de tensão de
alimentação, mas se nos esquecermos disto, forçando
muito e sem refrigeração, eles podem queimar!
Copyright © 2007 Elsevier 1-<71>
72. Exemplos de Famílias Lógicas
Família VDD VIL VIH VOL VOH
Lógica
TTL 5 (4.75 - 5.25) 0.8 2.0 0.4 2.4
CMOS 5 (4.5 - 6) 1.35 3.15 0.33 3.84
LVTTL 3.3 (3 - 3.6) 0.8 2.0 0.4 2.4
LVCMOS 3.3 (3 - 3.6) 0.9 1.8 0.36 2.7
Copyright © 2007 Elsevier 1-<72>
73. Transistores
• Portas Lógicas usualmente são construídas a partir de
transistores
• O transistor é uma chave com três portas controladas em
regime de chaveamento
– Duas das portas são conectadas dependendo da tensão na terceira porta
– Por ex., na chave abaixo, os dois terminais (d e s) ficarão conectados
(ON) sòmente quando o terceiro terminal (g) for 1
g=0 g=1
d d d
g OFF ON
s s s
Copyright © 2007 Elsevier 1-<73>
74. Robert Noyce, 1927 - 1990
• Apelidado de “Prefeito do Vale
do Silício”
• Co-fundador da Fairchild
Semiconductors in 1957
• Co-fundador da Intel in 1968
• Co-inventor do circuito integrado
Copyright © 2007 Elsevier 1-<74>
75. Silício
• Transistores são construídos a partir do silício, um semicondutor
• O silício puro é um condutor pobre, pois não possui cargas livres
• O silício dopado é um bom condutor, pois possui cargas livres negativas,
(elétrons) e cargas livres positivas, (buracos). Temos:
a) N-type (Elétrons livres, cargas livres negativas)
b) P-type (Cargas livres positivas, buracos)
Free electron Free hole
Si Si Si Si Si Si Si Si Si
- +
+ -
Si Si Si Si As Si Si B Si
Si Si Si Si Si Si Si Si Si
Silicon Lattice n-Type p-Type
Copyright © 2007 Elsevier 1-<75>
76. Transistores MOS
• Transistores de Óxido Metálico:
Transistores Metal oxide silicon (MOS):
– A porta de um poli-silício (é usado geralmente um metal)
– Óxido (dióxido de silício): é um isolante
– Silicio dopado source gate drain
Polysilicon
SiO2
n n
p substrate
gate
source drain
Copyright © 2007 Elsevier 1-<76>
nMOS
77. Transistores: nMOS
Gate = 0, logo está OFF Gate = 1, logo está ON
(não há conexão entre (há um canal entre
source e drain) source e drain)
source drain source gate drain
gate VDD
GND
+++++++
-------
n n n n
channel
p substrate p substrate
GND GND
Copyright © 2007 Elsevier 1-<77>
78. Transistores: pMOS
• O transistor pMOS é exatamente o oposto
– ON quando Gate = 0
– OFF quando Gate = 1
source gate drain
Polysilicon
SiO2
p p
n
substrate
gate
source drain
Copyright © 2007 Elsevier 1-<78>
79. Função Transistor
g=0 g=1
d d d
nMOS g OFF
ON
s s s
s s s
pMOS g OFF
ON
d d d
Copyright © 2007 Elsevier 1-<79>
80. Função Transistor
• Transistores nMOS dão passagem para 0, podendo conectar
a fonte (Source) ao terra GND
• Transistores pMOS dão passagem para 1, podendo conectar
a fonte a VDD
pMOS
pull-up
network
inputs
output
nMOS
pull-down
network
Copyright © 2007 Elsevier 1-<80>
81. Portas CMOS: Porta NOT
NOT VDD
A Y
P1
Y=A A Y
N1
A Y
0 1
1 0
GND
A P1 N1 Y
0
1
Copyright © 2007 Elsevier 1-<81>
82. Portas CMOS: Porta NOT
NOT VDD
A Y
P1
Y=A A Y
N1
A Y
0 1
1 0
GND
A P1 N1 Y
0 ON OFF 1
1 OFF ON 0
Copyright © 2007 Elsevier 1-<82>
83. Portas CMOS: Porta NAND
NAND
A P2 P1
Y Y
B
A N1
Y = AB
B N2
A B Y
0 0 1
0 1 1
1 0 1
1 1 0 A B P1 P2 N1 N2 Y
0 0
0 1
1 0
Copyright © 2007 Elsevier
1 1 1-<83>
84. Portas CMOS: Porta NAND
NAND
A P2 P1
Y Y
B
A N1
Y = AB
B N2
A B Y
0 0 1
0 1 1
1 0 1
1 1 0 A B P1 P2 N1 N2 Y
0 0 ON ON OFF OFF 1
0 1 ON OFF OFF ON 1
1 0 OFF ON ON OFF 1
Copyright © 2007 Elsevier
1 1 OFF OFF ON ON 0 1-<84>
85. Estrutura da Porta CMOS
pMOS
pull-up
network
inputs
output
nMOS
pull-down
network
Copyright © 2007 Elsevier 1-<85>
86. Porta NOR
Como poderíamos construir uma porta NOR
com tres entradas?
Copyright © 2007 Elsevier 1-<86>
87. Porta NOR3 (Com 3 Entradas)
Porta NOR com tres entradas
A
B
C
Y
Copyright © 2007 Elsevier 1-<87>
88. Outras portas CMOS
Como poderemos construir uma porta AND de
tres entradas?
Copyright © 2007 Elsevier 1-<88>
90. Portas de Transmissão
• nMOS passa 1’s de modo deficiente
• pMOS pass 0’s de modo deficiente EN
• A porta de transmissão é uma chave melhor que
passa bem tanto 0 quanto 1 A B
• Quando EN = 1, a chave está ON:
– EN = 0 e A está conectada a B
EN
• Quando EN= 0, a chave está OFF:
– A não está conectada a B
Copyright © 2007 Elsevier 1-<90>
91. Portas Pseudo-nMOS
• Portas nMOS gates substituem redes tipo pull-up
network com um transistor fraco pMOS que
sempre estará ON
• O transistor pMOS é chamado de fraco porque
ele faz com que o output seja ALTO (HIGH)
sòmente quando a rede não estiver levando-o
para BAIXO (LOW) weak
Y
inputs nMOS
pull-down
network
Copyright © 2007 Elsevier 1-<91>
93. Gordon Moore, 1929 -
• Co-fundador da Intel em
1968 com Robert Noyce.
• Lei de Moore:
O número de transistores
em um chip de
computador dobra a cada
ano (observado em 1965)
• Desde 1975, a contagem
de transistores vem
dobrando a cada dois
anos.
Copyright © 2007 Elsevier 1-<93>
94. Lei de Moore
• “Se o automóvel seguisse o mesmo ciclo de desenvolvimento que o
computador, um Rolls-Royce custaria hoje $100, faria um milhão de
milhas por galão e poderia queimar uma vez por ano . . .”
– Robert Cringley
Copyright © 2007 Elsevier 1-<94>
95. Consumo de Energia
• Potência = Energia consumida por unidade de
tempo
• Temos dois tipos de consumo de potência:
– Consumo dinâmico de potência
– Consumo estático de potência
Copyright © 2007 Elsevier 1-<95>
96. Consumo Dinâmico de Potência
• Corresponde à potência necessária para carregar as
capacitâncias das portas dos transistores
• A energia necessária para carregar uma capacitância C até
VDD é CVDD2
• Se o circuito estiver funcionando na freqüência f, e todos
os transistores comutados (de 1 para 0 ou vice versa) nesta
freqüência, o capacitor estará carregado f/2 vezes por
segundo (descarga de 1 para 0 é livre).
• Logo, o consumo dinâmico de potência total é:
Pdynamic = ½CVDD2f
Copyright © 2007 Elsevier 1-<96>
97. Consumo Estático de Potência
• Refere-se à potência consumida quando as portas
ainda não estão comutando
• É causado pela corrente de fornecimento (qiescent
supply current, IDD) também chamado de corrente
de fuga (leakage current)
• Logo, a potência estática de consumo é:
Pstatic = IDDVDD
Copyright © 2007 Elsevier 1-<97>
98. Exemplo de Consumo de Potência
• Estimar o consumo de potência de um computador
de mão wireless
– VDD = 1.2 V
– C = 20 nF
– f = 1 GHz
– IDD = 20 mA
Copyright © 2007 Elsevier 1-<98>
99. Power Consumption Example
• Estimar o consumo de potência de um computador
de mão:
• VDD = 1.2 V
– C = 20 nF
– f = 1 GHz
– IDD = 20 mA
P = ½CVDD2f + IDDVDD
= ½(20 nF)(1.2 V)2(1 GHz) +
(20 mA)(1.2 V)
= 14.4 W
Copyright © 2007 Elsevier 1-<99>