SISTEMAS DIGITAIS

  • Créditos: 04

  • Carga Horária: 72 horas

  • Professor: Eduardo Oliveira Freire

Introdução

  • Ementa:

    • Circuitos Lógicos;
    • Portas Lógicas;
    • Circuitos Digitais MSI
    • Circuitos Combinatórios e Seqüenciais;
    • Circuitos Digitais LSI;
    • Memórias;
    • PLA e PAL.
  • Objetivo:

    • Dominar os conceitos básicos de funcionamento e fundamentação teórica de circuitos e sistemas digitais.

Bibliografia

  • IDOETA, Ivan V. e CAPUANO, Francisco G., “Elementos de Eletrônica Digital”, 16a. Edição, Editora Érica, 1984;

  • PADILHA, Antônio J.G., “Sistemas Digitais” - Ed. McGraw Hill, 1993.

  • MALVINO, Albert Paul e LEACH, Donald P., “Eletrônica Digital: princípios e Aplicações, McGraw-Hill, 1987;

  • TAUB, Herbert, “Circuitos Digitais e Microprocessadores”, McGraw-Hill, 1984;

  • MALVINO, Albert Paul, “Microcomputadores e Microprocessadores”, McGraw-Hill.

Eletrônica Digital

  • É o ramo da eletrônica em que os circuitos envolvidos operam apenas com sinais que só podem assumir um número finito de valores.

  • A operação dos circuitos digitais pode ser descrita por um tipo especial de álgebra, que se chama álgebra de Boole ou álgebra Booleana.

  • A implementação dos circuitos digitais é feita através de diversos tipos de portas lógicas, que constituem a base para a construção de circuitos digitais mais complexos e que estudaremos em detalhes mais à frente.

Sinais Analógicos e Digitais

  • Um sinal Analógico são aqueles que podem assumir infinitos valores dentro de uma faixa. A tensão de 110 volts que existe nas tomadas de nossas casas é um exemplo de sinal analógico senoidal.

Escalas de Integração

  • Os circuitos digitais na maioria das vezes são encontrados no mercado na forma de circuitos integrados em diferentes escalas de integração. A depender da complexidade do circuito implementado no chip, ele pode ser classificado em um dos quatro tipos a seguir:

    • Integração em pequena escala (Small Scale Integration – SSI);
      • Entre 1 e 10 portas lógicas
    • Integração em média escala (Medium Scale Integration – MSI);
      • Entre 10 e 100 portas lógicas
    • Integração em larga escala (Large Scale Integration – LSI);
      • Entre 100 e 1000 portas lógicas
    • Integração em escala muito larga (Very Large Scale Integration – VLSI).
      • Acima de 1000 portas lógicas

Aplicações da Eletrônica Digital

  • Os circuitos digitais desempenham um papel cada vez mais importante no mundo de hoje. Eles são empregados em quase tudo que utiliza eletrônica, incluindo comunicações, controle, instrumentação e é claro, na informática.

  • O uso muito difundido deve-se a disponibilidade a baixos custos no mercado de uma infinidade de CI’s que contêm circuitos digitais extremamente poderosos. Hoje em dia, os microprocessadores mais poderosos, chegam a integrar centenas de milhões de portas lógicas, quase chegando ao fantástico número de 1 bilhão de portas lógicas em uma única pastilha de silício.

Álgebra de Boole

  • Uma grande parte do nosso pensamento e dos diversos tipos de processos desenvolvidos pelo homem consistem em encontrar respostas a perguntas que só podem Ter duas respostas. A lógica de dois estados teve uma maior influência sobre Aristóteles, que determinou métodos precisos de se encontrar a verdade. Esta lógica atraiu matemáticos, que intuitivamente sentiram algum tipo de processo algébrico dirigindo todo o pensamento.

  • Augustus De Morgan chegou perto da descoberta do elo entre a matemática e a lógica. No entanto, foi George Boole (1854) que reuniu tudo. Ele inventou um novo tipo de álgebra, que substituiu os métodos verbais de Aristóteles. A álgebra booleana não teve entretanto um impacto na tecnologia até quase um século depois, em 1938, quando Shannon aplicou a nova álgebra aos circuitos de chaveamento de telefonia. Graças ao trabalho de Shannon, os engenheiros logo perceberam que a álgebra booleana poderia ser utilizada para projetar e analisar circuitos de computador.

