Circuitos Digitais
Códigos e Portas Lógicas
Prof. Diogo Menezes Ferrazani Mattos [email protected]
Sala 421 – Bloco E
Revisão
• Sistemas Digitais vs. Sistemas Analógicos
– Vantagens e Desvantagens
• Conversão analógico – digital
• Sistemas de Numeração
– Binário, Octal, Decimal e Hexadecimal
• Representação de Quantidades Binárias
– Limiar analógico vs. Valores digitais
• Transmissão de Dados
– Serial vs. Paralela
Revisão
• Exercício
– Qual o maior número que pode ser representado utilizando 8 bits.
– Qual o maior número que pode ser representado utilizando 12 bits.
– Qual é o número decimal equivalente a 11010112
– Qual é o número binário seguinte a 101112 numa sequencia de contagem.
Sistema de Numeração Hexadecimal
• Conveniente para o tratamento de cadeias binárias longas
– Grupos de 4 bits Base 16
– 16 símbolos possíveis 0 a 9 + A a F
Sistema de Numeração Hexadecimal
Relação entre
hexadecimal, decimal e binário
Hexadecimal Decimal
• Conversão para decimal multiplicando o dígito pela potência de 16
• Para valores maiores que 10
Decimal Hex
• Conversão usando o método da divisão
– Como usado para o binário
• Divisão do decimal por 16
– O primeiro resto LSB – O último resto MSB
Decimal Hex
• Conversão de 42310 para hex
Decimal Hex
• Conversão 21410 para hex
Hex Binário
• Zeros são adicionados a esquerda do MSB para preencher o grupo
– Exemplo: 9F216
Verificar que BA616 = 1011101001102
Binário Hex
• Agrupamento de quatro bits começando pelo LSB
– Cada grupo é convertido para hex equivalente
Ronald Tocci/Neal Widmer/Gregory Moss
Copyright ©2007 by Pearson Education, Inc.
Decimal Hex Binário
• Simplifica o cálculo
– Conversão de decimal para hex Conversão para binário – Exemplo 378
Contagem em Hexadecimal
• Contagem em hex, cada posição é incrementado de 0 a F
– Ao chegar a F, volta a 0 e a próxima posição é incrementada
38,39,3A,3B,3C,3D,3E,3F,40,41,42
Após o 9 em uma posição, vem o valor A
Exemplo:
Com três dígitos em hex, conta-se de 00016 a FFF16 equivalentes a 0 to 4095 —total de 4096 = 16 valores
Código BCD
• Binary Coded Decimal (BCD)
– Usado para representar números decimais em binário
– Combinação de características de sistemas decimal e binário
• Cada dígito é convertido para o binário equivalente
• BCD não é um sistema de numeração
– Codificação de números decimais em binário
• Um número BCD não é igual ao número diretamente em binário
– Vantagem do BCD conversão entre decimal e BCD é relativamente fácil
Código BCD
• Conversão de 87410 para BCD
– Cada dígito é representado usando-se 4 bits
• Cada grupo de 4 bits nunca pode ser maior que 9
• Processo inverso para converter de BCD para
Decimal 1001 0100 0011
Código BCD
• Conversão de 0110100000111001 (BCD) para decimal
Divida o número BCD em grupos de 4 bits e converta para decimal
Código BCD
• Conversão do BCD 011111000001 para o decimal equivalente
Grupo não válido para números BCD
Código Gray
• Usado em aplicações em que os números mudam rapidamente
– Apenas um bit muda em relação ao próximo
Código Gray para 3 bits
Código Gray
Binário para Gray Gray para Binário
Conversão de Números
• Números Decimais em binário, hex, BCD, Gray
Byte, Nibble e Palavra
• Maioria dos computadores tratam e armazenam dados e informações em grupos de 8 bits
– 8 bits = 1 byte
• Números binários são geralmente quebrados em grupos de 4 bits
– 4 bits = 1 nibble = ½ byte
• Uma palavra é o grupo de bits que representa uma certa informação
– Tamanho da palavra pode ser definido como o número de bits na palavra binária sobre a qual o sistema opera
Códigos Alfanuméricos
• Representação de caractéres e funções do teclado de um computador
– 26 minúsculas & 26 maiúsculas, 10 digitos, 7 pontuações, 20 a 40 outros caracteres.
• ASCII – American Standard Code for Information Interchange
– Código de 7 bits 27 = 128 possíveis palavras – Exemplos de uso
• Transferência de dados entre computadores
• Computadores e impressoras
Códigos Alfanuméricos Exemplo
ASCII – American Standard Code for Information Interchange
Exercício
Um pequeno computador de controle de processos usa código hexadecimal para representar seus endereços de memória
de 16 bits.
(a) Quantos dígitos hexadecimais são necessários?
(b) Qual é a faixa de endereços em hexadecimal?
(c) Quantas posições de memória existem?
(a) Visto que 4 bits são convertidos em um único dígito hexadecimal, 16/4
= 4. Então, quatro dígitos hexadecimais são necessários.
(b) A faixa binária vai de 00000000000000002 a 11111111111111112. Em hexadecimal, isso se transforma em 000016 a FFFF16.
Conversões
• Exercício:
A. Converta o numero 7610 e 10710 para binário.
B. Converta os seguintes números binários em decimais hexadecimal.
• 100100001001
• 1111010111
C. Converter em binário o hexa B2F16
Exercício
• Converta o número 0101 (binário) ao código Gray equivalente
• R/ 0111.
• Converta 0101 (código Gray) ao número binário equivalente.
• R/0110
Ruído
• Sinais indesejados introduzidos pelo meio de transmissão
– Somam-se ao sinal transmitido
• Ruído térmico
– função da temperatura – agitação dos elétrons – não pode ser eliminado
– ruído branco
Interferência no sinal
Signal
Noise
Signal+Noise
0 1 1 1 1 0 0 0 0 1 Data Received Sampling times
Logic Threshold
Paridade para Detecção de Erros
• Dados binários são frequentemente movidos
– Voz digitalizada sobre um link de microondas
– Aramazenamento e recuperação de dados em discos – Comunicação entre sistemas computacionais
Eros Acomtecem
Paridade para Detecção de Erros
• Ruídos elétricos podem gerar erros na transmissão
– Flutuações em tensão ou corrente
• Presentes em todos os sistemas eletrônicos
• Emprego de métodos para a detecção de erros (às vezes
Paridade para Detecção de Erros
• Método da Paridade para detecção de erros
– Adição de um bit extra por grupo
• Bit de paridade 0 ou 1 dependendo do número de 1’s no grupo
• Dois tipos de paridade
– Par número par de 1’s por grupo
– Ímpar número ímpar de 1’s por grupo – Paridade par é mais usada
Paridade para Detecção de Erros
• Método da paridade par – número total de de bits em um grupo incluindo o bit de paridade deve ser um número par
– Exemplo: O grupo binário 1 0 1 1 requer a adição de um bit 1, formando o grupo 1 1 0 1 1.
• Bit de paridade pode ser adicionado ao fim do grupo
Paridade para Detecção de Erros
• Método da paridade ímpar – o número total de bits em um grupo incluindo o bit de paridade deve ser um ímpar
– Exemplo: O grupo binário 1 1 1 1 requer a adição do bit de paridade 1, formando o grupo 1 1 1 1 1.
O bit de paridade passa a ser parte da palavra de código
Adicionando-se um bit de paridade às palavras
Aplicações
• Quando caracteres ASCII são transmitidos deve haver um meio de informar ao receptor que um novo caracter está vindo
– Também é necessário detectar erros em transmissões
• Método de transferência transmissão assíncrona
Aplicações
• Um caractére ASCII tem que ser enquadrado receptor sabe quando o dado começa e termina
– O primeiro bit tem que ser um start bit (0 lógico)
• Código ASCII é enviado LSB primeiro e MSB por último
– Após MSB, um bit de paridade é enviado para checar se houve erros de transmissão
– Transmissão é encerrada enviando um stop bit (1 lógico)
Exercício
• Converta o número 8884 para o código BCD e, em seguida, anexe um bit de paridade ímpar.
R/ 1 1000 1000 1000 0100
PORTAS LÓGICAS
Operações de tabela verdade para portas AND, NAND, OR, NOR e o circuito NOT (INVERSOR)
Constantes e Variáveis Booleanas
• Álgebra Booleana permite apenas dois valores 0 e 1
– 0 lógico: false, off, low, no, interruptor aberto – 1 lógico: true, on, high, yes, interruptor fechado
Tabela Verdade
• Descreve a relação entre entrada e saída de um circuito lógico
• Número de linhas corresponde ao número de entradas do sistema
– Tabela para 2 entradas tem 22 = 4 linhas – Tabela para 3 entradas tem 23 = 8 linhas
Tabelas Verdade
• Exemplos de tabelas verdade para 2, 3 e 4 entradas
Operação OU – Porta OR
• Expressão booleana para a operação OR
X = A + B —
Lê “X igual A OU B”O sinal ”+” não é uma adição, mas sim uma operação de ou lógico
• A operação OR é semelhante a adição, mas quando A = 1 e B = 1, a operação OR produz
1 + 1 = 1 e não 1 + 1 = 2
Operação OU – Porta OR
• Porta OR é um circuito com duas ou mais entradas, em que a saída é igual a combinação OR de todas as entradas
Tabela Verdade e Circuito para uma porta OR
Tabela Verdade e Circuito para uma porta OR de 3 entradas
Operação OU – Porta OR
• Porta OR é um circuito com duas ou mais entradas, em que a saída é igual a combinação OR de todas as entradas
Exemplo de uso de uma porta OR para um sistema de alarme
Operação OU – Porta OR
Operação E – Porta AND
• Operação AND é similar à multiplicação
X = A • B • C
— Lê “X igual a A AND B AND C”x é verdadeiro (1) when A AND B AND C são verdadeiros (1)
O sinal ・ , ou x, não é uma multiplicação ordinária
Representa uma operação AND lógica
Operação E – Porta AND
Tabela Verdade e Circuito para uma porta AND
AND / OR
O símbolo AND em um diagrama lógico indica que a
saída será VERDADEIRA somente quando
TODAS as entradas são VERDADEIRAS
O símbolo OR indica que a saída é VERADEIRA quando
qualquer entrada for VERADEIRA
Operação de INVERSÃO (NOT)
• Expressão Booleana para a operação NOT
“X igual a NOT A”
“X igual ao inverso de A”
“X igual ao complemento de A”
— Lê:
X = A
A ' = A
Barra sobre a variável representa o NOT
O símbolo plic (’) também representa o
Operação de INVERSÃO (NOT)
• Circuito NOT INVERSOR
Operação de INVERSÃO (NOT)
• Operação NOT inverte (complementa) o sinal de entrada em todos os pontos na forma de onda
Operação de INVERSÃO (NOT)
• Aplicação de uma porta NOT
Operações Booleanas
Resumo das regras para OR, AND e NOT
Álgebra para Descrever Circuitos
• Se uma expressão contém AND e OR, as operações AND devem ser realizadas primeiro
• A menos que haja parentêses na expressão
Álgebra para Descrever Circuitos
• Quando o INVERSOR está presente, a saída é equivalente à TODA entrada com uma
barra em cima
Álgebra para Descrever Circuitos
Álgebra para Descrever Circuitos
Análise de Circuitos
• Fazer a tabela verdade
Fontes
• Notas de Aula do Prof. Pedro Castellanos (TET/UFF)
• Notas de Aula do Prof. José Arthur Rocha (DEL / UFRJ)
– http://www.del.ufrj.br/~arthur/eel280
• Notas de Aula do Prof. Mário Cortes (IC/UNICAMP)
– http://www.ic.unicamp.br/~cortes/mc602/
• TOCCI, Ronald J.; WIDMER, Neal S.; MOSS, Gregory
L..Sistemas Digitais: Princípios e Aplicações. 11ª ed. São Paulo: Pearson, 2011.
Circuitos Digitais
Códigos e Portas Lógicas
Prof. Diogo Menezes Ferrazani Mattos [email protected]
Sala 421 – Bloco E
http://www.midiacom.uff.br/~menezes