Projeto Digital e Arquitetura de Computadores

2,007 views

Published on

Transparências em Português do Livro "Digital Design and Computer Architecture", de David M. Haarris e Sarah L. Harris, Ed. Morgan Kaufmann, 2007, USA - Capítulo 1.

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,007
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
62
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Projeto Digital e Arquitetura de Computadores

  1. 1. 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 2011Copyright © 2007 Elsevier 1-<1>
  2. 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 EnergiaCopyright © 2007 Elsevier 1-<2>
  3. 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 2004Copyright © 2007 Elsevier 1-<3>
  4. 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ídoCopyright © 2007 Elsevier 1-<4>
  5. 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 – RegularidadeCopyright © 2007 Elsevier 1-<5>
  6. 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 electronsCopyright © 2007 Elsevier 1-<6>
  7. 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. 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 facilidadeCopyright © 2007 Elsevier 1-<8>
  9. 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. 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áveisCopyright © 2007 Elsevier 1-<10>
  11. 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 valoresCopyright © 2007 Elsevier 1-<11>
  12. 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. 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 DigitCopyright © 2007 Elsevier 1-<13>
  14. 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. 15. Sistemas Numéricos • Números decimais 1000s column 10s column 1s column 100s column 537410 = • Números binários 8s column 2s column 1s column 4s column 11012 =Copyright © 2007 Elsevier 1-<15>
  16. 16. Sistemas Numéricos • Números decimais 1000s column 10s column 1s column 100s column 537410 = 5 × 103 + 3 × 102 + 7 × 101 + 4 × 100 five three seven four thousands hundreds tens ones • Números binários 8s column 2s column 1s column 4s column 11012 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 = 1310 one one no one eight four two oneCopyright © 2007 Elsevier 1-<16>
  17. 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. 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é 29Copyright © 2007 Elsevier 1-<18>
  19. 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árioCopyright © 2007 Elsevier 1-<19>
  20. 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 = 1011112Copyright © 2007 Elsevier 1-<20>
  21. 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. 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 15Copyright © 2007 Elsevier 1-<22>
  23. 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 1111Copyright © 2007 Elsevier 1-<23>
  24. 24. Números Hexadecimais • Base 16 • Abreviação para se escrever números binários muito longosCopyright © 2007 Elsevier 1-<24>
  25. 25. Conversão de Hexadecimal paraBiná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 decimalCopyright © 2007 Elsevier 1-<25>
  26. 26. Conversão de Hexadecimal paraBiná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 = 119910Copyright © 2007 Elsevier 1-<26>
  27. 27. Bits, Bytes, Nibbles… • Bits 10010110 most least significant significant bit bit byte • Bytes & Nibbles 10010110 nibble • Bytes CEBF9AD7 most least significant significant byte byteCopyright © 2007 Elsevier 1-<27>
  28. 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. 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. 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õesCopyright © 2007 Elsevier 1-<30>
  31. 31. Adição • Decimal 11 carries 3734 + 5168 8902 • Binário 11 carries 1011 + 0011 1110Copyright © 2007 Elsevier 1-<31>
  32. 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 bitsCopyright © 2007 Elsevier 1-<32>
  33. 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. 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 + 6Copyright © 2007 Elsevier 1-<34>
  35. 35. Números Binários com Sinal • Números representados por meio de Sinal/Magnitude • Números representados por meio de complemento de doisCopyright © 2007 Elsevier 1-<35>
  36. 36. Números Representados Através deSinal/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. 37. Números Representados Através deSinal/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. 38. Números Representados Através deSinal/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 0000Copyright © 2007 Elsevier 1-<38>
  39. 39. Números Representados peloComplemento 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 0Copyright © 2007 Elsevier 1-<39>
  40. 40. Números Representados peloComplemento 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. 41. Números representados peloComplemento 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. 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 = 00112Copyright © 2007 Elsevier 1-<42>
  43. 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 = -310Copyright © 2007 Elsevier 1-<43>
  44. 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. 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 = -710Copyright © 2007 Elsevier 1-<45>
  46. 46. Adição de 2 Números emComplemento 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 + 0011Copyright © 2007 Elsevier 1-<46>
  47. 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 + 0011Copyright © 2007 Elsevier 10001 1-<47>
  48. 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 zeroCopyright © 2007 Elsevier 1-<48>
  49. 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: 11111011Copyright © 2007 Elsevier 1-<49>
  50. 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 = 1110Copyright © 2007 Elsevier 1-<50>
  51. 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 Twos Complement 0000 1111 1110 1101 1100 1011 1010 1001 1000 0001 0010 0011 0100 0101 0110 0111 Sign/MagnitudeCopyright © 2007 Elsevier 1-<51>
  52. 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 entradasCopyright © 2007 Elsevier 1-<52>
  53. 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 1Copyright © 2007 Elsevier 1-<53>
  54. 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 1Copyright © 2007 Elsevier 1-<54>
  55. 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 1Copyright © 2007 Elsevier 1-<55>
  56. 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 1Copyright © 2007 Elsevier 1-<56>
  57. 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 1Copyright © 2007 Elsevier 1-<57>
  58. 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 1Copyright © 2007 Elsevier 1-<58>
  59. 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 1Copyright © 2007 Elsevier 1-<59>
  60. 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 ímparCopyright © 2007 Elsevier 1-<60> • Obs: O que você nota de errado na figura à direita?
  61. 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. 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. 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 sistemasCopyright © 2007 Elsevier 1-<63>
  64. 64. O Que é Ruído?Copyright © 2007 Elsevier 1-<64>
  65. 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 VCopyright © 2007 Elsevier 1-<65>
  66. 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 discretosCopyright © 2007 Elsevier 1-<66>
  67. 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 GNDCopyright © 2007 Elsevier 1-<67>
  68. 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 – VIHCopyright © 2007 Elsevier NML = VIL – VOL 1-<68>
  69. 69. Características de Transferência DC Buffer Ideal: Buffer Real: V(Y) V(Y) A YVOH 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. 70. Características de Transferência DC A Y V(Y) Output Characteristics Input CharacteristicsVDD VDDVOH VO H NMH Forbidden VIH Zone VIL Unity Gain NML Points VO LVOL Slope = 1 V(A) 0 VIL VIH VDD GNDCopyright © 2007 Elsevier 1-<70>
  71. 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. 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.7Copyright © 2007 Elsevier 1-<72>
  73. 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 sCopyright © 2007 Elsevier 1-<73>
  74. 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 integradoCopyright © 2007 Elsevier 1-<74>
  75. 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-TypeCopyright © 2007 Elsevier 1-<75>
  76. 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 drainCopyright © 2007 Elsevier 1-<76> nMOS
  77. 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 GNDCopyright © 2007 Elsevier 1-<77>
  78. 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 drainCopyright © 2007 Elsevier 1-<78>
  79. 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 dCopyright © 2007 Elsevier 1-<79>
  80. 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 networkCopyright © 2007 Elsevier 1-<80>
  81. 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 1Copyright © 2007 Elsevier 1-<81>
  82. 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 0Copyright © 2007 Elsevier 1-<82>
  83. 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 0Copyright © 2007 Elsevier 1 1 1-<83>
  84. 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 1Copyright © 2007 Elsevier 1 1 OFF OFF ON ON 0 1-<84>
  85. 85. Estrutura da Porta CMOS pMOS pull-up network inputs output nMOS pull-down networkCopyright © 2007 Elsevier 1-<85>
  86. 86. Porta NOR Como poderíamos construir uma porta NOR com tres entradas?Copyright © 2007 Elsevier 1-<86>
  87. 87. Porta NOR3 (Com 3 Entradas) Porta NOR com tres entradas A B C YCopyright © 2007 Elsevier 1-<87>
  88. 88. Outras portas CMOS Como poderemos construir uma porta AND de tres entradas?Copyright © 2007 Elsevier 1-<88>
  89. 89. Outras portas CMOS Porta AND de tres entradas A Y BCopyright © 2007 Elsevier 1-<89>
  90. 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 BCopyright © 2007 Elsevier 1-<90>
  91. 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 networkCopyright © 2007 Elsevier 1-<91>
  92. 92. Exemplo de Pseudo-nMOS Pseudo-nMOS NOR4 weak Y A B C DCopyright © 2007 Elsevier 1-<92>
  93. 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. 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 CringleyCopyright © 2007 Elsevier 1-<94>
  95. 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ênciaCopyright © 2007 Elsevier 1-<95>
  96. 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 = ½CVDD2fCopyright © 2007 Elsevier 1-<96>
  97. 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 = IDDVDDCopyright © 2007 Elsevier 1-<97>
  98. 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 mACopyright © 2007 Elsevier 1-<98>
  99. 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 WCopyright © 2007 Elsevier 1-<99>

×