Álgebra de Boole e Circuitos Lógicos

Álgebra de Boole e Circuitos Lógicos

Álgebra de Boole e Circuitos Lógicos

Álgebra de Boole e Circuitos Lógicos

Álgebra de Boole e Circuitos Lógicos

Expressões Booleanas Geradas por Circuitos Lógicos

  • Podemos escrever a expressão booleana que é executada por qualquer circuito lógico. Vejamos por exemplo, qual a expressão que o circuito abaixo executa:

Circuitos Obtidos de Expressões Booleanas

  • Vimos até agora, que podemos obter a expressão que um circuito lógico executa. Podemos também desenhar um circuito lógico que execute uma expressão booleana qualquer, ou seja, podemos desenhar um circuito a partir de sua expressão característica.

Tabelas da Verdade que Representam Expressões Booleanas ou Circuitos Lógicos

  • Uma maneira de se fazer o estudo de uma função booleana é a utilização da tabela da verdade, que como vimos anteriormente, é um mapa onde se colocam todas as situações possíveis de uma dada expressão, juntamente com o valor por esta assumida.

  • Como já visto, existe uma ligação íntima entre o circuito lógico e sua expressão característica, ou seja, podemos obter circuitos a partir de expressões características, e podemos também obter as expressões características dos circuitos, portanto, uma tabela da verdade irá representar o comportamento tanto do circuito quanto de sua expressão característica.

Tabela da Verdade Obtida de uma Expressão Booleana

  • Para extrairmos a tabela da verdade de uma expressão seguimos a seguinte regra:

  • Montamos o quadro de possibilidades.

  • Montamos colunas para os vários membros (ou parcelas) da expressão.

  • Preenchemos estas colunas com os seus resultados.

  • Montamos uma coluna para o resultado final.

  • Preenchemos esta coluna com os resultados finais, que é simplesmente a soma das colunas de resultados dos membros.

Tabela da Verdade Obtida de uma Expressão Booleana

  • Exemplo 1: S = ABC + AD + ABD

  • Temos na expressão acima quatro variáveis: A, B, C e D, logo, teremos 24 possibilidades de combinações. O quadro de possibilidades ficará:

Tabela da Verdade Obtida de uma Expressão Booleana

Equivalência entre Blocos Lógicos

Equivalência entre Blocos Lógicos

Obtenção de portas NOR a partir de portas AND e portas NOT – Primeiro Teorema de Morgan

Obtenção de Portas OR a partir de AND e Inversores

  • Obtemos esta equivalência, colocando inversores nas entradas e na saída de uma porta AND, como ilustra a figura a seguir:

Obtenção de portas NAND a partir de portas OR e portas NOT – Segundo Teorema de Morgan

Obtenção de Portas AND a partir de Portas OR e Inversores

  • Obtemos esta equivalência, colocando inversores nas entradas e na saída de uma porta OR, como ilustra a figura a seguir:

Permutabilidade

  • Dois circuitos são ditos permutáveis quando eles são equivalentes, ou seja, sempre apresentam a mesma saída para as mesmas combinações das variáveis de entrada, desta forma, pode-se afirmar que sendo dois circuitos permutáveis, é possível substituir um pelo outro, sempre que se desejar.

Circuitos Combinacionais

  • Um dos capítulos mais importantes da eletrônica digital é o que trata dos circuitos combinacionais. É através do estudo destes que podemos compreender o funcionamento de circuitos tais como somadores, subtratores, circuitos que executam prioridades, codificadores, decodificadores, entre outros, muito utilizados na construção de computadores e outros sistemas digitais.

  • Definição: O circuito combinacional é aquele em que a saída depende única e exclusivamente das várias combinações entre as variáveis de entrada.

  • Precisamos utilizar um circuito lógico combinacional para solucionar problemas em que necessitamos de uma resposta, quando acontecerem determinadas situações, que são representadas pelas variáveis de entrada. Para construirmos estes circuitos, necessitamos de uma expressão característica, como já estudamos.

  • Precisamos então, obter uma expressão que represente uma dada situação. Para extrairmos uma expressão de uma situação, o caminho mais fácil será o de obtermos a tabela da verdade desta situação, e em seguida, levantarmos a expressão. Esquematicamente temos:

