Circuitos Combinacionais Circuito Combinacional é aquele que executa uma expressão lógica através da interligação das várias portas lógicas existentes, sendo que as saídas dependem única e exclusivamente das entradas. Uma Expressão Lógica descreve uma função ou uma operação a ser concretizada por um circuito eletrônico (ou um software), de forma a resolver um determinado problema. 1 Blocos Lógicos e Circuitos Combinacionais Análise do problema e obtenção do circuito combinacional PROBLEMA: Suponhamos que você e 2 pilotos estão voando em um avião. Você permanece no local dos passageiros, enquanto os pilotos A e B estão na cabine de comando. Em determinado momento: o piloto A se junta a você. Este fato não causa preocupação, ainda temos o piloto B em seu posto, - Minutos depois: você descobre que o piloto B também se juntou a vocês. 2 Blocos Lógicos e Circuitos Combinacionais Analisando um problema Com base em sua habilidade de raciocinar logicamente, você deduz que o avião está sem piloto, e presumivelmente, você soará um alarme de modo que um dos pilotos responderá prontamente à urgência da situação. Alternativamente, suponha que foi fixado no assento de cada piloto um dispositivo eletrônico que fornece: Nível 1 (verdadeiro) - para o assento vazio Nível 0 (falso) - para o assento ocupado. 3 Blocos Lógicos e Circuitos Combinacionais Identificando variáveis e função lógicas: Construiremos um circuito elétrico com dois conjuntos de terminais de entrada e um conjunto de terminais de saída. O circuito deve ter a propriedade : A B Z 1 1 1 1 0 0 A = 1 - se o piloto A saiu de seu assento (entrada 1) B = 1 - se o piloto B saiu de seu assento (entrada 2) Z = 1 - se o avião esta sem piloto – tocar alarme (saída) 0 1 0 0 0 0 Verificamos que a relação entre a ocupação dos 2 assentos e o acionamento do alarme é a mesma de um circuito com 2 chaves em série, isto é, uma porta AND, portanto: 4 Blocos Lógicos e Circuitos Combinacionais Z = A.B Expressão lógica Circuito Praticando 1) Um fazendeiro chamado João tem um cachorro, que é meio lobo, uma cabra e várias cabeças de couve aguardando para serem transportadas para o mercado. O fazendeiro possui 2 celeiros, um na região sul e outro na região norte. O fazendeiro, o cachorro, as couves e a cabra estão todos no celeiro sul, mas ele tem serviço para executar nos dois celeiros, porém, se o cachorro é deixado com a cabra quando o fazendeiro esta ausente, ele morderá a cabra (desastre 1); se a cabra é deixada com as couves, ela irá come-las (desastre 2). 5 Blocos Lógicos e Circuitos Combinacionais Análise da situação Para evitar ambos os desastres, João nos pediu para construirmos um pequenos circuito com 4 chaves, representando o fazendeiro (em que celeiro ele se encontra), o cachorro, a cabra e as couves. A saída do circuito vai para uma lâmpada que deve acender sempre que houver um desastre iminente. Desta forma o fazendeiro será avisado sobre o que deverá levar consigo de um celeiro para o outro de forma a evitar problemas. 6 Blocos Lógicos e Circuitos Combinacionais PASSO 1 – levantamento das variáveis lógicas Variáveis lógicas: J - para representar que o fazendeiro esta no celeiro SUL; - para representar que o fazendeiro esta no celeiro NORTE; D - o cachorro está no celeiro SUL; -o cachorro esta no celeiro NORTE; G – a cabra está no celeiro SUL; –a cabra está no celeiro NORTE; C - as couves estão no celeiro SUL; - as couves estão no celeiro NORTE; L – lampada sinalizadora de desastre. 7 Blocos Lógicos e Circuitos Combinacionais PASSO 2 – levantando as funções lógicas A lâmpada deverá acender quando: 1. O fazendeiro esta no celeiro norte E o cachorro E a cabra estão no celeiro sul, OU se 2. O fazendeiro esta no celeiro norte E a cabra E as couves estão no celeiro sul, OU se 3. O fazendeiro esta no celeiro sul E o cachorro E a cabra estão no celeiro norte, OU se 4. O fazendeiro esta no celeiro sul E a cabra E as couves estão no celeiro norte. 8 Blocos Lógicos e Circuitos Combinacionais Passo 3 – escrevendo a expressão lógica Podemos então escrever uma expressão lógica que combina todas as possibilidades que levariam a um desastre: Desastre = L= . D .G + .C .G + J . . + J . . A lampada acenderá em cada uma das 4 situações, indicando que há um desastre eminente. 9 Blocos Lógicos e Circuitos Combinacionais Passo 4 – montagem da Tabela Verdade J D G C L 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 10 Número de Combinações: N = 2 4 = 16 .C .G . D .G J . . J . . Blocos Lógicos e Circuitos Combinacionais Passo 5 : desenho do circuito lógico 11 Blocos Lógicos e Circuitos Combinacionais Considerações Verificamos que se construirmos a tabela verdade a partir da expressão vamos perceber que para cada termo da expressão encontraremos duas situações possíveis como: Em . D . G teremos a lâmpada acessa independentemente do valor de C, para esses casos devemos considerar apenas um termo que não contem a variável da qual independe, no caso C. Mais adiante conheceremos técnicas de otimizar essas expressões. 12 Blocos Lógicos e Circuitos Combinacionais Exercício 3 Suponha que um estudante em uma universidade consulta o boletim da escola para determinar se ele esta ou não apto a matricular-se em um dado curso de eletrônica. Ele descobre que um estudante pode se matricular no curso se e apenas se ele satisfaz as seguintes condições: a) completou pelo menos 60 créditos e é um estudante de engenharia em boa situação (não sob teste), ou b) completou pelo menos 60 créditos e é um estudante de engenharia e tem a aprovação do departamento, ou c) completou menos que 60 créditos e é um estudante de engenharia sob teste, ou d) esta em boa situação e tem a aprovação do departamento, ou e) é um estudante de engenharia e não tem a aprovação do departamento. 13 Blocos Lógicos e Circuitos Combinacionais Solução exercício 3 - Identificando as variáveis lógicas: A – o estudante completou pelo menos 60 créditos; B – o estudante é um estudante de engenharia; C – o estudante esta em boa situação (não em teste); D – o estudante tem a aprovação do departamento Z – o estudante pode matricular-se no curso de eletrônica. Escrevendo a equação lógica: Z = ABC + ABD + ABC + CD + BD 14 Blocos Lógicos e Circuitos Combinacionais Tabela verdade A B C D Z 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 15 Número de Combinações: N = 2 4 = 16 Escrevendo a equação lógica: Z = ABC + ABD + ABC + CD + BD Blocos Lógicos e Circuitos Combinacionais Exercicio 4 – acionamento de bomba d’àgua O desenho ao lado mostra um processo simples para encher uma caixa dágua a partir do bombeamento da água de um rio próximo: Os sensores de nível alto (H) e de nível baixo(L) são utilizados para determinar o acionamento da bomba (B) e do alarme (A). Os sensores funcionam da seguinte forma: H=L=0 sensor desacionado, ou seja, a água está abaixo dele; H=L=1 sensor acionado, ou seja, a água está sobre ou acima dele. Projete o circuito de controle de acionamento da bomba. 16 Blocos Lógicos e Circuitos Combinacionais Exercicio 5 – Controle de utilização de uma impressora A figura ao lado mostra de forma esquemática a conexão de 4 computadores de uma determinada empresa a uma única impressora. Esta conexão é feita através de um circuito de controle. Qual é a expressão que descreve o funcionamento do circuito de controle para garantir que o mesmo obedeça às seguintes prioridades: setor administrativo (ADM) – prioridade 1 setor pessoal (PES) – prioridade 2 setor de engenharia (ENG) – prioridade 3 setor de vendas (VEM) – prioridade 4 Projete o circuito de controle. 17 Blocos Lógicos e Circuitos Combinacionais Exercício 6 – Controle de temperatura de uma estufa Uma estufa deve manter a temperatura interna sempre na faixa entre 15oC e 20oC controlada automaticamente por um sistema de controle digital. Para isso, foram instalados internamente dois sensores de temperatura que fornecem níveis lógicos 0 e 1 nas seguintes condições: T1 = 1 para temperatura >= 15oC T2 = 1 para temperatura >= 20oC Projetar um circuito combinacional para fazer o controle da temperatura desta estufa através do acionamento de um aquecedor A ou um resfriador R sempre que a temperatura interna cair abaixo de 15oC ou subir acima de 20oC, conforme mostra o diagrama de blocos a seguir Circuito de controle 18 A B T1 Blocos Lógicos e Circuitos Combinacionais T2