Buscar

Aula-01

Prévia do material em texto

Circuitos Lógicos
Prof. Gutemberg Gonçalves dos Santos Júnior
Universidade Federal de Campina Grande
Centro de Engenharia Elétrica e Informática
Departamento de Engenharia Elétrica
2023.1 - Campina Grande-PB - Brasil
INFORMAÇÕES SOBRE A DISCIPLINA
OBJETIVOS
§ Conhecer os fundamentos da álgebra booleana, circuitos combinacionais 
e sequenciais;
§ Estudar as funções lógicas que atuam como base de um circuito digital e 
suas formas de simplificação;
§ Compreender as técnicas de análise e síntese de circuitos digitais de 
baixa e média complexidade. 
§ Projetar e implementar sistemas digitais.
CL - Aula 01 3
EMENTA
Introdução e Conceitos Básicos
Funções Lógicas
Linguagem de Descrição de Hardware
Expressões e Circuitos Lógicos
Álgebra Booleana
Simplificação Algébrica
Mapas de Karnaugh
Circuitos Combinacionais
Circuitos Sequenciais
Máquinas de Estados Finitos
CL - Aula 01 4
METODOLOGIA
§ Aulas expositivas;
§ Utilização do Moodle Embedded;
q Façam o cadastro no endereço
https://moodle.embedded.ufcg.edu.br
• Turma manhã à T01
• Turma tarde à T02
§ Software para síntese e simulação de circuitos digitais;
q EDA Playground - https://www.edaplayground.com
q Icarus Verilog - http://iverilog.icarus.com
q GTKWave - http://gtkwave.sourceforge.net
q HDLBits - https://hdlbits.01xz.net/wiki/Main_Page
§ Estudos individuais e em grupos
q Listas de exercícios e trabalhos escritos
CL - Aula 01 5
https://moodle.embedded.ufcg.edu.br/
https://www.edaplayground.com/
http://iverilog.icarus.com/
http://gtkwave.sourceforge.net/
https://hdlbits.01xz.net/wiki/Main_Page
AVALIAÇÃO
§ 3 Avaliações
§ Reposição
§ Avaliação Final
CL - Aula 01 6
BIBLIOGRAFIA
§ Harris, D.; Harris, S., Projeto Digital e Arquitetura de Computadores, 
(tradução para português), 2013, Morgan Kaufman
§ Harris, D.; Harris, S., Digital Design and Computer Architecture – ARM 
Edition, 2016, Morgan Kaufman
§ TOCCI, Ronald J. et al Sistemas Digitais: Princípios e Aplicações.
§ KARIM, Mohammad A. et al; Projeto Digital – Conceitos e princípios
básicos.
§ VAHID, Frank; Sistemas digitais: projetos, otimização e HDLs.
§ IDOETA, Ivan V. (et al). Elementos de eletrônica digital.
CL - Aula 01 7
AULA 1
CRÉDITOS
§ Slides baseados no material:
q Harris, D.; Harris, S., Digital Design and Computer Architecture – 
ARM Edition, 2016, Morgan Kaufman
CL - Aula 01 9
TÓPICOS
§ Base
§ Estratégia de Jogo
§ A Arte de Lidar com Complexidade
§ A Abstração Digital
§ Sistemas de Numeração
§ Portas Lógicas
§ Níveis Lógicos
§ Transistores CMOS
§ Consumo de Energia
INTRODUÇÃO
§ Qual a importância de estudar Circuitos Lógicos
§ Como lidar com a Complexidade
§ Qual a base do funcionamento dos Circuitos Lógicos 
(Eletrônica Digital)
CL - Aula 01 11
BACKGROUND
§ Os microprocessadores revolucionaram o 
nosso mundo!
q Um computador portátil possui hoje 
mais capacidade do que um servidor 
do tamanho de uma sala do passado!
q Um carro topo de linha possui 
dezenas de processadores!
q Um celular tem mais capacidade de 
processamento do que os desktops 
de alguns anos atrás!
• Note 20
o 12GB RAM
o 512GB armazenamento
CL - Aula 01 12
BACKGROUND
§ A indústria de semicondutores
cresceu de $21 bilhões em 1985 
para $419 bilhões em 2019;
§ É responsável pela evolução
tecnológica em diversas áreas;
q Medicina;
q Construção;
q Agricultura;
q Mobilidade;
q Cidades inteligentes;
q Etc.
CL - Aula 01 13
Esta Foto de Autor Desconhecido está licenciado em CC BY-NC
https://www.dovepress.com/state-of-the-art-of-robotic-surgery-related-to-vision-brain-and-eye-ap-peer-reviewed-fulltext-article-EB
https://creativecommons.org/licenses/by-nc/3.0/
Mundo ModernoMUNDO MODERNO
E NA UFCG?
§ Sistemas Embarcados com SoC
q Linux Embarcado, Placas de alta velocidade
§ Microeletrônica (forte) há mais de 15 anos
q Brazil-IP, PEM, XMEN
§ FPGA (para todos) desde 2007
§ Faça sua própria CPU (para todos) desde 2009
§ Microeletrônica/CPU/SoC atualmente com milhões de portas 
lógicas/transistores 
§ Projetos com alunos e ex-alunos
§ Posições em multinacionais
§ Projetos de cooperação 
§ Muito mais
q Software, Sistemas Embarcados, Controle, Robótica, IA, etc
CL - Aula 01 15
ESTRATÉGIA DO JOGO
§ Meta do curso:
q Começar a entender o que há por dentro de um computador
• Quais sistemas digitais constituem um computador
q Começar a entender os sistemas digitais dedicados
q Implementações 
q Aprender os princípios de projeto digital
q Aprender a depurar sistematicamente projetos digitais cada vez 
mais complexos
q Projetar e construir um sistema digital
CL - Aula 01 16
LIDANDO COM A COMPLEXIDADE
§ Os sistemas atuais possuem uma alta complexidade;
§ Lidamos com a complexidade através de:
q Abstração;
q Abordagem disciplinada
§ Isto trás 3 aspectos extremamente importantes para nós:
q Hierarquia;
q Modularidade;
q Regularidade.
CL - Aula 01 17
ABSTRAÇÃO
§ É a arte de esconder detalhes quando
eles não são importantes!
CL - Aula 01 18
Copyright © 2016 Elsevier Ltd. All rights reserved.
Nosso foco nessa disciplina!
ABORDAGEM DISCIPLINADA
§ Procura-se restringir as escolhas de projeto 
q Assim, trabalha-se com um nível mais elevado de abstração
§ Exemplo: Sistemas Digitais (nosso foco!)
q Consideram-se tensões discretas em vez de tensões contínuas usadas 
em circuitos analógicos;
q Circuitos digitais são mais simples de projetar do que circuitos 
analógicos – com eles podemos construir sistemas mais sofisticados;
q Sistemas digitais vem continuamente substituindo predecessores 
analógicos rapidamente:
• Câmeras digitais, TVs digitais, telefones celulares, tablets, 
BlueRay, etc.
CL - Aula 01 19
LIDANDO COM A COMPLEXIDADE
§ Hierarquia:
q Um Sistema dividido em módulos e submódulos;
§ Modularidade:
q Deve-se possuir funções e interfaces bem definidas;
§ Regularidade
q Incentivar a uniformidade;
q Módulos mais comuns são reutilizados muitas vezes!
CL - Aula 01 20
LIDANDO COM A COMPLEXIDADE
§ Imagine que você gostaria de ordenar 4 números
q O que você faria?
q E se usássemos o bloco base abaixo?
• Hierarquia
• Modularidade
• Regularidade
CL - Aula 01 21
Ordena2
A
B
Maior
Menor
SISTEMAS DIGITAIS
CL - Aula 0122
SISTEMAS FÍSICOS
§ É muito comum tratarmos com quantidades em diversas 
áreas do nosso dia a dia:
q Monitoramos, guardamos, medimos, manipulamos, entre outros, com 
um determinado objetivo
§ Basicamente, essas quantidades podem ser representadas 
de duas formas: 
q Analógica;
q Digital.
CL - Aula 01 23
SISTEMAS ANALÓGICOS X SISTEMAS DIGITAIS
§ Analógico:
q Análogo aos naturais;
q Contínuo em tempo e em amplitude
• Velocidade, temperatura, tempo, etc.
CL - Aula 01 24
A ABSTRAÇÃO DIGITAL
§ A maioria das variáveis físicas é contínua
q Tensão em um fio
q Frequência de uma oscilação
q Posição de uma massa
§ A abstração digital considera um subconjunto discreto de 
valores
§ Valores analógicos podem ser convertidos para digitais ou os 
valores já são originalmente digitais
q Regeneração – os valores discretos são recuperados – ficam como 
novos
CL - Aula 01 25
SISTEMAS ANALÓGICOS X SISTEMAS DIGITAIS
§ Digital:
q Discretos em amplitude e no tempo;
q São representados por símbolos denominados dígitos;
• Ex: Relógio digital
CL - Aula 01 26
BENEFÍCIOS DA REPRESENTAÇÃO DIGITAL
§ Sinais analógicos (e.g. áudio, vídeo, etc.) pode perder 
qualidade
q Os níveis de tensão não são perfeitamente transmitidos, 
armazenados ou copiados;
CL - Aula 01 27
Vo
lts
0
1
2
3
original signal
time
0
1
2
3
received signal
How fix -- higher, lower, ?
Transmissão
BENEFÍCIOS DA REPRESENTAÇÃO DIGITAL
§ A digitalização permite a transmissão, o armazenamento e a 
transmissão de valores de forma quase “perfeita”
q Amostramos o valor da tensão e a codificamos utilizados bits
q Apesar dos valores de tensão não serem perfeitos, seguindo 
determinadas restrições, conseguimos recuperar o valor desejado
CL - Aula 01 28
Vo
lts
digitized signal
time
0
1
a2d
time
Can fix—distinguish 0s/1s, restore0
1
Transmissão
A DISCIPLINA DIGITAL
§ Dois valores discretos:
q 1’s e 0’s
• 1, VERDADEIRO (TRUE), ALTO (HIGH)
• 0, FALSO (FALSE), BAIXO (LOW)
§ 1 e 0: níveis de tensão, posições de engrenagens, níveis de 
fluídos, etc. 
§ Circuitos digitais usam níveis de tensão (voltagem) para 
representar 1 e 0
§ Bit: dígito binário (Binary digit)
CL - Aula 01 29
COMO REPRESENTAR UMA INFORMAÇÃO EM BINÁRIO
§ Precisamos aprender a converter informação do nosso dia-a-
dia para binário!
q Todo sistema digital (computadores, celulares, etc.) lidam e 
processam dados usando esta representação
§ Sistema binário -> sistema de numeração que possui apenas 
dois símbolos (0 e 1)
§ Vamos aprender um pouco então sobre a história e o 
princípio dos sistemas de contagem!
CL - Aula 01 30
APRESENTAÇÃO DOS PRINCÍPIOS DE CONTAGEM E 
SISTEMAS DE NUMERAÇÃO
CL - Aula 0132
SISTEMAS DE NUMERAÇÃO – SISTEMAS POSICIONAIS
§ Sistema Decimal
q 534210 = 
q 10101110 = 
§ Sistema Octal
q 53428 = 
q 1010118 = 
§ Sistema Binário
q 1010112 = 
q 111012 = 
§ Sistema Hexadecimal
q 534216 = 
q 10101116 = 
q CAFE16 = 
SISTEMAS DE NUMERAÇÃO – SISTEMAS POSICIONAIS
§ Sistema Decimal
q 534210 = 5x103 + 3x102 + 4x101 + 2x100
q 10101110 = 1x105 + 0x104 + 1x103 + 0x102 + 1x101 + 1x100
§ Sistema Octal
q 53428 = 5x83 + 3x82 + 4x81 + 2x80
q 1010118 = 1x85 + 0x84 + 1x83 + 0x82 + 1x81 + 1x80
§ Sistema Binário
q 1010112 = 1x25 + 0x24 + 1x23 + 0x22 + 1x21 + 1x20
q 111012 = 1x24 + 1x23 + 1x22 + 0x21 + 1x20
§ Sistema Hexadecimal
q 534216 = 5x163 + 3x162 + 4x161 + 2x160
q 10101116 = 1x165 + 0x164 + 1x163 + 0x162 + 1x161 + 1x160
q CAFE16 = Cx163 + Ax162 + Fx161 + Ex160
CONVERSÃO ENTRE BASES
§ Binário para Decimal
q 1010102 à
§ Octal para Decimal
q 7738 à
§ Hexadecimal para Decimal
q ACDC16 à
CL - Aula 01 35
CONVERSÃO ENTRE BASES (à DECIMAL)
§ Binário para Decimal
q 1010102 à 1×25 + 0×24 + 1×23 + 0×22 + 1×21 + 0×20 = 32 + 8 + 2 = 42
§ Octal para Decimal
q 7738 à 7×82 + 7×81 + 3×80 = 448 + 56 + 3 = 507
§ Hexadecimal para Decimal
q ACDC16 à A×163 + C×162 + D×161 + C×160 =
= 10×163 + 12×162 + 13×161 + 12×160 = 44252
CL - Aula 01 36
SISTEMAS DE NUMERAÇÃO
Decimal Hexadecimal Octal Binário
00 00 00 00000
01 01 01 00001
02 02 02 00010
03 03 03 00011
04 04 04 00100
05 05 05 00101
06 06 06 00110
07 07 07 00111
08 08 10 01000
09 09 11 01001
10 0A 12 01010
11 0B 13 01011
12 0C 14 01100
13 0D 15 01101
14 0E 16 01110
15 0F 17 01111
16 10 20 10000 CL - Aula 01 37
POTÊNCIAS DE 2
• 20 =
• 21 =
• 22 =
• 23 =
• 24 =
• 25 =
• 26 =
• 27 =
• 28 =
• 29 =
• 210 =
• 211 =
• 212 =
• 213 =
• 214 =
• 215 =
CL - Aula 01 38
POTÊNCIAS DE 2
• 20 = 1
• 21 = 2
• 22 = 4
• 23 = 8
• 24 = 16
• 25 = 32
• 26 = 64
• 27 = 128
• 28 = 256
• 29 = 512
• 210 = 1024
• 211 = 2048
• 212 = 4096
• 213 = 8192
• 214 = 16384
• 215 = 32768
CL - Aula 01 39É importante lembrar dos valores até 210
CONVERSÃO ENTRE BASES
§ Binário para Decimal
q 101102 à 1×16 + 0×8 + 1×4 + 1×2 + 0×1 = 22
§ Decimal para Binário
q 4710 à 1×32 + 0×16 + 1×8 + 1×4 + 1×2 + 1×1 = 1011112
CL - Aula 01 40
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
CL - Aula 01 41
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
• 47/2 à Resultado = 23 e Resto = 1;
• 23/2 à Resultado = 11 e Resto = 1;
• 11/2 à Resultado = 5 e Resto = 1;
• 5/2 à Resultado = 2 e Resto = 1;
• 2/2 à Resultado = 1 e Resto = 0;
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
CL - Aula 01 42
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
• 47/2 à Resultado = 23 e Resto = 1;
• 23/2 à Resultado = 11 e Resto = 1;
• 11/2 à Resultado = 5 e Resto = 1;
• 5/2 à Resultado = 2 e Resto = 1;
• 2/2 à Resultado = 1 e Resto = 0;
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
CL - Aula 01 43
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
• 47/2 à Resultado = 23 e Resto = 1;
• 23/2 à Resultado = 11 e Resto = 1;
• 11/2 à Resultado = 5 e Resto = 1;
• 5/2 à Resultado = 2 e Resto = 1;
• 2/2 à Resultado = 1 e Resto = 0;
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
CL - Aula 01 44
4710 à 1011112
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
• 47 à Maior potência de 2 = 25 = 32;
• 47 – 32 = 15 à Maior potência de 2 = 23 = 8
• 15 – 8 = 7 à Maior potência de 2 = 22 = 4
• 7 – 4 = 3 à Maior potência de 2 = 21 = 2
• 3 – 2 = 1 à Maior potência de 2 = 20 = 1
CL - Aula 01 45
CONVERSÃO DE DECIMAL PARA BINÁRIO
§ Podemos empregar dois métodos
q Dividir sucessivamente pela base (2)
q Encontrar a maior potência de 2 que é menor que o número, subtrair 
e repetir (soma de potências de 2)
• 47 à Maior potência de 2 = 25 = 32;
• 47 – 32 = 15 à Maior potência de 2 = 23 = 8
• 15 – 8 = 7 à Maior potência de 2 = 22 = 4
• 7 – 4 = 3 à Maior potência de 2 = 21 = 2
• 3 – 2 = 1 à Maior potência de 2 = 20 = 1
CL - Aula 01 46
4710 à 1×32 + 0×16 + 1×8 + 1×4 + 1×2 + 1×1 = 1011112
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 16 = 24!
q 1A16 = 1×161 + A×160 = 1×(24)1 + A×(24)0
CL - Aula 01 47
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 16 = 24!
q 1A16 = 1×161 + A×160 = 1×(24)1 + A×(24)0
CL - Aula 01 48
Cada termo espaçado por 24
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 16 = 24!
q 1A16 = 1×161 + A×160 = 1×(24)1 + A×(24)0
CL - Aula 01 49
Converter para binário
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Podemos converter para potência de 2
q Base 16 = 24!
q 1A16 = 1×161 + A×160 = 1×(24)1 + A×(24)0
q 1A16 = 1×161 + A×160 = (1)×(24)1 + (1×23 + 1×21)×(24)0
q 1A16 = 1×161 + A×160 = 1×24 + 1×23 + 1×21 = 11010
CL - Aula 01 50
Converter para binário
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Podemos converter para potência de 2
q Base 16 = 24!
q 1A16 = 1×161 + A×160 = 1×(24)1 + A×(24)0
q 1A16 = 1×161 + A×160 = (1)×(24)1 + (1×23 + 1×21)×(24)0
q 1A16 = 1×161 + A×160 = 1×24 + 1×23 + 1×21 = 11010
q 2B416 = 0010 1011 01002
CL - Aula 01 51
Converter para binário
Regra à Converter cada dígito para um número binário com 4 dígitos!
CONVERSÃO ENTRE HEXADECIMAL E BINÁRIO
§ Para converter de binário para hexadecimal, aplicamos de 
forma análoga a conversão de cada 4 bits para um dígito em 
hexadecimal
§ Ex:
q 110010002 à 1100 1000 à C816
q 1000102 à 0010 0010 à 2216
CL - Aula 01 52
Separa em
grupos de 4 bits
Separa em
grupos de 4 bits
(zero(s) à esquerda)
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 8 = 23!
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + 3×(23)1 + 4×(23)0
CL - Aula 01 53
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 8 = 23!
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + 3×(23)1 + 4×(23)0
CL - Aula 01 54
Cada termo espaçado por 23
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Todos podem ser convertidos para potência de 2
q Base 8 = 23!
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + 3×(23)1 + 4×(23)0
CL - Aula 01 55
Converter para binário
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Podemos converter para potência de 2
q Base 8 = 24!
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + 3×(23)1 + 4×(23)0
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + (1×21 + 1×20)×(23)1 + (1×22)×(23)0
q 1348 = 1×82 + 3×81 4×80 = 1×26 + 1×24 + 1×23 + 1×22 = 1011100
CL - Aula 01 56
Converter para binário
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Podemos converterpara potência de 2
q Base 8 = 24!
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + 3×(23)1 + 4×(23)0
q 1348 = 1×82 + 3×81 4×80 = 1×(23)2 + (1×21 + 1×20)×(23)1 + (1×22)×(23)0
q 1348 = 1×82 + 3×81 4×80 = 1×26 + 1×24 + 1×23 + 1×22 = 1011100
q 1278 = 001 010 1112
CL - Aula 01 57
Converter para binário
Regra à Converter cada dígito para um número binário com 3 dígitos!
CONVERSÃO ENTRE OCTAL E BINÁRIO
§ Para converter de binário para octal, aplicamos de forma 
análoga a conversão de cada 3 bits para um dígito em octal
§ Ex:
q 1010102 à 101 010 à 528
q 11100102 à 001 110 010 à 1628
CL - Aula 01 58
Separa em
grupos de 3 bits
Separa em
grupos de 3 bits
(zero(s) à esquerda)
RESUMO – CONVERSÃO ENTRE BASES
CL - Aula 01 59
Decimal
Octal HexaDecimal
Binário
Polinômio – Base 8
Polinômio
Base 2
Polinômio – Base 16
Divisão – Base 8 Divisão – Base 16
Divisão
Base 2
Agrupamento
3 bits
Agrupamento
4 bits
ALGUMA DÚVIDA?
CL - Aula 0160

Continue navegando