SISTEMAS DIGITAIS Síntese com um flip-flop por estado Prof. Carlos Sêrro Adaptado para lógica positiva por Guilherme Arroz Dezembro de 2005 Sistemas Digitais 1 Métodos de síntese Prof. Carlos Sêrro  A síntese clássica que estudámos anteriormente tem um inconveniente: é morosa e complexa quando o número de entradas externas, de saídas e de estados é muito elevado  Os quadros de Karnaugh e as tabelas de excitações e de saídas são muito grandes  Seria interessante outro método de síntese que fosse mais simples Dezembro de 2005 Sistemas Digitais 2 Métodos de síntese Prof. Carlos Sêrro  Existem várias alternativas de síntese, mais ou menos complexas  Usando contadores, registos, etc.   No nosso curso vamos estudar um outro método, designado por síntese com 1 FF por estado O logigrama do circuito (o “produto” final do processo) é obtido directamente a partir do diagrama de estados Dezembro de 2005 Sistemas Digitais 3 Métodos de síntese Prof. Carlos Sêrro   Este método não usa tabelas de excitação nem quadros de Karnaugh Naturalmente, trocamos a simplicidade da síntese por mais lógica  Mais FFs: em vez do número mínimo de FFs, usamos 1 FF por estado  Ex: para 5 estados usamos 5 FFs, em vez de 3  Mais lógica nas excitações (porque usamos mais FFs) Dezembro de 2005 Sistemas Digitais 4 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  O princípio em que se baseia este método resulta de conseguirmos estabelecer uma relação biunívoca entre partes do diagrama de estados e partes do logigrama final do circuito Dezembro de 2005 Sistemas Digitais 5 Síntese c/ 1 FF por estado Prof. Carlos Sêrro   Quando a máquina está num determinado estado actual, a saída desse FF, no circuito, está activa, e as saídas dos outros estão inactivas Com o aparecimento de um flanco de comutação, a máquina passa ao estado seguinte, e o FF correspondente a esse estado passa agora a ter a sua saída activa e os outros não Dezembro de 2005 Sistemas Digitais 6 Síntese c/ 1 FF por estado Prof. Carlos Sêrro    Em resumo, em cada período de relógio apenas um FF tem a saída activa Ou seja, obtemos, no fim, uma espécie de registo de deslocamento complexo Evidentemente, temos de definir um estado inicial para a máquina, activando a saída desse FF e desactivando todas as outras  Activando inicialmente as entradas de Preset e de Clear assíncronas Dezembro de 2005 Sistemas Digitais 7 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Consideremos de novo o diagrama de estados de Mealy do detector de sequências 0101 sobrepostas, e vamos sintetizá-lo com 1 FF por estado Dezembro de 2005 Sistemas Digitais 8 Síntese c/ 1 FF por estado Prof. Carlos Sêrro   Começamos por perceber que, se temos 4 estados vamos ter 4 flip-flops A seguir convém estabelecer o estado inicial, A, fazendo o Preset assíncrono do FF A e o Clear dos restantes Dezembro de 2005 Sistemas Digitais 9 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  O estado A é estado seguinte do estado actual A se X=1, ou do estado actual C se X=1 DA = QA X + QC x Dezembro de 2005 Sistemas Digitais 10 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  O estado B é estado seguinte do estado actual A se X=0, ou do estado actual B se X=0, ou do estado actual D se X=0 DB = QA X + QB X + QD X Dezembro de 2005 Sistemas Digitais 11 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  O estado C é estado seguinte do estado actual B se X=1, ou do estado actual D se X=1 DC = QB X + QD X Dezembro de 2005 Sistemas Digitais 12 Síntese c/ 1 FF por estado O estado D é estado seguinte do estado actual C se X=0 Prof. Carlos Sêrro  QD = QC X Dezembro de 2005 Sistemas Digitais 13 Síntese c/ 1 FF por estado Finalmente, a saída Z vem a 1 no estado D se e só se X=1 Prof. Carlos Sêrro  Z = QD X Dezembro de 2005 Sistemas Digitais 14 Prof. Carlos Sêrro Síntese c/ 1 FF por estado Dezembro de 2005 Sistemas Digitais 15 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Transição incondicional  Vamos incondicionalmente de um estado actual A para um estado seguinte B (qualquer que seja o valor lógico nas entradas, no exemplo X) Dezembro de 2005 Sistemas Digitais 16 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Transição incondicional  Quando a máquina está no estado A, a saída do FF A está activa e a do FF B está inactiva  Quando a máquina passa ao estado B, a saída do FF B vem activa e a do FF A vem inactiva Dezembro de 2005 Sistemas Digitais 17 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Transição condicionada ou “fork”  Vamos de um estado actual A para um de vários estados seguintes, consoante o valor lógico numa ou mais entradas (no exemplo apenas uma entrada, X, logo transita-se de A para B ou para C) Dezembro de 2005 Sistemas Digitais 18 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Transição condicionada ou “fork”  Quando a máquina está no estado A, a saída do FF A está activa e as dos outros estão inactivas  Quando a máquina passa ao estado B, por exemplo,a saída do FF B vem activa e as dos outros vêm inactivas Dezembro de 2005 Sistemas Digitais 19 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Convergência ou “join”  Vamos de um de entre vários estados actuais para um estado seguinte comum  Na sua forma mais simples, essas transições não dependem dos valores lógicos nas entradas Dezembro de 2005 Sistemas Digitais 20 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Saídas de Mealy ou saídas condicionadas  Os dois exemplos possíveis são Z=X ou Z=X Z=X Z=X Dezembro de 2005 Sistemas Digitais 21 Síntese c/ 1 FF por estado Saídas de Mealy ou saídas condicionadas Prof. Carlos Sêrro  Dezembro de 2005 Sistemas Digitais 22 Síntese c/ 1 FF por estado Prof. Carlos Sêrro  Saídas de Moore ou saídas incondicionais  Os dois exemplos possíveis são Z=0 ou Z=1 Z=1 Z=0 Dezembro de 2005 Sistemas Digitais 23 Síntese c/ 1 FF por estado Saídas de Moore ou saídas incondicionais Prof. Carlos Sêrro  Dezembro de 2005 Sistemas Digitais 24