226 Pages • 16,386 Words • PDF • 8.9 MB
Uploaded at 2021-09-24 12:39
This document was submitted by our user and they confirm that they have the consent to share it. Assuming that you are writer or own the copyright of this document, report to us by using this DMCA report button.
Eletrônica
Curso Técnico de Eletrônica
Eletrônica Digital II Professor: Wagner Rodrigues 2017
Contadores
Powered by Enderson Neves Cruz
Contadores Introdução Contadores Circuito digital que evolui sob o comando de um clock, de forma que seus estados reproduzam uma sequência pré-determinada.
Assuntos a serem abordados:
Contadores assíncronos;
Contadores de Módulo < 2N;
Atraso de propagação em contadores assíncronos;
Contadores síncronos decrescentes e crescentes/ decrescentes
Contadores síncronos (Paralelos);
Contadores com Carga Paralela;
Circuitos integrados de contadores síncronos;
Analisando contadores síncronos;
Projeto de Contadores Síncronos;
Máquinas de estado;
Circuitos integrados de registradores;
Contadores com registradores de deslocamento;
Powered by Enderson Neves Cruz
3
Contadores Contadores Assíncronos e Síncronos .
Contador Assíncrono
Pulsos de clock de entrada Primeiro estágio Flip-flop disparado pela saída do flip-flop anterior.
Circuito combinacional
Os flip-flops do contador não trocam de estado em exato sincronismo com os pulsos de clock aplicados. O sinal de clock é aplicado no primeiro estágio que origina a contagem. Cada flip-flop seguinte é disparado pela saída do flip-flop anterior.
.
Contador Síncrono Todos os flip-flops do contador são disparados simultaneamente (em paralelo) pelos pulsos de clock da entrada.
Pulsos de clock de entrada
Existência do circuito combinacional nas entradas J e K de alguns .flip-flops de forma a controlara quando um flip-flop comuta e quando ele deve permanecer inalterado pelo pulso de clock.
Powered by Enderson Neves Cruz
4
Contadores Assíncronos
Powered by Enderson Neves Cruz
Contadores Contadores Assíncronos
Também chamados contadores por pulsação ou ripple counters.
São os tipos mais simples de contadores, pois necessitam de um menor número de componentes para produzir um certa operação de contagem.
Os flip-flops do contador assíncrono não trocam de estado em exato sincronismo com os pulsos de clock aplicados.
O sinal de clock é aplicado ao flip-flop LSB (primeiro estágio), Os demais flip-flops são disparado pela saída do flip-flop anterior. MSB
LSB
Todas as entradas J e K estão no nível lógico alto 1.
O contador realiza um ciclo completo contando até o valor máximo e depois recicla de volta para o valor inicial iniciando um novo ciclo de contagem conforme pulsos de clock forem aplicados.
Powered by Enderson Neves Cruz
6
Contadores Contadores Assíncronos
Todas as entradas J e K estão no nível lógico alto 1.
Recicla para 0000
Powered by Enderson Neves Cruz
7
Contadores Contadores Assíncronos Atraso de propagação em contadores assíncronos
Contadores assíncronos são mais simples, porém, apresentam problemas devido ao atraso de propagação dos flip-flops (propagation delay time).
Os atrasos de propagação se acumulam, de modo que o enésimo flip-flop não pode mudar de estado até um tempo igual a N x tpd após a transição do clock ter ocorrido, ondetpd é o atraso de propagação de cada flip-flop.
Isso limita a frequência máxima do clock.
𝟏 𝒇𝒎𝒂𝒙 = 𝑵 × 𝒕𝒑𝒅
fmax – Frequência máxima N – Número de flip-flops tpd – Atraso de propagação de cada flip-flop
𝑻𝒎𝒊𝒏 ≥ 𝑵 × 𝒕𝒑𝒅
Tmin – Período mínimo do sinal de clock
Powered by Enderson Neves Cruz
8
Contadores Contadores Assíncronos Atraso de propagação em contadores assíncronos Tclock = 1000ns fclock = 1MHz
N=3 tpd = 50ns
𝒇𝒎𝒂𝒙 =
𝟏 𝟏 = = 𝟔, 𝟔𝟔𝑴𝑯𝒛 𝑵 × 𝒕𝒑𝒅 𝟑 × 𝟓𝟎𝒏𝒔
𝑻𝒎𝒊𝒏 ≥ 𝑵 × 𝒕𝒑𝒅 ≥ 𝟑 × 𝟓𝟎𝒏𝒔 ≥ 𝟏𝟓𝟎𝒏𝒔
Nesta situação o contador opera adequadamente, indo para os estados corretos, pois a frequência do sinal de clock é inferior a 1/𝑵 × 𝒕𝒑𝒅
Powered by Enderson Neves Cruz
9
Contadores Contadores Assíncronos Atraso de propagação em contadores assíncronos Tclock = 100ns fclock = 10MHz
N=3 tpd = 50ns
𝒇𝒎𝒂𝒙 =
𝟏 𝟏 = = 𝟔, 𝟔𝟔𝑴𝑯𝒛 𝑵 × 𝒕𝒑𝒅 𝟑 × 𝟓𝟎𝒏𝒔
𝑻𝒎𝒊𝒏 ≥ 𝑵 × 𝒕𝒑𝒅 ≥ 𝟑 × 𝟓𝟎𝒏𝒔 ≥ 𝟏𝟓𝟎𝒏𝒔
A condição 100 não ocorre
Nesta situação o contador opera de forma inadequada, pois a condição 100 não acontece, pois a frequência do sinal de clock é superior a 1/𝑵 × 𝒕𝒑𝒅
Powered by Enderson Neves Cruz
10
Contadores Contadores Assíncronos Estados Transitórios
Os contadores assíncronos têm outra desvantagem devido ao atraso de propagação dos flip-flops: possuírem estados transitórios que ocorrem sempre que um dos flip-flop muda o estado de ALTO para BAIXO.
Estados transitórios
Powered by Enderson Neves Cruz
11
Contadores Módulo do contador
Módulo ou MOD é número de estados que o contador atinge em cada ciclo completo antes de reciclar de volta ao estado inicial.
Se N flip-flops estão conectados de forma a formar um contador, este contador será um contador de módulo 2N e terá 2N estados diferentes, sendo capaz de contar até 2N -1 antes de retornar ao estado inicial.
Módulo = 2N
O módulo também indica a relação entre a frequência de entrada e a frequência de saída no último contador. N=3 Contador módulo 8 Contagem de 0 a 7
N=5 Contador módulo 32 Contagem de 0 a 31
Q0
Q1
Q2
Q3
Q4
Powered by Enderson Neves Cruz
12
Contadores Divisão de frequência
No contador básico a saída de cada flip-flop fornece uma forma de onda na saída que tem a metade da frequência da forma de onda do sinal aplicado na entrada de clock.
A saída do último flip-flop (MSB) divide a frequência do clock de entrada pelo módulo do contador.
O contador pode ser chamado de contador divisor por MOD.
Exemplo – Contador módulo 32 com sinal de clock de 64kHz
Sinal de clock de 64kHz
Q0
Q1
Q2
Q3
Q4
LSB
MSB 𝟑𝟐𝒌𝑯𝒛 = 𝟏𝟔𝒌𝑯𝒛 𝟐
𝟔𝟒𝒌𝑯𝒛 = 𝟑𝟐𝒌𝑯𝒛 𝟐
𝟖𝒌𝑯𝒛 = 𝟒𝒌𝑯𝒛 𝟐 𝟏𝟔𝒌𝑯𝒛 = 𝟖𝒌𝑯𝒛 𝟐
𝟒𝒌𝑯𝒛 = 𝟐𝒌𝑯𝒛 𝟐
Powered by Enderson Neves Cruz
13
Contadores Divisão de frequência Exemplo – Sinal de clock para relógio digital.
Onda senoidal fornecida pela rede elétrica.
Circuito Schmitt-trigger Conformador de pulsos para produzir a onda quadrada de 60Hz.
Contador módulo 60 usado para dividir a frequência de 60Hz por 60, gerando um sinal de 1Hz.
O sinal de 1Hz é levado a uma série de contadores, que contam os segundos, minutos e horas.
Quantos flip-flops são necessários para fazer um contador módulo 60?
Powered by Enderson Neves Cruz
14
Contadores Contador de módulo < 2N
O contador assíncrono básico está limitado a módulos 2N, onde N é o número de flip-flops.
Porém ele pode ser modificado para produzir módulos menores que 2N, permitindo que o contador salte estados que normalmente faziam parte da contagem. Exemplo – Contador módulo 6 Diagrama de transição de estados Estado 111 jamais será alcançado
Estado 110 é temporário (Nanossegundos)
As linhas tracejadas indicam estado temporário
Quando a contagem atingir o valor do módulo desejado (estado temporário) gera-se um pulso na entrada assíncrona de CLEAR de forma a limpar o contador e reiniciar a contagem.
Powered by Enderson Neves Cruz
15
Contadores Contador de módulo < 2N Exemplo – Contador módulo 6
.
Considerações Embora o contador vá para o estado temporário, ele permanece lá por apenas alguns nanossegundos antes de reciclar para o valor inicial. Observe que na saída B ocorre um glitch ou spike causado pela ocorrência momentânea do estado temporário. Este glitch é muito estreito (ns) e não produz qualquer indicação visual em LEDs e displays. Porém, o glitch pode causar algum problema caso a saída B estiver sendo utilizada para acionar outros circuitos externos ao contador. glitch
A saída C tem frequência igual a 1/6 da frequência de entrada.
A forma de onda da saída C não é simétrica, pois fica em nível alto por 2 pulsos de clock e 4 pulsos em nível baixo.
Powered by Enderson Neves Cruz
16
Contadores Procedimento para construção de um contador Procedimento para construção de um contador que começa em 0 e tem módulo X
Determine o menor número de flip-flops tal que 2N ≥ X, onde X é o módulo desejado para o contador.
Desenhe o circuito com a quantidade de flip-flops determinada.
Se 2N = X, procedimento concluído. Pule os passos seguintes.
Caso contrário, conecte uma porta NAND (caso os flip-flops forem sensíveis ao nível baixo) ou AND (caso os flip-flops forem sensíveis ao nível alto) às entradas CLEAR dos flip-flops.
Determine os flip-flops que estarão no estado ALTO quando a contagem atingir X. Então, conecte a saída destes flip-flops nas entradas da porta.
Powered by Enderson Neves Cruz
17
Contadores Procedimento para construção de um contador Contador assíncrono módulo ≤ 16
Qual o módulo deste contador?
Powered by Enderson Neves Cruz
18
Contadores Contadores Decádicos/BCD
Contadores de módulo 10 são denominados contadores decádicos ou decade counters (contadores de década).
Um contador de década é qualquer contador com 10 estados distintos, não importando a sequência.
Contadores decádicos que contam em sequência desde 0000 (zero em decimal) até 1001 (9 em decimal) são denominados Contadores BCD .
São utilizados em aplicações onde pulsos ou eventos devem ser contados e os resultados apresentados em algum mostrador decimal numérico.
Outra aplicação comum é na divisão da frequência de pulsos exatamente por 10. Sinal de frequência 𝒇/𝟏𝟎
D
C MSB
B
A LSB
Sinal de clock de frequência 𝒇
Powered by Enderson Neves Cruz
19
Contadores Contadores Decádicos/BCD Cis com contadores assíncronos 7493 e 7490
7493 - 4-BIT BINARY COUNTER
Powered by Enderson Neves Cruz
20
Contadores Contadores Decádicos/BCD Cis com contadores assíncronos 7493 e 7490
7490 - DECADE COUNTER (BCD)
Powered by Enderson Neves Cruz
21
Contadores Contadores Decádicos/BCD Aplicação de um contador BCD
(A0)
U1 14 1
2 3
QA QB QC QD
CKA CKB
12 9 8 11
R0(1) R0(2) 7493
A8 A9 A10 A11 A12 A13 A14 A15 B2[0..7] B3[0..7]
A0 A1 A2 A3 A4 A5 A6 A7 B0[0..7] B1[0..7]
U2 14 1
2 3 6 7
CKA CKB
Q0 Q1 Q2 Q3
12 9 8 11
R0(1) R0(2) R9(1) R9(2) 7490
Powered by Enderson Neves Cruz
22
Contadores Contadores Decádicos/BCD Ligação em cascata de contadores BCD
Powered by Enderson Neves Cruz
23
Contadores Contadores Crescentes/Decrescentes
Contadores Crescentes (UP Counters) fazem a contagem de pulsos de forma progressiva, ou seja, contam do valor a partir do zero até o valor máximo.
Já os Contadores Decrescentes (DOWN Counter) fazem a contagem de pulsos de forma regressiva, ou seja, contam do valor máximo até o zero.
Contador crescente módulo 8
Contador decrescente módulo 8
UP Counter MOD 8
Down Counter MOD 8
Powered by Enderson Neves Cruz
24
Contadores Contadores Decrescentes
O flip-flop do primeiro estágio (LSB) comuta a cada transição negativa (ALTO para BAIXO ) do sinal de clock. Cada flip-flop, exceto o primeiro, devem comutar quando ocorre uma transição positiva (BAIXO para ALTO) do flip-flop precedente:
C
B MSB
CBA 111 110 101 100 011 010 001 000
Recicla
A LSB
Pulsos de clock de entrada
Powered by Enderson Neves Cruz
25
Contadores Contadores Decrescentes
Pulsos de clock de entrada
Powered by Enderson Neves Cruz
26
Contadores Contadores Crescentes/Decrescentes
Contadores Crescentes/Decrescentes (UP/DOWN Counters) podem fazer a contagem de pulsos de forma progressiva ou regressiva.
Através de um sinal de controle 𝑼𝑷/𝑫𝑶𝑾𝑵 é possível estabalecer como o contador irá operar: −
Operação crescente (UP) é ativa em nível ALTO – saídas normais dos flip-flops conectadas as entradas J e K do flip-flop seguinte.
−
Operação decrescente (DOWN) é ativa em nível BAIXO – saídas invertidas conectadas as entradas J e K do flip-flop seguinte.
Contagem Crescente Decrescente
𝑼/𝑫 Up/Down Counter MOD 8
CLOCK
CLK
QC
QB
QA
Saídas do contador
Powered by Enderson Neves Cruz
27
Contadores Contadores Crescentes/Decrescentes
Pulsos de clock de entrada
Powered by Enderson Neves Cruz
28
Contadores Contadores Crescentes/Decrescentes Contador assíncrono crescente/decrescente de módulo 16
Up/Down Counter MOD 16
Powered by Enderson Neves Cruz
29
Contadores Contadores com Carga Paralela
Os Contadores com Carga Paralela ou Presettable Counters são contadores carregáveis (presettable), isto é, podem ser inicializados com um determinado valor.
A operação de inicialização é denominada carga paralela (parallel load) e pode ser realizada de dois modos:
−
Modo assíncrono – independentemente do sinal do clock.
−
Modo síncrono – na transição ativa do sinal de clock.
Existem entradas paralelas de dados, onde o valor a ser carregado dever ser aplicado e uma outra entrada de controle CARGA PARALELA (PARALLEL LOAD). Entradas paralelas de dados
D Carga Paralela
CLOCK
C
B
A
𝑷𝑳 CLK
Presettable Counter MOD 16 QD
QC
QB
QA
Saídas do contador
Powered by Enderson Neves Cruz
30
Contadores Contadores com Carga Paralela Contador com carga paralela assíncrona 1. Aplicar a contagem inicial desejada nas entradas paralelas de dados.
Pulsos de clock de entrada
2. Aplicar um pulso da entrada de carga paralela
Powered by Enderson Neves Cruz
31
Contadores Contadores com Carga Paralela Contador com carga paralela síncrona
Muitos contadores, especialmente os síncronos, utilizam carga síncrona, na qual o contador é carregado na transição ativa do mesmo sinal de clock que é usado para a contagem.
O nível lógico aplicado na entrada entrada de controle CARGA PARALELA (PARALLEL LOAD). Determina se a transição ativa do clock vai carregar o contador ou se será contada como na operação normal.
Powered by Enderson Neves Cruz
32
Contadores Contadores com Carga Paralela
Powered by Enderson Neves Cruz
33
Contadores Síncronos
Powered by Enderson Neves Cruz
Contadores Contadores Síncronos
Os problemas encontrados nos contadores assíncronos são causados pela acumulação dos atrasos de propagação dos flip-flops. Apresentando de outro modo, os flip-flops não trocam de estado simultaneamente em sincronia com os pulsos de entrada.
Estas limitações podem ser superadas com a utilização de contadores síncronos (synchronous counters) ou contadores paralelos (parallel counters), nos quais todos os flip-flops são disparados simultaneamente (em paralelo) pelos pulsos de clock da entrada.
Como os pulsos de entrada são aplicados em todos os flip-flops, um circuito combinacional deve ser usado para controlar quando um flip-flop comuta e quando ele deve permanecer inalterado pelo pulso de clock.
O contador síncrono necessita de mais circuitos do que um contador assíncrono. Circuito combinacional
Pulsos de clock de entrada
Powered by Enderson Neves Cruz
35
Contadores Contadores Síncronos Operação do circuito Contagem
D
C
B
A
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
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
.
.
.
.
.
• A saída A muda a cada transição do clock (descida do clock). • A saída B muda a cada transição do negativa da saída A, ou seja A = 1.
• A saída C muda quando ocorre uma transição enquanto as saídas A e B estiverem em 1, ou seja, A = B = 1 . • A saída D muda quando ocorre uma transição enquanto as saídas A, B e C estiverem em 1, ou seja, A = B = C = 1.
Para o circuito contar apropriadamente em um determinada descida de clock, apenas os flip-flops que comutariam naquela descida deveriam ter as entras J = K= 1 quando a transição ocorrer.
Cada flip-flop deve ter suas entradas J e K conectadas de modo que elas estejam em nível ALTO somente quando as saídas de todos os flipflops de mais baixa ordem estiverem no estado ALTO.
Powered by Enderson Neves Cruz
36
Contadores Contadores Síncronos Operação do circuito Cada flip-flop deve ter suas entradas J e K conectadas de modo que elas estejam em nível ALTO somente quando as saídas de todos os flip-flops de mais baixa ordem estiverem no estado ALTO.
As entradas J e K do quarto FF devem ficar em nível ALTO somente quando a saída C (3º nível) estiver em nível ALTO.
MSB
As entradas J e K do terceiro FF devem ficar em nível ALTO somente quando a saída B (2º nível) estiver em nível ALTO.
As entradas J e K do segundo FF devem ficar em nível ALTO somente quando a saída A (1º nível) estiver em nível ALTO.
LSB
Powered by Enderson Neves Cruz
37
Contadores Contadores Síncronos Atraso de propagação em contadores síncronos
Em um contador síncrono todos os flip-flops mudarão de estado simultaneamente, isto é, todos eles estão sincronizados com a descida dos pulsos de clock de entrada.
Ao contrário dos contadores assíncronos, os atrasos de propagação dos flip-flops não se acumulam para produzir um atraso geral.
Em vez disso, o tempo de resposta total de um contador síncrono é o tempo que leva um flip-flop para comutar, mais o tempo para o novo nível lógico se propagar através de uma única porta AND, para alcançar as entradas J e K.
𝑨𝒕𝒓𝒂𝒔𝒐 𝒕𝒐𝒕𝒂𝒍 = 𝒕𝒑𝒅 𝒅𝒐 𝑭𝑭 + 𝒕𝒑𝒅 𝒅𝒂 𝒑𝒐𝒓𝒕𝒂 𝑨𝑵𝑫
O atraso total é o mesmo, não importando quantos flip-flops estão no contador, e ele será geralmente bem menor do que o obtido em um contador assíncrono com o mesmo número de flip-flops.
Logo, um contador síncrono pode operar a uma frequência de entrada bem maior.
Naturalmente, o circuito para o contador síncrono é mais complexo do que aquele para o contador assíncrono.
Powered by Enderson Neves Cruz
38
Contadores Contadores Síncronos Contador síncrono decrescente
MOD-16 synchronous down counter.
Contador síncrono decrescente que utiliza a saída invertida de cada flip-flop para acionar as entradas J e K seguintes.
Count
D
C
B
A
15
1
1
1
1
14
1
1
1
0
13
1
1
0
1
12
1
1
0
0
11
1
0
1
1
10
1
0
1
0
9
1
0
0
1
8
1
0
0
0
7
0
1
1
1
6
0
1
1
0
5
0
1
0
1
4
0
1
0
0
3
0
0
1
1
2
0
0
1
0
1
0
0
0
1
0
0
0
0
0
.
.
.
.
.
Powered by Enderson Neves Cruz
39
Contadores Contadores Síncronos Contador síncrono decrescente Count
D
C
B
A
15
1
1
1
1
14
1
1
1
0
13
1
1
0
1
12
1
1
0
0
11
1
0
1
1
10
1
0
1
0
9
1
0
0
1
8
1
0
0
0
7
0
1
1
1
6
0
1
1
0
5
0
1
0
1
4
0
1
0
0
3
0
0
1
1
2
0
0
1
0
1
0
0
0
1
0
0
0
0
0
.
.
.
.
.
Powered by Enderson Neves Cruz
40
Contadores Contadores Síncronos Contador síncrono crescente/decrescente
MOD-8 synchronous up/down counter.
Powered by Enderson Neves Cruz
41
Contadores Contadores Síncronos Contador síncrono crescente/decrescente
Powered by Enderson Neves Cruz
42
Contadores Contadores Síncronos Contador síncrono com carga paralela assíncrona
Powered by Enderson Neves Cruz
43
Contadores Contadores Síncronos Contador síncrono com carga paralela síncrona
Muitos contadores, especialmente os síncronos, utilizam carga síncrona, na qual o contador é carregado na transição ativa do mesmo sinal de clock que é usado para a contagem.
O nível lógico aplicado na entrada entrada de controle CARGA PARALELA (PARALLEL LOAD). Determina se a transição ativa do clock vai carregar o contador ou se será contada como na operação normal.
Powered by Enderson Neves Cruz
44
Contadores Contadores Síncronos Comparativo entre contadores síncronos com carga paralela assíncrona e síncrona
synchronous load
asynchronous load
glitchs
Powered by Enderson Neves Cruz
45
Contadores Contadores Síncronos Analisando contadores síncronos
Qualquer sequência de contagem pode ser obtida através de um contador síncrono.
Analisar um contador é determinar sua sequência de estados.
Procedimento para análise de contadores síncronos 1. Escrever a expressão lógica para cada entrada de controle de cada flip-flop.
2. Montar a Tabela estado atual/próximo estado, aplicando a combinação atual de bits nas expressões lógicas das entradas de controle para determinar o próximo estado resultante 3. Desenhar o diagrama de transição de estados mostrando todos os estados possíveis. 4. Desenhar o diagrama de tempo.
Powered by Enderson Neves Cruz
46
Contadores Contadores Síncronos Analisando contadores síncronos – Exemplo
1. Escrever a expressão lógica para cada entrada de controle de cada flip-flop.
Expressões lógicas de cada entrada de controle de cada flip-flop
Powered by Enderson Neves Cruz
47
Contadores Contadores Síncronos Analisando contadores síncronos – Exemplo
2.
Montar a Tabela estado atual/próximo estado, aplicando a combinação atual de bits nas expressões lógicas das entradas controle para determinar o próximo estado resultante Tabela estado atual/próximo estado Estado atual
Entradas de controle
Próximo estado
Powered by Enderson Neves Cruz
48
Contadores Contadores Síncronos Analisando contadores síncronos – Exemplo
3.
Desenhar o diagrama de transição de estados mostrando todos os estados possíveis. Estado atual
Entradas de controle
Próximo estado
Diagrama de transição de estados
Powered by Enderson Neves Cruz
49
Contadores Contadores Síncronos Analisando contadores síncronos – Exemplo
4.
Desenhar o diagrama de tempo.
Diagrama de transição de estados
Diagrama de tempo
Powered by Enderson Neves Cruz
50
Projetando Contadores Síncronos
Powered by Enderson Neves Cruz
Contadores Contadores Síncronos Projetando contadores síncronos
Existem situações em que um contador deve seguir uma sequência que não é a sequência binária convencional.
Existem vários métodos para projetar contadores que sigam sequencias arbitrárias.
Mas como fazer isso?
Em contadores síncronos, todos os flip-flops são disparados ao mesmo tempo. Antes de cada pulso de clock, as entradas J e K de cada flip-flop devem estar no nível correto para garantir que o flip-flop vá para o estado correto.
O procedimento para projetar um contador síncrono é processo de projeto de circuitos lógicos, que decodificam os vários estados do contador para fornecer os níveis lógicos para cada entrada J e K. As entradas destes circuitos decodificadores são provenientes das saídas de um ou mais flip-flops.
Powered by Enderson Neves Cruz
52
Contadores Contadores Síncronos Projetando contadores síncronos
Procedimento para projetar contadores síncronos usando flip-flops J-K 1. Determinar o número desejado de bits (flip-flops) e a sequência de contagem desejada. 2. Desenhar o diagrama de transição de estado mostrando todos os estados possíveis, incluindo aqueles que não fazem parte da sequência de contagem desejada. 3. Usar o diagrama de transição de estados para criar uma tabela que liste todos os estados ATUAIS e os PRÓXIMOS. 4. Adicionar uma coluna para cada entrada J e K e indicar os níveis necessários para produzir a transição para o PRÓXIMO estado. Usar a Tabela de Excitação J-K 5. Projetar os circuitos lógicos para gerar os níveis exigidos em cada entrada. 6. Implementar as expressões finais.
Powered by Enderson Neves Cruz
53
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo Projetar um contador síncrono cuja sequência desejada é mostrada na tabela abaixo.
Powered by Enderson Neves Cruz
54
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
1.
Determinar o número desejado de bits (flip-flops) e a sequência de contagem desejada.
Serão necessários 3 bits (3 flip-flops) para gerar a sequência desejada.
Estados indesejáveis: 101 110 111
Powered by Enderson Neves Cruz
55
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
2.
Desenhar o diagrama de transição de estado mostrando todos os estados possíveis, incluindo aqueles que não fazem parte da sequência de contagem desejada.
Estados indesejáveis
Powered by Enderson Neves Cruz
56
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
3.
Usar o diagrama de transição de estados para criar uma tabela que liste todos os estados ATUAIS e os PRÓXIMOS.
Estado ATUAL
PRÓXIMO Estado
Linha
Powered by Enderson Neves Cruz
57
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
4.
Adicionar uma coluna para cada entrada J e K e indicar os níveis necessários para produzir a transição para o PRÓXIMO estado. Usar a Tabela de Excitação J-K. Relembrando o flip-flop J-K J
K
CLK
Q
0
0
Q0 (Não Muda)
1
0
1
0
1
0
1
1
Q0 (Comuta)
Tabela de Excitação do flip-flop J-K Transição
Estado ATUAL
PRÓXIMO Estado
na saída
Powered by Enderson Neves Cruz
58
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
4.
Adicionar uma coluna para cada entrada J e K e indicar os níveis necessários para produzir a transição para o PRÓXIMO estado. Usar a Tabela de Excitação J-K. Tabela de Excitação do flip-flop J-K Transição na saída
Estado ATUAL
Estado ATUAL
PRÓXIMO Estado
PRÓXIMO Estado
Linha
Powered by Enderson Neves Cruz
59
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
5.
Projetar os circuitos lógicos para gerar os níveis exigidos em cada entrada. Deve-se projetar um circuito lógico para cada uma das entradas. Estado ATUAL
PRÓXIMO Estado
Linha
Projetando o circuito para a entrada JA
ATUAL
𝑱𝑨 = 𝑪
Powered by Enderson Neves Cruz
60
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
5.
Projetar os circuitos lógicos para gerar os níveis exigidos em cada entrada. Deve-se projetar um circuito lógico para cada uma das entradas. Estado ATUAL
PRÓXIMO Estado
Linha
Projetando o circuito para a entrada KA
Tem-se apenas 1s e condições de don’t care. Substituindo as condições de don’t care por 1 tem-se:
𝑲𝑨 = 𝟏 Powered by Enderson Neves Cruz
61
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
5.
Projetar os circuitos lógicos para gerar os níveis exigidos em cada entrada. Deve-se projetar um circuito lógico para cada uma das entradas. Estado ATUAL
Linha
PRÓXIMO Estado
Projetando o circuito para as outras entradas
Powered by Enderson Neves Cruz
62
Contadores Contadores Síncronos Projetando contadores síncronos – Exemplo
6.
Implementar as expressões finais.
𝑱𝑨 = 𝑪
𝑲𝑨 = 𝟏
𝑱𝑩 = 𝑨 𝑪
𝑲𝑩 = 𝑨 + C
𝑱𝑪 = 𝑨B
𝑲𝑪 = 𝟏
Todos os flip-flops são disparados pelo mesmo sinal de clock.
Powered by Enderson Neves Cruz
63
Contadores Contadores Síncronos Projetando contadores síncronos – Mesma contagem, circuitos diferentes?
Powered by Enderson Neves Cruz
64
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor)
Um motor de passo gira em passos discretos, em vez de girar em movimento contínuo.
Os enrolamentos dentro do motor devem ser energizados e desenergizados em uma sequência específica para produzir movimento em passos discretos.
Sinais digitais são normalmente usados para controlar a corrente em cada enrolamento do motor.
Motores de passo são bastante utilizados em situações onde o controle preciso de posição é necessário, como por exemplo no posicionamento de cabeças para leitura/escrita de discos magnéticos, no controle de cabeças de impressão em impressoras e em robôs.
http://www.microchip.com/design-centers/motor-control-and-drive/motor-types/stepper
Powered by Enderson Neves Cruz
65
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
A figura abaixo mostra um diagrama de um típico motor de passo de quatro enrolamentos.
Para que o motor gire de modo correto, os enrolamentos 1 e 2 devem estar sempre em estados opostos, isto é, quando o enrolamento 1 está energizado, o enrolamento 2 não está, e vice-versa. Do mesmo modo, os enrolamentos 3 e 4 devem estar sempre em estados opostos.
As saídas de um contador síncrono de dois bits são usadas para controlar a corrente nos quatro enrolamentos.
Amplificadores de corrente são necessários porque as saídas dos flip-flops não podem gerar a corrente exigida pelos enrolamentos do motor.
Uma entrada D (Direction input) é usada para controlar a direção de rotação (sentido horário ou anti-horário).
Entrada de direção
Contador Síncrono
Amplificador de corrente
Enrolamento
Enrolamento
Passo Motor de passo
Powered by Enderson Neves Cruz
66
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
Entrada de direção
Contador Síncrono
Amplificador de corrente
Enrolamento
Enrolamento
Passo Motor de passo
1.
Determinar o número desejado de bits (flip-flops) e a sequência de contagem desejada. Serão necessários 2 bits (2 flip-flops) para gerar a sequência desejada. Sequência de contagem: Sentido horário (CW – clockwise) D = 0, a sequência de contagem deve ser: 11, 10, 00, 01, 11, 10, . . .
Sentido anti-horário (CCW – counterclockwise) D = 1, a sequência de contagem deve ser: 11, 01, 00, 10, 11, 01, . . .
Powered by Enderson Neves Cruz
67
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
2.
Desenhar o diagrama de transição de estado mostrando todos os estados possíveis, incluindo aqueles que não fazem parte da sequência de contagem desejada. Sentido horário (CW – clockwise) D = 0, a sequência de contagem deve ser: 11, 10, 00, 01, 11, 10, . . . Sentido anti-horário (CCW – counterclockwise) D = 1, a sequência de contagem deve ser: 11, 01, 00, 10, 11, 01, . . .
Rotação no sentido horário
Rotação no sentido anti-horário
Powered by Enderson Neves Cruz
68
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
3.
Usar o diagrama de transição de estados para criar uma tabela que liste todos os estados ATUAIS e os PRÓXIMOS.
Rotação no sentido horário
Rotação no sentido anti-horário
Estado ATUAL
PRÓXIMO Estado
Powered by Enderson Neves Cruz
69
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
4.
Adicionar uma coluna para cada entrada J e K e indicar os níveis necessários para produzir a transição para o PRÓXIMO estado. Usar a Tabela de Excitação J-K. Tabela de Excitação do flip-flop J-K Transição na saída
Estado ATUAL
Estado ATUAL
PRÓXIMO Estado
PRÓXIMO Estado
Powered by Enderson Neves Cruz
70
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
5.
Projetar os circuitos lógicos para gerar os níveis exigidos em cada entrada. Deve-se projetar um circuito lógico para cada uma das entradas. Estado ATUAL
PRÓXIMO Estado
Powered by Enderson Neves Cruz
71
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
6.
Implementar as expressões finais.
𝑱𝑩 = 𝑫⨁𝑨
𝑲𝑩 = 𝑫⨁𝑨
𝑱𝑨 = 𝑫⨁𝑩
𝑲𝑨 = 𝑫⨁𝑩
Powered by Enderson Neves Cruz
72
Contadores Contadores Síncronos Projetando contadores síncronos – Controle de motor de passo (Stepper motor) unipolar
6.
Implementar as expressões finais.
Powered by Enderson Neves Cruz
73
Contadores Contadores Síncronos Múltiplos estágios (cascata) usando CIs de contadores síncronos
ripple carry out (RCO)
Powered by Enderson Neves Cruz
74
Registradores
Powered by Enderson Neves Cruz
Registradores Armazenamento e Transferência de dados Registradores Agrupamento de flip-flops usado para manipulação e armazenamento de dados.
A capacidade de armazenamento de um registrador é definida pelo número de bits que ele pode armazenar, ou em outras palavras, o número de flip-flops que ele possui.
Transferência de dados – operação que envolve a transferência de dados entre um flip-flop e outro.
Powered by Enderson Neves Cruz
76
Registradores Armazenamento e Transferência de dados
As transferências podem ser síncronas ou assíncronas. Transferência síncrona Utiliza apenas as entradas de controle síncronas e a entrada do sinal de clock dos flip-flops para realizar a transferência.
Transferência assíncrona Utiliza as entradas de controle assíncronas PRESET e CLEAR para realizar a transferência. Também chamada de transferência por interferência, pois o dado que esta sendo transferido interfere no flip-flop seguinte, mesmo que as entradas síncronas estejam ativas.
Os dados podem ser tratados de forma serial ou paralela.
Powered by Enderson Neves Cruz
77
Registradores Armazenamento e Transferência de dados Modos de transferência Serial
Paralela Circuito B
Circuito A
Circuito B
Todo o conteúdo armazenado nos registradores é transferido simultaneamente.
Circuito A
O conteúdo armazenado nos registradores é transferido bit a bit através de uma linha de dados.
Powered by Enderson Neves Cruz
78
Registradores Armazenamento e Transferência de dados Transferência Paralela A transferência do Registrador X para o Registrador Y é síncrona. Quando um pulso é aplicado no sinal TRANSFER (clock dos flip-flops) o conteúdo de cada flip-flop do registrador X é transferido simultaneamente para o registrador Y. A transferência paralela não altera o conteúdo do registrador que é a fonte das informações.
Powered by Enderson Neves Cruz
79
Registradores Armazenamento e Transferência de dados Transferência Serial – Registradores de deslocamento
Os Registradores de deslocamento ou Shift Registers são utilizados para o armazenamento e transferência de dados. Grupo de flip-flops interligados de tal forma que os números armazenados nos flip-flops são deslocados de um flip-flop para o próximo, a cada pulso de clock.
O flip-flop do tipo D é o mais utilizado nesta operação, uma vez que transfere para a saída o dado disponível na entrada no momento em que ocorre o pulso de clock e o armazena até a ocorrência do próximo pulso.
Um registrador de deslocamento deve ser implementado usando flip-flops disparados por transição cujo tempo de hold (tH) seja menor que o atraso de propagação da saída em relação ao sinal de clock, pois existem momentos em que as entradas estarão mudando de estado quase no mesmo tempo que a transição na entrada do clock.
Powered by Enderson Neves Cruz
80
Registradores Armazenamento e Transferência de dados Transferência Serial – Registradores de deslocamento
Powered by Enderson Neves Cruz
81
Registradores Armazenamento e Transferência de dados Transferência Serial – Registradores de deslocamento Diagrama de transição de estados Estado inicial
Estado após o 3º pulso de clock
Circuito de partida Circuito que assegura o estado inicial do registrador com Q3 = 1, Q2 = 0, Q1 = 0 e Q0 = 0, ou seja, garante o estado 1000, quando a alimentação for ligada.
Estado após o 1º pulso de clock
Estado após o 2º pulso de clock
Powered by Enderson Neves Cruz
82
Registradores Armazenamento e Transferência de dados Transferência Serial – Registradores de deslocamento
Qual o estado inicial deste registrador e qual o estado após o 5º pulso de clock?
Powered by Enderson Neves Cruz
83
Registradores Armazenamento e Transferência de dados Transferência Serial – Registradores de deslocamento A transferência do Registrador X para o Registrador Y é síncrona. São necessários N pulsos de clock para a transferência completa de N bits de informação. A transferência serial altera o conteúdo do registrador que é a fonte das informações.
Powered by Enderson Neves Cruz
84
Registradores Armazenamento e Transferência de dados Tipos de registradores de deslocamento PIPO – Parallel In/Parallel Out ENTRADA PARALELA
SISO – Serial In/Serial Out ENTRADA SERIAL
CLOCK
Registrador Serial - Serial
SAÍDA SERIAL CLOCK
Registrador Paralela - Paralela
SAÍDA PARALELA
SIPO – Serial In/Parallel Out
PISO – Parallel In/Serial Out ENTRADA PARALELA
ENTRADA SERIAL
CLOCK
Registrador Serial - Paralela
SAÍDA PARALELA
CLOCK
Registrador Paralela - Serial
SAÍDA SERIAL
Powered by Enderson Neves Cruz
85
Registradores Armazenamento e Transferência de dados Registrador – 4 bit Paralell In/Paralell Out Shift Register
Powered by Enderson Neves Cruz
86
Registradores Armazenamento e Transferência de dados Registrador – 4 bit Paralell In/Paralell Out Shift Register
Powered by Enderson Neves Cruz
87
Registradores Armazenamento e Transferência de dados Registrador – 4 bit Paralell In/Paralell Out Shift Register
Powered by Enderson Neves Cruz
88
Contadores com Registradores de deslocamento
Powered by Enderson Neves Cruz
Contadores com Registradores de deslocamento Contador em anel (Ring Counters)
Contadores com registradores de deslocamento usam a realimentação, o que significa que a saída do último flip-flop do registrador é conectada de volta no primeiro flip-flop.
O exemplo mais simples é um registrador de deslocamento circular conectado de modo que o último flip-flop desloque seu valor para o primeiro flip-flop.
Realimentação Saída NORMAL do último flip-flop conectada a entrada do primeiro flip-flop.
Os flip-flops são conectados de modo que a informação seja deslocada da esquerda para a direita e circule de volta de Q0 para Q3.
Na maioria dos casos, somente um único bit em nível ALTO está no registrador, e este circula pelo registrador enquanto pulsos de clock forem aplicados, por isso é chamado contador em anel.
Podem ser construídos para qualquer módulo desejado.
Um contador em anel de módulo N utiliza N flip-flops conectados conforme a figura acima.
Powered by Enderson Neves Cruz
90
Contadores com Registradores de deslocamento Contador em anel (Ring Counters)
Para funcionar corretamente apenas um flip-flop, normalmente o MSB, deve estar em nível ALTO, os demais devem estar em nível BAIXO.
Diagrama de transição de estados
Circuito de partida Circuito que assegura que o contador inicie no estado inicial Q3 = 1, Q2 = 0, Q1 = 0 e Q0 = 0, ou seja, no estado 1000, quando a alimentação for ligada.
Powered by Enderson Neves Cruz
91
Contadores com Registradores de deslocamento Contador em anel (Ring Counters) Diagrama de transição de estados
Tabela de sequência Forma de onda
Powered by Enderson Neves Cruz
92
Contadores com Registradores de deslocamento Contador Johnson
Um contador Johnson (Johnson counter) ou contador em anel torcido (twisted-ring counter) é construído como um contador em anel exceto pelo fato de que a saída invertida do último flip-flop é que é conectada a entrada do primeiro.
Realimentação Saída INVERTIDA do último flip-flop conectada a entrada do primeiro flip-flop.
Tabela de sequência Diagrama de transição de estados
O módulo de contador Jonhson será igual a 2 vezes o número de flip-flops. MOD = 2N Embora utilize uma quantidade menor de flip-flops que o contador em anel (módulo N), ele requer uma lógica decodificadora, pois a contagem não pode ser mostrada diretamente das saídas dos flip-flops.
Powered by Enderson Neves Cruz
93
Contadores com Registradores de deslocamento Contador Johnson
Um contador Johnson (Johnson counter) ou contador em anel torcido (twisted-ring counter) é construído como um contador em anel exceto pelo fato de que a saída invertida do último flip-flop é que é conectada a entrada do primeiro.
Realimentação Saída INVERTIDA do último flip-flop conectada a entrada do primeiro flip-flop.
Tabela de sequência Diagrama de transição de estados
Forma de onda
Powered by Enderson Neves Cruz
94
Circuitos Lógicos MSI Parte 1
Powered by Enderson Neves Cruz
Circuitos Lógicos MSI Introdução Características básicas de circuitos integrados digitais
CIs digitais são uma coleção de resistores, diodos e transistores fabricados em um único pedaço de material semicondutor (geralmente silício), denominado substrato, comumente conhecido como chip.
O chip é confinado em um encapsulamento protetor plástico ou cerâmico, a partir do qual saem os pinos. Encapsulamento Substrato
Pino ou terminal
1958 Circuito Integrado Jack Kilby (Texas) – Prêmio Nobel em 2000 Robert Noyce (Fairchild) – Co-fundador da INTEL
http://www.virlab.virginia.edu/VL/IC_process.htm/state/0
https://www.youtube.com/watch?v=uSRIc-sEgPw https://www.youtube.com/watch?v=35jWSQXku74 https://www.youtube.com/watch?v=F2KcZGwntgg
Powered by Enderson Neves Cruz
96
Circuitos Lógicos MSI Introdução Características básicas de circuitos integrados digitais
Dual In-line Package
Powered by Enderson Neves Cruz
97
Circuitos Lógicos MSI Introdução Características básicas de circuitos integrados digitais – Encapsulamentos SIP
Single in-line package
DIP
Dual in-line package
SOP
Small Outline Package
SOJ
Small Out-line J-Leaded Package
SOP
Small Outline Package
SSOP
Shrink Small-Outline Package
TSOP
Thin Small-Outline Package
QFJ
Quad Flat J-Leaded Package
QFP
Quad Flat Package
TQFP/LQFP
Thin Quad Flat Pack/Low-profile Quad Flat Package
TCP
Tape Carrier Package
ZIP
Zig-zag in-line package
SDIP
Skinny DIP
PGA
Pin Grid Array
BGA/LGA
Ball Grid Array/Land Grid Array
CSP
Chip Scale Package
Evolution of semiconductor packaging Stanford University - Aneesh Nainani. https://www.youtube.com/watch?v=FY5V600ceuU
Powered by Enderson Neves Cruz
98
Circuitos Lógicos MSI Introdução Características básicas de circuitos integrados digitais – Nível de complexidade
CIs digitais são muitas vezes classificados de acordo com a complexidade de seus circuitos – medida pelo número de portas lógicas equivalentes no seu substrato.
Complexidade
Portas por Chip
SSI
Small-cale integration
Integração em pequena escala
Menos do que 12
MSI
Medium-scale integration
Integração em média escala
11 a 99
LSI
Large-scale integration
Integração em larga escala
100 a 9999
VLSI
Very large-scale integration
Integração em escala muito larga
10.000 a 99.999
ULSI
Ultra-large-scale integration
Integração em escala ultra-larga
100.000 a 999.999
GSI
Giga-scale integration
Integração em escala giga
1.000.000 ou mais
Há diversos dispositivos MSI que são circuitos combinacionais muito úteis no projeto de Sistemas Digitais.
Powered by Enderson Neves Cruz
99
Circuitos Lógicos MSI Introdução Características básicas de circuitos integrados digitais – Nível de complexidade
Os sistemas digitais tratam com dados codificados em binário e informações que, de alguma maneira, são continuamente submetidas a operações.
Algumas destas operações têm sido facilitadas pela disponibilidade de inúmeros CIs da categoria MSI (medium-scale-integration).
Operações que utilizam circuitos lógicos MSI
Decodificação e codificação
Multiplexação e demultiplexação
Conversão de código
Comparação
Powered by Enderson Neves Cruz
100
Circuitos Lógicos MSI Decodificadores Decodificador (Decoders) Circuito lógico que recebe um código binário na entrada, analisa e determina qual número bínário está presente nas entradas e ativa apenas a saída correspondente a esse número, mantendo as demais saídas desativadas.
Decodificador genérico
Somente uma saída será ativa (ficando em nível ALTO) para cada código de entrada
N entradas e M saídas M pode ser no máximo 2N
Powered by Enderson Neves Cruz
101
Circuitos Lógicos MSI Decodificadores
Alguns decodificadores não utilizam todos os 2N códigos de entradas possíveis.
Neste caso, são projetados de modo que caso um código não usado seja aplicado na entrada, nenhuma saída será ativada.
O0 O1 D C B A
O2 O3
Decodificador BCD - Decimal
O4 O5 O6
O7
Número
D
C
B
A
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
10
1
0
1
0
O8
11
1
0
1
1
O9
12
1
1
0
0
13
1
1
0
1
14
1
1
1
0
15
1
1
1
1
Códigos de entrada não utilizados
Powered by Enderson Neves Cruz
102
Circuitos Lógicos MSI Decodificadores Decodificador de 3 linhas para 8 linhas
Decodificador de 3 entradas e 8 saídas 23 = 8
O0 O1
A B
O2
Decodificador 3x8
O3 O4 O5
C
O6 O7
Também chamado: −
Decodificador 1 de 8, pois somente uma das oito saídas é ativada de cada vez.
−
Decodificador ou conversor binário para octal
Powered by Enderson Neves Cruz
103
Circuitos Lógicos MSI Decodificadores Decodificador de 3 linhas para 8 linhas
O0 O1
A B C
O2
Decodificador 3x8
O3 O4 O5 O6
O7
Powered by Enderson Neves Cruz
104
Circuitos Lógicos MSI Decodificadores Entradas de habilitação (Enable Inputs)
Alguns decodificadores têm uma ou mais Entradas de HABILITAÇÃO (ENABLE INPUTS) que são usadas para controlar a operação do decodificador.
O0 O1
A B
O2
Decodificador 3x8
O3
O4 O5
C
Enable Input • Ativada (Nível ALTO) Funcionamento normal, entradas A, B e C determinam qual saída será ativada. • Desativada (Nível BAIXO) Saídas inativas.
O6
O7
EI
Powered by Enderson Neves Cruz
105
Circuitos Lógicos MSI Decodificadores Entradas de habilitação (Enable Inputs) Entradas de HABILITAÇÃO
As saídas ficam ativas em nível BAIXO. Quando desativadas as mesmas permanecem em nível ALTO.
Powered by Enderson Neves Cruz
106
Circuitos Lógicos MSI Decodificadores Entradas de habilitação (Enable Inputs)
A partir das entradas de habilitação pode-se interligar decodificadores, possibilitando ampliar a quantidade de saídas.
A partir de decodificadores 3 x 8, e portas inversoras, pode-se montar um decodificador 5 x 32.
Qual faixa de códigos ativa o chip Z4?
Resp: 11000 a 11111
Powered by Enderson Neves Cruz
107
Circuitos Lógicos MSI Decodificadores Decodificador /driver BCD para Decimal
Não utilizam todos os 2N códigos de entradas possíveis, caso um código não usado seja aplicado na entrada, nenhuma saída será ativada.
O0 O1 D C B A
O2 O3
Decodificador BCD - Decimal
O4 O5 O6 O7
Número
D
C
B
A
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
10
1
0
1
0
O8
11
1
0
1
1
O9
12
1
1
0
0
13
1
1
0
1
14
1
1
1
0
15
1
1
1
1
Códigos de entrada não utilizados
Powered by Enderson Neves Cruz
108
Circuitos Lógicos MSI Decodificadores Decodificador /driver BCD para Decimal
O termo driver é usado para indicar que o CI tem saídas que podem operar com tensões e correntes mais altas que os limites de uma saída normal.
As saídas ficam ativas em nível BAIXO. Quando desativadas as mesmas permanecem em nível ALTO.
Powered by Enderson Neves Cruz
109
Displays Introdução
Um display, ou mostrador, é um dispositivo de interface homem máquina (Human-Computer Interface) para a apresentação de informação, de modo visual ou táctil.
Displays eletrônicos estão disponíveis para apresentação de informação tanto sob forma visual quanto táctil.
Braille Display
Powered by Enderson Neves Cruz
110
Displays Tipos de Displays Display de segmentos
CRT (Cathode Ray Tube) Tubo de raios catódicos
7 segmentos
14 segmentos
16 segmentos
Matriz 5 x 7 LED Dot Matrix 5 x 7 Displays de válvulas Nixie
Powered by Enderson Neves Cruz
111
Displays Tipos de Displays
Display VFD (Vacuum Fluorescent Display) Display Vácuo Fluorescente
ELD (Electroluminescent display) - Display eletroluminescente OLED - Organic light-emitting diode
Powered by Enderson Neves Cruz
112
Displays Tipos de Displays
http://www.thinkgeek.com/product/c498/
Electronic Rock Guitar Shirt - ThinkGeek
https://www.youtube.com/watch?v=V6JjY-AKPIY
Guitar Shirt Master Scores Big Time!!! - Zach LaDuke https://www.youtube.com/watch?v=w8e4T-TVARw
Powered by Enderson Neves Cruz
113
Displays Tipos de Displays LCD – Liquid Crystal Display
LCD Alfanuméricos
LCD Gráficos
HPA (High-Performance Addressing) Matriz passiva TFT (Thin-film transistor) Matriz ativa
Serial Active Matrix LCD TFT LCD 4.3" with Touchscreen - uLCD43
Powered by Enderson Neves Cruz
114
Circuitos Lógicos MSI Parte 2
Powered by Enderson Neves Cruz
Displays Displays de 7 segmentos O display de sete segmentos é um invólucro com sete leds com formato de segmento, posicionados de modo a possibilitar a formação de números decimais e algumas letras utilizadas no código hexadecimal. Alguns modelos incluem um oitavo led para o ponto decimal (dot point).
Nomenclatura de identificação dos segmentos
Contagem Hexadecimal
Powered by Enderson Neves Cruz
116
Displays Displays de 7 segmentos Cátodo comum e Ânodo comum
O display pode ser do tipo ânodo comum, ou seja os terminais ânodo de todos os segmentos estão interligados internamente e para o display funcionar, este terminal comum deverá ser ligado em Vcc, enquanto que o segmento para ligar precisa de estar ligados no GND.
Já o display cátodo comum, é o contrário, ou seja, o terminal comum, deverá ser ligado ao GND e para ligar o segmento é necessário aplicar Vcc ao terminal. Actualmente, o display mais comercializado é o do tipo ânodo comum.
Powered by Enderson Neves Cruz
117
Displays Displays de 7 segmentos Corrente e tensão de trabalho VR R
V
Resistores limitadores de corrente
iLED
𝑽 = 𝑽𝑹 + 𝑽𝑳𝑬𝑫 = 𝑹. 𝒊𝑳𝑬𝑫 + 𝑽𝑳𝑬𝑫
LED
𝑹=
VLED
𝑽 − 𝑽𝑳𝑬𝑫 𝒊𝑳𝑬𝑫
Como os segmentos são LEDs, então é necessário limitar a corrente utilizando uma resistência em cada segmento. A corrente utilizada, depende do brilho que queremos do display, normalmente utilizam-se resistências entre 220 e 560 ohms, para uma tensão de 5V, o que equivale a uma corrente entre 9mA a 20mA. Não deve-se usar valores de resistência muito baixos, pois pode-se reduzir a vida útil do display, inclusive provocando a queima do segmento. A tensão VLED depende da cor do LED.
Powered by Enderson Neves Cruz
118
Displays Displays de 7 segmentos Exibindo caracteres numéricos e alfanuméricos
Para exibir um caractere basta acionar os segmentos correspondentes
Powered by Enderson Neves Cruz
119
Displays Displays de 7 segmentos Exibindo caracteres numéricos e alfanuméricos Caractere exibido
Para exibir um caractere basta acionar os segmentos correspondentes
Segmentos do display a
b
c
d
e
f
g
0
1
1
1
1
1
1
0
1
0
1
1
0
0
0
0
2
1
1
0
1
1
0
1
3
1
1
1
1
0
0
1
4
0
1
1
0
0
1
1
5
1
0
1
1
0
1
1
6
1
0
1
1
1
1
1
7
1
1
1
0
0
0
0
8
1
1
1
1
1
1
1
9
1
1
1
1
0
1
1
A
1
1
1
0
1
1
1
B
0
0
1
1
1
1
1
C
1
0
0
1
1
1
0
D
0
1
1
1
1
0
1
E
1
0
0
1
1
1
1
F
1
0
0
0
1
1
1
O segmento d pode deligado
Powered by Enderson Neves Cruz
120
Displays Displays de 7 segmentos Exibindo caracteres numéricos e alfanuméricos
Para exibir um caractere basta acionar os segmentos correspondentes Ânodo comum
Cátodo comum
Powered by Enderson Neves Cruz
121
Circuitos Lógicos MSI Decodificadores Decodificador/driver para display de 7 segmentos
O decodificador recebe um código de 4 bits (BCD ou binário) e gerar as saídas que acionam os segmentos apropriados para mostrar o caractere no display de 7 segmentos.
Como ativam mais de uma saída para cada combinação de entrada, seguindo o padrão de saída para acionar os segmentos, são considerados exceções para a regra de circuitos decodificadores ativarem apenas uma saída para cada combinação de entrada.
a b
D
c C B
Decodificador Driver Binary/BCD para 7segmentos
d
e f
A g
Powered by Enderson Neves Cruz
122
Circuitos Lógicos MSI Decodificadores Decodificador/driver para display de 7 segmentos
Existem em alguns decodificadores para displays de 7 segmentos entradas de controle: RBI – Ripple-Blanking Input: entrada de supressão do zero. Quando o valor 0 é aplicado as entradas, os segmentos se apagam e não mostram o 0. LT – Lamp Test: usado para testar se todos os segmentos estão funcionando. Quando ativada todas as saídas de segmentos irão para o nível ativo, acendendo os LEDs e mostrando o número 8. BI – Blanking Input: Quando ativada (condição forçada) todas as saídas de segmentos irão para inativo, apagando os LEDs. a D C B A
b
Decodificador Driver Binary/BCD para 7segmentos
c d e f g
RBI
LT
BI
Powered by Enderson Neves Cruz
123
Circuitos Lógicos MSI Decodificadores Decodificador/driver para display de 7 segmentos
Decodificadores BCD para 7 segmentos normalmente são projetados para ativar segmentos específicos mesmo para códigos de entrada não BCD (códigos 1010 a 1111).
Códigos de entrada não BCD (Depende do fabricante)
Decodificadores Binário para 7 segmentos normalmente são projetados para ativar segmentos referentes as letras hexadecimal quando os códigos 1010 (A) a 1111(F) são aplicados as entradas.
Códigos de entrada HEXA
Powered by Enderson Neves Cruz
124
Circuitos Lógicos MSI Decodificadores Decodificador/driver Binário para display de 7 segmentos (Binary to 7-Segment Decoder) Caractere exibido
Para exibir um caractere basta acionar os segmentos correspondentes
Código BCD
Segmentos do display
D
C
B
A
a
b
c
d
e
f
g
0
0
0
0
0
1
1
1
1
1
1
0
1
0
0
0
1
0
1
1
0
0
0
0
2
0
0
1
0
1
1
0
1
1
0
1
3
0
0
1
1
1
1
1
1
0
0
1
4
0
1
0
0
0
1
1
0
0
1
1
5
0
1
0
1
1
0
1
1
0
1
1
6
0
1
1
0
1
0
1
1
1
1
1
7
0
1
1
1
1
1
1
0
0
0
0
8
1
0
0
0
1
1
1
1
1
1
1
9
1
0
0
1
1
1
1
1
0
1
1
A
1
0
1
0
1
1
1
0
1
1
1
b
1
0
1
1
0
0
1
1
1
1
1
C
1
1
0
0
1
0
0
1
1
1
0
d
1
1
0
1
0
1
1
1
1
0
1
E
1
1
1
0
1
0
0
1
1
1
1
F
1
1
1
1
1
0
0
0
1
1
1
Powered by Enderson Neves Cruz
125
Circuitos Lógicos MSI Decodificadores Decodificador/driver BCD para display de 7 segmentos (BCD to 7-Segment Decoder) Caractere exibido
Para exibir um caractere basta acionar os segmentos correspondentes
Código BCD
Segmentos do display
D
C
B
A
a
b
c
d
e
f
g
0
0
0
0
0
1
1
1
1
1
1
0
1
0
0
0
1
0
1
1
0
0
0
0
2
0
0
1
0
1
1
0
1
1
0
1
3
0
0
1
1
1
1
1
1
0
0
1
4
0
1
0
0
0
1
1
0
0
1
1
5
0
1
0
1
1
0
1
1
0
1
1
6
0
1
1
0
1
0
1
1
1
1
1
7
0
1
1
1
1
1
1
0
0
0
0
8
1
0
0
0
1
1
1
1
1
1
1
9
1
0
0
1
1
1
1
1
0
1
1
1
0
1
0
1
0
1
1
1
1
0
0
Depende do fabricante
1
1
0
1
1
1
1
0
Alguns optam por deixar os segmentos apagados.
1
1
1
1
Powered by Enderson Neves Cruz
126
Circuitos Lógicos MSI Decodificadores Decodificador/driver BCD para display de 7 segmentos
Powered by Enderson Neves Cruz
127
Circuitos Lógicos MSI Decodificadores Decodificador/driver BCD para display de 7 segmentos
Powered by Enderson Neves Cruz
128
Circuitos Lógicos MSI Decodificadores Decodificador/driver BCD para display de 7 segmentos Ânodo comum O decoder 7447 necessita de resistores limitadores externos
O decoder 7448 não necessita de resistores limitadores externos, pois já possuem resistores pull- up internos
Cátodo comum
Powered by Enderson Neves Cruz
129
Circuitos Lógicos MSI Decodificadores Decodificador/driver BCD para display de 7 segmentos
Teste de LEDs
• Quando BI/RBO está aberta ou em nível ALTO, e um nível BAIXO é aplicado a entrada de teste da LEDs (LT), todas as saídas de segmento irão para um nível BAIXO (7447) e ALTO(7448).
Supressão (apagamento) do zero • A entrada de supressão (apagamento) do zero RBI (rippleblanking input) deve estar aberta ou em nível ALTO quando o decimal 0 não é desejado. • Quando RBI e as entradas A, B, C, e D estão em nível BAIXO, com a entrada de teste da LEDs LT (Lamp test) em nível ALTO todos as saídas de segmentos vão para um nível elevado e a saída RBO vai para nível BAIXO (condição de resposta).
Powered by Enderson Neves Cruz
130
Circuitos Lógicos MSI Parte 3
Powered by Enderson Neves Cruz
Circuitos Lógicos MSI Codificadores Codificador (Encoders) É um circuito lógico que tem um certo número M de linhas de entrada, onde somente uma delas é ativada por vez, e que produz um código de saída de N bits, dependendo de qual entrada está ativada.
Faz o papel inverso do decodificador. Quando uma das diversas entradas é ativada é gerado um código na saída.
Codificador genérico
Powered by Enderson Neves Cruz
132
Circuitos Lógicos MSI Codificadores
Somente uma entrada pode ser ativada (nível BAIXO) por vez.
Powered by Enderson Neves Cruz
133
Circuitos Lógicos MSI Codificadores Codificador de prioridade
Powered by Enderson Neves Cruz
134
Circuitos Lógicos MSI Codificadores Codificador de prioridade
Powered by Enderson Neves Cruz
135
Circuitos Lógicos MSI Parte 4
Powered by Enderson Neves Cruz
Circuitos Lógicos MSI Multiplexadores Multiplexador digital (MUX) ou Seletor de dados É um circuito lógico que aceita diversos dados digitais de entrada e seleciona um deles para a saída em um certo instante. O roteamento do sinal de entrada desejado para a saída é controlado por entradas de seleção ou endereço.
Multiplexação é o processo de selecionar apenas uma das diversas entradas digitais e enviar esse dado para a saída.
O MUX atua como chave digital controlada de várias posições, onde o código digital aplicado as entradas de seleção controla qual entrada de dados será chaveada para a saída Z
Powered by Enderson Neves Cruz
137
Circuitos Lógicos MSI Multiplexadores MUX básico de 2 entradas I1
Basic Two-Input Multiplexer
Z
I0
S Entradas
Saída
S
I0
I1
Z
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
0
1
1
1
1
Powered by Enderson Neves Cruz
138
Circuitos Lógicos MSI Multiplexadores MUX de 4 entradas
I3 I2 I1
Four-Input Multiplexer
Z
I0 S1
S0
Powered by Enderson Neves Cruz
139
Circuitos Lógicos MSI Multiplexadores MUX de 4 entradas usando buffers tristate
I3 I2 I1
Four-Input Multiplexer
Z
I0 S1
S0
Powered by Enderson Neves Cruz
140
Circuitos Lógicos MSI Multiplexadores MUX de 8 entradas
Powered by Enderson Neves Cruz
141
Circuitos Lógicos MSI Multiplexadores Combinação de multiplexadores A combinação de dois MUX de 8 entradas (74HC151) permite formar um multiplexador de 16 entradas. A Entrada de habilitação e o inversor (Enable) permitem selecionar qual dos MUX estará enviando a entrada pra a a saída X através da porta OR
16-input MUX
Powered by Enderson Neves Cruz
142
Circuitos Lógicos MSI Multiplexadores MUX Quádruplo de 2 entradas
Powered by Enderson Neves Cruz
143
Circuitos Lógicos MSI Multiplexadores Aplicações – Conversor paralelo-serial Entradas paralelas
A saída do MUX será X0 durante o período do primeiro pulso de clock, X1 durante o segundo pulso de clock, e assim por diante.
Saída serial
Forma de onda para quando X7X6X5X4X3X2X1X0 = 10110101
O contador é usado para fornecer os bits do código de seleção conforme os pulsos de clock
Powered by Enderson Neves Cruz
144
Circuitos Lógicos MSI Multiplexadores Aplicações – Geração de funções lógicas
Não a como simplificar esta equação. Pode ser implementada usando 3 inversores e quatro portas NAND.
Variáveis lógicas de entrada
Powered by Enderson Neves Cruz
145
Circuitos Lógicos MSI Multiplexadores Aplicações – Roteamento de dados
Sistema para mostrar o valor de dois contadores BCD, um de cada vez
Powered by Enderson Neves Cruz
146
Circuitos Lógicos MSI Multiplexadores Aplicações – Sequenciamento de operações
Powered by Enderson Neves Cruz
147
Circuitos Lógicos MSI Parte 5
Powered by Enderson Neves Cruz
Circuitos Lógicos MSI Demultiplexadores Demultiplexador digital (DEMUX) ou Distribuidores de dados É um circuito lógico que recebe uma fonte de dados e seletivamente a distribui por uma entre N canais de saída, operando de forma inversa ao multiplexador. A entrada de dados é transmitida apenas para uma das saídas, conforme determinado pelo código da entrada de seleção.
O DEMUX também atua como chave digital controlada de várias posições, onde o código digital aplicado as entradas de seleção controla para qual saída O a entrada de dados será chaveada.
Powered by Enderson Neves Cruz
149
Circuitos Lógicos MSI Demultiplexadores DEMUX de 1 linha para 8 linhas
I
1-Line-to-8-Line Demultiplexer
S2
S1
O7 O6 O5 O4 O3 O2 O1 O0
S0
Powered by Enderson Neves Cruz
150
Circuitos Lógicos MSI Demultiplexadores Usando um decodificador como DEMUX
I
1-Line-to-8-Line Demultiplexer
Data input
S2
S1
O7 O6 O5 O4 O3 O2 O1 O0
O0
O1
A B
O2
Decoder 3x8
O3 O4 O5
C
O6 O7
S0
Select code
Observar que a diferença principal é a existência da quarta entrada I (Data input).
Powered by Enderson Neves Cruz
151
Circuitos Lógicos MSI Demultiplexadores Usando um decodificador como DEMUX
Observar que a diferença principal é a existência da quarta entrada I (Data input).
Powered by Enderson Neves Cruz
152
Circuitos Lógicos MSI Demultiplexadores Usando um decodificador como DEMUX
I
1-Line-to-8-Line Demultiplexer
Data input
S2
S1
O7 O6 O5 O4 O3 O2 O1 O0
S0
Select code
Fabricantes de CIs chamam este dispositivo de decodificador/demultiplexador (decoder/demux)
Powered by Enderson Neves Cruz
153
Circuitos Lógicos MSI Demultiplexadores Aplicações – Sistema de monitoração de segurança
• 8 Portas devem ser monitoradas. • Em cada porta está instalado um sensor (chave) que indica o estado da porta aberta ou fechada.
.
• A indicação do estado da porta deve ser indicada através de através de um painel de monitoração contendo LEDs individuais para cada porta: Porta aberta LED acesso
. . Porta 0
.
MUX
DEMUX
.
Porta fechada LED apagado
. • Uma solução seria levar o sinal do sensor (chave) de cada porta para um LED no painel, porém exigiria a instalação de muitos fios a uma distância considerável.
Painel de monitoração
Contador MOD 8 Porta 7
Powered by Enderson Neves Cruz
154
Circuitos Lógicos MSI Demultiplexadores Aplicações – Sistema de monitoração de segurança
• 8 Portas devem ser monitoradas. • Em cada porta está instalado um sensor (chave) que indica o estado da porta aberta ou fechada.
Sinais das Portas 1-5
• A indicação do estado da porta deve ser indicada através de através de um painel de monitoração contendo LEDs individuais para cada porta: Porta aberta LED acesso Porta fechada LED apagado
Porta 0
• Uma solução seria levar o sinal do sensor (chave) de cada porta para um LED no painel, porém exigiria a instalação de muitos fios a uma distância considerável.
Painel de monitoração
Porta 6
Porta 7
Powered by Enderson Neves Cruz
155
Circuitos Lógicos MSI Comparador de magnitude Comparador de magnitude (Magnitude Comparator) É um circuito lógico que compara duas quantidades binárias de entrada e gera saídas pra indicar qual delas tem maior magnitude.
Entradas de dados
Entradas de cascateamento
4 bits Magnitude Comparator
Saídas
Powered by Enderson Neves Cruz
156
Circuitos Lógicos MSI Comparador de magnitude Comparador de magnitude de 4 bits Entradas de dados
Entradas de cascateamento
4 bits Magnitude Comparator
Forma de conectar as entradas de cascateamento na operação com bits
Saídas Entradas de Comparação
Entradas de Cascateamento
Saídas
Powered by Enderson Neves Cruz
157
Circuitos Lógicos MSI Comparador de magnitude Comparador de magnitude de 8 bits – Cascateamento
Bits de mais baixa ordem
Bits de mais alta ordem
Resultado da comparação de 8 bits
Powered by Enderson Neves Cruz
158
Circuitos Lógicos MSI Comparador de magnitude Aplicação – Termostato digital 8 bits Magnitude Comparator
Controlador do aquecedor
Powered by Enderson Neves Cruz
159
Aritmética Digital Parte 1
Powered by Enderson Neves Cruz
Aritmética Digital Introdução
Uma máquina digital (computadores e calculadoras) manipula e armazena dados na forma binária.
Dessa forma, as operações aritméticas também serão realizadas sobre os números na forma binária.
A aritmética digital pode ser muito complexa se desejarmos entender os diversos métodos de computação e a teoria envolvida.
Entretanto, esse nível de conhecimento não é necessário à maioria dos técnicos.
Adota-se então uma abordagem de se concentrar nos princípios básicos necessários para entender como as máquinas digitais realizam as operações aritméticas básicas.
A aritmética digital não é muito diferente da aritmética tradicional (base 10).
As operações de adição, subtração, multiplicação e divisão são praticamente as mesmas, a não ser pelo número de algarismos usados nessas operações, limitados a 2.
Powered by Enderson Neves Cruz
161
Aritmética Digital Adição Binária
A adição de dois números binários é realizada exatamente da mesma forma que a adição de números decimais.
A adição é feita a partir do algarismo menos significativo (LSD – Least Significant Digit).
Quando a adição resulta em um valor maior que 9 ocorre um Carry (vai um) para a próxima posição. Carry LSD – Least Significant Digit
0
+
0
=
0
0
+
1
=
1
1
+
0
=
1
1
+
1
=
0
+ Carry 1 para próxima posição
Os mesmos passos são seguidos em uma adição binária. Entretanto, temos um número menor de casos que podem ocorrer na soma de dois dígitos binários (bits) em qualquer posição.
Powered by Enderson Neves Cruz
162
Aritmética Digital Adição Binária
Quando há um carry em uma determinada posição, este é considerado na operação.
Carry
1
+
0
+
0
=
0
1
+
0
+
1
=
1
+ Carry 1 para próxima posição
1
+
1
+
0
=
1
+ Carry 1 para próxima posição
1
+
1
+
1
=
0
+ Carry 1 para próxima posição
Não é necessário considerar a adição de mais de dois números binários de uma vez porque em todos os sistemas digitais o circuito que realiza a adição pode efetuar uma operação apenas com dois números de cada vez.
Quando mais de dois números devem ser somados os dois primeiros são somados e o resultado é somado com o terceiro número, e assim por diante.
A adição é a operação aritmética mais importante nos sistemas digitais. As operações de subtração, multiplicação e divisão, do modo como são realizadas na maioria dos computadores modernos e calculadoras, usam apenas a adição em suas operações básicas.
Powered by Enderson Neves Cruz
163
Aritmética Digital Subtração Binária
Assim como adição, a subtração de dois números binários é realizada exatamente da mesma forma que a adição de números decimais.
A subtração é feita a partir do algarismo menos significativo (LSD – Least Significant Digit).
Quando a subtração resulta em um valor menor que 0 ocorre um Borrow (empréstimo de um) da próxima posição.
0
-
0
=
0
0
-
1
=
1
1
-
0
=
1
1
-
1
=
0
+ Borrow 1 da próxima posição
Borrow LSD – Least Significant Digit
1
1
1
1
1
0
0
1
-
25
Minuendo
0
1
0
1
1
11
Subtraendo
0
1
1
1
0
14
Diferença
Powered by Enderson Neves Cruz
164
Aritmética Digital Representação de Números com Sinal
Nos computadores digitais, os números binários são representados por um conjunto de dispositivos de armazenamento binário (normalmente, registradores que utilizam flip-flops).
Magnitude do número é a faixa de representação dos números binários. •
Por exemplo, um registrador de seis bits pode armazenar números binários na faixa de 000000 a 111111 (de 0 a 63 em decimal).
Bit de sinal Mas como representar números negativos?
Bit que representa o sinal positivo ou negativo no número binário.
0 no bit de sinal = sinal positivo 1 no bit de sinal = sinal negativo Formas de representação de um número com sinal • Sinal-Magnitude • Complemento a 1 • Complemento a 2
Powered by Enderson Neves Cruz
165
Aritmética Digital Representação de Números com Sinal Sistema sinal-magnitude (sign-magnitude system)
Sistema sinal-magnitude Bit de sinal + Bits de magnitude
O bit 6 é chamado bit de sinal, ou seja, ele determina qual o sinal do número. Esse número possui magnitude de 6 bits mais um bit de sinal.
Embora no sistema sinal-magnitude o sinal e a magnitude do número são representados explicitamente (representação direta), os sistemas digitais (computadores, calculadoras, etc.) normalmente não o utilizam porque a implementação do circuito é mais complexa do que em outros sistemas.
O sistema mais usado para representar números binários com sinal é o sistema de complemento de 2. Powered by Enderson Neves Cruz
166
Aritmética Digital Representação de Números com Sinal Forma do Complemento a 1 (1’s-Complement Form)
Forma do Complemento a 1 Substituir cada bit do número binário pelo seu complemento, ou seja, onde for 0, colocar 1 e, onde for 1 colocar 0.
1
0
1
1
0
1
Número binário original
0
1
0
0
1
0
Complemento de 1
Dizemos que o complemento de 1 de 101101 é 010010.
Powered by Enderson Neves Cruz
167
Aritmética Digital Representação de Números com Sinal Forma do Complemento a 2 (2’s-Complement Form)
Forma do Complemento a 2 O complemento de 2 de um número binário é obtido tomando-se o complemento de 1 do número e somando 1 ao LSB.
1
0
1
1
0
1
Número binário original
0
1
0
0
1
0
Complemento de 1
1
Somar 1 ao LSB
1
Complemento de 2
0
1
0
0
1
Dizemos que o complemento de 2 de 101101 é 010011.
Powered by Enderson Neves Cruz
168
Aritmética Digital Representação de Números com Sinal Representação de números com sinal no complemento a 2
O sistema mais usado para representar números binários com sinal é o sistema de complemento de 2. Números positivos
Números negativos
Se o número for positivo, a magnitude é representada na forma binária direta, e um bit de sinal 0 (zero) é colocado em frente ao bit mais significativo.
Se o número for negativo, a magnitude é representada na sua forma do complemento de 2, e um bit de sinal 1 é colocado em frente ao MSB.
0
1
0
1
1
0
1 = +4510
1
0
Forma binária direta Bit de sinal (+)
1
0
0
1
1 = -4510
Forma complemento de 2 Bit de sinal (-)
O sistema de complemento de 2 é usado para representar números com sinal porque permite realizar a operação de subtração efetuando, na verdade, uma operação de adição.
Isso é importante porque um computador digital pode usar o mesmo circuito tanto na adição quanto na subtração, desse modo poupando hardware.
Powered by Enderson Neves Cruz
169
Aritmética Digital Representação de Números com Sinal Representação de números com sinal no complemento a 2 – Extensão de Sinal Números positivos Se o número tiver sinal positivo: basta acrescentar 0’s (zeros) à esquerda.
E se precisarmos armazenar um número de 5bits em um registrador de tamanho 8 bits, incluindo o bit de sinal?
Números negativos Se o número tiver sinal negativo: basta acrescentar 1’s (uns) à esquerda.
Powered by Enderson Neves Cruz
170
Aritmética Digital Representação de Números com Sinal Representação de números com sinal no complemento a 2 – Negação
Negação é a operação de conversão de um número positivo em seu equivalente negativo ou a conversão de um número negativo em seu equivalente positivo. Nega-se um número binário com sinal obtendo-se o seu complemento a 2
0
0
1
0
0
1
Número binário original = +9
1
1
0
1
1
1
Negar → Complemento de 2 = -9
0
0
1
0
0
1
Negar novamente → Complemento de 2 = +9
Magnitude 5 bits Bit de sinal
Qual a magnitude e o bit de sinal deste número binário?
Powered by Enderson Neves Cruz
171
Aritmética Digital Representação de Números com Sinal Caso especial na representação do complemento a 2
Sempre que um número com sinal tiver 1 no bit de sinal e todos os bits de magnitude forem 0, seu equivalente decimal será -2N, em que N é o número de bits da magnitude. O complemento de 2 destes números é o próprio número.
1000 = -23 = -8 10000 = -24 = -16
100000 = -25 = -32
Pode-se dizer que a faixa completa de valores que pode ser representada no sistema de complemento de 2 com N bits de magnitude é dada por:
-2N
a
+(2N
- 1)
Qual a faixa de valores pode ser representada por um byte?
Existe um total de 2N+1 diferentes valores, incluindo o zero.
Powered by Enderson Neves Cruz
172
Aritmética Digital Parte 2
Powered by Enderson Neves Cruz
Aritmética Digital Adição e Subtração no sistema de complemento a 2 Adição no sistema de complemento a 2
Somar dois números positivos
+910 → 0 1 0 0 1
É necessário que as parcelas (operandos) tenham a mesma quantidade de bits.
+410 → 0 0 1 0 0
O bit de sinal, tanto dos operandos, quanto do resultado são iguais a 0, indicando tratar-se de um número positivo.
+1310 → 0 1 1 0 1 Soma = +13 Bit de sinal
Somar um número positivo com um número negativo menor (Subtração) É necessário que as parcelas (operandos) tenham a mesma quantidade de bits.
+910 → 0 1 0 0 1 -410 → 1 1 1 0 0 1 0 0 1 0 1
O número negativo em complemento de 2.
O carry é sempre descartado, não sendo considerado.
Soma = +5 Bit de sinal
Powered by Enderson Neves Cruz
174
Aritmética Digital Adição e Subtração no sistema de complemento a 2 Adição no sistema de complemento a 2
Somar um número positivo com um número negativo maior É necessário que as parcelas (operandos) tenham a mesma quantidade de bits.
-910 → 1 0 1 1 1
+410 → 0 0 1 0 0 -510 → 1 1 0 1 1
O número negativo representado em complemento de 2. O resultado representado em complemento de 2.
Soma = -5 Bit de sinal
Somar dois números negativos
-910 → 1 0 1 1 1
É necessário que as parcelas (operandos) tenham a mesma quantidade de bits.
-410 → 1 1 1 0 0
Os operandos e o resultado representados em complemento de 2, indicando tratar-se de números negativos.
O carry é sempre descartado, não sendo considerado.
1 1 0 0 1 1 Soma = -13 Bit de sinal
Powered by Enderson Neves Cruz
175
Aritmética Digital Adição e Subtração no sistema de complemento a 2 Adição no sistema de complemento a 2
Números iguais com sinais opostos
+410 → 0 0 1 0 0
É necessário que as parcelas (operandos) tenham a mesma quantidade de bits (magnitude).
-410 → 1 1 1 0 0
O número negativo representado em complemento de 2.
1 0 0 0 0 0
O resultado é 0. O carry é sempre descartado, não sendo considerado.
Soma = 0 Bit de sinal
Powered by Enderson Neves Cruz
176
Aritmética Digital Adição e Subtração no sistema de complemento a 2 Subtração no sistema de complemento a 2
Qualquer operação de subtração em complemento de 2 torna-se uma operação de adição. Para subtrair um número binário (subtraendo) de outro (minuendo) 1. Faça a operação de negação do subtraendo (complemento de 2). 2. Adicione esse número obtido ao minuendo.
Exemplo: Subtrair 9 - 4
-
1
+410 → 0 0 1 0 0
910 → 0 1 0 0 1
-410 → 1 1 1 0 0
410 → 0 0 1 0 0 2 Bit de sinal
Faça a operação de negação do subtraendo.
Complemento de 2
Adicione esse número obtido ao minuendo.
+910 → 0 1 0 0 1 -410 → 1 1 1 0 0 1 0 0 1 0 1
Soma = +5
Powered by Enderson Neves Cruz
177
Aritmética Digital Overflow Aritmético Overflow Aritmético Condição que ocorre quando um cálculo produz um resultado maior em magnitude que o local de armazenamento pode armazenar ou representar. Isto é, quando uma operação de adição ou subtração excede a magnitude que pode ser representada com o número de bits atribuído. O bit de sinal fica incorreto e a magnitude do número é menor do que o número de resultado (quantidade de bits insuficiente para representar o número) apresentando um resultado INCORRETO.
+910 → 0 1 0 0 1 +810 → 0 1 0 0 0 +1710 ≠ 1 0 0 0 1 Magnitude incorreta
• Ocorre apenas quando dois números positivos ou dois números negativos são somados. • O overflow pode ser detectado verificando se o BIT DE SINAL do resultado tem o mesmo valor dos BITS DE SINAL dos números que estão sendo somados
• Um circuito particular faz essa detecção enviando um sinal para a unidade de controle de que o resultado realizado pela unidade aritmética está errado.
Bit de sinal incorreto
Powered by Enderson Neves Cruz
178
Aritmética Digital Multiplicação de números binários Multiplicação binária
Segue o mesmo processo da multiplicação de números decimais. A maioria das máquinas digitais pode SOMAR apenas DOIS números binários de cada vez. Por isso, os produtos parciais obtidos durante a multiplicação NÃO podem ser somados ao mesmo tempo, portanto, são somados 2 de cada vez.
Powered by Enderson Neves Cruz
179
Aritmética Digital Multiplicação de números binários Multiplicação no sistema de complemento de 2
Multiplicando e Multiplicador positivos Fazer a multiplicação como descrito anteriormente. O resultado deve ser POSITIVO, portanto, bit de sinal igual a zero.
Multiplicando e Multiplicador negativos Deverão estar na forma de complemento a 2, portanto, primeiro, antes da multiplicação, encontrar o complemento a 2 dos números e somente depois, multiplicar.
Powered by Enderson Neves Cruz
180
Aritmética Digital Multiplicação de números binários Multiplicação no sistema de complemento de 2
Um número positivo e outro negativo Converter o número negativo em um número positivo usando a técnica do complemento a 2. O produto resultante deve ser negativo por conta dos sinais diferentes, então, o resultado deve ser convertido pelo complemento a 2, de modo que o bit de sinal seja 1.
Powered by Enderson Neves Cruz
181
Aritmética Digital Divisão de números binários Divisão binária
O processo é o mesmo usado na divisão de números decimais.
Os termos de uma divisão são o dividendo, o divisor e o quociente.
A operação de divisão nas máquinas digitais é realizada usando subtrações. Como subtrações são feitas com um somador, a divisão também pode ser realizada com um somador.
O resultado de uma divisão é o quociente. O quociente é o número de vezes que o divisor “cabe dentro” do dividendo. Isto significa que o divisor pode ser subtraído a partir do dividendo um número de vezes igual ao quociente.
Powered by Enderson Neves Cruz
182
Aritmética Digital Divisão de números binários Divisão binária
Passos básicos no processo de divisão binária 1. Determine se os sinais do dividendo e do divisor são iguais ou diferentes. Isso determinará o sinal do quociente. Inicialize o quociente com zero;
2. Subtraia o divisor a partir do dividendo usando a adição do complemento de 2 para obter o primeiro resto parcial e somar “1” ao quociente. Se esse resto parcial for positivo, vá para o passo 3. Caso o resto parcial seja zero ou negativo, a divisão está completa. 3. Subtraia o divisor a partir do dividendo e some “1” ao quociente.
Se o resultado for zero ou negativo, a divisão está completa. 4. Continue o divisão a partir do dividendo e os restos parciais até obter um resultado zero ou negativo. Conte o número de vezes que o divisor é subtraído e você terá o quociente.
Powered by Enderson Neves Cruz
183
Aritmética Digital Parte 3
Powered by Enderson Neves Cruz
Aritmética Digital Circuitos Aritméticos Circuitos Aritméticos Circuitos combinacionais que realizam operações aritméticas com números binários.
Utilizados na ULA (Unidade Lógica Aritmética) dos microprocessadores, microcontroladores e em calculadoras.
Circuitos aritméticos principais:
Somador •
Meio Somador
•
Somador Completo
Subtrator
ULA
Powered by Enderson Neves Cruz
185
Aritmética Digital Unidade Lógica Aritmética Operandos
ULA – Unidade Lógica e Aritmética ALU - Arithmetic Logic Unit É o dispositivo existente na CPU dos computadores e calculadoras que realiza as operações matemáticas com os dados, podendo ser: Soma
Subtração
Multiplicação
Divisão
AND
OR
NOT (complemento)
XOR
Deslocamento a direita
Deslocamento a esquerda
Decremento
Incremento
Comparação
Teste de bits
Estas operações podem utilizar dois valores, por isso a existência de duas entradas, ou apenas um valor.
Sinal de controle
Status
Resultado
Unidade Lógica Aritmética Acumulador
Unidade de Memória
Circuitos lógicos
Unidade de controle
Registrador B
Powered by Enderson Neves Cruz
186
Aritmética Digital Unidade Lógica Aritmética Sequência típica de execução de uma operação em um computador
Unidade Lógica Aritmética Acumulador
Unidade de Memória
Circuitos lógicos
Unidade de controle
Registrador B
1. A unidade de controle recebe uma instrução (da unida-de de memória) especificando que um número armazenado em uma posição particular de memória (endereço) deve ser adicionado ao número que está atualmente armazenado no acumulador. 2. O número a ser adicionado é transferido da memória para o registrador B. 3. O número no registrador B e o número no acumulador são somados usando os circuitos lógicos (ao comando da unidade de controle). O resultado é então enviado ao acumulador para ser armazenado.
A lógica combinacional (Circuitos lógicos) realiza as operações lógicas e aritméticas sobre os números binários que estão armazenados no Registrador B e no Acumulador.
4. O novo número no acumulador pode permanecer no acumulador para que um outro número possa ser somado a ele, ou, se o processo aritmético em particular está terminado, ele pode ser transferido para a memória.
Powered by Enderson Neves Cruz
187
Aritmética Digital Unidade Lógica Aritmética Funcionamento geral
• O diagrama abaixo mostra um circuito com capacidade de realizar operações lógicas e aritméticas entre dois valores, armazenados nos registradores A e B.
• Os registradores A, B e de resultado possuem o mesmo tamanho.
Somador Registrador de Resultado
Vai um
Subtrator
Registrador A Multiplicador Divisor
Deu zero
Comparador
Valor negativo
AND
Registrador B Estouro
OR
Unidade de controle envia os sinais para selecionar qual operação será realizada
Powered by Enderson Neves Cruz
188
Aritmética Digital Unidade Lógica Aritmética Funcionamento geral
O resultado da operação é uma combinação do valor armazenado no Acumulador e dos bits sinalizadores (flags) do registrador de status
Acumulador
ALU Unidade
Carry
Vai um
Zero
Deu zero
Sinal
Valor negativo
Overflow
Estouro
Lógica e Aritmética
Registrador A
Registradores de uso geral Registrador B
Registrador de Status Unidade de controle envia os sinais para selecionar qual operação será realizada
Powered by Enderson Neves Cruz
189
Aritmética Digital Meio Somador Meio Somador (Half Adder) Circuito que posibilita a soma de 2 números binários de 1 bit . Possui 2 bits de entrada (operandos) e 2 bits de saída (resultado da soma e o carry).
Tabela verdade A Half Adder HA
B
S COUT
Operandos
Resultado Soma
Carry
A
B
S
COUT
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
𝑺 = 𝑨⨁B 𝑪𝑶𝑼𝑻 = 𝑨 ∙B
Powered by Enderson Neves Cruz
190
Aritmética Digital Somador Completo Somador Completo (Full Adder) Circuito que posibilita a soma de 2 números binários de 1 bit mais o transporte (carry) anterior. Possui 2 bits de entrada (2 operandos e o carry anterior) e 2 bits de saída (resultado da soma e o carry). Tabela verdade Operandos
A Full Adder FA
B
CIN
S
COUT
Carry Anterior
Soma
Carry Saída
A
B
CIN
S
COUT
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
1
Powered by Enderson Neves Cruz
191
Aritmética Digital Somador Completo A
S
Full Adder FA
COUT
B
CIN Tabela verdade Operandos
Carry Anterior
Soma
Carry Saída
A
B
CIN
S
COUT
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
1
Powered by Enderson Neves Cruz
192
Aritmética Digital Somador Completo A
S
Full Adder FA
COUT
B
CIN Tabela verdade Operandos
Carry Anterior
Soma
Carry Saída
A
B
CIN
S
COUT
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
1
Powered by Enderson Neves Cruz
193
Aritmética Digital Somador Paralelo Somador Paralelo Circuito que possibilita a soma de 2 números binários de n bits mais o transporte (carry) anterior. Possui n bits de entrada para cada operando e o carry anterior e n bits de saída (resultado da soma) e o carry. É chamado de somador paralelo porque todos os bits das parcelas (operandos) estão presentes e são apresentados aos circuitos somadores completos (full adders) simultaneamente.
BN B3
• • •
B2
• • •
B1 B0 Parallel Adder AN A3
• • •
SN S3 S2
S1 S0
A2
A1
COUT
A0
A adição em paralelo é relativamente rápida, pois soma os bits de cada posição simultaneamente.
CIN
Powered by Enderson Neves Cruz
,
194
Aritmética Digital Somador Paralelo Somador paralelo de 5 bits – Exemplo
B4
B3 B2
S4
B1 B0
A4
S3 Parallel Adder 5 bits
1ª Parcela Augend
1
0
1
0
1
Armazenado no Registrador A Acumulador
2ª Parcela Addend
0
0
1
1
1
Armazenado no Registrador B
S2 S1 S0
+
A3 A2
A1 A0
Soma
COUT Carry
CIN
Powered by Enderson Neves Cruz
195
Aritmética Digital Somador Paralelo Somador paralelo de 5 bits – Exemplo
B4
B3 B2
S4
B1 B0
A4
S3 Parallel Adder 5 bits
S2 S1 S0
A3 A2
A1
COUT
A0
CIN
Powered by Enderson Neves Cruz
196
Aritmética Digital Somador Paralelo Somador paralelo com registradores Sequência de operação 1. Pulso na entrada CLEAR apaga o valor armazenado no registrador A [A] = 0000 2. O primeiro operando é transferido da memória [M] para o registrador B na borda de subida do pulso LOAD. [M] → [B] 3.
Os somadores produzem o resultado da soma [A] + [B]. Como o valor de [A] = 0000, o resultado será [S] = [B]. Na borda de subida do pulso TRANSFER o valor será armazenado no registrador [A] [S] = [B] + [A] = [B] → [A]
4. O segundo operando é transferido da memória [M] para o registrador B na borda de subida do pulso LOAD. [M] → [B] 5.
Os somadores produzem o resultado da soma [A] + [B]. Na borda de subida do pulso TRANSFER o valor será armazenado no registrador [A] [S] = [B] + [A] → [A]
6. O resultado da soma está no registrador A (Acumulador) e normalmente é transferido para a memória de forma a permitir que o somador seja usado em uma nova operação [A] → [M]
Powered by Enderson Neves Cruz
197
Aritmética Digital Somador Paralelo Somador paralelo com registradores
Exemplos Somar 7 + 5 1. CLEAR [A] = 0000 2. LOAD [M] → [B] [0111] → [B] logo [B] = 0111 3. [S] = [B] + [A] = [B] → TRANSFER [A] [S] = [0111] + [0000] = [0111] → [A] = 0111 4. LOAD [M] → [B] [0101] → [B] logo [B] = 0101 5. [S] = [B] + [A] = [B] →TRANSFER [A] [S] = [0101] + [0111] = [1100] → [A] = 1100 6. [A] → [M]
Como seria somar 3 + 2 + 5?
Powered by Enderson Neves Cruz
198
Aritmética Digital Somador Paralelo Propagação do Carry
A adição em paralelo é relativamente rápida, pois soma os bits de cada posição simultaneamente.
Efeito propagação do carry O bit gerado na última posição (MSB) depende do carry que foi gerado na primeira posição (LSB). Quanto maior o número de bits maior o atraso devido a propagação do carry.
Exemplo Somador de 4 bits com atraso de propagação de carry de 40ns em cada somador completo (FA). O pulso que comanda a soma somente poderia ser aplicado após 160ns. Se o somador fosse de 32 bits, 0 pulso que comanda a soma somente poderia ser aplicado após 1280ns ou 1,28μs.
O atraso devido a propagação do carry é proibitivo nos computadores de alta velocidade atuais. Diversos circuitos lógicos foram desenvolvidos para reduzir este atraso, como por exemplo o carry antecipado, que utiliza portas lógicas para observar os bits de mais baixa ordem para ver se um bit de mais alta ordem deve ser gerado.
Powered by Enderson Neves Cruz
199
Aritmética Digital Somador Paralelo Somador paralelo – Circuitos integrados
Powered by Enderson Neves Cruz
200
Aritmética Digital Somador Paralelo Somador paralelo – Circuitos integrados
Powered by Enderson Neves Cruz
201
Aritmética Digital Parte 4
Powered by Enderson Neves Cruz
Aritmética Digital Sistema de Complemento a 2 • A maioria dos computadores modernos utiliza o sistema de complemento a 2 para representar números negativos e realizar a subtração.
• Neste caso, as operações de adição e subtração, de números com sinal, podem ser realizadas utilizando apenas a operação de adição. Exemplo: Subtraindo -3 de +6.
Do Registrador A
Representação de -3 em complemento de 2 (Augend)
Pelo método do complemento de 2 o carry C4 deve ser desprezado
+6 (Addend) +3 Resultado da soma Do Registrador B
Powered by Enderson Neves Cruz
203
Aritmética Digital Sistema de Complemento a 2 Subtração
• Usando o método complemento a 2, o subtraendo (número a ser subtraído) é substituído pelo seu complemento a 2 (complemento do número + 1) e depois é somado ao minuendo. Do Registrador A Minuendo
Subtraindo 4 de 9 usando complemento de 2 Minuendo Subtraendo
O carry C4 deve ser desprezado
O carry deve ser desprezado
Saídas invertidas do Registrador B Resultado da soma Representa a saída DIFERENÇA Os bits do Registrador B são invertidos e somados e C0 =1 para produzir o complemento a 2 (Subtraendo).
Powered by Enderson Neves Cruz
204
Aritmética Digital Sistema de Complemento a 2 Subtração
• Usando o método complemento a 2, o subtraendo (número a ser subtraído) é substituído pelo seu complemento a 2 (complemento do número + 1) e depois é somado ao minuendo.
Subtraindo 4 de 9 usando complemento de 2 Minuendo Subtraendo
1
0
0
1
1
0
1
1
O carry C4 deve ser desprezado 1
O carry deve ser desprezado
0
1
1
0
1
0
1
0
Powered by Enderson Neves Cruz
205
Aritmética Digital Sistema de Complemento a 2 Adição e Subtração combinados
Somador/subtrador Sinais ADD e SUB controlam a operação do somador/subtrador: •
ADD = 1 e SUB = 0 → Adição Saídas normais do Registrador B C0 = 0
•
ADD = 0 e SUB = 1 → Subtração Saídas invertidas do Registrador B C0 = 1
Powered by Enderson Neves Cruz
206
Aritmética Digital Unidade Lógica Aritmética Circuito integrados
Existem vários CIs disponíveis no mercado denominados Unidades Lógicas e Aritméticas (Arithmetic/Logic Units – ALUs), mas não possuem toda a capacidade de uma ALU de um computador.
São capazes de realizar muitas operações lógicas e aritméticas diferentes sobre os dados binários de entrada.
A operação específica realizada pela ALU é determinada por um código binário específico colocado nas entradas de seleção de funções. Somador Registrador de Resultado
Vai um
Subtrator Registrador A
Multiplicador Divisor
Deu zero
Comparador
Valor negativo
AND
Registrador B Estouro
OR
Selecão da operação a ser realizada
Powered by Enderson Neves Cruz
207
Aritmética Digital Unidade Lógica Aritmética Circuito integrados
Powered by Enderson Neves Cruz
208
Aritmética Digital Unidade Lógica Aritmética Circuito integrados
Powered by Enderson Neves Cruz
209
Aritmética Digital Unidade Lógica Aritmética Circuito integrados – Expandindo a ALU
Powered by Enderson Neves Cruz
210
Aritmética Digital Unidade Lógica Aritmética Circuito integrados
Powered by Enderson Neves Cruz
211
Conversor A/D Material complementar
Powered by Enderson Neves Cruz
Eletrônica Analógica x Digital Sinais analógicos Um sinal analógico é contínuo no tempo e nos valores.
tempo
Quantidades analógicas podem variar em um determinado intervalo de valores.
Sinais Digitais Um sinal digital é discreto no tempo e nos valores.
tempo
Quantidades digitais podem assumir apenas valores discretos (passo a passo).
Podem assumir qualquer valor ao longo de uma faixa contínua.
Powered by Enderson Neves Cruz
213
Eletrônica Analógica x Digital Sinais analógicos
Sinais Digitais
A leitura é geralmente sujeita a interpretação.
Devido a representação através de dígitos (digital) não existe ambiguidade na leitura.
O mundo é de natureza analógica A maioria das grandezas físicas (temperatura, pressão, luminosidade, velocidade, etc.) é de natureza analógica.
Powered by Enderson Neves Cruz
214
Eletrônica Analógica x Digital Sistemas analógicos
Sistemas Digitais
São sistemas que manipulam quantidade físicas do mundo real, tais como: peso, massa, som, temperatura, luminosidade, etc. As grandezas elétricas (corrente, tensão, resistência, etc.) tem um comportamento análogo a grandeza física que representam.
Combinação de dispositivos projetados para manipular informação lógica ou quantidades físicas que são representadas no formato digital. Representados normalmente por sinais lógicos 0 ou 1, ou BAIXO e ALTO.
Transistor operando como amplificador
Transistor operando como chave
Powered by Enderson Neves Cruz
215
Eletrônica Analógica x Digital Vantagens e limitações das técnicas digitais Desvantagens
Vantagens •
Facilidade de projetar;
•
O mundo é quase totalmente de natureza analógica.
•
Facilidade de armazenar informações;
•
•
Extensa programabilidade (o sistema é programável) ;
Todo circuito digital que lida com variáveis físicas de natureza analógica necessita DIGITALIZAR o sinal, ou seja:
•
Maior exatidão e precisão.
•
Maior grau de integração;
•
São menos afetados por ruídos (por exemplo, os circuitos digitais não dependem do valor exato da tensão elétrica recebida, e sim da diferença entre os níveis Alto e Baixo).
•
Converter a informação para o meio digital
•
Processar esta informação digitalmente
•
E posteriormente fazer o fluxo inverso, converte da natureza digital para a analógica
Sendo este processo, em alguns casos, não benéfico.
Powered by Enderson Neves Cruz
216
Eletrônica Analógica x Digital “O mundo é digital…” Analógico perde terreno: • Computação • Instrumentação
• Sistemas de controle • Telecomunicação • Eletrônica de consumo
• Amplificadores de sinais muito fracos
“…analógico, continua vivo.”
• Sensores • Conversores A/D e D/A • Comunicação RF • Amplificadores de alta freqüência • Sistemas digitais estão ficando rápidos, aumentando a densidade dos circuitos: Fenômenos “analógicos” estão se tornando importantes em sistemas digitais
Fonte: Eletrônica Digital, Prof. Fabiano Fruett UNICAMP , 2007
Powered by Enderson Neves Cruz
217
Conversor Analógico/Digital Introdução Conversor A/D •
Um conversor A/D recebe uma tensão analógica de entrada e depois de um certo tempo produz um código digital de saída que representa a entrada analógica.
Funcionamento 1. Um pulso START inicia a operação; 2. Numa taxa determinada pelo CLOCK, a unidade de controle modifica o valor armazenado no registrador; 3. O valor binário armazenado no registrador é convertido para uma tensão analógica, Vax, pelo conversor D/A; 4. O amplificador operacional compara Vax com a entrada analógica Va. Se Vax < Va, a saída do comparador fica em ALTO. Quando Vax > Va (por, no mínimo, uma tensão limiar Vt), a saída do comparador vai para BAIXO e pára o processo de modificar o número no registrador. Neste ponto Vax E Va, dentro da resolução e precisão do sistema; 5. A lógica de controle sinaliza o fim da conversão (EOC).
Powered by Enderson Neves Cruz
218
Conversor Analógico/Digital Introdução Conversor A/D – Parâmetros •
Faixa dinâmica – é a faixa de amplitude de operação do sinal analógico (em geral uma tensão) dentro da região de trabalho (linear) do conversor. O sinal de entrada deve ser condicionado de forma a possibilitar sua máxima utilização dentro dessa faixa dinâmica.
•
Resolução – é a menor quantidade que pode ser convertida (resolvida) dentro da faixa dinâmica do sinal de entrada. É especificada pelo número de bits do conversor.
•
Intervalo de quantização – menor intervalo de tensão que pode ser resolvido pelo conversor. VFS: tensão máxima da faixa dinâmica (normalmente VFS=VREF) n: resolução do conversor
•
Erro de quantização ou linearidade – erro intrínseco ao processo de conversão A/D pela discretização dos níveis de tensão de entrada na etapa de comparação. Expressa o desvio do resultado de conversão de uma reta ideal. É expresso em ± uma porcentagem do valor total ou em número de bits. Exemplo: Um erro de linearidade de ± 0,4% equivale a uma linearidade de ± 1 bit num conversor de 8 bits.
•
Tempo de conversão – tempo necessário para se obter o valor na saída digital para a partir do momento em que o sinal de entrada foi aplicado e iniciado o processo de conversão. Depende da estrutura do circuito utilizado e da sua resolução. De modo geral, quanto maior a resolução, maior o tempo de conversão.
•
Velocidade de conversão – medida em samples per second ou amostragens por segundo.
Powered by Enderson Neves Cruz
219
Conversor Analógico/Digital Introdução Conversor A/D – Exemplo
Onda de 500Hz
Hello
Powered by Enderson Neves Cruz
220
Conversor Analógico/Digital Introdução Conversor A/D – Exemplo
Taxa de amostragem: 1.000 samples por segundo Quantizaçao: 10
Powered by Enderson Neves Cruz
221
Conversor Analógico/Digital Introdução Conversor A/D – Exemplo
Taxa de amostragem: 2.000 samples por segundo
Taxa de amostragem: 40.000 samples por segundo
Quantização: 20
Quantização: 40
Compact Disk Taxa de amostragem: 44.100 samples por segundo
Quantização: 65.536 (16 bits)
Powered by Enderson Neves Cruz
222
Conversor Analógico/Digital Introdução Conversor A/D – Tipos de conversos A/D •
Rampa
•
Rampa dupla
•
Realimentado
•
Dupla Inclinação
•
Paralelo ou instantâneo – Flash
•
Redistribuição de carga
•
Aproximações sucessivas
•
Sigma-Delta – ΣΔ
Powered by Enderson Neves Cruz
223
Conversor Analógico/Digital Introdução Conversor A/D – Aproximações sucessivas •
Conversor A/D de aproximação sucessiva ou SAR (Successive Approximation Register converter) utiliza um registrador onde cada bit é modificado até que o dado contido no registrador seja o equivalente digital da entrada analógica.
•
SARs são adequados para aplicações de uso geral, sendo amplamente utilizados em aplicações de sinais de nível : sensores de temperatura, sensores Bridge, etc.
Exemplo: Conversor A/D SAR de 4 bits com resolução de 1V e Va = 10,4V
•
O tempo de conversão é menor que o tempo de outros conversores A/D.
•
Além disso, esse tempo é fixo e não depende da entrada analógica.
•
Outra grande vantagem deste circuito é o uso de um buffer de saída que permite ao circuito que está sendo alimentado pelo conversor A/D ler o dado digital enquanto o conversor A/D já está trabalhando na próxima amostra.
tc = N * (Período de clock)
Powered by Enderson Neves Cruz
224
Conversor Analógico/Digital Introdução Aquisição de dados •
Em muitas aplicações, dados analógicos devem ser digitalizados e transferidos para sistemas microcontrolados/microprocessados. Este processo é chamado aquisição de dados.
•
Numa aplicação de armazenamento (por exemplo, áudio) os dados são transferidos para a memória do computador e depois podem ser convertidos novamente em sinais analógicos.
•
Em aplicações de controle, esses dados constituem informações e, através delas, o computador irá acionar ou não suas saídas de controle.
Sistema digital utilizando um conversor A/D para aquisição de dados
Sinal analógico amostrado por um conversor A/D e sinal reconstruído por um conversor D/A e filtros passa-baixa
Powered by Enderson Neves Cruz
225
Referências para estudo rápido
• • •
•
• • •
Como funciona Sistema Binário - Circuitos Digitais – All Electronics https://www.youtube.com/watch?v=xxZXyGEd-Gw Curso de Eletrônica Digital - Video Aulas – Gabriel Maganha http://vimeo.com/user5899484 Newton C. Braga http://www.newtoncbraga.com.br/index.php/eletronica/57-artigos-e-projetos/8691osciladores-a-cristal-art1142 Calculadoras http://pt.calcuworld.com/calculadoras-informaticas/calculadora-binaria/ http://www.calculadoraonline.com.br/conversao-bases
Sistemas Digitais: Princípios e Aplicações - Ronald J. TOCCI – Capítulo 2 Sistemas Digitais - CEFET-MG - Prof. Paulo Henrique Cruz Pereira Sistemas Digitais e Microprocessadores - UFPR Roberto A Hexsel
Powered by Enderson Neves Cruz
226