Expressões Booleanas e Circuitos a partir de Tabelas da Verdade

  • Nas últimas aulas, tratamos de expressões a partir de circuitos, circuitos a partir de expressões e tabelas da verdade a partir de circuitos e expressões.

  • Veremos agora, como podemos obter expressões e circuitos a partir de tabelas da verdade. Este é o caso mais comum na prática, pois geralmente necessitamos representar situações através de circuitos lógicos. É com esta finalidade que utilizamos as tabelas da verdade, pois elas mostram todas as situações possíveis e suas respostas.

  • Exemplo: Deseja-se utilizar um amplificador para ligar 3 aparelhos: um CD player, um toca-fitas e um rádio FM.

Circuito OU-Exclusivo

  • A função que ele executa, como o próprio nome diz, consiste em ter a saída igual a 1 sempre que as variáveis de entrada forem diferentes entre si. Podemos então montar a sua tabela da verdade, em seguida obter a sua expressão característica e finalmente esquematizarmos o circuito:

Circuito Coincidência

  • Neste circuito, quando as variáveis de entrada são iguais (coincidentes) a saída será igual a 1. O símbolo da porta Coincidência é semelhante ao símbolo da porta OU Exclusivo, com a saída invertida. Esta inversão pode ser comprovada, se compararmos a tabela da verdade dos dois circuitos. Devido à inversão, o bloco Coincidência é também conhecido como NOU Exclusivo (Exclusive NOR).

Circuitos OU Exclusivo e Coincidência Com Mais de Duas Variáveis

  • A função OU Exclusivo apresenta saída igual a 1 quando o número de entradas em nível lógico ‘1’ é impar, enquanto que a função Coincidência tem saída igual a ‘1’ quando o número de entradas em nível lógico ‘0’ é par. Dessa forma, sempre que o número de variáveis de entrada for impar, as funções OU Exclusivo e Coincidência serão equivalentes Por outro lado, sempre que o número de variáveis de entrada for par, as funções OU Exclusivo e Coincidência serão complementares.

Postulados da Álgebra de Boole

  • Postulado da Complementação

    • Este postulado mostra como são as regras da complementação. Chamaremos de A’ o complemento de A:
      • Se A = 0 => A’ = 1;
      • Se A = 1 => A’ = 0.
    • Através do postulado da complementação, podemos estabelecer a seguinte identidade:
      • A’’ = A
    • O bloco lógico que executa o postulado da complementação é o inversor.

Postulados da Álgebra de Boole

  • Postulado da Adição

    • Este postulado mostra como são as regras da adição na álgebra booleana:
      • 0 + 0 = 0
      • 0 + 1 = 1
      • 1 + 0 = 1
      • 1 + 1 = 1
    • Através deste postulado podemos estabelecer as seguintes identidades:
      • A + 0 = A
      • A + 1 = 1
      • A + A = A
      • A + A’ = 1
    • O bloco lógico que executa o postulado da adição é o OR.

Postulados da Álgebra de Boole

  • 3.1.3. Postulado da Multiplicação

    • É o postulado que determina as regras da multiplicação booleana.
      • 0  0 = 0
      • 0  1 = 0
      • 1  0 = 0
      • 1  1 = 1
    • Através deste postulado podemos estabelecer as seguintes identidades:
      • A  0 = 0
      • A  1 = A
      • A  A = A
      • A  A’ = 0
    • O bloco lógico que executa o postulado da multiplicação é o AND.

Propriedades da Álgebra de Boole

  • Propriedades Comutativas

    • Na Adição
      • A + B = B + A
    • Na Multiplicação
      • A  B = B  A
  • Propriedade Associativa

    • Na Adição
      • A + (B + C) = (A + B) + C = A + B + C
    • Na Multiplicação
      • A  (B  C) = (A  B)  C = A  B  C
  • Propriedade Distributiva

      • A  (B + C) = A  B + A  C

Teoremas de Morgan

