01_Circuitos_Combinatórios
-
Upload
nuno-nunes -
Category
Documents
-
view
241 -
download
0
Transcript of 01_Circuitos_Combinatórios
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
1
1. Circuitos CombinatóriosSumário:
• Sistemas de numeração
• Códigos
• Codificadores
• Descodificadores
• Multiplexers
LEI SDAC 1
• Desmultiplexers
• Comparadores
1. Circuitos CombinatóriosCircuito Combinatório?
Circuito combinatório é um circuito formado por funções lógicas elementares, que
tem um conjunto de entradas e outro de saídas. Os valores das saídas dependem
exclusivamente do valor lógico das entradas e da sua constituição interna.
Exemplos de circuitos combinatórios:
LEI SDAC 2
codificadores, descodificadores, multiplexers, desmultiplexers, comparadores,
geradores e detectores de paridade e conversores de código.
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
2
1. Circuitos CombinatóriosCodificação / Descodificação:
Qualquer informação que se deseje tratar, processar ou armazenar usando sistemas
digitais deverá ser traduzida ou codificada num tipo de linguagem adequada.
A forma correcta de o fazer é converter qualquer número, letra, símbolo, instrução
ou operação num conjunto de sinais eléctricos digitais.
Cada um dos dados será convertido num conjunto de uns e zeros que indicarão
níveis altos ou baixos de tensão respectivamente
LEI SDAC 3
níveis altos ou baixos de tensão, respectivamente.
Da mesma forma, para interpretar um resultado à saída de um circuito digital, é
necessário traduzir ou descodificar o resultado, transformando os zeros e uns em
dados perceptíveis.
1. Circuitos CombinatóriosSistemas de numeração:
Sistemas de Numeração são formas de representação das grandezas
quantitativas.
Sistemas de Numeração:
• Decimal (0,1,2, ...)
Binário (0 1)
LEI SDAC 4
• Binário (0,1)
• Octal (0,1,2, ..., 7)
• Hexadecimal (0,1,2, ..., F)
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
3
1. Circuitos CombinatóriosSistemas de numeração – Sistema binário
peso
• neste sistema de numeração utilizam-
se somente dois símbolos (0, 1);
• normalmente designa-se por sistema
de numeração de base 2 ou binário
natural;
• cada dígito binário designa-se por bit.
Código
Decimal
Código Binário
24 23 22 21 20
16 8 4 2 1
0 0 0 0 0 0
1 0 0 0 0 1
2 0 0 0 1 0
3 0 0 0 1 1
4 0 0 1 0 0
5 0 0 1 0 1
6 0 0 1 1 0
LEI SDAC 5
6 0 0 1 1 0
7 0 0 1 1 1
8 0 1 0 0 0
9 0 1 0 0 1
10 0 1 0 1 0
.... .... ... .... ... ....5142*12*02*12*02*05 01234
Cada coluna tem um peso diferente:
Peso máximo = 2nº de dígitos para representação da informação - 1
9182*12*02*02*12*09 01234
1. Circuitos CombinatóriosSistemas de numeração – Sistema octal
• este sistema também pode ser
designado por base 8;
• só tem 8 dígitos: 0, 1, 2, 3, 4, 5, 6, 7.
Código
Decimal
Código
Octal
0 0
1 1
2 2
3 3
4 4
LEI SDAC 6
4 4
5 5
6 6
7 7
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
4
1. Circuitos CombinatóriosSistemas de numeração – Sistema hexadecimal
• este sistema também pode ser
designado por base 16;
• só tem 16 dígitos.
Código
Decimal
Código
Hexadecimal
0 0
1 1
2 2
3 3
Código
Decimal
Código
Hexadecimal
8 8
9 9
10 A
11 B
LEI SDAC 7
4 4
5 5
6 6
7 7
12 C
13 D
14 E
15 F
1. Circuitos CombinatóriosSistemas de numeração:
Códi Códi Códi
Código Binário
Código
Decimal
Código
Octal
Código
Hexadecimal24 23 22 21 20
16 8 4 2 1
0 0 0 0 0 0 0 0
1 1 1 0 0 0 0 1
2 2 2 0 0 0 1 0
3 3 3 0 0 0 1 1
4 4 4 0 0 1 0 0
5 5 5 0 0 1 0 1
6 6 6 0 0 1 1 0
7 7 7 0 0 1 1 1
8 10 8 0 1 0 0 0
LEI SDAC 8
9 11 9 0 1 0 0 1
10 12 A 0 1 0 1 0
11 13 B 0 1 0 1 1
12 14 C 0 1 1 0 0
13 15 D 0 1 1 0 1
14 16 E 0 1 1 1 0
15 17 F 0 1 1 1 1
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
5
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 2:
Base 2 Base 8
Divide-se o número binário em grupos de três, da direita para a esquerda, e a sua
soma ponderada dá um algarismo no sistema octal.
2 8110011 63 Código
Octal
Código Binário
22 21 20
4 2 1
0 0 0 0
LEI SDAC 9
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
)8(012
)2( 6242*02*12*1110
)8(012
)2( 3122*12*12*0011
1. Circuitos CombinatóriosSistemas de numeração – Conversão – Base 2:
Base 2 Base 10
Recorre-se ao polinómio equivalente e considerando este no modo decimal.
3 2 1 0 1 2 3
21101,011 1*2 1*2 0*2 1*2 0*2 1*2 1*2
8 4 0 1 0 0,25 0,125
LEI SDAC 10
10
, ,
13,375
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
6
1. Circuitos CombinatóriosSistemas de numeração – Conversão – Base 2:
Código Binário
Base 2 Base 16
Divide-se o número binário em grupos de
quatro, da direita para a esquerda, e a sua
soma ponderada dá um algarismo no sistema
Hexadecimal.
162110001011010 5C A
Código
Hexadecimal23 22 21 20
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
LEI SDAC 11
8 1 0 0 0
9 1 0 0 1
A 1 0 1 0
B 1 0 1 1
C 1 1 0 0
D 1 1 0 1
E 1 1 1 0
F 1 1 1 1
)16(0123
)2( 282*02*12*02*11010 A
)16(0123
)2( 5142*12*02*12*00101
)16(0123
)2( 482*02*02*12*11100 C
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 8:
Base 8 Base 2
Converte-se cada algarismo em binário com três dígitos.
8 263 110011
Código
Octal
Código Binário
22 21 20
4 2 1
0 0 0 0
1 0 0 1
LEI SDAC 12
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
7
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 8:
Base 8 Base 10
Converte-se aplicando os pesos correspondentes ao sistema octal.
1 0 1
830,5 3*8 0*8 5*8
24 625
LEI SDAC 13
1024,625
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 8:
Base 8 Base 16
Primeiro converte-se para a base 10 e depois converte-se da base 10 para a base 16.
1 0
830 3*8 0*8 (10)24 16
8 1
Primeiro converte-se da base 8
para a base 10.
Segundo converte-se da base
10 para a base 16.
Método das divisões
sucessivas
LEI SDAC 14
10248 1
10 1624 18
sucessivas
8 1630 18
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
8
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 2
Parte inteira:
divide-se sucessivamente o número representado no sistema decimal por 2 até que o
valor do quociente seja menor que o divisor. O resto obtido e o último quociente
constituem o número no sistema binário.
Parte fraccionária:
LEI SDAC 15
Parte fraccionária:
multiplica-se por dois; a parte inteira deste produto é o algarismo mais significativo
da parte fraccionária do número binário. Se a parte fraccionária for novamente
multiplicada por 2, a nova parte inteira será o segundo algarismo mais significativo e
assim sucessivamente, até a parte fraccionária ser igual a zero.
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 2
230150 2
71 231 21 1
0,625
* 2
1,250
0,250
* 2
0,500
0,500
* 2
1,000
(10)30,625
LEI SDAC 16
como o quociente é
menor que o divisor
não se divide mais.
como o resultado da
parte fraccionária é zero
não se multiplica mais.(2)111110 (2),101
(10) (2)30,625 11110,101
ordem de leitura
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
9
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 8
Parte inteira:
divide-se sucessivamente o número representado no sistema decimal por 8 até que o
valor do quociente seja menor que o divisor. O resto obtido e o último quociente
constituem o número no sistema binário.
Parte fraccionária:
LEI SDAC 17
Parte fraccionária:
multiplica-se por dois; a parte inteira deste produto é o algarismo mais significativo
da parte fraccionária do número binário. Se a parte fraccionária for novamente
multiplicada por 8, a nova parte inteira será o segundo algarismo mais significativo e
assim sucessivamente, até a parte fraccionária ser igual a zero.
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 8
830
como o quociente é
d
ordem de leitura
0,625
* 8
5,000
(10)30,625
36
LEI SDAC 18
menor que o divisor
não se divide mais.
como o resultado da
parte fraccionária é zero
não se multiplica mais.(8)36(8),5
(10) (8)30,625 36,5
ordem de leitura
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
10
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 16
Parte inteira:
divide-se sucessivamente o número representado no sistema decimal por 16 até que
o valor do quociente seja menor que o divisor. O resto obtido e o último quociente
constituem o número no sistema binário.
Parte fraccionária:
LEI SDAC 19
Parte fraccionária:
multiplica-se por dois; a parte inteira deste produto é o algarismo mais significativo
da parte fraccionária do número binário. Se a parte fraccionária for novamente
multiplicada por 16, a nova parte inteira será o segundo algarismo mais significativo e
assim sucessivamente, até a parte fraccionária ser igual a zero.
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 10:
Base 10 Base 16
1630
como o quociente é
d
ordem de leitura
0,625
* 16
10,000
(10)30,625
114
LEI SDAC 20
menor que o divisor
não se divide mais.
como o resultado da
parte fraccionária é zero
não se multiplica mais.(16)1E(16), A
(10) (16)30,625 1 ,E A
ordem de leitura
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
11
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 16:
Código Binário
Base 16 Base 2
Substituímos cada algarismo por um grupo
de 4 dígitos binários.
Código
Hexadecimal23 22 21 20
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
16 25 110001011010C A
LEI SDAC 21
8 1 0 0 0
9 1 0 0 1
A 1 0 1 0
B 1 0 1 1
C 1 1 0 0
D 1 1 0 1
E 1 1 1 0
F 1 1 1 1
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 16:
Base 16 Base 8
Primeiro converte-se para a base 10 e depois converte-se da base 10 para a base 8.
1 0
1630 3*16 0*16 (10)48 8
0 6
Primeiro converte-se da base
16 para a base 10.
Segundo converte-se da base
10 para a base 8.
Método das divisões
sucessivas
LEI SDAC 22
10480 6
10 848 60
sucessivas
16 830 60
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
12
1. Circuitos CombinatóriosSistemas de numeração – Conversão - Base 16:
Base 16 Base 10
Converte-se aplicando os pesos correspondentes ao sistema hexadecimal.
1 0 116
10
30,5 3*16 0*16 5*16
48,3125
LEI SDAC 23
10,
1. Circuitos CombinatóriosCódigos:
• um código é, na generalidade, um conjunto de unidades de informação relacionadas
de forma sistemática e biunívoca com outro conjunto de sinais e símbolos segundo
determinadas regras de tradução pré - fixadas.
• os códigos utilizados nos sistemas digitais são binários, isto é, combinações de 1’s e
0’s.
• BCD (Decimal Codificado em Binário): Natural, Excesso 3 e Aiken;
LEI SDAC 24
BCD (Decimal Codificado em Binário): Natural, Excesso 3 e Aiken;
• Códigos Progressivos (Código Gray);
• Códigos Detectores e Correctores de Erro (Paridade e Hamming);
• Códigos Alfanuméricos (Código ASCII);
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
13
1. Circuitos CombinatóriosCódigos – Código BCD – Natural:
Código
Decimal
Código Binário
23 22 21 20
• é um código baseado
nas primeiras 16
combinações do código
binário;
• utiliza as primeiras 10
combinações do código
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Código BCD Natural
23 22 21 20
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
LEI SDAC 25
binário por ordem
crescente (0, ..., 9)10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
1. Circuitos CombinatóriosCódigos – Código BCD – Excesso 3:
Código
Decimal
Código Binário
23 22 21 20
• não são utilizadas as
primeiras três, nem as
três últimas
combinações do código
binário.
Decimal8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Código BCD Excesso 3
23 22 21 20
8 4 2 1
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
LEI SDAC 26
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1
9 1 0 0 1
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
14
1. Circuitos CombinatóriosCódigos – Código BCD – Aiken:
Código
Decimal
Código Binário
23 22 21 20
• são utilizadas as
primeiras cinco
primeiras combinações e
as cinco últimas.
Decimal8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Código BCD Aiken
23 22 21 20
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
11 1 0 1 1
12 1 1 0 0
LEI SDAC 27
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1
1. Circuitos CombinatóriosCódigos – Código Progressivo – Gray:
Código Gray
• a característica fundamental dos códigos
progressivos é que uma combinação difere
da combinação anterior e da combinação
seguinte exclusivamente num bit;
• é um código cíclico porque a última
combinação é adjacente à primeira;
0 0 0 0
0 0 0 1
0 0 1 1
0 0 1 0
0 1 1 0
0 1 1 1
0 1 0 1
0 1 0 0
1 1 0 0
1 1 0 1
LEI SDAC 28
• podem existir vários códigos Gray. 1 1 1 1
1 1 1 0
1 0 1 0
1 0 1 1
1 0 0 1
1 0 0 0
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
15
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros:
• existem códigos complexos que detectam e em alguns casos corrigem, os erros na
informação;
• nos códigos mais vulgares, o erro é detectado ou corrigido se ocorre apenas num bit
da combinação (a probabilidade de haver erro na transmissão em dois bits é muito
pequena). O número mínimo de bit que estes códigos usam é de cinco;
• os códigos detectores mais utilizados são os de paridade par e os de paridade ímpar.
LEI SDAC 29
Estes códigos formam-se acrescentando mais um bit aos códigos da família BCD. O bit
paridade é gerado por um circuito denominado por gerador de paridade, que é
construído com portas OU Exclusivo.
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros - Paridade:
• a detecção é realizada (através de um
circuito detector também formado por
portas OU Exclusivo) de maneira que o
número de 1’s é sempre par ou sempre
ímpar conforme se trate de um detector
de paridade par ou paridade ímpar;
Código Detector de Erros de Paridade Ímpar
Código BCD Excesso 3
Bit de
Paridade23 22 21 20
8 4 2 1
3 0 0 1 1 1
4 0 1 0 0 0
5 0 1 0 1 1
6 0 1 1 0 1
LEI SDAC 30
• nos códigos de paridade ímpar o
número de 1’s tem de ser ímpar, entrando
em conta com o bit de paridade;
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 1
10 1 0 1 0 1
11 1 0 1 1 0
12 1 1 0 0 1
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
16
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros - Hamming:
• os códigos detectores e correctores dão-
nos o lugar do bit incorrecto e através de
um circuito adequado pode corrigir-se
automaticamente a falha na informação
recebida;
• o código mais utilizado é o código
Código BCD Natural
23 22 21 20
8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
LEI SDAC 31
Hamming, no qual a combinação é
formada por sete bits, e é construído
também a partir da família BCD, mais
concretamente, do código BCD Natural.
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros - Hamming:
• as colunas B7, B6, B5 e B3
correspondem ao código BCD Natural;
• as colunas B4, B2 e B1 são construídas
por forma em que cada combinação:
• B1 – B3 – B5 – B7
• B2 – B3 – B6 – B7
Código de Hamming
B7 B6 B5 B4 B3 B2 B1
23 22 21 20
8 4 2 1
0 0 0 0 0 0 0 0
1 0 0 0 0 1 1 1
2 0 0 1 1 0 0 1
3 0 0 1 1 1 1 0
4 0 1 0 1 0 1 0
LEI SDAC 32
• B4 – B5 – B6 – B7
o número de 1’s seja par;5 0 1 0 1 1 0 1
6 0 1 1 0 0 1 1
7 0 1 1 0 1 0 0
8 1 0 0 1 0 1 1
9 1 0 0 1 1 0 0
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
17
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros - Hamming:
• as sete colunas estão relacionadas pelas
seguintes equações:
•
•
•
• quando não há erros, o valor das
Código de Hamming
B7 B6 B5 B4 B3 B2 B1
23 22 21 20
8 4 2 1
0 0 0 0 0 0 0 0
1 0 0 0 0 1 1 1
2 0 0 1 1 0 0 1
3 0 0 1 1 1 1 0
4 0 1 0 1 0 1 0
1 1 3 5 7
2 2 3 6 7
3 4 5 6 7
c b b b b
c b b b b
c b b b b
LEI SDAC 33
funções C1, C2 e C3 é zero;
• quando há erro, o número decimal
equivalente à combinação binária C3C2C1
indicará o bit incorrecto.
5 0 1 0 1 1 0 1
6 0 1 1 0 0 1 1
7 0 1 1 0 1 0 0
8 1 0 0 1 0 1 1
9 1 0 0 1 1 0 0
1. Circuitos CombinatóriosCódigos – Código Detector e corrector de erros - Hamming:
Exemplo:Ao transmitir a informação relativa ao número 3
em vez de receber a informação correcta de
0011110 recebemos a informação errada de
0011010. Como provar que o erro está no
terceiro bit a contar da direita?
Código de Hamming
B7 B6 B5 B4 B3 B2 B1
23 22 21 20
8 4 2 1
0 0 0 0 0 0 0 0
1 0 0 0 0 1 1 1
2 0 0 1 1 0 0 1
3 0 0 1 1 0 1 0
4 0 1 0 1 0 1 01 1 3 5 7 0 0 1 0 1c b b b b
LEI SDAC 34
5 0 1 0 1 1 0 1
6 0 1 1 0 0 1 1
7 0 1 1 0 1 0 0
8 1 0 0 1 0 1 1
9 1 0 0 1 1 0 0
2 2 3 6 7
3 4 5 6 7
1 0 0 0 1
1 1 0 0 0
c b b b b
c b b b b
3 2 1 011 3c c c este valor indica que o terceiro
bit a contar da direita é o bit que
está errado erro na codificação do número 3.
Este bit está errado, deveria ser 1
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
18
1. Circuitos CombinatóriosCódigos – Código alfanumérico - ASCII:
• é usado para representar informação de
letras, números e sinais especiais;
• existem códigos de 6 e 7 bits, mais 1 bit
de paridade para detecção de erros;
• permitem diversas ordens de controlo
de periféricos (impressoras, monitores,
LEI SDAC 35
etc.).
Formato da combinação do
código ASCII
1. Circuitos CombinatóriosCodificadores:
• um codificador é um circuito combinatório formado por um número de entradas
menor ou igual a 2nº de saídas e n saídas;
• quando uma entrada adopta um determinado valor lógico, as saídas representam
em binário o número de ordem da entrada que foi activada;
• o valor lógico que pode activar uma entrada é 0 ou 1
LEI SDAC 36
• o valor lógico que pode activar uma entrada é 0 ou 1.
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
19
1. Circuitos CombinatóriosCodificadores:
Entradas Saídas
E7 E6 E5 E4 E3 E2 E1 E0 S2 S1 S0
22 21 20
X X X X X X X 0 0 0 0 0
X X X X X X 0 1 0 0 1 1
X X X X X 0 1 1 0 1 0 2
X X X X 0 1 1 1 0 1 1 3
X X X 0 1 1 1 1 1 0 0 4
X X 0 1 1 1 1 1 1 0 1 5
X 0 1 1 1 1 1 1 1 1 0 6
LEI SDAC 37
0 1 1 1 1 1 1 1 1 1 1 7
N.º de saídas = 3
N.º de entradas = 2N.º de saídas = 23 = 8
Valor lógico responsável por activar as entradas = 0
Quando o valor lógico 0 activa a entrada E1, na saída
aparece a combinação binária referente ao número de
ordem da entrada que foi activada, isto é, o número 1
(001).
1. Circuitos CombinatóriosCodificadores:
• existem dois tipos de codificadores:
• codificadores sem prioridade: são circuitos que não admitem a activação
simultânea de mais do que uma entrada, porque se isso acontece aparecem
códigos errados nas suas saídas;
• codificadores com prioridade: são circuitos que no caso de ocorrer
LEI SDAC 38
• codificadores com prioridade: são circuitos que no caso de ocorrer
activação simultânea de várias das suas entradas, aparecerá nas suas saídas o
código do número de ordem da entrada de maior prioridade.
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
20
1. Circuitos CombinatóriosCodificadores:
Entradas Saídas
N.º de saídas = 2
N.º de entradas = 2N.º de saídas = 22 = 4
Valor lógico responsável por activar as entradas = 1
Exemplo: Construir o diagrama lógico de um simples
codificador de 4 entradas.
0 1 0 3 2 1 0 0 1 1 2 3
1 2 1 0 3 2 1 0 1 0 2 2 3
S E E E E E E E E E E E
S E E E E E E E E E E E E
LEI SDAC 39
Entradas Saídas
E3 E2 E1 E0 S1 S0
21 20
X X X 1 0 0 0
X X 1 0 0 1 1
X 1 0 0 1 0 2
1 0 0 0 1 1 3
1. Circuitos CombinatóriosDescodificadores:
• os descodificadores realizam a função inversa dos codificadores;
• um descodificador selecciona uma das saídas dependendo da combinação binária
presente na entrada.
• um descodificador é um circuito combinatório formado por um número de saídas
menor ou igual a 2nº de entradas e n entradas;
LEI SDAC 40
menor ou igual a 2 e n entradas;
• o valor lógico que pode activar uma saída é 0 ou 1.
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
21
1. Circuitos CombinatóriosDescodificadores:
Entradas Saídas
E1 E0 S3 S2 S1 S0
21 20
0 0 0 1 1 1 0
1 0 1 1 1 0 1
2 1 0 1 0 1 1
3 1 1 0 1 1 1
LEI SDAC 41
N.º de entradas = 2
N.º de saídas = 2N.º de entradas = 22 = 4
Valor lógico responsável por activar as saídas = 0
Quando a combinação binária referente ao número 1
(01) está presente na entrada, a saída activada será a
saída com o mesmo número de ordem, isto é, S1.
1. Circuitos CombinatóriosDescodificadores:
N.º de entradas = 2
N.º de saídas = 2N.º de entradas = 22 = 4
Valor lógico responsável por activar as saídas = 1
Exemplo: Construir o diagrama lógico de um simples
descodificador de 2 entradas.
Entradas Saídas
E0 E1
S0
LEI SDAC 42
Entradas Saídas
E1 E0 S3 S2 S1 S0
21 20
0 0 0 0 0 0 1
1 0 1 0 0 1 0
2 1 0 0 1 0 0
3 1 1 1 0 0 0
0 0 1
1 0 1
2 0 1
3 0 1
S E E
S E E
S E E
S E E
S1
S2
S3
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
22
1. Circuitos CombinatóriosDescodificadores:
Exemplo: Implementar uma função lógica com
descodificadores.
C B A F
0 0 0 0
0 0 1 1
0 1 0 0
1º Determinar a função lógica:
F C B A C B A C B A C B A
2º Determinar quantas entradas o nosso
descodificador necessita:
N.º entradas = n.º de variáveis = 3
LEI SDAC 43
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
3º Identificar quais as combinações presentes nas
entradas que levam a função lógica a tomar o valor 1
lógico:001; 011; 100; 111
1. Circuitos CombinatóriosDescodificadores:
Exemplo: Implementar uma função lógica com
descodificadores.
C B A F
0 0 0 0
0 0 1 1
0 1 0 0
4º Identificar qual o valor e qual a saída activada
dependendo das combinações presentes nas entradas:
1 (2) (10) 32 10
(2) (10) 4 (2) (10) 7
001 1 ; 011 3 ;
100 4 ; 111 7
S S
S S
5º Escolher se a implementação vai ser levada a cabo
com portas NAND ou portas OR.
LEI SDAC 44
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
As portas NAND utilizam-se para descodificadores com
saídas activas por nível baixo (0 lógico).
As portas OR utilizam-se para descodificadores com
saídas activas por nível alto (1 lógico).
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
23
1. Circuitos CombinatóriosDescodificadores:
Exemplo: Implementar uma função lógica com
descodificadores.
C B A F
0 0 0 0
0 0 1 1
0 1 0 0
5º Escolher se a implementação vai ser levada a cabo
com portas NAND ou portas OR. (cont.)
Vamos supor que as saídas deste descodificador são
activas por nível baixo (0 lógico), logo teremos que
utilizar na implementação a porta lógica NAND e
teremos que negar todas as saídas do descodificador.
LEI SDAC 45
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
1. Circuitos CombinatóriosMultiplexers:
A função do multiplexer consiste em transmitir por um só canal de saída uma das
informações presentes nas várias linhas de entrada. A relação entre as entradas e as
saídas é dada por: n.º de linhas presentes na entrada = 2N.º de entradas de controlo.
d0d1d2d3d4d5d6d7
linhas de entrada contendo informaçãoEntradas de controlo F
A B C
0 0 0 0 d0
1 0 0 1 d1
LEI SDAC 46
CB
A
MULTIPLEXER
F
entradas de
controlo
saída
2 0 1 0 d2
3 0 1 1 d3
4 1 0 0 d4
5 1 0 1 d5
6 1 1 0 d6
7 1 1 1 d7
linhas de
entrada
contendo
informação
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
24
1. Circuitos CombinatóriosMultiplexers:
l A B C
N.º de entradas de controlo = 3
N.º de linhas presentes na entrada = 2N.º de entradas de controlo = 23 = 8
Exemplo: Construir o diagrama lógico de um simples
multiplexer de 3 entradas de controlo.
Entradas de controlo F
A B C
0 0 0 0 d0
A B C
d0
d1
d2
d3
F
LEI SDAC 47
0 1
2 3
4 5
6 7
F A B C d A B C d
A B C d A B C d
A B C d A B C d
A B C d A B C d
1 0 0 1 d1
2 0 1 0 d2
3 0 1 1 d3
4 1 0 0 d4
5 1 0 1 d5
6 1 1 0 d6
7 1 1 1 d7
d4
d5
d6
d7
1. Circuitos CombinatóriosMultiplexers:
2º Identificar qual o valor das linhas de entrada
Exemplo: Implementar a função lógica F, com um
multiplexer de 4 entradas de controlo.
F A B C D A B C D A B C D
A B C D A B C D A B C D
A B C D A B C D A B C D
2º Identificar qual o valor das linhas de entrada
que é activo pelas diversas combinações das
variáveis de controlo.
(10) 12
(10) 32
(10) 62
(10) 72
(10) 52
0001 1
0011 3
0110 6
0111 7
0101 5
A B C D D
A B C D D
A B C D D
A B C D D
A B C D D
LEI SDAC 48
1º Identificar quantas variáveis tem a função lógica
N.º de variáveis = 4
N.º de entradas de controlo = n.º de variáveis = 4
N.º de linhas presentes na entrada = 2n.º de entradas de controlo = 24 = 16
(10) 52
(10) 42
(10) 142
(10) 122
(10)2
0100 4
1110 14
1100 12
1001 9
A B C D D
A B C D D
A B C D D
A B C D
9D
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
25
1. Circuitos CombinatóriosMultiplexers:
D0
1
Exemplo: Implementar a função lógica F, com um
multiplexer de 4 entradas de controlo.
F A B C D A B C D A B C D
A B C D A B C D A B C D
A B C D A B C D A B C D
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
F
LEI SDAC 49
3º Implementar a função lógica:
1 lógico
0 lógico1 3 4 5 6 7 9 12 14
0 2 8 10 11 13 15
, , , , , , , ,
, , , , , ,
D D D D D D D D D
D D D D D D D
S3 S2 S1 S0
AB
CD
D13
D14
D15
0
1. Circuitos CombinatóriosMultiplexers:
Exemplo: Implementar a função lógica F, com um
multiplexer de 3 entradas de controlo.
1º Identificar quantas variáveis tem a função lógica
F A B C D A B C D A B C D A B C D A B C D
A B C D A B C D A B C D A B C D
LEI SDAC 50
N.º de variáveis = 4
N.º de entradas de controlo = n.º de variáveis = 4
N.º de linhas presentes na entrada = 2n.º de entradas de controlo = 24 = 16
Atenção:
O multiplexer só tem 3 entradas de controlo
N.º de linhas presentes na entrada = 2n.º de entradas de controlo = 23 = 8
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
26
1. Circuitos CombinatóriosMultiplexers:
Exemplo: Implementar a função lógica F, com um
multiplexer de 3 entradas de controlo.
2º Construir uma tabela na qual se representam com um lógico as combinações das variáveis de controlo que intervêm
na função lógica F.
F A B C D A B C D A B C D
A B C D A B C D A B C D
A B C D A B C D A B C D
000 001 010 011 100 101 110 111ABC
D
LEI SDAC 51
000 001 010 011 100 101 110 111
00 1 0 1 1 1 1 1
10 1 0 0 1 0 1 0
D0 D1 D2 D3 D4 D5 D6 D7
A D
1. Circuitos CombinatóriosMultiplexers:
Exemplo: Implementar a função lógica F, com um
multiplexer de 3 entradas de controlo.
3º Analisar a tabela.
000 001 010 011 100 101 110 111
00 1 0 1 1 1 1 1
10 1 0 0 1 0 1 0
ABC
D
LEI SDAC 52
0 1 0 0 1 0 1 0
D0 D1 D2 D3 D4 D5 D6 D7
1 4 6
0 2
3 5 7
1 logico , ,
0 logico ,
inverso de A , ,
D D D
D D
D D D A
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
27
1. Circuitos CombinatóriosMultiplexers:
Exemplo: Implementar a função lógica F, com um
multiplexer de 3 entradas de controlo.
4º Implementação.
1 4 61 logico , ,D D D
D0
D1
D2
D3
D4
D5
D6
1
F
LEI SDAC 53
1 4 6
0 2
3 5 7
1 logico , ,
0 logico ,
inverso de A , ,
D D D
D D
D D D A
S2 S1 S0A
B
CD
D7
0
1. Circuitos CombinatóriosDesmultiplexers:
d
Os desmultiplexers são circuitos com uma só entrada, n linhas de saídas e n entradas
de controlo. A informação de entrada é transmitida à linha de saída selecciona pelas
entradas de controlo. A relação entre as saídas e as entradas é dada por: n.º de linhas
presentes na saída = 2N.º de entradas de controlo.linha de entrada contendo informação
Entradas de Controlo
Saídas
LEI SDAC 54
B
A
S0S1S2S3
DESMUXentradas de
controlo
linhas de saída
A B S0 S1 S2 S3
0 0 0 D 0 0 0
1 0 1 0 D 0 0
2 1 0 0 0 D 0
3 1 1 0 0 0 D
Escola Superior de Tecnologia e Gestão de Felgueiras - Politécnico do Porto
Licenciatura em Engenharia Informática
28
1. Circuitos CombinatóriosComparadores:
Os comparadores são circuitos combinatórios que, ao colocarmos nas suas entradas
duas palavras de n bits, detectam se são ou não iguais, e neste caso qual das entradas
é maior ou menor.
S0 = 1 lógico A > B
S1 = 1 lógico A < B
S2 = 1 lógico A = B
A B
LEI SDAC 55
Entradas Saídas
A B S0 S1 S2
0 0 0 0 0 1
1 0 1 0 1 0
2 1 0 1 0 0
3 1 1 0 0 1
0
1
2
S A B
S A B
S A B
S0
S1
S2