Eletrônica
Eletrônica Digital: Descrevendo Circuitos Lógicos Algebricamente
No texto anterior falei sobre álgebra booleana. Assim como foi dito anteriormente, buscarei apresentar alguns passos para que possamos descrever algebricamente alguns circuitos lógicos.
Geralmente meus textos ficam muito extensos, e isso pode fazer com que o nosso objetivo principal sofra um pouco de desvios. Porém pretendo adotar um novo modelo, buscarei ser o mais claro e objetivo possível, mas, ao mesmo tempo didático.
Primeiramente, devemos entender que qualquer circuito lógico independente de sua complexidade pode ser descrito por operações booleanas, as mesmas que vimos no texto anterior (OR, AND e NOT). Pois as operações que conhecemos na álgebra booleana são básicas e formam a base para outros teoremas que ainda vou apresentar aqui no blog.
Como já conhecemos as operações booleanas e as porta lógicas básicas, vou apresentar um primeiro circuito lógico e descreverei passo a passo como obter a expressão algébrica do mesmo.
Seja o circuito lógico a seguir formado por uma porta AND e uma OR.
|
Figura 1 - Circuito lógico de porta AND e OR. |
Sempre ao tentarmos representar um circuito lógico algebricamente, estamos interessados em expressar a saída em função das entradas. Na Figura 1 estamos interessados na saída S em função das entradas A, B e C.
O primeiro passo é observar para onde as entradas estão direcionadas, ou seja, a quais portas elas estão conectadas. Claramente observamos que A e B estão sendo operados em uma porta AND e se recordarmos o texto anterior a saída deste tipo de porta é:E este resultado é enviado para a porta lógica OR e é operado junto com a entrada C de acordo com a operação booleana OR. O resultado desta saída já conhecemos muito bem e é:Esse resultado representa para nós a saída de nosso circuito. Assim, podemos finalmente escrever o resultado:Uma importante observação que devo fazer é, se a gente não tivesse conhecimento do circuito, que operação lógica seria realizado primeiro na expressão acima? A partir desta dúvida apresento a seguinte definição:
- Fica definido que, caso o circuito possua operações AND, essa operação é realizado primeiro a não ser que haja parênteses, sendo que as operação entre parênteses tem prioridade assim como na álgebra convencional.
Feito a definição acima, podemos prosseguir e identificar a ordem das operações para nosso exemplo, ou seja, de acordo com o que convencionamos a operação A AND B tem prioridade e é realizada primeiro.
Esse primeiro exemplo é simples, vamos a outro exemplo, porém vamos ver o que acontece quando tem-se uma porta NOT conectado em um circuito. Consideremos então o circuito lógico a seguir.
|
Figura 2 - Circuito lógico de porta NOT e OR. |
Vamos obter a expressão booleana que representa o circuito lógico acima. Seguindo o procedimento do exemplo anterior, observamos a entrada A conectado em uma porta NOT, como já conhecemos esta porta, temos o seguinte resultado:Esse valor é enviado para a porta OR e é operado juntamente com a entrada B sob a operação lógica OR. Logo o resultado obtido na operação OR é:Para nós este último resultado já representa a saída S em função de A e B, logo podemos escrever:Os exemplos contendo portas NOT são muito interessantes e as vezes por falta de prática acabamos confundindo-as na hora da obtenção da operação algébrica do circuito. Por isso, vou apresentar mais um exemplo, observe e compare a diferença do exemplo anterior com o exemplo a seguir.
Seja o circuito lógico apresentado a seguir.
|
Figura 3 - Circuito contendo porta OR e NOT. |
Para este exemplo o procedimento realizado é o mesmo, ou seja, observando a entrada temos as entradas A e B conectadas a uma porta OR. Como já conhecemos esta operação teremos o seguinte resultado:Esse resultado é levado diretamente a uma porta NOT, logo obtemos o seguinte resultado:Este já é para nós o resultado final, ou seja, a saída S escrita algebricamente em função das entradas A e B, logo, temos:
De forma simples e resumida apresentei os passos para obtermos a expressão algébrica de um circuito lógico. O que pretendo a seguir é trazer um último exemplo fazendo um "misto" do que vimos até agora. Vejamos o circuito lógico a seguir.
|
Figura 4 - Exemplo contendo várias portas lógicas básicas. |
Vamos obter a expressão algébrica da saída S em função das entradas A, B, C e D. Observe na imagem que as saídas de cada porta já está destacado, isso para facilitar nosso entendimento.
Seguindo o mesmo procedimento proposto no primeiro exemplo, temos a entrada A conectado a uma porta NOT e seu resultado pode ser visto na imagem. Em seguida temos uma porta AND com três entradas. O resultado desta porta AND também pode ser visualizado no diagrama.
Se observamos a mesma entrada A, esta é enviada para uma porta OR e é operado com uma entrada D, novamente o resultado pode ser visto na imagem. A saída desta porta OR é conectado a uma porta NOT. Enfim, o resultado tanto da porta AND quanto da porta NOT são enviados para a última porta AND. E finalmente podemos escrever a saída S em termos de suas entradas como:
Logo, este é o resultado final obtido do nosso último exemplo. Observe atentamente o uso dos parênteses neste caso. Cabe destacar que nem sempre as expressões obtidas serão triviais, ou seja, podemos encontrar casos em que a expressão final seja muito grande ou envolva grande número de operações.
Em vista dessa dificuldade existem os teoremas que nos ajudam a simplificar nossas expressões. E nos textos que se seguem apresentarei estes teoremas que são muito úteis para nós.
Para o próximo texto pretendo apresentar um pouco sobre como fazer para implementar o circuito a partir de uma dada expressão algébrica. Esse assunto está intimamente relacionado com o que acabamos de ver.
Um apelo que faço para você que está lendo meu texto (ou melhor meu resumo) é que, não deixe de ler a literatura de sistemas digitais. Na literatura você aprenderá muito mais sobre os assuntos que trato nos textos aqui do blog. Além disso, caso você não conheça nenhuma literatura a respeito do assunto, convido você a acessar a aba Livros onde indico vários livros os quais tenho contato e já estudei por meio deles.
Por fim vou terminando por aqui, espero que você tenha gostado. Compartilhe este texto com seus amigos, colegas, enfim ajude o blog a atingir mais pessoas. Curta nossa página no Facebook e fique ligado nas novidades.
Obrigado por ler meus textos e até o próximo!
loading...
-
Eletrônica Digital: Portas Lógicas E Introdução À Álgebra Booleana
No tutorial anterior falei sobre o display de 7 segmentos e algumas das técnicas utilizadas para detectar erros nas comunicações digitais básicas. Este tutorial marca um grande avanço nos estudos e nos tutoriais que já escrevi até agora, isso se...
-
Eletrônica Digital: Display De 7 Segmentos E Detecção De Erros
No tutorial anterior falei sobre código BCD, Gray e tabela ASCII, neste tutorial falarei sobre display de 7 segmentos e um pouco sobre as técnicas utilizadas na detecção de erros. Display de 7 Segmentos Hoje a tecnologia já está muito mais avançada,...
-
Eletrônica Digital: Faixa De Contagem E Conversões
No tutorial anterior apresentei os sistemas de numeração decimal, octal, hexadecimal e binário. Neste tutorial trataremos da conversão de números de um sistema de numeração para o outro e também sobre faixa de contagem. Os métodos que empregarei...
-
Arduino - Programa 08: Led Pulsante
Neste tutorial será apresentado um efeito pulsante com LED. Para isso faremos uso de uma saída PWM (Pulse Width Modulation). Figura 1 - LED PulsanteEste programa traz uma aplicação com iluminação, ou seja, se antes o LED era aceso e apagado,...
-
Arduino - Programa 01: Acendendo Um Led
Bom pessoal como prometido estarei iniciando hoje o primeiro tutorial de arduino, o primeiro programa me pareceu bem simples, acendendo um LED.Entretanto apesar de ser um programa bem pequeno ele não pode ser deixado de lado. Acho melhor mostrar o programa...
Eletrônica