364 SISTEMAS DIGITAIS APLICAÇÕES EM SISTEMAS DIGITAIS Nesta seção de aplicações em sistemas digitais, começamos a trabalhar com um sistema de controle de semáforo de trânsito. Estabelecemos aqui os requisitos do sistema, desenvolvemos um diagrama em bloco e criamos um diagrama de estados para definir a seqüência de operação. Faremos o projeto da parte do sistema que envolve lógica combinacional e consideraremos os métodos de teste. A temporização e as partes seqüenciais do sistema serão tratadas nos Capítulos 7 e 8. Requisitos Gerais de Sistema Um controlador digital é necessário para controlar um semáforo de trânsito na interseção de uma via principal e uma via. A via principal terá um sinal verde de pelo menos 25 s ou continuará verde enquanto não houver veículos na via. A via terá um sinal verde enquanto não existir veículos na via principal ou por um máximo de 25 s. Teremos um sinal amarelo de atenção durante 4 s entre a mudança do verde para o vermelho nas vias principal e. Esses requisitos estão ilustrados no diagrama ilustrado na Figura 6 65. Desenvolvimento de um Diagrama em Bloco do Sistema A partir dos requisitos podemos desenvolver um diagrama em bloco do sistema. Primeiro, sabemos que o sistema tem que controlar seis diferentes pares de luz. Essas luzes são vermelho, amarelo e verde para as duas direções da via principal e vermelho, amarelo e verde nas duas direções da via. Além disso, sabemos que existe uma entrada externa (além da alimentação) a partir do sensor de veículos na via. A Figura 6 66 mostra um diagrama em bloco mínimo com esses requisitos. Usando o diagrama em bloco mínimo do sistema, podemos começar a detalhálo. O sistema tem quatro estados, conforme indicado na Figura 6 65, assim é necessário um circuito lógico para controlar a seqüência de estados (lógica seqüencial). Além disso, são necessários circuitos para gerar os intervalos de tempo adequados de 25 s e 4 s que são necessários no sistema e para gerar um sinal de clock para a operação cíclica do sistema (circuitos de temporização). Os intervalos de tempo (longo e curto) e o sensor de veículo são entradas para a lógica seqüencial porque o seqüenciamento dos estados é uma função dessas variáveis. Os circuitos lógicos também são necessários para determinar em qual dos quatro estados o sistema está em qualquer momento especificado, para gerar as saídas adequadas para as luzes (decodificador de estados e circuito lógico de acionamento das luzes) e para iniciar os intervalos de tempo longo e curto. Os circuitos de interface são incluídos no semáforo e a unidade de interface para converter os níveis de saída do circuito de acionamento das luzes para as tensões e correntes necessárias para ligar cada uma das luzes. A Figura 6 67 mostra um diagrama em bloco mais detalhado mostrando esses elementos essenciais. Diagrama de Estados Um diagrama de estados mostra graficamente a seqüência de estados num sistema e as condições para cada estado e para as transições de um estado para o próximo. Na realidade, a Figura 6 65 é uma forma de diagrama de estados porque mostra a seqüência de estados e as condições. Definição de Variáveis Antes que um diagrama de estados tradicional possa ser desenvolvido, as variáveis é que determinam como as seqüências do sistema através dos estados tem que ser definidas. Essas variáveis e os seus símbolos são apresentadas a seguir: Presença de veículo na via = V s Temporizador de 25 s (temporizador longo) é ligado = T L principal principal principal principal Primeiro estado: pelo menos 25 segundos ou enquanto não existir veículo na via Segundo estado: 4 segundos Terceiro estado: máximo de 25 segundos ou até que não tenha veículo na via Quarto estado: 4 segundos FIGURA 6 65 Requisito para a seqüência do semáforo de trânsito.
CAPÍTULO 6 FUNÇÕES DE LÓGICA COMBINACIONAL 365 FIGURA 6 66 Um diagrama em bloco do sistema mínimo. Lógica de controle do semáforo Unidade de interface e semáforo Sensor de veículo principal Lógica de controle do semáforo Lógica combinacional Unidade de interface e semáforo Entrada do sensor de veículo Lógica seqüencial Código Gray principal Temporizadorizador Tempo- Clock curto longo Circuitos temporizadores Trigger longo Trigger curto Estudo finalizado neste capítulo Estudo finalizado no Capítulo 7 Estudo finalizado no Capítulo 8 FIGURA 6 67 Diagrama em bloco mostrando os elementos essenciais. Temporizador de 4 s (temporizador curto) é ligado = O uso de variáveis complementadas indica as condições opostas. Por exemplo, V S indica que não existe veículo na via, T L indica que o temporizador longo está desligado (off), T S indica que o temporizador curto está desligado (off). Descrição do Diagrama de Estados Um diagrama de estados é mostrado na Figura 6 68. Cada um dos quatro estados é indicado com uma seqüência de código
366 SISTEMAS DIGITAIS Gray de 2 bits, conforme indicado pelos círculos. A seta em loop em cada estado indica que o sistema permanece no estado sob a condição definida pela variável associada ou expressão. Cada uma das setas de um estado para o próximo indica uma transição de estado sob a condição definida pela variável associada ou expressão. Primeiro estado O código Gray para esse estado é. A luz da via principal é verde e a luz da via é vermelha. O sistema permanece nesse estado por pelo menos 25 s quando o temporizador longo é ligado (on) ou enquanto não existir veículo na via (T L V S).. O sistema vai para o próximo estado quando o temporizador de 25 s estiver desligado e houver um veículo na via (T L V S ). Segundo estado O código Gray para esse estado é. A luz na via principal é amarela (atenção) e a luz na via é vermelha. O sistema permanece nesse estado por 4 s quando o temporizador curto é ligado ( ) e passa para o próximo estado quando o temporizador curto for desligado ( ). Terceiro estado O código Gray para esse estado é. A luz na via principal é vermelha e a luz na via é verde. O sistema permanece nesse estado quando o temporizador longo é ligado e existir um veículo na via (T L V s ). O sistema vai para o próximo estado quando decorrer os 25 s ou quando não houver veículo na via, qualquer que ocorrer primeiro (T L V ).. Quarto estado O código Gray para esse estado é. A luz na via principal é vermelha e a luz na via é amarela. O sistema permanece nesse estado por 4 s quando o temporizador curto é ligado ( ) e retorna ao primeiro estado quando o temporizador curto desligar ( ). A Lógica Combinacional O foco dessa aplicação nesse capítulo é a parte relativa à lógica combinacional do diagrama em bloco mostrado na Figura 6 67. Os circuitos de temporização e de lógica seqüencial serão objetivos das seções de aplicações de sistemas nos Capítulos 7 e 8. Um diagrama em bloco para a lógica combinacional do sistema é desenvolvido S como sendo o primeiro passo do projeto. As três funções que essa lógica tem que realizar são definidas a seguir, sendo que o diagrama resultante, com um bloco para cada uma das três funções, é mostrado na Figura 6 69: Decodificador de estado Decodifica os 2 bits do código Gray a partir da lógica seqüencial para determinar em qual dos quatro estados o sistema se encontra. Circuito lógico de acionamento das luzes Usa o estado decodificado para ativar as luzes apropriadas do semáforo para as unidades das vias principal e. Circuito lógico de trigger Usa os estados decodificados para produzir sinais adequados para iniciar os temporizadores longo e curto. Implementação da lógica Combinacional Implementação da lógica do decodificador A parte relativa ao decodificador de estado tem duas entradas (código Gray de 2 bits) e uma saída para cada T L + V s Primeiro estado: principal: verde T L V s Primeiro estado: : vermelho Segundo estado: principal: amarelo : vermelho FIGURA 6 68 Diagrama de estados para o sistema de controle de semáforo mostrando a seqüência de código Gray. T L + V s Terceiro estado: principal: vermelho : verde T L V s
CAPÍTULO 6 FUNÇÕES DE LÓGICA COMBINACIONAL 367 Entradas de estado (Código Gray) Decodificador de estados Saídas de estado Circuito lógico de acionamento das luzes principal MR MY MG SR SY SG Saídas de acionamentos das luzes para o circuito de interface na unidade que comporta as luzes Longo Circuito lógico de trigger Curto Para os circuitos temporizadores FIGURA 6 69 Diagrama em bloco da lógica combinacional. Estados de entrada em código Gray Saídas dos estados FIGURA 6 7 A lógica do decodificador de estado. um dos quatro estados, conforme mostra a Figura 6 7. As duas entradas de código Gray são indicadas por e e as quatro saídas de estado são indicadas por,, e. As expressões Booleanas para as saídas de estado são as seguintes: A tabela-verdade para essa lógica do decodificador de estado é mostrada na Tabela 6. Implementação da Lógica de Acionamento das Luzes A lógica de acionamento das luzes recebe as quatro saídas de estado e produz seis saídas para ativação das luzes do semáforo. Essas saídas são indicadas por MR, MY, MG (para o vermelho (red), amarelo (yellow) e verde (green) da via principal (main)) e SR, SY, SG (para o vermelho, amarelo e verde da via (side)). Consultando a tabela-verdade na Tabela 6, podemos ver que as saídas do semáforo podem ser expressas como MR MY MG SR SY SG A lógica de acionamento das luzes pode ser implementada como mostra a Figura 6 7. Implementação do Circuito Lógico de Trigger O circuito lógico de trigger produz duas saídas. A saída longo é uma transição de BAIXO para ALTO que dispara o circuito de temporização de 25 s quando o sistema entra no primeiro () ou no terceiro () estados. A saída curto é uma transição de BAIXO para ALTO que dis-
368 SISTEMAS DIGITAIS TABELA 6 Tabela-verdade para a lógica combinacional ENTRADAS DE ESTADO SAÍDAS DE ESTADO SAÍDAS LUMINOSAS SAÍDAS DE TRIGGER MR MY MG SR SY SG LONGO CURTO As saídas de estado são ativas em nível ALTO e as saídas luminosas são ativas em nível ALTO. MR significa rua principal em vermelho (red), SG significa rua em verde (green), etc. MR MY MG SR SY SG FIGURA 6 7 Circuito lógico de acionamento das luzes. Longo Longo (a) Curto (b) Curto FIGURA 6 72 Circuito lógico de trigger. para o circuito de temporização de 4 s quando o sistema passa para o segundo () ou quarto () estados. As saídas de disparo (trigger) são mostradas na Tabela 6 e na forma de equações como a seguir: Trigger longo = + Trigger curto = + O circuito lógico de trigger é mostrado na Figura 6 72(a). A Tabela 6 mostra também que a saída Longo e a saída Curto são complementares, assim a lógica pode ser implementada com uma porta OR e um inversor, como mostra a parte (b) da figura. A Figura 6 73 mostra a lógica combinacional completa que combina o decodificador de estados, o circuito lógico de acionamento das luzes e o circuito lógico de trigger. Atribuições do Sistema Atividade Aplicar as formas de onda para o código Gray de 2 bits nas entradas e da lógica combinacional e desenvolver todas as formas de onda de saída. Atividade 2 Mostre como você implementaria a lógica combinacional com funções 74XX. Atividade opcional Escreva um programa VHDL descrevendo a lógica combinacional.
CAPÍTULO 6 FUNÇÕES DE LÓGICA COMBINACIONAL 369 Estados de entrada em código Gray MR MY MG SR SY SG Saída do grupo luminoso da via principal Saída do grupo luminoso da via Trigger longo Trigger curto FIGURA 6 73 Circuito lógico combinacional completo. RESUMO As operações de meio-somador e somador-completo são resumidas na Figura 6 74. Os símbolos lógicos com a numeração de pinos para os CIs usados nesse capítulo são mostrados na Figura 6 75. As indicações dos pinos podem diferir em algumas folhas de dados de fabricantes. As funções lógicas padrão das séries 74XX estão disponíveis para uso em projetos de lógica programável. Meio-somador A B C out Somador-completo A B C in C out Entradas Saída de Carry Soma A B C out Entradas Entrada de Saída de Carry Soma Carry A B C in C out FIGURA 6 74