View
809
Download
7
Category
Preview:
DESCRIPTION
Aula de Circuito Lógicos para o 5 Semestre de Engenharia da Anhanguera.
Citation preview
Circuitos LógicosProfessor MsEE Adriano Amaral
O QUE VAMOS VER?
1. Diferenças entre os circuitos analógicos e os digitais.2. Conversão entre bases.
3. Operações aritméticas: soma, subtração e multiplicação.4. Álgebra de Boole. Definição e teoremas fundamentais.
5. Portas lógicas, tabela verdade e famílias lógicas: TTL e CMOS6. Mapa de Karnaugh.
7. Flip-flops: RS, JK, D e T e diagramas de tempo.8. Contador assíncrono e síncrono.
9. Circuito integrado 555. Monoestáveis e Astáveis10. Memórias semicondutoras: RAM, ROM, PROM, EPROM, EEPROM, Flash.
11. Conversores analógicos digitais (ADC) e digitais analógicos (DAC)11. Dispositivos Lógicos Programáveis (CPLD e FPGA).
12. Ferramentas de Programação de Dispositivos.
Livro Texto
• TOCCI, Ronald J.; WIDMER, Neal S.. Sistemas Digitais : princípios e aplicações. 8a ed. São Paulo: Pearson - Prentice Hall, 2003.
AVALIAÇÃO• Provas!!!
• 1a Avaliação: 8,00 + ATPS (2,0 = 1,5+0,5)
• Período: 31/03 a 04/04
• Peso: 4
• 2a Avaliação: 7,00 + ATPS (3,0 = 2,5+0,5)
• Período: 09/06 a 13/06
• Peso: 6
• Substitutiva: 23/06 a 27/06 (Valor: 10,00)
Calendário ATPSOrientação ATPSOrientação ATPS
ApresentaçãoENG/TELECOM
03/03/JunhoJunho
Obrigatóriopara TODOSTODOS
os professores
Orientação ATPSOrientação ATPSApresentação
ENG/TELECOM
03/03/JunhoJunho
Obrigatóriopara TODOSTODOS
os professores
QUEM SOU EU???• Adriano Amaral
• Mestrado em Engenharia, aplicação de Sistemas Dinâmicos
• Diretor de Multinacional Chinesa – Huawei
• Engenheiro de formação
!
• Mas e daí!?!?!?
• Amante de Metafísica, de música, de livros, fillmes...
• De Passeios e viagens...
Governo...para todos em todo lugar!
QUEM SOU EU???“Prefiro ser essa metarmofose ambulante,
Do que ter aquela velha opinião
formada Sobre tudo...”
!
Raul Seixas
Vamos começar nossa
jornada???
Em que mundo estamos vivendo?
Soci
al P
rism
a Pe
rspe
ctiv
e
www.paulomilreu.com.br.
www.paulomilreu.com.br.
LOREM IPSUM DOLORDonec quis nunc
LOREM IPSUM DOLOR
Revolução Social
Revolução Social
Revolução Social
Paramos por ai?
• Maecenas aliquam maecenas ligula nostra, accumsan taciti. Sociis mauris in integer
• El eu libero cras interdum at eget habitasse elementum est, ipsum purus pede
• Aliquet sed. Lorem ipsum dolor sit amet, ligula suspendisse nulla pretium, rhoncus
LOREM IPSUM DOLOR
www.affordablevalvecompany.com
Transistor Quântico!http://en.wikipedia.org/wiki/Single-atom_transistor
Computadores
• Máquinas que processam a informação!
Problema de Lógica• O dono do Sedan está em uma das pontas.
• O garoto de 19 anos está exatamente à direita de quem pretende comer 9 pedaços.
• O dono do SUV está exatamente à esquerda do dono do Sedan.
• Na segunda posição está o dono da Pickup.
• O dono do Crossover está na terceira posição.
• Quem está usando a camisa Azul está exatamente à direita do dono do Hatch.
• Quem pretende comer 6 pedaços está na quinta posição.
• O rapaz que pretende comer 9 fatias está em algum lugar à direita daquele que está de Verde.
• Quem gosta da pizza de Calabresa está exatamente à esquerda de quem pretende comer 5 fatias.
• O rapaz que quer comer 7 pedaços está à esquerda do que quer comer 5.
• O amigo de 27 anos está exatamente à direita do que gosta da pizza de Quatro queijos.
• Na quinta posição está quem gosta da pizza Portuguesa.
• Leandro está exatamente à direita de quem gosta da pizza de Frango.
• O rapaz que gosta da pizza de Brigadeiro está em algum lugar entre o que gosta da pizza de Frango e o que gosta da pizza de Quatro queijos, nessa ordem.
• O amigo de 22 anos está em algum lugar entre o Gabriel e o amigo mais jovem, nessa ordem.
• Na segunda posição está o rapaz de 29 anos.
• Vinicius está na quarta posição.
• O dono da Pickup está ao lado do amigo de 22 anos.
• O rapaz de Azul está em algum lugar entre o amigo mais velho e o que pretende comer mais, nessa ordem.
• Maurício está em algum lugar à direita de quem está de Azul.
• Renato está exatamente à esquerda de Leandro.
• O rapaz de Branco está exatamente à direita de quem pretende comer 9 fatias.
• O amigo de Vermelho está em algum lugar à esquerda do amigo de Amarelo.
Amigo 1 Amigo 2 Amigo 3 Amigo 4 Amigo 5
Cor
Nome
Idade
Pizza
Pedacos
Carro
DESIGN THINKING
CENTRADO NAS PESSOAS...
MÉTODO CIENTIFICO
PROCESSO...DE INOVAR!
Inspiração Ideação Implementação
Problem statementStakeholder
NEEDS A WAY TO
(describe person using empathetic language) (needs are VERBS)
DO
SAYTHINK
FEEL
BECAUSE
InsightNeed
STAKEHOLDER
Insights
Design Thinking Action Lab 2013
(STAKEHOLDER) PRECISA DE ALGO PARA ......(PROBLEMA/
NECESSIDADE)....PORQUE (INSIGHT)!!!
FERRAMENTAS• Mapa Mental
• Comece com a Empatia
• Olhe com o olhar do outro...
• Use situações análogas
• Exemplo: Emergência Hospitalar e a Equipe de Fórmula 1
• Olhe para o usuário extremo não o comum
• Exemplo: Cozinhando como crianças
• Contar Histórias esse é o caminho para a mudança
• Contradição: Sala pequena par quem idealiza, sala grande para os projetos
Mundo Analógico e Digital• Sistemas Analógico: onde as variáveis assumem valores contínuos:
• As magnitudes físicas são analógicas em sua maioria
• Sistemas Digitais: onde as variáveis assumem valores discretos:
• Valores discretos chamados de dígitos
• Precisão limitada (simplificação da realidade)
• Digital é mais fácil de manipular
• Mundo analógico convertido em digital através de processos de amostragem
Sistemas Binários• Sistemas que assumem apenas 2 valores
• Digitos Binários são chamados de “bits”
• São representados por símbolos: Alto e Baixo, Algo e não Algo, 0 e 1
• Porque usar o sistema binário:
• Mais confiável: imune a ruídos
• Fácil de manipular, pois possuem apenas 2 valores
Sistemas Numéricos
• Números são representados usando dígitos
• O sistema mais comum é o decimal
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 7
Number Systems ! Numbers are represented using digits
! The system we commonly use is decimal: • N = an 10n + an-1 10n-1 + … + a1 10 + a0
• Example: 27210 = 2*102 + 7*10 + 2
! The same representation can be used with different bases:
• N = an bn + an-1 bn-1 + … + a1 b + a0
Digit Weight
Base
Sistemas Numericos
• A mesma representação pode ser usado para representação de base "N"
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 7
Number Systems ! Numbers are represented using digits
! The system we commonly use is decimal: • N = an 10n + an-1 10n-1 + … + a1 10 + a0
• Example: 27210 = 2*102 + 7*10 + 2
! The same representation can be used with different bases:
• N = an bn + an-1 bn-1 + … + a1 b + a0
Digit Weight
Base
Sistemas Numéricos• Em um sistema usando base “b”, os possíveis dígitos são:
• 0,1,2…, b-1
• Usando “n”digitos, bn de diferentes números possíveis que podem ser representados de 0 a bn-1
• Está representação pode ser usado por números não naturais também:
• Exemplo: 727,2310=7*102+2*101+7*100+2*10-1-3*10-2
• Os números usados nos sistemas digitais são binários (b=2), octogonais (b=8) e hexadecimais (b=16)
Sistema Binário• Neste sistema a base é 2
• Os possíveis dígitos são 0 e 1. Um digito no sistema binário é denominado “bit
• 2n diferentes números pode ser representado usando “n" bits
• O bit de maior peso é chamado “Bit Mais Significativo” (MSB) e o de menor peso “Bit Menos Significativo” (LSB)
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 9
Binary System ! In this system the base is 2.
• Possible digits are 0 and 1. A digit in binary system is named “bit”.
• 2n different numbers can be represented using n bits.
! The bit with highest weight is called MSB (“Most Significant Bit”), and the lowest weighted bit is called LSB (“Least Significant Bit”)
• Example: 10010102 = 1*26 + 1*23 + 1*21 = 7410
MSB LSB
Usually the most significant bit is written to the left, and the least significant bit is written at the right
Sistema Octogonal• Sistema de base = 8
• Digitos são: 0,1,2,3,4,5,6,7
• 8n são os números que podem representados com n bits
• Está diretamente relacionado com o sistema binário (8 é potência de 2, 23=8)
• Este relacionamento permite a fácil conversão entre binários e octogonais
• Exemplo:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 10
Octal Number System
! In this system the base is 8 • Digits are 0,1,2,3,4,5,6,7 • 8n different numbers can be represented with n digits
! It is related to the binary system (8 is a power of 2, 23=8) • This relationship allows to convert easily from octal to binary
and from binary to octal.
! Example: 1378 = 1*82 + 3*81 + 7*80 = 9510
Sistema Hexadecimal• Sistema de base 16
• Os dígitos são: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
• Também relacionado com o binário (24=16)
• O digito Hexadecimal pode ser representado por 4 bits (devido 24=16). Um digito hexadecimal pode ser denominado “nibble"
• 2 dígitos hexadecimais equivalem a 8 bits, um grupo de 8 bits é denominado “byte"
• Notações: 23AF16 = 23AFh = 23AFhex = 0x23AF = 0x23 0xAF
• Exemplo:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 11
Hexadecimal Number System ! In this system de base is 16.
• Digits are 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. • It is related to binary system as well (24=16) • A hexadecimal digit allows to represent the same as 4 bits
(because 24=16). An hexadecimal digit can be named as “nibble”.
• Two hexadecimal digits are equivalent to 8 bits. A set of 8 bits, or equivalently 2 hexadecimal digits, are called “byte”.
! Notations: 23AF16 = 23AFhex = 23AFh = 0x23AF = 0x23 0xAF.
! Example: 23AFh = 2*163 + 3*162 + 10*16 +15 = 913510
Conversão de bases
• Conversão de qualquer sistema para decimal:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 12
Number Systems Conversions
! Conversion from any system to decimal: • N = an bn + an-1 bn-1 + … + a1 b + a0
• Examples: • 10010102 = 1*26 + 1*23 + 1*21 = 7410
• 1378 = 1*82 + 3*81 + 7*80 = 9510 • 23AFh = 2*163 + 3*162 + 10*16 +15 = 913510
! Conversion from decimal to any other system: • Weight decomposition • Repeated division
Conversão de Bases
• Decomposição por pesos
• Divisões repetitivas
Decomposição por pesos
• O número é decomposto na base de destino
• Este método é útil para sistema com bases conhecidas, por exemplo o binário: 1, 2, 8,16, 32, 64, 128, 256…
• Exemplo:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 13
Weight Decomposition
! The number is decomposed in powers of the base. • The nearest power of the base (lower) is searched. • Iteratively, powers of the base are been searched so that the sum of all of
them is the decimal number to convert • Finally, the weights are used to represent the number in the desired base.
! This method is only useful for systems with well known powers. For example, for binary system: 1, 2, 8, 16, 32, 64, 128, 256, …
! Example: • 2510 = 16 + 8 + 1 = 24 + 23 + 20 = 110012
Divisões Repetitivas• O número e o cociente da divisão anterior é dividido sucessivamente pela
base de destino
• O último cociente é o MSB
• Os restantes são os outros bits, até o LSB
• Exemplo
! The number and the quotients in previous divisions are divided repeatedly by the destination base • The last quotient obtained is the MSB • The remainders are the other bits, the first one corresponding to the LSB.
! Example:
! This method is more general than the previous one. It can be used for any base conversion
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 14
Repeated Division
25 2 1 12 2 0 6 2 0 3 2 1 1
MSB
LSB 2510 = 110012
Números Reais
• O mesmo pode ser realizado para números reais
• Separa-se a parte inteira da parte decimal
• Divisão sucessivas para a parte inteira
• Um método análogo para decimal, multiplicação sucessivas pela base
Números Reais• Exemplos:
Real numbers conversion
! Conversion from binary to decimal can be obtained using the same method as for integer numbers (just using negative weights for the decimal part) :
101,0112 = 1*22 + 0*21 + 1*21 + 0*2-1 + 1* 2-2 + 1* 2-3 = = 4 + 1 + 0,25 + 0,125 = 5,37510
! Conversion from decimal to binary is obtained in two steps: • Convert first the integer part, using repeated division or weight
decomposition. • Then convert the decimal part, using an analogous method: repeated
multiplication by the base.
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 15
! The decimal part of the number is multiplied repeatedly by the base: • The decimal part is multiplied by 2. Then the integer part of the result is the
first bit (MSB of the decimal part) of the conversion. • The obtained decimal part is multiplied by 2, and again, the integer part is
the next digit of the conversion. • Iterate this procedure several times, depending on the desired precision for
the conversion.
! Examples:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 16
Repeated multiplication method (decimal part)
0,3125 10 = 0,01012 0,3125 x 2 = 0,625 => 0 0,625 x 2 = 1,25 => 1 0,25 x 2 = 0,5 => 0 0,5 x 2 = 1 => 1
0,110 = 0,0 0011 0011 ... 2 0,1 x 2 = 0,2 => 0 0,2 x 2 = 0,4 => 0 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 0,6 x 2 = 1,2 => 1 0,2 x 2 = 0,4 => 0 <- the last four digits will repeat periodically 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 ...
! The decimal part of the number is multiplied repeatedly by the base: • The decimal part is multiplied by 2. Then the integer part of the result is the
first bit (MSB of the decimal part) of the conversion. • The obtained decimal part is multiplied by 2, and again, the integer part is
the next digit of the conversion. • Iterate this procedure several times, depending on the desired precision for
the conversion.
! Examples:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 16
Repeated multiplication method (decimal part)
0,3125 10 = 0,01012 0,3125 x 2 = 0,625 => 0 0,625 x 2 = 1,25 => 1 0,25 x 2 = 0,5 => 0 0,5 x 2 = 1 => 1
0,110 = 0,0 0011 0011 ... 2 0,1 x 2 = 0,2 => 0 0,2 x 2 = 0,4 => 0 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 0,6 x 2 = 1,2 => 1 0,2 x 2 = 0,4 => 0 <- the last four digits will repeat periodically 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 ...
! The decimal part of the number is multiplied repeatedly by the base: • The decimal part is multiplied by 2. Then the integer part of the result is the
first bit (MSB of the decimal part) of the conversion. • The obtained decimal part is multiplied by 2, and again, the integer part is
the next digit of the conversion. • Iterate this procedure several times, depending on the desired precision for
the conversion.
! Examples:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 16
Repeated multiplication method (decimal part)
0,3125 10 = 0,01012 0,3125 x 2 = 0,625 => 0 0,625 x 2 = 1,25 => 1 0,25 x 2 = 0,5 => 0 0,5 x 2 = 1 => 1
0,110 = 0,0 0011 0011 ... 2 0,1 x 2 = 0,2 => 0 0,2 x 2 = 0,4 => 0 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 0,6 x 2 = 1,2 => 1 0,2 x 2 = 0,4 => 0 <- the last four digits will repeat periodically 0,4 x 2 = 0,8 => 0 0,8 x 2 = 1,6 => 1 ...
Outros Métodos de Conversão
• Fácil Conversão por serem de mesma base (variando a potência)
• Octogonal para Binário: Converte cada digito em 3 bits:
!
• Binário para Octogonal: Agrupa 3 bits
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 17
Other conversion methods ! Octal and Hexadecimal number systems are related with binary
because their bases are exact powers of the binary base. This makes very easy the conversion between these systems and binary. • OCTAL to BINARY: Convert each digit into binary (3 bits each digit)
• Example: 7358 = 111 011 1012
• BINARY to OCTAL: Gruop • Example: 1 011 100 0112 = 13438
• HEXADECIMAL to BINARY: Convert each digit into binary (4 bits each digit) • Example: 3B2h = 0011 1011 00102
• BINARY to HEXADECIMAL: Agrupar en grupos de 4 bits y convertirlos de forma independiente a octal
• Example: 10 1110 00112 = 2E3h
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 17
Other conversion methods ! Octal and Hexadecimal number systems are related with binary
because their bases are exact powers of the binary base. This makes very easy the conversion between these systems and binary. • OCTAL to BINARY: Convert each digit into binary (3 bits each digit)
• Example: 7358 = 111 011 1012
• BINARY to OCTAL: Gruop • Example: 1 011 100 0112 = 13438
• HEXADECIMAL to BINARY: Convert each digit into binary (4 bits each digit) • Example: 3B2h = 0011 1011 00102
• BINARY to HEXADECIMAL: Agrupar en grupos de 4 bits y convertirlos de forma independiente a octal
• Example: 10 1110 00112 = 2E3h
Códigos Binários• São códigos que usam 0 e 1 para representar a informação
• Informação pode ser:
• Numeros Naturais
• Inteiros
• Reais
• Caracteres Alfanuméricos e Simbolos
• A mesma informação pode ser representada usando diversos códigos
Codigo Natural• Codigo binário que usa a representação de
números naturais como binários
• Codigo mais simples
• Simples e pode ser feito porque para os números naturais é simples ilustrar usando apenas 0 e 1
• Notação:
• 1001BIN = 10012
Códigos BCD - Codigo Binário Decimal
• 4 bits são usados para representar cada número decimal
• O mais comum é o BCD natural (existem outros)
Códigos BCD - Codigo Binário Decimal
• Exemplos:
• 7810 = 0111 1000BCD
• O códice BCD pode ser diferente do número natural
• 7810 = 10011102
• Contras: Nem todo códice BCD existe: 1110BCD não existe
• Pros: Fácil converter números naturais
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 20
BCD Codes (�Binary-Coded Decimal�) ! They are an alternative to the natural binary code for
representation of natural numbers
! A 4-bit encoding is assigned to each decimal digit. A decimal number is encoded in BCD code digit to digit.
! The most common BCD code is natural BCD (there are other BCD codes).
! Example: • 7810 = 0111 1000BCD
! The BCD encoding of a number may be different to the natural binary encoding • 7810 = 1001110BIN
! CONS: No all encodings correspond to a binary BCD encoding. For example,1110BCD does not exist.
! PRO: It is easy to convert natural numbers to BCD.
Decimal digit BCD code
0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1
Codigos Progressivos e Adjacentes
• Dois códigos são adjacentes quando há apenas um bit diferente entre eles:
• 0001 e 0000 são adjacentes porque o ultimo bit é diferente
• 0001 e 0010 não são pois os 2 últimos dígitos são diferentes entre si
• O código é progressivo se todos os códigos consecutivos forem adjacentes
• O código natural não é adjacente pois 0001 (110) e 0010 (210) não são adjacentes
• O código é cíclico quando o primeiro e o ultimo código forem adjacentes
• Codigo Gray
• Codigo Johnson
Codigo Gray
• Exemplo de código gray de 3 bits
• Progressivo e cíclico
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 22
Gray Code ! Gray codes are progressive and cyclic
! Example: 3-bit Gray Code
Decimal Gray Code
0 0 0 0
1 0 0 1
2 0 1 1
3 0 1 0
4 1 1 0
5 1 1 1
6 1 0 1
7 1 0 0
All consecutive encodings are adjacent
Construindo o código Gray
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 23
Gray Code
! Construction of n-bit Gray codes: • First the n-1 bit code is copied. Then it is copied again in inverse order • Then a 0 is added in the first part of the table, and a 1 in the second part
! 1-bit code:
! 2-bits code:
0
1
0
1
1
0
0 0
0 1
1 1
1 0
Construindo o código Gray
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 24
Código Gray
! 3-bits code:
! n-bit Gray codes can be obtained by iteration
0 0
0 1
1 1
1 0
1 0
1 1
0 1
0 0
0 0 0
0 0 1
0 1 1
0 1 0
1 1 0
1 1 1
1 0 1
1 0 0
Código Johnson• Outro cíclico e progressivo
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 26
Johnson Codes ! It is another progressive and cyclic code
! In each encoding, zeros are grouped to the left and ones to the right, or vice versa.
! Example: 3 bits Johnson code
Decimal Johnson
0 0 0 0
1 0 0 1
2 0 1 1
3 1 1 1
4 1 1 0
5 1 0 0
Código Alfanumérico• Eles podem representar diferentes símbolos:
• Números
• Letras Maiúsculas e Minúsculas
• Marcas de pontuação
• Caracteres de Controle (Espaço, pular linha, etc…)
• Outros Símbolos Gráficos
• Um código alfanumérico para representar 10 números + 26 letras do alfabeto (minuscula e maiúscula = 52) precisa de 6 bits
• Os códigos mais comuns são:
• ASCII Code (7 bits)
• ASCII Extendido (8 bits)
• Unicode (8-32 bits)
ASCII Codes
• American Standard Code for Information Interchange, nasceu em 1963
• O padrão de 7 bits (128 caracteres)
• O padrão estendido (256 caracteres) varia de região para região
ASCII Padrão
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 29
Standard ASCII Code
ASCII Extendido
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 30
Extended ASCII Codes
EXAMPLE: LATIN-1 extended ACII
(ISO 8859-1)
Algebra Booleana
• Em álgebra abstrata, álgebras booleanas (ou álgebras de Boole) são estruturas algébricas que "captam as propriedades essenciais" dos operadores lógicos e de conjuntos, ou ainda oferece um estrutura para se lidar com “afirmações"
http://pt.wikipedia.org/wiki/Álgebra_booliana
Dominio Booleano• “0” não é igual ao número zero, mas ao conceito
de NADA
• “1” não é igual ao número “1”, mas ao conceito de algo
• 1+1=2 (FALSO)
• Algo+Algo = Algo
Postulados Booleanos• Lei Composição Interna
• ∀ a,b ∈ B ⇒ a+b ∈ B, a*b ∈ B
• Elementos Naturais
• ∀ a ∈ B, ⇒ ∃ Elemento Neutro tal que ( 0 e 1 respectivamente:
• a+0 = a
• a*1 = a
• Propriedade Comutativa
• ∀ a, b ∈ B ⇒ a+b = b+a, a*b = b*a
• Propriedade Distributiva
• ∀ a,b,c ∈ B ⇒ a+b*c = (a+b)*(a+c), a*(b+c) = a*b+a*c
Postulados Booleanos• Propriedade Comutativa
• ∀ a, b ∈ B ⇒
• a+b = b+a
• a*b = b*a
• Propriedade Distributiva
• ∀ a,b,c ∈ B ⇒
• a+b*c = (a+b)*(a+c)
• a*(b+c) = a*b+a*c
Postulados Booleanos
• Elemento Inverso e Complementar
• ∀ a ∈ B ⇒ ∃ ã ∈ B
• a + ã = 1
• a * ã = 0
Propriedades da Algebra Booleana
• Dualidade: Para cada lei existe um dual, que é obtido repondo: 0 ⬌ 1, + ⬌ *
• Potências Iguais
• a+a= a
• a*a= a
• Anulação
• a+1 = 1
• a*0 = 0
Prova:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 6
Fundamental properties of Boolean Algebra
! Duality: Every valid law has its dual, which is obtained by replacing 0 ↔ 1 and + ↔ •
! Idempotence • ∀ a ∈ B ⇒ a + a = a
a • a = a • Proof:
! Anihilation • ∀ a ∈ B ⇒ a + 1 = 1
a • 0 = 0
aa1a)(a)aa)(a(aaaa0aa +=•+=++=+=+=
Operações
• Multiplicação
• Adição
• Inversão
A B A*B A+B Ā
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0
Propriedades• ã = a
• a + ab = a
• a (a+b) = a
• Propriedade Associativa
• (a+b)+c = a+(b+c)
• (a*b)*c = a*(b*c)
˜
Prova:
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 8
Fundamental properties of Boolean Algebra
! Involution • ∀ a ∈ B ⇒
! Absorption • ∀ a, b∈ B ⇒ a + ab = a
a (a+b) = a • Proof:
! Associative property • ∀ a, b, c ∈ B ⇒ (a + b) + c = a + (b + c)
(a • b) • c = a • (b • c)
aa =
aa)b(aabaaba =•=+=+•=+ 111
Lei de Morgan
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 9
Fundamental properties of Boolean Algebra
! De Morgan laws: • ∀ a, b∈ B ⇒
• Proof: therefore (a+b) is the inverse of
babababa+=•
=+
11•=++++=++ )bba)(aba(ba)ba(
ba
Prova
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 9
Fundamental properties of Boolean Algebra
! De Morgan laws: • ∀ a, b∈ B ⇒
• Proof: therefore (a+b) is the inverse of
babababa+=•
=+
11•=++++=++ )bba)(aba(ba)ba(
ba
Funções
• Trabalhando com variáveis como na algebra convencional
• ⨍ : X → B, onde B = {0,1}
Funções
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 11
Representation of logic functions
! Expression f(a, b) = a + b
! Truth table
a b f(a,b)
0 0 0
0 1 1
1 0 1
1 1 1
Funções
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 12
Deriving the truth table from a expression
! Evaluate the expression for every combination of input values
a b c f
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
cba)c,b,a(f +=
Função Mintermo• Expressão: produto de todas as variáveis,
invertidas ou não
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 13
Minterm function ! Expression: a product of all variables, either inverted or not
! Truth table: has a 1 for one combination and 0 elsewhere
! Example:
! Rule to obtain the expresion: • 0 → inverted variable • 1 → non-inverted variable
a b c f
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 0
2mcba)c,b,a(f ==
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 13
Minterm function ! Expression: a product of all variables, either inverted or not
! Truth table: has a 1 for one combination and 0 elsewhere
! Example:
! Rule to obtain the expresion: • 0 → inverted variable • 1 → non-inverted variable
a b c f
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 0
2mcba)c,b,a(f ==
Função Maxitermo• Expressão: soma das variáveis invertidas ou não
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 14
Maxterm function ! Expression: a sum of all variables, either inverted or not
! Truth table: has a 0 for one combination and 1 elsewhere
! Example:
! Rule to obtain the expresion: • 0 → inverted variable • 1 → non-inverted variable
a b c f
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
2M)cba()c,b,a(f =++=
ATTENTION: minterms use the opposite rule!
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 14
Maxterm function ! Expression: a sum of all variables, either inverted or not
! Truth table: has a 0 for one combination and 1 elsewhere
! Example:
! Rule to obtain the expresion: • 0 → inverted variable • 1 → non-inverted variable
a b c f
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
2M)cba()c,b,a(f =++=
ATTENTION: minterms use the opposite rule!
Teorema de Shannon
• Toda função booleana pode ser expressada pela soma dos seus Mintermos ou pelo produto dos seus Maxitermos, vezes o valor final da função
1a Forma Canonica (Mintermos)
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 17
First canonical form
! A function can be expressed as the sum of all minterms for which the function evaluates to 1
a b c f
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 0
cbacbacba
),,(m),,()c,b,a(f
++=
=== ∑∑33
520520
2a Forma Canonica (Maxitermos)
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 18
Second canonical form
! A function can be expressed as the product of all maxterms for which the function evaluates to 0
a b c f
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 0
)cba)(cba()cba)(cba)(cba(
),,,,(M),,,,()c,b,a(f
++++
++++++=
=== ∏∏33
7643176431
ATTENTION: minterms use the opposite rule!
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 18
Second canonical form
! A function can be expressed as the product of all maxterms for which the function evaluates to 0
a b c f
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 0
)cba)(cba()cba)(cba)(cba(
),,,,(M),,,,()c,b,a(f
++++
++++++=
=== ∏∏33
7643176431
ATTENTION: minterms use the opposite rule!
Então…
• Se o motorista estiver presente e não estiver usando cinto, e a ignição estiver acionada, então acenda a luz de advertência…qual é a função?
Portas Lógicas• As portas lógicas são circuitos que realizam as
funções booleanas
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 19
Logic gates
! Logic gates are electronic circuits that implement the basic functions of Boolean Algebra
! There is a symbol for each gate
a a 0 0 0 1
a 0 1 1 0
! Identity z = a
! NOT gate or inverter az =
a
Portas Lógicas
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 20
AND and OR gates ! AND gate
z = a • b ! OR gate
z = a + b
a b a•b 0 0 0 0 1 0 1 0 0 1 1 1
a b a+b 0 0 0 0 1 1 1 0 1 1 1 1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 20
AND and OR gates ! AND gate
z = a • b ! OR gate
z = a + b
a b a•b 0 0 0 0 1 0 1 0 0 1 1 1
a b a+b 0 0 0 0 1 1 1 0 1 1 1 1
Portas Lógicas
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 21
NAND and NOR gates ! NAND gate ! NOR gate
a b 0 0 1 0 1 1 1 0 1 1 1 0
a b 0 0 1 0 1 0 1 0 0 1 1 0
babaz =+=babaz +=•=
ba• ba+
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 21
NAND and NOR gates ! NAND gate ! NOR gate
a b 0 0 1 0 1 1 1 0 1 1 1 0
a b 0 0 1 0 1 0 1 0 0 1 1 0
babaz =+=babaz +=•=
ba• ba+
Portas Lógicas
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 22
XOR and XNOR gates ! XOR (Exclusive-OR) gate ! XNOR (Exclusive-NOR) gate
)ba)(ba(bababaz ++=+=⊕= )ba)(ba(baabbaz ++=+=⊕=
a b a⊕b 0 0 0 0 1 1 1 0 1 1 1 0
a b 0 0 1 0 1 0 1 0 0 1 1 1
ba⊕
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 22
XOR and XNOR gates ! XOR (Exclusive-OR) gate ! XNOR (Exclusive-NOR) gate
)ba)(ba(bababaz ++=+=⊕= )ba)(ba(baabbaz ++=+=⊕=
a b a⊕b 0 0 0 0 1 1 1 0 1 1 1 0
a b 0 0 1 0 1 0 1 0 0 1 1 1
ba⊕
Portas Lógicas
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 22
XOR and XNOR gates ! XOR (Exclusive-OR) gate ! XNOR (Exclusive-NOR) gate
)ba)(ba(bababaz ++=+=⊕= )ba)(ba(baabbaz ++=+=⊕=
a b a⊕b 0 0 0 0 1 1 1 0 1 1 1 0
a b 0 0 1 0 1 0 1 0 0 1 1 1
ba⊕
Outros Símbolos
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 24
Other symbols
! A circle at an input or output indicates inversion
a b c
cbaz =
Portas Lógicas• Características
• As entradas não estão limitadas a 2, podem ter quantas entradas forem necessárias
• A saída é sempre única
Copyleft Rossano Pablo Pinto 4
Portas Lógicas
● Características
– As estradas não estão limitadas a 2. Podem ter quantas entradas forem necessárias.
– A saída é sempre única
1
2
3
n....
Portas Lógicas Simples
Copyleft Rossano Pablo Pinto 3
Portas Lógicas Básicas
Circuitos Digitais• As portas lógicas são circuitos digitais
• Os níveis lógicos são representados pelo nível de tensão
• Lógica Positiva (tensão maior que zero) são a comumente usada
• Alta Tensão (5V, 3.3V, 2,5V, etc…) - 1
• Baixa Tensão (0V) - 0
• Existem várias tecnologias, dependendo da forma como os circuitos são implementados e as funcionalidades obtidas em cada implementação
Familias de Circuitos• O que veremos principalmente nesse curso que implementa a
maior variedade de circuitos que serão estudados é a Familia 74xx
• A várias sub-familias:
• De acordo com a variação de temperatura:
• 74xx - 00 a 700
• 54xx - -550 a 1250
• De acordo com a tecnologia
• LS, ALS, F, HC,
Familias Lógicas• Denominação
• <Série><SubFamilia><Componente>
• Exemplo: 74HC00
• 74xx: Série com range convencional de temperatura
• Subfamilia HC (High Speed CMOS)
• Componente 00: 4 portas NAND, 2 entradas
• 7400: Quatro portas NAND de duas entradas
• 7401: Quatro portas NAND de duas entradas com coletor aberto
• 7402: Quatro portas NOR de duas entradas
• 7403: Quatro portas NAND de duas entradas com coletor aberto
• 7404: Seis inversores (porta NOT)
• 7405: Seis inversores (porta NOT com saídas com coletor aberto
• 7406: Seis Buffer/Driver inversores com saídas de 30V com coletor aberto
• 7407: Seis Buffer/Driver com saídas de 30V com coletor aberto
• 7408: Quatro portas AND de duas entradas
• 7409: Quatro portas AND de duas entradas com coletor aberto
• 7410: Três portas NAND de três entradas
• 7411: Três portas AND de três entradas
• 7412: Três portas NAND de três entradas com coletor aberto
• 7413: Duas portas NAND de quatro entradas Schmitt trigger
• 7414: Seis inversores Schmitt trigger
• 7415: Três portas AND de três entradas com coletor aberto
• 7416: Seis Buffer/Driver inversores com saídas de 15V com coletor aberto
• 7417: Seis Buffer/Driver com saída de 15V com coletor aberto
• 7419: Seis inversores Schmitt trigger
• 7420: Duas portas NAND de quatro entradas
• 7421: Duas portas AND de quatro entradas
• 7422: Duas portas NAND de quatro entradas com coletor aberto
• 7423: Duas portas NOR de quatro entradas com strobe expansíveis
• 7425: Duas portas NOR de quatro entradas com strobe
• 7426: Quatro portas NAND de duas entradas com saídas de 15V com coletor aberto
• 7427: Três portas NOR de três entradas
• 7428: Quatro portas NOR de duas entradas
• 7430: Uma porta NAND de oito entradas
• 7431: Seis elementos de atraso
Datasheet
Datasheet
Funcionalidades• Principais:
• Range de Temperatura
• Tensão de Entrada
• Margem de Ruído (intervalo associado a cada valor lógico)
• Atraso de Mudança de Estado
• Potência/Consumo
• Outros
Atraso• Os circuitos lógicos não variam automaticamente;
• O Atraso limita a velocidades de operação do circuito;
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 30
Delays
! Logic gates do not switch immediately
! Delay limits the operating speed of circuits
V
t
V
t tp
Ideal inverter Real inverter Inversor Ideal Inversor Real
Consumo/Potência• Os circuitos consomem energia
• Potência Estática: tomada quando circuito está ligado independente da atividade lógica
• Potência Variável: tomada no chamamento dos circuitos lógicos
• Nas tecnologias CMOS (mais usadas atualmente) o consumo estático é muito baixo, entretanto:
• Circuitos modernos podem ter bilhões de portas lógicas (109)
• A potência variável varia de acordo com a frequência de operação
• O consumo é um problema fundamental: pois está associado ao aquecimento dos circuitos, bem como aos sistemas de dissipação, sistemas móveis por exemplo devem ser bem desenhados para evitar isso!
Tecnologia CMOS• CMOS - Complementar Metal-Oxido-Semicondutor,
é a mais comumente utilizada
• Ela se baseia:
• Em transistores MOSFET: chamamento controlado por tensão
• Complementar: para cada chave/transistor a um complementar. Quando um está aberto, o outro está fechado e vice-versa!
MOS
Inversor CMOS
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008 33
CMOS Inverter
Vcc
Vi=1 Vo=0
Vcc
Vi=0 Vo=1
Vcc
Vi=1 Vo=0
Vcc
Vi=0 Vo=1
Tabelas + Circuitos
Copyleft Rossano Pablo Pinto 8
Portas Lógicas● 2 funções equivalentes: (a) AB + AC (b)
A(B+C)
Recommended