Identidades Auxiliares

  • A + AB = A

  • A+A’B = A+B

    • = A+A’B = (A+A’B)’’
    • = (A’  (A’B)’)’
    • = (A’  (A+B’))’
    • = (A’A + A’B’)’
    • = (A’B’)’
    • = A+B
  • A+BC = (A+B)(A+C)

Formas Padrão das Funções Lógicas

  • Soma Padrão de Produtos

    • Veremos a seguir, a partir de exemplos, como qualquer função booleana pode ser transformada em uma soma padrão de produtos.
    • Exemplo 1: Dada a função lógica de 4 variáveis , expressar a função como uma soma de produtos.
    • Freqüentemente os termos individuais nas expressões na forma soma de produtos não envolvem o mesmo todas as variáveis de entrada da função (complementadas ou não). Se isto ocorresse sempre, haveria uma maior padronização, como veremos no exemplo seguinte.
    • Exemplo 2: Consideremos a função lógica de 3 variáveis f(A,B,C)=A+BC. Esta função já está na forma de uma soma de produtos. Escrevê-la novamente, de modo que se torne uma expressão em que todas as três variáveis de entrada apareçam em cada termo do produto.
    • Cada um dos termos das expressões obtidas é chamado de mintermo.

Formas Padrão das Funções Lógicas

Numeração dos Mintermos e Maxtermos

  • Consideremos inicialmente a numeração dos mintermos. Suponha uma função envolvendo as variáveis A, B e C. Um mintermo incluirá cada variável apenas uma vez (complementada ou não). Atribui-se 0 a cada variável complementada e 1 a cada variável não complementada. Se por exemplo o mintermo envolver A, B e C’, os números binários seriam 1, 1 e 0 respectivamente.

  • Um método consistente (embora arbitrário) e geralmente aceito para a numeração dos mintermos de uma dada função lógica consiste em fixar inicialmente a ordem em que aparecem as variáveis e atribuir valores numéricos na mesma ordem. Assim, o mintermo envolvendo A, B e C’ deve ser escrito ABC’ (e nunca AC’B ou BAC’, etc.), então o mintermo será 110 e ABC’=m6.

  • Quando tratamos com maxtermos, a regra para atribuir 1 ou 0 é invertida: uma variável complementada recebe 1 e uma não complementada, 0. Assim, o maxtermo A’+B+C recebe o número 100 = 4, e é representado por M4. O que foi citado anteriormente em relação à ordenação de mintermos aplica-se integralmente aos maxtermos.

Especificação de Funções em Termos de Mintermos e Maxtermos

  • Uma função lógica pode ser convenientemente especificada através de mintermos ou maxtermos, como mostra o exemplo a seguir:

    • Mintermos:
      • f(A,B,C) = A’B’C’+A’BC’+A’BC+ABC’+ABC
      • f(A,B,C) = m0 + m2 + m3 + m6 + m7
      • f(A,B,C) = (0,2,3,6,7)
    • Maxtermos:
      • f(A,B,C) = (A+B+C’)(A’+B+C)(A’+B+C’)
      • f(A,B,C) = M1 + M4 + M5
      • f(A,B,C) = (1,4,5)

Estruturas Utilizando Apenas um Tipo de Porta

  • Devido à disponibilidade comercial de portas lógicas, muitas vezes é conveniente gerar uma função lógica qualquer utilizando somente um tipo de porta. Normalmente utilizamos estruturas de dois níveis, que necessitam de 3 tipos de portas ao menos, portas NOT, AND e OR.

  • Existe um processo simples para converter estes tipos de estruturas em outras que envolvam somente um tipo de porta.

Estruturas Utilizando Somente um Tipo de Porta

Estruturas Utilizando Somente um Tipo de Porta

Simplificação de Expressões Booleanas

  • Utilizando o conceito da Álgebra de Boole, podemos simplificar expressões. Lembrando que cada circuito corresponde a uma expressão, veremos que simplificação de expressões significam simplificação dos circuitos correspondentes.

  • Para efetuarmos as simplificações existem basicamente dois processos. O primeiro deles é a simplificação através da álgebra de Boole, o segundo é a utilização dos mapas de Veitch-Karnaugh, como estudaremos mais à frente.

Comentários