Eletrônica Digital Mecatrônica – 2º Etapa Apostila de Eletrônica Digital Fevereiro de 2012 1 Eletrônica Digital Mecatrônica – 2º Etapa Prefácio Esta apostila tem por objetivo servir como referência aos alunos do curso de mecatrônica na disciplina de Eletrônica Digital, e não substitui, de forma alguma, os diversos livros que tratam de tal assunto, e deve ser recebida pelo aluno, apenas como material de referência. Em uma época em que o desenvolvimento tecnológico e intelectual alcança níveis cada vez mais altos e com velocidade também cada vez maior, é importante que o aluno tenha consciência que a busca de novos conhecimentos, atualização dos conceitos básicos aqui apresentados, é uma tarefa pessoal sendo a escola apenas o meio que irá fornecer os instrumentos básicos pra tal busca, além de procurar incentivar os alunos. Desta forma, espera-se que o aluno desenvolva o habito de buscar incansavelmente sua atualização, pois, desta forma, suas chances de sucesso, profissional e também pessoal, em uma sociedade cada vez mais competitiva serão aumentadas. É importante que os conhecimentos adquiridos após a conclusão deste curso sejam aplicados em respeito aos limites da nossa sociedade e ao meio ambiente de forma direta e indireta. Espera-se que todos estes conhecimentos tragam frutos coletivos que irão promover o desenvolvimento de uma sociedade mais humana, justa e pacífica onde os interesses coletivos prevaleçam sobre os individuais e os interesses financeiros, que muitas vezes, infelizmente, superam a dignidade a sensatez dos homens, sejam dotados de menor importância. 2 Eletrônica Digital Mecatrônica – 2º Etapa 1 – Introdução Um sistema digital é um sistema no qual os sinais são compostos por um conjunto finito de valores discretos. Isto se contrapõe aos sistemas analógicos, nos quais os sinais possuem valores pertencentes a um conjunto infinito, ou seja, contínuo. Como exemplo elementar, uma balança digital mede o peso através de sinais discretos que indicam quilogramas e/ou gramas; por outro lado, uma balança analógica mede o peso através de um sinal correspondente à posição de um ponteiro sobre uma escala. Os sistemas digitais são usados no processamento de informação, também chamado de processamento de dados ou processamento de sinais, em que substituíram os sistemas analógicos anteriores. Alguns dos benefícios dos sistemas digitais são: • A representação digital é bem adequada tanto para o processamento numérico como para o não numérico de informação. Um exemplo de informação digital não-numérica é a linguagem escrita, na qual as letras têm valores do alfabeto finito A, B, C,... etc. • O processamento da informação pode ser realizado através de um sistema para propósitos gerais, por exemplo, um computador, que seja programado para uma tarefa de processamento particular, eliminando a necessidade de haver um sistema diferente para cada tarefa; • O número finito de valores num sinal digital pode ser representado por um vetor de sinais com apenas dois valores, sinais binários. Por exemplo, os dez algarismos do sistema decimal podem ser representados pelos seguintes valores em binário: Dígito Valor binário 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Esta representação permite implementações nas quais todos os sinais são binários; conseqüentemente, os dispositivos que processam estes sinais são muito simples, fundamentalmente, apenas chaves com dois estados: aberto e fechado; • Os sinais digitais são bastante insensíveis a variações nos valores dos parâmetros dos componentes e ao ruído elétrico, uma vez que são constituídos de dois estados bem definidos, na maioria dos casos 0 V para o estado lógico zero e 5 V para o estado lógico um; • Os avanços da tecnologia microeletrônica possibilitaram a fabricação de sistemas digitais extremamente complexos que são pequenos, rápidos e baratos. Métodos de representação e processamento digitais são usados há muito tempo. O desenvolvimento de artefatos digitais sofreu um dramático aumento com a invenção do computador digital por volta de 1940. Em comparação com os padrões atuais, naquela época, os computadores apresentavam custo proibitivo, tinham pequeno poder de processamento, eram pouco confiáveis e difíceis de programar e, consequentemente, 3 Eletrônica Digital Mecatrônica – 2º Etapa operar. Desde então, um extraordinário progresso foi feito em todos estes aspectos, tornando o computador indispensável em quase todos os campos da sociedade moderna, tornando-se um instrumento indispensável em tal sociedade. O desenvolvimento da tecnologia, em especial, da microeletrônica digital, tornou possível a produção eficiente e com custo reduzido de uma grande variedade de sistemas digitais especializados. Alguns exemplos são relógios e cronômetros digitais, calculadoras, videogames, máquinas fotográficas, equipamentos de comunicação, gravação digital de música e vídeo, e etc. Esta tendência prossegue, uma vez que novas aplicações para sistemas digitais são constantemente desenvolvidas, em alguns casos, as novas aplicações estão substituindo os sistemas analógicos, mas em muitos outros eles estão tornando possíveis aplicações que não existiam anteriormente. Como conseqüência é necessário o conhecimento sobre o projeto e o uso de sistemas digitais numa grande variedade de atividades humanas. 1.1 – Sinais digitais e analógicos O sinal de tensão apresentado na Figura 1 é chamado de sinal analógico. O nome deriva do fato de tal sinal ser análogo ao sinal físico que representa. A amplitude de um sinal analógico pode ter qualquer valor; isto é, a amplitude de um sinal analógico exibe uma variação contínua sobre sua faixa de atuação. A grande maioria dos sinais no mundo é analógica. Circuitos eletrônicos que processam tais sinais são conhecidos como circuitos analógicos. Figura 1 – Sinal analógico. Uma forma alternativa de representação de sinais é por meio de uma seqüência de números discretizados, cada número representando um valor de sinal em cada instante de tempo. O sinal resultante é chamado de sinal digital. Para entender como um sinal pode ser representado nessa forma, isto é, como os sinais podem ser convertidos da forma analógica para a forma digital, observe a Figura 2. Nela a curva representa um sinal de tensão, idêntico ao da Figura 1. Em intervalos iguais no eixo do tempo marcamos os instantes t0, t1, t2 e assim por diante. Em cada um desses instantes é medida a amplitude do sinal, em um processo conhecido como amostragem. O sinal da Figura 2 é definido apenas nos instantes de amostragem; ele já não é mais função contínua no tempo, em vez disso é um sinal discreto no tempo. Contudo, visto que a 4 Eletrônica Digital Mecatrônica – 2º Etapa amplitude de cada amostra pode ser tomada com valores em uma faixa contínua, sobre o eixo v(t), o sinal da Figura 2 é ainda um sinal analógico. Figura 2 – Sinal analógico discreto no tempo. Agora, se representarmos a amplitude de cada amostra do sinal na figura anterior por um número com dígitos finitos, então a amplitude do sinal não será mais contínua; ao contrário, ela será considerada quantizada, discretizada ou digitalizada, Figura 3. Então o sinal digital resultante será simplesmente uma seqüência de números que representa as amplitudes das sucessivas amostras do sinal. Figura 3 – Sinal digital. A escolha do sistema numérico que representa as amostras do sinal analógico afeta o tipo de sinal digital produzido e tem um impacto significativo na complexidade dos circuitos digitais necessários aos processamento e ao armazenamento de tais sinais. Verifica-se que o sistema numérico binário resulta em sinais digitais e circuitos de processamento mais simples. No sistema binário, cada dígito do número pode assumir um de dois valores possíveis, denominados “0” e “1”. Por decorrência, os sinais digitais 5 Eletrônica Digital Mecatrônica – 2º Etapa em sistemas binários necessitam apenas de dois níveis de tensão, denominados alto e baixo, de acordo com a tabela a seguir: Tabela 1 - Níveis de representação de um sinal digital. Nível Baixo Alto Representação lógica 0 (zero) 1 (um) Representação elétrica 0V +5 V Ressalta-se que na tabela anterior está apresentado apenas a representação elétrica para o padrão TTL1, na prática existem outros padrões que se diferenciam pelo valor de tensão para cada um dos níveis lógicos. Em toda esta apostila será considerado o padrão TTL. 1 TTL – Transistor-Transistor-Logic, se referem aos circuitos integrados digitais compostos por transistores onde os níveis de tensão permitidos são 0 V e +5 V, para os níveis lógicos zero e um, respectivamente. 6 Eletrônica Digital Mecatrônica – 2º Etapa 2 – Sistemas de numeração Os sistemas de numeração classificam-se em dois grupos básicos que são os sistemas de numeração posicional e os sistemas de numeração não posicional. No sistema posicional o valor do dígito depende da posição que o mesmo ocupa no número. Quando se considera o número 1987 como exemplo, pode-se afirmar que se o número estiver escrito em decimal, pela ordenação dos quatro dígitos, “1º”, “2º”, “3º” e “4º” o número 1 não representa uma unidade, mas mil unidades; o número um representaria uma unidade somente se estivesse na posição mais à direita, no lugar do sete. O número 1987 pode ser decomposto como a soma de 1000 (1x103) com 900 (9x102) com 80 (8x101) com 7 (7x100), ou seja, há um peso para cada posição do número, com o peso crescendo da direita para a esquerda em potências de 10, a partir de 100. Na representação posicional obtém-se uma forma simplificada de escrita para os números. Ao invés de um símbolo para cada número, pode-se representar qualquer número com um “alfabeto” restrito de dígitos ou símbolos. O sistema decimal tem um “alfabeto” de dez dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Sendo que qualquer número pode ser representado com estes dígitos. Da mesma forma, podemos definir um sistema binário, ou sistema de base dois, como aquele que tem um “alfabeto” de dois dígitos: 0 e 1. Analogamente a base 10, na qual o peso das posições é potências de 10, na base 2 os pesos são potências de 2. O mesmo raciocínio pode ser utilizado para outras bases como apresentado nos exemplos a seguir: Exemplo 1: Sistema Posicional Decimal – Base 10 “Alfabeto” = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Exemplo 2: Sistema Posicional Binário – Base 2 “Alfabeto” = {0, 1} Exemplo 3: Sistema Posicional Octal – Base 8 “Alfabeto” = {0, 1, 2, 4, 5, 6, 7} Exemplo 4: Sistema Posicional Hexadecimal – Base 16 “Alfabeto” = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F} Como sistema de numeração não posicional tem-se o sistema Romano, onde o valor dos símbolos não guarda nenhuma relação com a posição destes em um número. 2.1 – Mudança de base A seguir são apresentados os procedimentos para se obter uma transformação da base 10 para outra base qualquer ou de uma base qualquer para a base 10. Uma transformação entre duas bases deferentes da base 10 pode ser feita passando-se intermediariamente pela base 10. 7 Eletrônica Digital Mecatrônica – 2º Etapa • Transformação de decimal, base 10, para uma base qualquer: Deve-se dividir o inteiro decimal repetidamente pela nova base, para a qual se deseja a transformação. A cada divisão deve-se guardar o resto, que será o dígito correspondente do alfabeto da nova base. A divisão deve ser interrompida quando o quociente inteiro for menor que o divisor. O último quociente e os restos de cada divisão, tomados no sentido do último para o primeiro, representam o número transformado, de acordo com os exemplos abaixo: Exemplo 4 – Decimal para a base 5: Transformar (342)10 para a base 5. Ressalta-se que o processo de divisões sucessivas é interrompido no instante em que se obtém o quociente menor que o divisor. Na última divisão (13÷5) o quociente obtido 2 é menor que o divisor 5. Neste instante o processo é interrompido. Lendo no sentido do último quociente para o primeiro resto tem-se 2332 e então (342)10 = (2332)5. Exemplo 5 – Decimal para base 16: Transformar (2798)10 para a base 16. Para a base 16 é importante ressaltar que 10 equivale a ‘A’, 11 a ‘B’, 12 a ‘C’, 13 a ‘D’, 14 a ‘E’, 15 a ‘F’. Portanto, (2798)10 = (AEE)16. Exemplo 6 – Decimal para binário: Transformar (55)10 para a base 2. Desta forma (55)10 = (110111)2. • Transformação de uma base qualquer para decimal, base 10: Neste tipo de transformação deve-se converter cada um dos algarismos que compõem o número em seu equivalente decimal, de acordo com a estrutura posicional, 8 Eletrônica Digital Mecatrônica – 2º Etapa e efetuar as somas dos números obtidos para obter o número na base decimal. Alguns exemplos são apresentados a seguir: Exemplo 1 – Binário para decimal: Transformar (1101)2 para a base 10. (1101)2 = 1x23 + 1x22+0x21+1x20 = 8 + 4 + 1 = 13 (1101)2 = (13)10 Exemplo 2 - Octal para decimal: Transformar (23)8 para a base 10. (23)8 = 2x81 + 3x80 = 16 + 3 = 19 (23)8 = (19)10 Exemplo 3 - Hexadecimal para decimal: Transformar (10B5)16 para a base 10. (10B5)16 = 1x163 + 0x162 + 11x161 + 5x160 = 4277 (10B5)16 = (4277)10 9 Eletrônica Digital Mecatrônica – 2º Etapa 3 – Álgebra de Boole George Boole (1814-1864), matemático e filósofo britânico, no século XIX investigou as leis fundamentais das operações da mente humana ligadas ao raciocínio e criou a Álgebra Booleana, base da atual aritmética computacional. O objetivo da Álgebra de Boole passa pela definição de uma série de símbolos, com a finalidade de representar objetivos ou fenômenos que, encadeados convenientemente, dão lugar a expressões matemáticas mais complexas denominadas funções. Enquanto que a álgebra tradicional opera com relações quantitativas, a álgebra de Boole opera com relações lógicas. Como exemplo, podemos considerar os operadores “ + ” e “ x ”, e verificar que possuem significados diferentes conforme sejam utilizados na álgebra tradicional ou na Álgebra Booleana, Tabela 2. Tabela 2 - Diferença de significado dos operadores. Operador + x ou g Álgebra tradicional Adição Multiplicação Álgebra Booleana “OU”, “OR” “E”, “AND” Enquanto que na álgebra tradicional as variáveis podem assumir qualquer valor, na álgebra booleana, as variáveis, aqui denominadas por variáveis binárias, apenas podem assumir um de dois valores binários, “0” ou “1”. Estes valores binários não exprimem quantidades, mas apenas, e somente, estados do sistema. 3.1 – Função lógica binária A toda a variável binária, cujo valor depende de uma expressão algébrica, formada por outras variáveis binárias relacionadas por operadores lógicos, dá-se o nome de função lógica. Temos como exemplo a equação abaixo, onde Y representa a variável binária dependente e a, b e c as variáveis binárias independentes. Y = f (a, b, c) = a ⋅ b + b ⋅ c Outra forma de representar uma função lógica é através da utilização de um circuito elétrico, Figura 4. Nesta representação, as variáveis binárias são introduzidas através de interruptores, chaves, com duas posições: ligada e desligada. Figura 4 – Circuito lógico. Nestas topologias é normal o uso de dois tipos de interruptores, Figura 5: 10 Eletrônica Digital Mecatrônica – 2º Etapa • Interruptor normalmente aberto, ou NA – No estado natural, ou seja, sem atuação o mesmo mantém o circuito aberto não permitindo a passagem de corrente. Quando acionado fecha o circuito permitindo a passagem da corrente; • Interruptor normalmente fechado, ou NF – No estado natural o mesmo mantém o circuito fechado permitindo a passagem de corrente. Quando acionado abre o circuito interrompendo a passagem da corrente. Figura 5 – Tipos de interruptores. 3.2 – Tabela verdade Para uma função Y = f (a,b, ...) a tabela verdade é um quadro formado por tantas colunas quantas são as variáveis binárias independentes, as entradas (a, b, …), e uma última coluna correspondente à variável binária dependente, a saída, Y. O número de linhas de uma tabela verdade é dado por 2N, onde N é o número de variáveis binárias independentes, entradas, garantindo assim todas as combinações possíveis destas variáveis. A tabela verdade representa o estado da saída, variável binária dependente Y, em função das entradas, variáveis binárias independentes. Para todas as combinações possíveis de estados das variáveis binárias independentes existe um estado da variável binária dependente, ou seja, para toda combinação das variáveis de entrada existe um valor, estado, para a variável de saída. Como exemplo, podemos ver a Tabela 3 que representa a função lógica binária apresentada anteriormente, Y = f (a, b, c) = a ⋅ b + b ⋅ c . O número de entradas é 3 (a, b e c), logo a tabela tem 23 = 8 linhas. Tabela 3 – Tabela verdade. a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 Y 0 0 0 1 1 0 1 0 3.3 – Funções Booleanas básicas A seguir são apresentadas as funções Booleanas básicas, suas tabelas verdade, símbolos e os diagramas elétricos equivalentes. 11 Eletrônica Digital Mecatrônica – 2º Etapa 3.3.1 – Função igualdade a Y 0 0 1 1 Y (a) = a 3.3.2 – Função OU (“OR”) a 0 0 1 1 Y ( a, b) = a + b b 0 1 0 1 Y 0 1 1 1 3.3.3 – Função E (“AND”) Y ( a, b) = a ⋅ b a 0 0 1 1 b 0 1 0 1 Y 0 0 0 1 3.3.4 – Função NÃO (“NOT”) ou função inversora Y (a) = a a Y 0 1 1 0 3.3.5 – Função NÃO-E (“NAND”) Y ( a, b) = a ⋅ b a 0 0 1 1 b 0 1 0 1 Y 1 1 1 0 3.3.6 – Função NÃO-OU (“NOR”) Y ( a, b) = a + b a 0 0 1 1 b 0 1 0 1 Y 1 0 0 0 12 Eletrônica Digital Mecatrônica – 2º Etapa 3.3.7 – Função OU-EXCLUSIVO (“XOR”) Y ( a, b) = a ⋅ b + a ⋅ b a 0 0 1 1 b 0 1 0 1 Y 0 1 1 0 3.4 – Circuitos integrados que implementam portas lógicas Neste item são apresentados alguns circuitos integrados que implementam as portas lógicas apresentadas no item anterior. Serão apresentados os CI’s, sigla para Circuito Integrado, a disposição das portas no interior dos mesmos e, consequentemente, a funções de cada um dos pinos dos mesmos. 3.4.1 – Circuito integrado SN74LS32 Este circuito integrado é composto por 4 portas OU (“OR”), sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 6. Figura 6 - Circuito integrado SN74LS32. 3.4.2 – Circuito integrado SN74LS08 Este circuito integrado é composto por 4 portas E (“AND”), sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 7. 13 Eletrônica Digital Mecatrônica – 2º Etapa Figura 7 - Circuito integrado SN74LS08. 3.4.3 – Circuito integrado SN74LS04 Este circuito integrado é composto por 6 portas NÃO (“NOT”), ou inversoras, sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 8. Figura 8 - Circuito integrado SN74LS04. 3.4.4 – Circuito integrado SN74LS00 Este circuito integrado é composto por 4 portas NÃO-E (“NAND), sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 9. Figura 9 - Circuito integrado SN74LS00. 3.4.5 – Circuito integrado SN74LS02 Este circuito integrado é composto por 4 portas NÃO-OU (“NOR”), sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 10. 14 Eletrônica Digital Mecatrônica – 2º Etapa Figura 10 - Circuito integrado SN74LS02. 3.4.5 – Circuito integrado SN74LS86 Este circuito integrado é composto por 4 portas OU-EXCLUSIVO (“XOR”), sua aparência física e a disposição das portas no interior do mesmo são apresentados na Figura 11. Figura 11 - Circuito integrado SN74LS86. Em relação aos circuitos integrados apresentados nos itens anteriores ressalta-se que os pinos 1 e 14 tem a função de alimentação destes componentes, desta forma, deve-se aplicar nestes pinos uma diferença de tensão de 5 V, sendo que o pino 7 é ligado ao negativo, GND, e o pino 14 no +5 V. Esta disposição dos pinos de alimentação é padrão na família 74 de circuitos integrados que seguem o padrão TTL. 3.5 - Formas Canônicas de uma função lógica Uma função lógica binária Y (a, b,...) é dita estar representada na 1ª forma canônica se Y estiver escrita como a soma de produtos, nos quais aparecem todas as variáveis binárias em cada um dos termos, denominados MINTERMOS, que constituem a expressão, na forma direta ou negada, como apresentado abaixo: Somas Y (a, b, c) = (a ⋅ b ⋅ c) + (a ⋅ b ⋅ c) + (a ⋅ b ⋅ c) 15 Eletrônica Digital Mecatrônica – 2º Etapa Produtos Uma função lógica binária Y (a, b,...) é dita estar representada na 2ª forma canônica se Y estiver escrita como produto de somas, nos quais aparecem todas as variáveis binárias em cada um dos termos, denominados MAXTERMOS, que constituem a expressão, em forma direta ou negada, como apresentado a seguir: Produtos s Y (a, b, c) = (a + b + c) ⋅ (a + b + c) ⋅ (a + b + c) Somas Para obter a função lógica nas suas formas canônicas diretamente da tabela de verdade basta seguir as regras descritas abaixo: • 1ª forma canônica - Obtém-se somando todos os produtos lógicos, ou mintermos, formados das linhas da tabela de verdade que dão à função Y o valor lógico “1”, neste caso deve-se negar, ou “barrar”, todas as variáveis da linha em questão que possuem valor lógico “0”; • 2ª forma canônica - Obtém-se multiplicando todas as somas lógicas, ou maxtermos, formadas das linhas da tabela de verdade que dão à função Y o valor lógico “0”, neste caso deve-se negar, ou “barrar”, todas as variáveis da linha em questão que possuem valor lógico “1”; Como exemplo considere a tabela verdade a seguir: Linha 1 Linha 2 Linha 3 Linha 4 Linha 5 Linha 6 Linha 7 Linha 8 a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 Y 1 0 0 0 0 1 1 0 Considerando que o valor lógico de Y é “1” nas linhas 1, 6 e 7, a expressão de Y na 1ª forma canônica, soma de mintermos, é: Y (a, b, c) = (a ⋅ b ⋅ c) + (a ⋅ b ⋅ c) + (a ⋅ b ⋅ c) E considerando que o valor lógico de Y é “0” nas linhas 2, 3, 4, 5 e 8, a expressão de Y na 2ª forma canônica, multiplicação de maxtermos, é: Y (a, b, c) = (a + b + c) ⋅ (a + b + c) ⋅ (a + b + c) ⋅ (a + b + c) ⋅ (a + b + c) 3.6 – Simplificações de funções Booleanas 16 Eletrônica Digital Mecatrônica – 2º Etapa A simplificação de funções lógicas Booleanas é importante, pois, através de uma expressão mais simples o circuito utilizado para representar esta função também se torna mais simples, utilizando, conseqüentemente, um menor número de componentes. É importante ressaltar, que quanto menor for o número de componentes utilizados, menor será o custo final do circuito e menor será o atraso entre o sinal de entrada e a saída. Portanto, formas simplificadas para os circuitos são sempre utilizadas para obtenção do produto final, aumentando a eficiência do mesmo, reduzindo custos e tempo de produção. Uma forma de simplificar o número de termos de uma função é através do método gráfico ou de Karnaugh. Outros métodos, como o método algébrico e o método numérico de Quine-McCluskey também podem ser utilizados, sendo que o algébrico demanda maior experiência com os teoremas e postulados da álgebra de Boole e o método numérico, geralmente, é aplicado quando o número de variáveis é elevado. Nesta apostila será abordado o método gráfico de Karnaugh. 3.6.1 – Método gráfico de Karnaugh Este método é relativamente simples e eficaz até quatro variáveis, acima disto, embora este método possa ser utilizado, é pouco prático. Um mapa de Karnaugh é uma matriz com 2N células, sendo N é o número de variáveis do problema e onde cada célula está associada a uma combinação possível das entradas, em outras palavras, a uma linha da tabela verdade. Para três variáveis, por exemplo, o mapa de Karnaugh é um conjunto de 8 células, já que existem 8 linhas na tabela verdade. As células do mapa de Karnaugh são preenchidas de modo que as combinações de entrada logicamente adjacentes sejam, também, graficamente adjacentes. Duas combinações são logicamente adjacentes quando diferem pelo estado lógico de apenas uma única variável, por exemplo, as combinações m1 = A ⋅ B ⋅ C ⋅ D e m3 = A ⋅B⋅ C⋅ D , são logicamente adjacentes, pois diferem apenas pela variável C, em m1 a variável C aparece negada e em m3 ela aparece não negada, as outras variáveis permanecem inalteradas. 3.6.2 – Representação das funções nos Mapas de Karnaugh Duas situações podem ocorrer quando se representa uma função no mapa de Karnaugh: ou a função está na 1ª forma canônica ou então na 2ª forma canônica. Quando a função está na 1ª forma canônica basta colocar “1” nas células associadas aos mintermos que a compõem e “0” nas restantes. Quando a função está na 2ª forma canônica basta colocar “0” nas células associadas aos índices de maxtermos que compõem a função e “1” nas restantes. • Regra para montagem do mapa de Karnaugh: 1) Desenhar o mapa de acordo com o número de variáveis de acordo com a Figura 12: 17 Eletrônica Digital Mecatrônica – 2º Etapa Figura 12 – Montagem do mapa de Karnaugh. 2) Considerando o preenchimento a partir da tabela verdade, preencher com “0” ou “1” cada uma das células de acordo com a linha correspondente na tabela: Figura 13 - Preenchimento do mapa de Karnaugh. Considerando a 1ª forma canônica têm-se as seguintes regras para simplificação: • Regra para simplificação através da 1ª Forma Canônica: 1) Identificar as células ocupadas por “1”; 2) Formar os grupos de células ocupadas por “1”, estes grupos devem conter o maior número possível de células, desde que este número seja sempre uma potência de 2, por exemplo, só é permitida a formação de grupos que tenham 1, 2, 4, 8, 16, 32,... elementos; 3) Os grupos devem ter sempre a forma de quadrados ou retângulos; 4) A mesma célula pode participar da formação de dois ou mais grupos diferentes; 5) Os elementos da coluna da esquerda são adjacentes aos elementos da coluna da direita. Da mesma forma, os elementos da linha superior do mapa são, também, adjacentes aos da linha inferior; 6) Sempre que um grupo é formado, a variável que muda de estado é eliminada; 18 Eletrônica Digital Mecatrônica – 2º Etapa 7) A cada grupo de “1” corresponde um termo da expressão final; 8) A variável é representada na forma negada quando o valor lógico dela for “0”, ou “1” quando o valor for direto, não negado. Por exemplo, considere a tabela verdade apresentada a seguir: a 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 b 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 c 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Y 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 Que possui a seguinte expressão Booleana na 1ª forma canônica: Y (a, b, c, d ) = (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) Sua representação pelo mapa de Karnaugh e a expressão simplificada obtida através do mesmo é apresentada abaixo. Y (a, b, c, d ) = (b ⋅ c ⋅ d ) + (a ⋅ c ⋅ d ) + (a ⋅ b ⋅ d ) Para segunda forma canônica o procedimento para montagem e preenchimento do mapa são as mesmas, diferindo apenas na forma de interpretação do mesmo, consequentemente no procedimento de simplificação. • Regra para simplificação através da 2ª Forma Canônica: 1) Identificar as células ocupadas por “0”; 19 Eletrônica Digital Mecatrônica – 2º Etapa 2) Formar os grupos de células logicamente adjacentes ocupadas por “0”, estes grupos devem conter o maior número possível de células logicamente adjacentes, desde que este número seja sempre uma potência de 2, por exemplo, só é permitida a formação de grupos que tenham 1, 2, 4, 8, 16, 32,... elementos; 3) Os grupos devem ter sempre a forma de quadrados ou retângulos; 4) A mesma célula pode participar da formação de dois ou mais grupos diferentes; 9) Os elementos da coluna da esquerda são adjacentes aos elementos da coluna da direita. Da mesma forma, os elementos da linha superior do mapa são, também, adjacentes aos da linha inferior; 5) Sempre que um grupo é formado, a variável que muda de estado é eliminada; 6) A cada grupo de “0” corresponde um termo da expressão final; 7) A variável é representada na forma negada quando o valor lógico dela for “1”, ou “0” quando o valor for direto, não negado. Como exemplo considere a tabela verdade do exemplo anterior, com a expressão Booleana na 2ª forma canônica abaixo: Y (a, b, c, d ) = (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ ⋅(a + b + c + d ) ⋅ (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ ⋅(a + b + c + d ) ⋅ (a + b + c + d ) ⋅ (a + b + c + d ) O mapa de Karnaugh, juntamente com sua expressão simplificada são apresentados abaixo. Y (a, b, c, d ) = (a + b) ⋅ (a + c + d ) ⋅ (a + b + c) ⋅ (a + c + d ) ⋅ (a + c + d ) Portanto, pode-se concluir através dos exemplos acima que a simplificação pela 1ª forma levou a uma expressão mais simples e conseqüentemente a um circuito com um menor número de componentes para implementar a mesma função lógica. 20 Eletrônica Digital Mecatrônica – 2º Etapa 4 – Diagramas de tempo de circuitos digitais Os diagramas de tempo de circuitos digitais consistem em uma forma de representar a variação de saída de uma porta lógica, ou qualquer circuito digital mais complexo, em função do tempo. Estes diagramas são compostos por várias linhas representando cada uma das entradas e uma ou mais linhas que representa(m) a(s) saída(s). No eixo vertical tem-se a informação da variação dos sinais de entrada e saída e no eixo horizontal a informação de tempo. Um exemplo de diagrama de tempo é apresentado na Figura 14. Figura 14 - Exemplo de um diagrama de tempo para um circuito digital. Para interpretar este tipo de diagrama, em relação à figura anterior, basta considerar o valor das entradas em um determinado período de tempo e as saídas pertinentes. Por exemplo, entre os instantes T0 e T1 a entrada “a” está em nível alto, as entradas “b” e “c” em nível baixo, o que leva as saídas “a” e “b” aos estados alto e baixo, respectivamente. Desta forma, pode-se avaliar o comportamento do circuito para cada período de tempo de interesse. No exemplo a seguir é apresentada a variação do sinal de saída para uma porta do tipo “E” (“AND”), Figura 15. Nesta figura é possível observar que o estado da saída Y só foi a nível alto, quando ambas as entradas “a” e “b” estavam em nível alto, ou seja, quando ambas as entradas são “1”, este comportamento está de acordo com a tabela verdade para este tipo de porta, conforme pode ser observado no item 3.3.3. 21 Eletrônica Digital Mecatrônica – 2º Etapa Figura 15 - Diagrama de tempo para uma porta "E" ("AND"). 22 Eletrônica Digital Mecatrônica – 2º Etapa Primeira lista de Exercícios de Eletrônica Digital Entrega: 1 – Qual a principal diferença entre sinais analógicos e digitais? 2 – Cite algumas vantagens do uso de sistemas digitais? 3 – Qual a diferença entre um sinal contínuo e um sinal discreto no tempo? 4 – Por que um sinal discreto no tempo não pode ser considerado como um sinal digital? O que falta, neste caso, para que o sinal seja considerado digital? 5 – É verdadeira a afirmação de que no processo de digitalização de um sinal existe perda de informação? Por quê? 6 – Por que o sistema de numeração binário é mais adequado aos sistemas digitais? 7 – Realize as seguintes mudanças de base: a) (1256)10 = ( ? )2 b) (753)10 = ( ? )2 c) (880)10 = ( ? )8 d) (569)10 = ( ? )8 e) (65535)10 = ( ? )16 f) (1024)10 = ( ? )16 g) (11001)2 = ( ? )10 h) (11011010)2 = ( ? )10 i) (562)8 = ( ? )10 j) (1023)8 = ( ? )10 k) (1AF)16 = ( ? )10 l) (255B)16 = ( ? )10 8 – Represente as expressões booleanas a seguir através do seu circuito lógico, ou seja, utilizando os símbolos das portas lógicas? Importante: Utilize apenas portas com duas entradas e uma saída. a) Y (a, b, c) = a + (b ⋅ c) b) Y (a, b, c) = (a ⋅ b ⋅ c) + (a ⋅ c) c) Y (a, b, c, d ) = (a + b) ⋅ (c + d ) ⋅ (a + d ) 23 Eletrônica Digital Mecatrônica – 2º Etapa 10 – Obtenha as expressões nas duas formas canônicas para as seguintes tabelas verdades? a) b) a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 Y 0 0 1 0 1 1 1 0 a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 Y 1 1 1 0 1 0 1 0 11 – Simplifique a expressão Booleana abaixo (na 1ª forma canônica), cuja tabela verdade é apresentada, através do mapa de Karnaugh. Y (a, b, c, d ) = (a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) + +( a ⋅ b ⋅ c ⋅ d ) + ( a ⋅ b ⋅ c ⋅ d ) + (a ⋅ b ⋅ c ⋅ d ) a 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 b 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 c 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Y 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 1 12 - Simplifique a expressão Booleana abaixo (na 2ª forma canônica), cuja tabela verdade é apresentada, através do mapa de Karnaugh. Y (a, b, c, d ) = (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ ⋅(a + b + c + d ) ⋅ (a + b + c + d ) ⋅ (a + b + c + d ) ⋅ ⋅(a + b + c + d ) ⋅ (a + b + c + d ) a 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 b 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 c 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 d 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Y 1 0 1 0 0 1 0 1 1 0 1 0 0 1 1 1 13 – Faça o diagrama de tempo para as portas “AND”, “NAND”, “XOR”, “NOR” e “NOT” de acordo com as tabelas verdades das mesmas. Considere portas de duas entradas e uma saída. 24 Eletrônica Digital Mecatrônica – 2º Etapa 8 – Circuitos seqüenciais Até o momento as ferramentas desenvolvidas são aplicáveis aos circuitos digitais conhecidos como combinacionais, ou seja, nesta classe de circuitos a(s) saída(s) do sistema dependem apenas do estado das entradas. Nos circuitos seqüenciais as saídas são funções das entradas e do estado anterior das saídas, dando ao circuito a característica de continuidade, ou em outras palavras, seqüência. Nesta nova classe de circuitos um elemento de grande importância é o “latch” que tem a propriedade de armazenar o estado anterior de suas saídas, e é conseqüentemente, o elemento básico, juntos com as portas lógicas dos circuitos seqüenciais. 8.1 – “Latches” O “latch” é o principal elemento dos circuitos combinacionais e possui a capacidade de armazenar um determinado estado de sua entrada e são os elementos constituintes dos “flip-flops”. Os vários flip-flops existentes se diferenciam pelo número de entradas que possuem e na maneira pela qual tais entradas afetam o estado de sua saída. A seguir, serão estudados o “latch” RS, o “latch” RS controlado e o “latch” tipo D. 8.1.1 – O “Latch” RS O “latch” RS é o mais simples, ele pode ser construído com o uso de duas portas NOR de 2 entradas cada, conectadas conforme mostra a Figura 16. Note que há duas entradas, chamadas R e S, e duas saídas, Q e Q . Note também que existe uma conexão entre a saída Q e uma das entrada da NOR 2. Existe também uma conexão entre a saída Q e uma das entradas da NOR 1. Conexões entre saída e entrada são denominadas realimentações, e no caso de circuitos digitais, são responsáveis pela propriedade de armazenamento apresentada pelo circuito. Figura 16 - "Latch" RS. A análise do funcionamento do “latch” RS segue os passos abaixo: Passo 1 - Identificação de uma combinação de entradas capaz de determinar o estado do “latch” de maneira independente do estado anterior, se isso for possível; 25 Eletrônica Digital Mecatrônica – 2º Etapa Passo 2 - Assumindo o estado determinado no passo 1 como sendo o estado inicial, aplicação de uma nova combinação de entradas para verificar como o circuito se comporta, se muda de estado ou não; Passo 3 - Repetição dos passos 1 e 2 para cada combinação de entradas capaz de determinar o estado do circuito de maneira independente; A partir do procedimento anterior encontrar-se-á uma tabela de comportamento denominada tabela de transição de estados, ou simplesmente, tabela de transição, a qual é característica deste “latch”. Em particular, cada “latch” possui um comportamento que pode ser expresso em termos de uma tabela de transferência que lhe é própria. Para o “latch” RS da Figura 16, imaginemos que sejam aplicados simultaneamente os valores “1” e “0” às entradas R e S, respectivamente, no instante de tempo t0. Considerando que o valor “1” aplicado a qualquer uma das entradas de uma porta NOR determina o valor da saída desta porta como sendo “0”, independente dos valores das demais entradas. Logo, se for aplicado R = 1 e S = 0 em t0, a saída Q se estabilizará com valor 0 em t0+tdNOR 1, onde tdNOR 1 é o atraso da porta NOR 1. Como existe uma ligação entre Q e uma das entradas da porta NOR 2, a partir do tempo t0+tdNOR 1 ambas entradas desta porta estarão estabilizadas em “0”. Então, a partir do tempo t0+tdNOR 1+ tdNOR 2, onde tdNOR 2 é o atraso da porta NOR 2, a saída Q estará estabilizada com o valor lógico “1”. Observe no parágrafo anterior que os valores exibidos pelas saídas Q e Q são sempre complementares. É justamente por esse motivo que elas recebem essas denominações. Entretanto, se aplicarmos as entradas R = 1 e S = 1, ambas saídas se estabilizarão em “1”, o que conflita com o que foi colocado anteriormente. Desta forma, foi convencionado que esse seria um estado proibido, ou indeterminado, de modo que a situação, R = 1 e S = 1, deve sempre ser evitada, no caso do “latch” RS. Um “latch” pode assumir um dentre dois estados possíveis para suas saídas. Esses estados correspondem aos valores que uma variável Booleana pode assumir, ou seja, “0” e “1”. O estado “0” também é chamado estado “reset” e o estado “1” é também chamado estado “set”. Essas informações podem ser resumidas pela Tabela 4 a seguir para o “latch” RS: Tabela 4 - Tabela de estados para para o "latch" RS. R S Q 1 0 0 0 1 0 0 1 0 1 0 0 1 1 0 Q 1 1 0 0 0 Descrição Vai para o estado “reset” Mantém estado “reset” (mantém estado anterior) Vai para o estado “set” Mantém estado “set” (mantém estado anterior) Estado proibido A tabela anterior pode ser escrita de maneira mais compacta, de modo a incorporar a informação da dependência temporal, conforme apresentado na Tabela 5. Ressalta-se que para denominação dos estados na Tabela 4 e Tabela 5 considera-se como referência a saída Q apenas. 26 Eletrônica Digital Mecatrônica – 2º Etapa Tabela 5 - Tabela de estados enfatizando a dependência temporal do "latch" RS. R 0 0 1 1 S 0 1 0 1 Qt+1 Qt 1 0 - Descrição Mantém estado anterior Estado “set” Estado “reset” Proibido A tabela anterior lista os valores possíveis para as entradas nas colunas mais à esquerda, admitindo que esses valores estão sendo aplicados no instante presente t. Para cada situação de entradas, o novo valor da saída, e portanto o novo estado do “latch”, para o instante imediatamente posterior t+1 encontra-se na coluna mais à direita. Como a saída Q sempre exibe o complemento da saída Q, apenas o valor de Q é listado, ficando Q subentendido. O comportamento de circuitos seqüenciais pode também ser expresso por meio de um diagrama denominado diagrama de estados. Sendo o “latch” RS um circuito seqüencial, pode-se usar um diagrama de estados para representar seu funcionamento, conforme mostrado na Figura 17. Neste diagrama os estados “reset” e “set” estão representados por nodos, círculos. A transição entre estados é representada por uma aresta, seta. A condição de entradas segundo a qual uma determinada transição pode ocorrer está definida junto à sua aresta. Por exemplo, estando o “latch” RS no estado “reset”, para que ele vá para o estado “set” é necessário que R = 0 e S = 1. Caso R = 0 e S = 0, o “latch” RS ficará no estado em que se encontra. Figura 17 - Diagrama de estados para o "latch" RS. Para evitar que se tenha que desenhar o circuito completo toda a vez que houver uma ocorrência do “latch” RS, utiliza-se o símbolo apresentado na Figura 18. Figura 18 - Símbolo do "latch" RS. 27 Eletrônica Digital Mecatrônica – 2º Etapa 8.1.2 – O “Latch” RS controlado No “latch” RS, cujo funcionamento foi descrito no item anterior, uma alteração das entradas R e S pode acarretar uma troca de estado. Porém, em alguns casos pode ocorrer que os sinais conectados às entradas R e S sofram variações não desejadas, sendo válidos somente em alguns intervalos de tempo bem determinados. Nesse caso, seria interessante que houvesse uma entrada de maior prioridade que fosse encarregada de controlar a habilitação do “latch”, deixando-o sensível ou não aos valores das entradas R e S. Nesse sentido, o “latch” RS controlado é um aprimoramento do “latch” RS. Ele é construído a partir do “latch” RS, pela colocação de um par de portas AND nas entradas R e S, conforme mostra a Figura 19. A entrada C tem por objetivo habilitar ou desabilitar o “latch” RS: caso C = 0, o “latch” mantém o estado, pois R1 = 0 e S1 = 0; caso C = 1, o “latch” funciona normalmente. A tabela de transição deste “latch” é apresentada abaixo, Tabela 6. Observe que se C = 0, o “latch” mantém seu estado, independente dos valores de R e S, os X indicam essa independência, ou seja, “não importa”. Repare também que há ainda outra situação em que o “latch” mantém o estado, quando C = 1, mas R = 0 e S = 0. Figura 19 - "Latch" RS controlado. Tabela 6 - Tabela de estados do "latch" RS controlado. C 0 1 1 1 1 R X 0 0 1 1 S X 0 1 0 1 Qt+1 Qt Qt 1 0 - Descrição Mantém estado anterior Mantém estado anterior Estado de “set” Estado de “reset” Proibido O diagrama de estados para o “latch” RS controlado é muito semelhante ao diagrama do “latch” RS, conforme mostra a Figura 20. Apenas as condições para troca ou manutenção de estado são diferentes: no caso do “latch” RS controlado, as condições são compostas. Por exemplo, para que o “latch” RS controlado se mantenha num mesmo estado é necessário que C = 0 ou que C = 1 e R = 0 e S = 0. 28 Eletrônica Digital Mecatrônica – 2º Etapa Figura 20 - Diagrama de estados para o "latch" RS controlado. O símbolo adotado para o “latch” RS controlado é apresentado na Figura 21. Figura 21 - Símbolo do "latch" RS controlado. 8.1.4 – O “Latch” tipo D A necessidade de evitar a ocorrência do estado proibido é um detalhe que dificulta o projeto de circuitos seqüenciais com “latches” RS. O “latch” tipo D é construído a partir do “latch” RS controlado, de tal maneira que, pela colocação de um inversor entre as entradas S e R, fica assegurado que nunca ocorrerá a situação de entrada R = 1 e S = 1, responsáveis pelo surgimento do estado proibido, Figura 22. Desta forma, a tabela de transição do “latch” tipo D pode ser derivada da tabela do “latch” RS controlado, onde as entradas R e S passam a ser a entrada D, com S = D. Duas combinações de entradas desaparecem: uma que resultava na manutenção do estado e outra que resultava no estado proibido. A tabela de estados do “latch” D é mostrada a abaixo, Tabela 7. Figura 22 - "Latch" tipo D. Tabela 7 - Tabela de estados do "latch" tipo D. C D Qt+1 Descrição 29 Eletrônica Digital Mecatrônica – 2º Etapa 0 1 1 X 0 1 Qt 0 1 Mantém estado anterior Estado de “reset” Estado de “set” Na Figura 23 é apresentado o símbolo do “latch” tipo D. Figura 23 - Símbolo do "latch" tipo D. 8.2 – “Latches” com lógica de ativação complementar Os “latches” vistos até aqui apresentam lógica de ativação direta, isto é, estão ativados enquanto o controle estiver no nível lógico 1 e desativados enquanto o controle estiver no nível lógico 0. É possível inverter-se essa lógica de ativação pela simples inserção de um inversor antes da entrada de controle. Assim, um “latch” com lógica de ativação complementar, negada ou invertida, está ativo enquanto o controle vale “0” e desativado enquanto o controle vale “1”. A Figura 24 mostra os símbolos do “latch” RS controlado e do “latch” D, ambos com lógica de ativação complementar. Repare que a indicação da lógica de ativação complementar é feita por meio de um círculo colocado antes da entrada de controle. Figura 24 - "Latches" RS controlado e tipo D com lógica de ativação complementar. ATabela 8 e a Tabela 9 mostram o funcionamento destes “latches” com lógica de ativação complementar. Comparando com as tabelas de estados dos “latches” correspondentes com lógica de ativação direta, nota-se que as ações são as mesmas; apenas o que muda é o nível do sinal de controle necessário para ativá-los. Tabela 8 - Tabela de estados para o "Latch" RS controlado com lógica de ativação complementar. C 1 0 0 0 0 R X 0 0 1 1 S X 0 1 0 1 Qt+1 Qt Qt 1 0 - Descrição Mantém estado anterior Mantém estado anterior Estado de “set” Estado de “reset” Proibido 30 Eletrônica Digital Mecatrônica – 2º Etapa Tabela 9 - Tabela de estados para o "latch" tipo D com lógica de ativação complementar. C 1 0 0 D X 0 1 Qt+1 Qt 0 1 Descrição Mantém estado anterior Estado de “reset” Estado de “set” 8.3 – Flip-flops Conforme visto os “latches” controlados D e RS são ativados ou controlados pelo nível lógico do sinal de controle. Isso significa que, enquanto o sinal de controle estiver ativado o “latch” eventuais variações das entradas D ou R e S serão percebidas pelo latch e este poderá mudar de estado. Essa característica é particularmente imprópria para a construção de circuitos seqüenciais síncronos, uma vez que em tais circuitos qualquer troca de estado deve ocorrer de maneira sincronizada com o sinal de relógio. Os flip-flops são circuitos derivados dos “latches”, porém ativados pela transição do sinal de controle (i.e., pela borda). Isso faz com que um flip-flop permaneça ativado apenas durante um intervalo de tempo muito pequeno, após a ocorrência de uma transição do sinal de controle. Assim, uma eventual troca de estado só pode ocorrer durante esse breve intervalo de tempo em que o flip-flop está ativado. Entre duas transições sucessivas do mesmo tipo (ou subida ou descida) do sinal de controle, o flipflop mantém o último estado adquirido. Dependendo de sua construção, um flip-flop pode ser disparado pela transição de subida ou pela transição de descida do sinal de controle. Diz-se então, que flip-flops são disparados pela borda (ascendente ou descendente, conforme for o caso), enquanto que “latches” são sensíveis ao nível lógico (alto ou baixo, conforme for o caso). A seguir, serão estudados os flip-flops mais utilizados. 31 Eletrônica Digital Mecatrônica – 2º Etapa 7.3.1 – Flip-flop mestre escravo O flip-flop D mestre-escravo é composto por dois “latches” D conectados em cascata, conforme mostra a Figura 25: o primeiro é chamado de mestre e o segundo é de escravo. O sinal de controle externo está conectado diretamente ao controle do “latch” mestre e ao inversor cuja saída está conectada ao controle do “latch” escravo. Figura 25 - Flip-flop tipo D mestre escravo. Analisando-se as conexões, é possível deduzir que os dois “latches” funcionam de maneira complementar com relação ao sinal de controle externo: enquanto o controle vale 1, o mestre está ativado e o escravo está mantendo seu estado anterior e enquanto o controle vale 0, o mestre está mantendo seu estado anterior e o escravo está ativado. Como a entrada do escravo está conectada à saída do mestre, o último valor lido durante a ativação do mestre aparecerá na saída do escravo no semiperíodo seguinte. Do ponto de vista externo, o flip-flop D mestre-escravo da Figura 25 funciona como se fosse disparado pela borda descendente do sinal de controle: o último valor de D amostrado pelo “latch” mestre antes da borda descendente fica armazenado, aparecendo na saída Q do “latch” escravo logo após a mesma borda descendente. 8.3.2 – Flip-flop disparados pela borda Um flip-flop disparado pela borda, também referenciado por sensível à borda, ignora o sinal de controle enquanto este se encontra estável num dos dois níveis lógicos. Porém, quando o sinal de controle passa por uma transição, o flip-flop disparado pela borda fica ativado por um breve instante durante o qual as entradas podem, ou não, determinar a troca de seu estado. Dependendo da maneira como é construído, o flip-flop será disparado ou somente pela borda ascendente ou somente pela borda descendente. A Figura 26 mostra o circuito de um flip-flop D disparado pela borda ascendente, feito com portas NAND de duas entradas. 32 Eletrônica Digital Mecatrônica – 2º Etapa Figura 26 - Flip-flop D disparado pela borda ascendente. A tabela de transição de um flip-flop D disparado pela borda ascendente é mostrada a seguir. Tabela 10 - Tabela de transição de estados para o flip-flop D disparado pela borda ascendente. Na tabela anterior, o símbolo ↑ indica que a ativação do flip-flop é instantânea e só ocorre durante as bordas ascendentes do sinal de controle C. Por outro lado, entre duas bordas ascendentes consecutivas do sinal de controle, o flip-flop mantém o estado anteriormente armazenado. O símbolo do flip-flop D é mostrado na Figura 27; o triângulo colocado na entrada de controle C indica que a ativação se dá pela borda ascendente, e não pelo nível lógico, como ocorre no “latch D”. Figura 27 - Símbolo do flip-flop D disparado pela borda ascendente. Além do flip-flop D existe também o flip-flop JK, cujo funcionamento é mostrado na Tabela 11. Note que seu funcionamento assemelha-se ao do latch RS, exceto que a combinação de entradas (J = 1;K = 1) não leva a um estado proibido, mas sim à complementação do estado anterior. Da mesma forma que o flip-flop D, esse flip-flop é ativado instantaneamente durante a passagem de uma borda ascendente do sinal de controle. Entre duas bordas ascendentes consecutivas, o flip-flop mantém o estado anterior. 33 Eletrônica Digital Mecatrônica – 2º Etapa Tabela 11 - Tabela de transição de estados para o flip-flop JK disparado pela borda ascendente. O símbolo do flip-flop JK disparado pela borda ascendente é mostrado na Figura 28. Também nesse símbolo, o triângulo na entrada de controle indica que a ativação se dá pela borda ascendente. Figura 28 - Símbolo do flip-flop JK disparado pela borda ascendente. 8.3.3– Flip-flops disparados pela borda descendente Um flip-flop disparado pela borda descendente é ativado apenas no instante em que o sinal de controle passa pela borda descendente. Nesse instante, o flip-flop amostra os sinais das entradas (D ou JK), podendo mudar de estado conforme o valor destas entradas. Entre duas bordas descendentes consecutivas, o flip-flop mantém o estado anterior. A Tabela 12 e a Tabela 13 mostram o funcionamento do flip-flop D e do flip-flop JK disparados pela borda descendente, respectivamente. Tabela 12 - Tabela de transição de estados para o flip-flop D disparado pela borda descendente. Tabela 13 - Tabela de transição de estados para o flip-flop JK disparado pela borda descendente. 34 Eletrônica Digital Mecatrônica – 2º Etapa A Figura 29 mostra os símbolos do flip-flop D e do flip-flop JK disparados pela borda descendente. Note a existência de um círculo antes da entrada de controle, indicando que os flip-flops são disparados pela borda descendente. Figura 29 - Símbolos para o flip-flop D (a) e para o flip-flop JK (b), ambos disparados pela borda descendente. Na Figura 30 é apresentado um resumo das possíveis lógicas de ativação para “latches” e/ou flip-flops. Figura 30 - Lógicas de ativação. 35 Eletrônica Digital Mecatrônica – 2º Etapa 9 – Contadores São sistemas seqüenciais que contam o número de pulsos que ocorre em sua entrada durante certo intervalo de tempo. A indicação da contagem é em binário, ou seja, na base 2, e é obtida através das saídas binárias do contador. Existem dois tipos básicos de contadores: a) Os assíncronos - nos quais as transições dos flip-flops não são simultâneas; b) Os síncronos – nos quais as transições dos flip-flops são simultâneas e geradas por um sinal de “clock”. 9.1 – Contadores assíncronos São caracterizados por não terem entradas de “clock” comuns. Essa se faz apenas no primeiro flip-flop para os demais flip-flops o sinal de “clock” provém da saída do flip-flop anterior, Figura 31. Figura 31 - Contador assíncrono. Na figura anterior Q1, Q2, Q3 e Q4 são as saídas do contador e ENA é o sinal de habilitação para a operação de contagem na presença do sinal de “clock”. 9.2 – Contadores síncronos Neste tipo de contador todos os flip-flops são liberados na mesmo instante, pois estes contadores possuem as entradas de “clock” interligadas, portanto, o “clock” aciona todos os flip-flops simultaneamente. A indicação da contagem pode ser obtida diretamente das saídas dos flip-flops ou através de circuitos combinacionais, Figura 32. 36 Eletrônica Digital Mecatrônica – 2º Etapa Figura 32 - Contador síncrono. Na figura acima Q1, Q2, Q3 e Q4 são as saídas do contador. É importante ressaltar que existe no mercado uma variedade muito grande de circuitos contadores com as mais diversas características, como número de saídas, presença do sinal de “preset” e “clear”, circuito de geração de “clock” interno e outras. A título de exemplificação a seguir são apresentados os contadores CD4020, CD4040 e CD4060, Figura 33. Figura 33 - Circuitos integrado contadores comerciais. Repare nas diferenças entre estes três tipos de contadores, para maiores informações sobre os mesmos deve-se recorrer ao catálogo (“data sheet”) dos mesmos disponibilizado pelo fabricante. 10 – Multiplexadores e demultiplexadores No nosso dia a dia lidamos com vários sistemas que utilizam multiplexadores (MUX) e demultiplexadores (DEMUX), o mais comum deles e o aparelho de som de nossa residência, em uma chave seletora, selecionamos qual fonte sonora utilizaremos (Vinil, CD, Toca fitas, Radio, MD, etc.). A chave seletora então especifica qual o canal de comunicação que será utilizado, conhecida também como via de dados, e assim, esta 37 Eletrônica Digital Mecatrônica – 2º Etapa informação será amplificada e transmitida para os auto-falantes. Assim de uma maneira geral, o MUX, seleciona um entre vários sinais de entrada e o envia para a saída. 10.1 – Multiplexadores Um multiplexador digital ou seletor de dados é um circuito lógico que aceita diversos dados digitais de entrada e seleciona um deles, em certo instante, para a saída. O roteamento do sinal de entrada desejado para a saída é controlado pelas entradas de seleção. O multiplexador atua como uma chave digital controlada de várias posições, onde o código digital aplicado nas entradas de seleção controla qual será a entrada de dados chaveada para a saída. Por exemplo, a saída, Y, será igual à entrada de dados I0 para um determinado código de seleção; e será igual a I1 para outro código de seleção; e assim por diante, Figura 34. Em outras palavras, um multiplexador seleciona um entre vários dados de entrada e transmite o dado selecionado para um único canal de saída. Isto é chamado de multiplexação. Figura 34 – Multiplexador. 10.2 – Demultiplexadores Um multiplexador recebe varias entradas e transmite uma delas para a saída. Um demultiplexador realiza a operação inversa: ele recebe uma única entrada, I, e a distribui por várias saídas, Y0 a Y7. Desta forma, como no multiplexador, o código de seleção de entrada determina para qual saída entrada de dados será transmitida. Em outras palavras, o demultiplexador recebe uma fonte de dados e seletivamente a distribui para uma entre várias saídas, como se fosse uma chave de varias posições, Figura 35. As aplicações desses dispositivos são inúmeras desde sistemas de segurança a sistemas complexos de telecomunicações. Para todas as essas aplicações os dois dispositivos devem ser previamente sincronizados para que as saídas do demultiplexador sejam as respectivas entradas do multiplexador. 38 Eletrônica Digital Mecatrônica – 2º Etapa Figura 35 - Demultiplexador. A seguir é apresentado o circuito integrado comercial CD4051 este componente pode ser utilizado tanto como multiplexador ou demultiplexador, esta capacidade se deve ao fato de que suas entradas/saídas são bidirecionais, Figura 36. Maiores informações sobre este componente são obtidas no catálogo do mesmo. Figura 36 - Circuito integrado CD4051. 11 – Memórias A principal vantagem dos sistemas digitais sobre os analógicos é a capacidade de armazenar, facilmente, grandes quantidades de informação e/ou dados por períodos longos ou curtos de tempo. Esta capacidade de memória é o que torna os sistemas digitais tão versáteis e adaptáveis às diversas situações. Por exemplo, em um computador digital, a memória principal armazena instruções que informam ao computador o que fazer sob qualquer circunstância possível, de modo que o computador realize sua tarefa com um mínimo de intervenção humana. Vamos estudar os tipos mais comuns desses dispositivos e sistema de memória. Já estamos bem familiarizados com o flip-flop, que é um dispositivo eletrônico de memória. Os avanços na tecnologia LSI (“Large Scale Integration”) e VLSI (“Very Large Scale Integration”) tornaram possível a obtenção de um grande número de flipflops em um único chip, organizados em vários arranjos de memória. 39 Eletrônica Digital Mecatrônica – 2º Etapa Então as memórias são os dispositivos que armazenam informações, essas por sua vez codificadas, digitalmente, através de um código binário qualquer. Essas informações podem ser números, letras, caracteres quaisquer, comandos de operações, endereços ou ainda qualquer outro tipo de dado. Essas informações armazenam dados para endereçamento, programação e para constituir o conjunto de funções internas para a funcionalidade do próprio sistema. Outro tipo de aplicação consiste em utilizá-las para executarem quaisquer funções de circuitos combinacionais, e ainda, com o auxílio de contadores comuns e conversores, gerarem formas de onda de diversas maneiras de modo mais simples. 11.1 – Classificação das memórias As memórias podem ser classificas de acordo com as seguintes características: • • • • Acesso; Volatilidade; Escrita/Leitura ou apenas de leitura; Tipo de armazenamento. Vamos analisar cada item: • Acesso - As memórias armazenam informações em lugares denominadas palavras, ou localidade de memória. Cada uma das palavras possui um conjunto de bits que nos permite o seu acesso, a esse conjunto de bits damos o nome de endereço. Esse conceito é de fácil compreensão, pois como o próprio nome diz, o conjunto de bits representa o endereço da palavra onde está armazenada uma informação. O tempo de acesso de uma memória é o tempo necessário desde a entrada de um endereço até o momento em que a informação aparece na saída. Para as memórias de escrita/leitura é também o tempo necessário para a informação ser gravada. Podemos ter acesso a uma dada localidade de memória de duas maneiras diferentes: • acesso seqüencial; • acesso aleatório; • Volatilidade - As memórias podem ser voláteis ou não voláteis. As memórias voláteis são aquelas que ao retirada a alimentação perdem as informações armazenadas. São memórias feitas, geralmente, a partir de semicondutores e na maioria das vezes, possuem como elemento de memória o flip-flop. Um exemplo típico é a memória RAM. As memórias não voláteis são aquelas que mesmo sem alimentação continuam com as informações armazenadas. Dentre essas se destacam as memórias magnéticas e as eletrônicas: ROM, PROM e EPROM; • Memórias de escrita/leitura ou memórias apenas de leitura - As memórias de escrita/leitura são aquelas que permitem acesso a uma célula qualquer para escrevermos a informação desejada, além disso, permitem o acesso também para a leitura do dado. As memórias RAM também se enquadraram nessa situação. 40 Eletrônica Digital Mecatrônica – 2º Etapa Por sua vez, as memórias apenas de leitura, são aquelas em que a informação é fixa, só podendo efetuar-se a leitura de cada célula. São também conhecidas como ROM (“Read Only Memory”); • Tipos de armazenamento - Quanto ao tipo de armazenamento as memórias classificam-se em estáticas e dinâmicas. As memórias de armazenamento estático são aquelas em que uma vez inserido o dado numa célula, este lá permanece. As memórias de armazenamento dinâmico são aquelas em que necessitamos inserir a informação de tempos em tempos, pois de acordo com as características de seus elementos internos essas informações são perdidas após um determinado tempo. As memórias de armazenamento estático apresentam como vantagem a simplicidade de utilização quando comparadas às dinâmicas. Em contrapartidas as memórias estáticas são mais lentas para acesso que as dinâmicas. 11.2 – Terminologia O estudo dos sistemas e dos dispositivos de memória está repleto de termos. É de grande valia compreender o significado de alguns termos mais básicos, que são apresentados a seguir: • Célula de memória - Um dispositivo ou circuito elétrico utilizado para armazenar um único bit (0 ou 1). Exemplos de célula de memória incluem: um flip-flop, um capacitor carregado e uma pequena região numa fita ou disco magnético; • Palavra de memória - Um grupo de bits (células) em uma memória que representa instruções ou dados de algum tipo. Por exemplo, um registrador de oito flip-flops pode ser considerado uma memória que esta armazenando uma palavra de 8 bits. Os tamanhos de palavra nos computadores modernos variam tipicamente de 4 a 64 bits, dependendo do porte do computador; • Byte - Um termo especial usado para um grupo de oito bits. Um byte sempre é constituído de 8 bits. Tamanhos de palavra podem ser expressos em bytes assim como em bits. Por exemplo, uma palavra de 8 bits é também uma palavra de um byte; uma palavra de 16 bits tem dois bytes, e assim por diante; • Capacidade - Uma maneira de especificar quantos bits podem ser armazenados em um determinado dispositivo de memória ou num sistema de memória completo. Para ilustrar, suponha que temos uma memória capaz de armazenar 4096 palavras de 20 bits. Isto representa uma capacidade total de 81920 bits ( 4096 × 20 = 81920 ). Poderíamos também expressar essa capacidade de memória como 4096 × 20 . Quando representada desse modo, o primeiro número (4.096) é o número de palavras, e o segundo número (20) é o número de bits por palavra (tamanho da palavra). O número de palavras em uma memória freqüentemente é um múltiplo de 1024. É comum usar a designação "1K" para representar 1024 = 210 quando nos referimos à capacidade de memória. Logo, 41 Eletrônica Digital Mecatrônica – 2º Etapa uma memória com uma capacidade de armazenamento de 4 K × 20 é na verdade uma memória de 4096 × 20 . O desenvolvimento de memórias maiores trouxe a designação "1M" ou "1 mega" para representar 220 = 1048576. Assim, uma memória que possui uma capacidade de 2 M × 8 tem na verdade uma capacidade de 2097152 × 8 . A designação "giga" se refere a 230 = 1073741824; • Densidade - Outro termo para capacidade. Quando dizemos que um dispositivo de memória tem uma densidade maior do que outro, queremos dizer que ele pode armazenar mais bits no mesmo espaço, ou seja, ele é mais de denso; • Endereço - É um número que identifica a posição de palavra na memória. Cada palavra armazenada em um dispositivo ou sistema de memória possui um endereço único. Endereços sempre existem num sistema digital como um número binário, embora, por conveniência, números em octal, hexadecimal e decimal sejam freqüentemente utilizados para representar esses endereços, Figura 37; Figura 37 - Organização da memória. A Figura 37 ilustra uma pequena memória constituída de oito palavras. Cada uma destas oito palavras tem um endereço específico representado por um número de três bits que varia de 000 até 111. Sempre que nos referimos a uma posição específica na memória, utilizamos seu código de endereço para identificá-la. • Operação de Leitura - Operação na qual a palavra binária armazenada numa determinada posição (endereço) de memória é detectada e então transferida para outro dispositivo. Por exemplo, se desejamos utilizar a palavra 4 da memória da figura anterior para algum propósito, devemos realizar uma operação de leitura no endereço 100. A operação de leitura freqüentemente é chamada de operação de busca, pois a palavra está sendo buscada da memória. Utilizaremos os dois termos indistintamente; • Operação de Escrita - Operação na qual uma nova palavra é colocada numa determinada posição de memória. Também é chamada de operação de armazenamento. Sempre que uma nova palavra é escrita numa posição de memória, ela substitui a palavra que estava previamente armazenada lá; 42 Eletrônica Digital Mecatrônica – 2º Etapa • Tempo de Acesso - Uma medida da velocidade de operação de um dispositivo de memória. É o tempo necessário para realizar uma operação de leitura. Mais especificamente, é o tempo entre a memória receber uma nova entrada de endereço e os dados se tornarem disponíveis na saída da memória. • Memória Volátil - Qualquer tipo de memória que necessita da aplicação de energia, alimentação, para poder armazenar informação. Se a energia elétrica é removida, todas as informações armazenadas na memória são perdidas. Muitas das memórias semicondutoras são voláteis, enquanto todas as memórias magnéticas são não-voláteis, o que significa que elas podem manter a informação sem energia elétrica; • Memória de Acesso Aleatório (RAM – “Random Access Memory”) - Memória na qual a posição física real de uma palavra da memória não tem efeito sobre o tempo necessário para ler ou escrever nesta posição. Em outras palavras, o tempo de acesso é o mesmo para qualquer endereço na memória. A maioria das memórias semicondutoras são de acesso aleatório; • Memória de Acesso Seqüencial (SAM – “Sequence Access Memory”) - Um tipo de memória no qual o tempo de acesso não é constante, mas varia dependendo do endereço. Uma determinada palavra armazenada é encontrada percorrendo todos os endereços até que o endereço desejado seja alcançado. Isto produz tempos de acesso que são muito maiores do que os das memórias de acesso aleatório. Um exemplo de dispositivo de memória de acesso seqüencial é uma fita magnética. Para ilustrar a diferença entre SAM e RAM, considere a situação na qual você gravou 60 minutos de música numa fita cassete de áudio. Quando desejar alcançar uma música em particular, você terá que retroceder ou avançar a fita até a encontrar. O processo é relativamente lento, e o tempo necessário depende de onde a música desejada está gravada na fita. Isto é SAM, já que você percorreu através das informações registradas até encontrar o que estava procurando. A contrapartida RAM para isso seria um CD ou MD de áudio, no qual você pode rapidamente selecionar qualquer música informando o código apropriado, e ele gasta aproximadamente o mesmo tempo, não importando a música selecionada. As memórias de acesso seqüencial são utilizadas onde os dados a serem acessados sempre vêm numa longa seqüência de palavras sucessivas. A memória de vídeo do microcomputador, por exemplo, deve fornecer seu conteúdo na mesma ordem repetidamente para manter a imagem na tela. • Memória de Leitura e Escrita (RWM – “Read/Write Memory”) - Qualquer memória que possa ser lida ou escrita de maneira igualmente fácil; • Memória somente de Leitura (ROM – “Read-Only Memory”) - Uma vasta classe de memórias semicondutoras, projetadas para aplicações nas quais a razão entre as operações de leitura e escrita é muito alta. Tecnicamente, uma ROM pode ser escrita (programada) apenas uma vez, e esta operação normalmente é realizada pelo fabricante da mesma. Depois disso, as informações podem ser somente 43 Eletrônica Digital Mecatrônica – 2º Etapa lidas da memória. Outros tipos de ROM são na verdade RMM (“read-mostly memories”), nas quais se pode escrever mais de uma vez; porém a operação de escrita é mais complicada do que a de leitura, e não é realizada freqüentemente. Todas as ROMs são não-voláteis e mantém os dados quando a energia é removida; • Dispositivos de Memória Estática - Dispositivos de memória semicondutora nos quais os dados permanecem armazenados enquanto a energia está presente, sem a necessidade de reescrever periodicamente os dados na mesma; • Dispositivos de Memória Dinâmica - Dispositivos de memória semicondutora nos quais os dados não permanecem armazenados, mesmo com a energia presente, a menos que os dados sejam periodicamente reescritos. Sendo esta operação de reescrita denominada de “refresh”; 11.3 – Princípios de operação da memória Embora cada tipo de memória seja diferente na sua operação interna, certos princípios básicos são comuns a todas elas. Figura 38 - Operação da memória. Todos os dispositivos de memória necessitam de diversos tipos diferentes de linhas de entrada e de saída para realizar as seguintes funções, Figura 38: 1. Selecionar o endereço na memória que está sendo acessado para uma operação de leitura ou escrita; 2. Selecionar uma operação de leitura ou escrita que será realizada; 3. Fornecer os dados de entrada a serem armazenados na memória durante uma operação de escrita; 4. Manter os dados de saída vindos da memória durante uma operação de leitura; 5. Habilitar (ou desabilitar) a memória de modo que ela responda (ou não) às entradas de endereçamento e ao comando de leitura/escrita. 44 Eletrônica Digital Mecatrônica – 2º Etapa 11.3.1 – Entradas de endereço Utilizando o bloco anterior como exemplo, a memória armazena 32 palavras, logo a mesma possui 32 posições de armazenamento diferentes e, portanto possui 32 endereços binários diferentes, variando de 00000 até 11111 (0 a 31 em decimal). Desta forma, existem cinco entradas de endereço, A0 até A4. Para acessar cada uma das posições de memória para uma operação de leitura ou escrita, o código de endereçamento de cinco bits para essa posição é aplicado nas entradas de endereço. De um modo geral, N entradas de endereço são necessárias para uma memória que possui uma capacidade de 2N palavras. Podemos visualizar a memória da Figura 38 como um arranjo de 32 registradores, no qual cada registrador guarda uma palavra de quatro bits. Cada posição é mostrada contendo quatro células de memória que guardam 1’s ou 0’s, que formam a palavra de dados armazenada nesta posição. Vejamos o seguinte exemplo, a palavra 0110 está armazenada no endereço 00000, a palavra de dados 1111 está armazenada no endereço 00010, e assim por diante. 11.3.2 – A entrada R/W Esta entrada controla qual operação deve ser realizada na memória: leitura (R – “read”) ou Escrita (W – “write”). A entrada é identificada por R / W e, como não existe a barra sobre R, isto indica que a operação de leitura ocorre quando R / W = 1. A barra sobre W indica que a operação de escrita acontece quando R / W = 0 . Outros identificadores (nomenclaturas de outros autores) são usados freqüentemente para essa entrada. Dois dos mais comuns são W (escrita) e WE (“write enable” - habilitação de escrita). Novamente, a barra indica que a operação de escrita ocorre quando a entrada está em nível baixo, portanto, fica subentendido que a operação de leitura ocorre para nível alto. 11.3.3 – Habilitação da memória Muitos sistemas de memória tem algum modo de desabilitar completamente uma parte ou toda a memória, de modo que ela não possa responder às outras entradas. Isto é representado na figura anterior pela entrada ME, embora ela possa ter nomes diferentes nos vários tipos de memória, tais como “chip enable” (CE) ou “chip select” (CS). Na figura, ela é mostrada como uma entrada ativa em nível alto que habilita a memória, de modo que ela não responderá às entradas de endereço e de R / W quando estiver em nível baixo. Este tipo de entrada é útil quando vários módulos de memória são combinados para formar uma memória maior. 12 – Conversores A/D e D/A 12.1 – Conversores A/D A maioria dos dados obtidos de sensores comuns, tais como sensores de temperatura, intensidade luminosa, posição, tensão, corrente e outros, fornecem sinais analógicos, ou seja, uma tensão que é proporcional à grandeza medida e que varia de 45 Eletrônica Digital Mecatrônica – 2º Etapa forma contínua numa faixa de valores. No entanto, a maioria dos equipamentos modernos que fazem a aquisição de dados destes sensores, trabalha com técnicas digitais. Isso significa que o dado analógico, precisa ser convertido para a forma digital. Para fazer esta conversão são utilizados circuitos denominados conversores analógicodigital, ou simplesmente A/D. Este dispositivo como seu próprio nome indica, realiza a conversão de sinais, cuja amplitude varia continuamente em sinais digitais correspondentes á amplitude do sinal original. Para converter se faz o uso de um comparador de tensão ou corrente - variando de acordo com a aplicação - que irá comparar o sinal analógico com o valor de referência. Desta forma os circuitos A/D devem preencher certos requisitos importantes quanto ao seu desempenho são eles: • Quantização; • Taxa de Amostragem; • Linearidade. 12.1.1 – Quantização Entre os dois valores extremos da escala de valores analógicos que devem ser convertidos para a forma digital existem infinitos valores intermediários, o que justamente caracteriza uma grandeza que varia de forma analógica. Entretanto, quando passamos um valor qualquer entre os dois valores extremos incluindo-os, não podemos representar qualquer quantidade, pois precisáramos para isso de um número infinito de bits. Assim, por exemplo, se utilizarmos na conversão 4 bits, teremos a possibilidade de representar apenas 16 valores na escala total de valores analógicos, e se usarmos 8 bits poderemos representar 256 valores, conforme indica a Figura 39. Se tivermos uma escala de 0 a 8 V, por exemplo, e usarmos 4 bits para a conversão, os "degraus" da escada de conversão terão 0,5 V de altura, o que significa que este conversor terá uma resolução de 0,5 V. Se usarmos um conversor A/D de 8 bits (256 "degraus" de resolução) para fazer um voltímetro de 0 a 10 V por exemplo, a resolução deste voltímetro será de 10/256 ou pouco menos de 0,04 V. 46 Eletrônica Digital Mecatrônica – 2º Etapa Figura 39 - Escala de conversão. Este comportamento "digital" pode ser observado em muitos instrumentos comuns, tais como os multímetros digitais em que, se a grandeza medida estiver num valor intermediário entre dois degraus da resolução do conversor A/D, o valor apresentado no display oscilará entre eles. Evidentemente, para uma maior precisão na conversão mais bits serão utilizados pelo conversor. Tipos com 8 a 16 bits são comuns nas aplicações industriais e em medidas, dependendo da quantidade de "passos" desejados na conversão, ou seja, a resolução do conversor. 12.1.2 – Taxa de amostragem Muitos processos de aquisição de dados de sensores, de processos ou de outras aplicações precisam ser rápidos. Um osciloscópio digital, por exemplo, deve medir as tensões instantâneas de um sinal em diversos pontos ao longo de um ciclo para poder apresentar esta forma de onda com precisão na tela. Se a freqüência do sinal for alta, isso implica a necessidade de se fazer amostragens num tempo extremamente curto. Os conversores A/D podem ser encontrados em tipos que possuem freqüências de amostragem numa ampla escala de valores. Os tipos mais rápidos têm suas velocidades especificadas em MSPS (“Mega Samples per Second” ou Mega Amostragens por Segundo). Uma máquina industrial ou um instrumento de uso geral como um multímetro pode usar conversores A/D relativamente lentos com taxas ou velocidades de amostragens de até algumas unidades por segundo. Um multímetro digital comum, por exemplo, faz de 1 a 10 amostragens por segundo apenas, dependendo do tipo. Todavia, um osciloscópio digital ou virtual que precise observar uma forma de onda de 10 MHz, deve, para ter uma definição razoável, realizar pelo menos 100 milhões de amostragens por segundo (10 pontos por ciclo). 12.1.3 – Linearidade A curva de conversão da grandeza analógica para a forma digital deve ser linear para um bom conversor. Isso significa que não existem desvios na correspondência 47 Eletrônica Digital Mecatrônica – 2º Etapa entre o valor analógico e a saída digital ao longo da escala de valores em que o conversor deve trabalhar. No entanto, na prática podem ocorrer pequenos desvios, de acordo com o que mostra a Figura 40. Figura 40 - Linearidade da conversão. Isso quer dizer que, em determinadas faixas de valores, a conversão pode ser menos precisa. Esta imprecisão é mais grave nos tipos de maior definição, pois os desvios podem ter a mesma ordem de grandeza que os "degraus" da escada de conversão, afetando assim a precisão final da mesma. 12.1.4 – Princípio de funcionamento Para fazer uma conversão de sinais analógicos para a forma digital existem diversas técnicas que são empregadas nos circuitos comerciais, muitas delas encontradas em circuitos integrados que são embutidos (“embedded”) em aplicações mais complexas, os quais fazem o controle de máquinas e equipamentos. Com o objetivo de fazer uma apresentação inicial, e conseqüentemente superficial sobre o funcionamento do conversor A/D, é apresentado o bloco comum a todos os conversores, que é o circuito de amostragem e retenção (“sample and hold”). Para um estudo aprofundado sobre este assunto o leitor deve recorrer à literatura específica. O valor dos sinais analógicos que devem ser convertidos para a forma digital corresponde a um determinado instante, cuja duração, em alguns casos, não vai além de alguns milionésimos de segundo. Assim, um primeiro bloco importante do conversor é um circuito que lê o valor do sinal a ser convertido num determinado instante e o armazena de modo que, mesmo que o sinal varie depois, os circuitos que fazem a conversão têm numa memória, neste caso um capacitor, seu valor. Este circuito é ilustrado em blocos na Figura 41. 48 Eletrônica Digital Mecatrônica – 2º Etapa Figura 41 - Diagrama em blocos do conversor A/D. O sinal a ser amostrado passa por um “buffer” de entrada cuja finalidade é não carregar o circuito externo, e ao mesmo tempo proporcionar isolamento do circuito de conversão. Na saída deste circuito temos uma chave eletrônica ou chaveador, que determina o instante exato em que a leitura do sinal deve ser feita. A chave fecha por uma fração de segundo (numa freqüência que depende da velocidade de amostragem) permitindo que o sinal carregue o capacitor C. Desta forma, quando a chave abre, esperando a leitura seguinte, o capacitor tem armazenado o valor da grandeza analógica a ser convertida. Esta tensão no capacitor é mantida no circuito conversor através de um “buffer” de saída durante o tempo que for necessário. Na Figura 42 temos um gráfico que indica de que modo a tensão de entrada varia e o circuito de amostragem e retenção mantém a saída constante durante os intervalos de conversão (que correspondem aos "degraus"). Figura 42 - Comparação entre a tensão de entrada e saída. 12.2 – Conversores D/A Os conversores digital/analógico são dispositivos que convertem um sinal digital em um sinal analógico, para tal os mesmos recebem em sua entrada um conjunto de bits, ou seja, uma palavra digital, e fornecem em sua saída um valor de tensão analógica referente ao sinal de entrada. Este tipo de conversores são muito utilizados para aplicações de controle de dispositivos onde após um processamento das informações 49 Eletrônica Digital Mecatrônica – 2º Etapa digitais é necessário atuar sobre algum dispositivo, como a intensidade de uma fonte de luz, velocidade de um motor, posição de um atuador e outros. Assim como nos conversores A/D estes dispositivos possuem as características de resolução, quantidade de bits por palavra, e de linearidade. Portanto, maiores explicações sobre estes conceitos são desnecessárias uma vez que foram apresentados linhas acima para o conversor A/D e são os mesmos. 50 Eletrônica Digital Mecatrônica – 2º Etapa Segunda lista de Exercícios de Eletrônica Digital Entrega: 1 – Qual a principal diferença entre os circuitos combinacionais e seqüenciais? 2 – Além do valor das entradas em um determinado instante qual é o outro fator que um circuito seqüencial considera para apresentar um valor de saída? 3 – Quais os valores para a saída, Q, do “latch” RS para as entradas a seguir? R 1 0 0 0 0 1 0 S 0 1 0 0 1 0 0 Q 4 – Qual a função do sinal de controle do “latch” RS controlado? 5 – Quais os valores para a saída, Q, do “latch” tipo D para as entradas a seguir? C 1 0 0 0 1 1 0 1 1 0 D 0 1 0 1 1 0 1 0 1 0 Q 6 – Considerando o “latch” RS controlado, qual a função do inversor inserido antes da entrada R do mesmo e que dá origem ao “latch” tipo D? 7 – Em que consiste a lógica de ativação complementar para os “latches”? 8 – O que são os dispositivos contadores? 9 – Qual a diferença entre contadores síncronos e assíncronos? 10 – Em que consistem os circuitos multiplexadores e demultiplexadores? 51 Eletrônica Digital Mecatrônica – 2º Etapa 11 – Explique por que existe a necessidade de se garantir o sincronismo entre os multiplexadores e demultiplexadores durante a operação dos mesmos. 12 – O que são dispositivos de memória? 13 – Classifique, resumidamente, as memórias de acordo com: • • • • Acesso; Volatilidade; Escrita/Leitura ou apenas de leitura; Tipo de armazenamento. 14 - Um certo dispositivo de memória semicondutora é especificado como 4 K ⋅ 8 . Quantas palavras podem ser armazenadas neste chip? Qual é o tamanho da palavra? Quantos bits este dispositivo pode armazenar no total? 15 – Explique o que são conversores A/D e conversores D/A. 52