Capítulo 11 – Circuitos MVL Capítulo 11 Circuitos MVL 11.1 Introdução Circuitos digitais possuem n valores, n possibilidade de sinal digital, ao qual está associado um determinado valor de tensão (modo de tensão) ou de corrente (modo de corrente). Os valores são nomeados por números, de 0 a n-1; n é a quantia de valores ou a base. 2 valores: n = 2 3 valores: n = 3 4 valores: n = 4 0,1 0,1,2 0,1,2,3 Valores lógicos podem ser expressos por meio de n. Para 4 valores: 0: 1: 2: 3: n-4 n-3 n-2 n-1 valor mínimo valor máximo As tensões associadas aos níveis lógicos 0,1,2 e 3 são V0, V1, V2 e V3, respectivamente. A análise das correntes (I0, I1, I2 e I3) não será apresentada. Um circuito projetado “em modo de corrente” atribui uma corrente para cada valor lógico. A potência em regime estacionário (permanente) também precisa ser verificada, ela pode não ser a mesma para todos os valores lógicos. O circuito pode ser projetado para usar o valor lógico que consuma maior potência durante menos tempo. Em circuitos booleanos, são definidos os seguintes parâmetros: VIL: VOL: VIH: VOH: Máxima tensão de entrada para valor “0”. Máxima tensão de saída para valor “0”. Mínima tensão de entrada para valor “1”. Mínima tensão de entrada para valor “1”. Tais parâmetros abordam a transição entre os níveis “0” e “1”, há, apenas, uma região de transição. Para circuitos ternários há duas regiões de transição, uma entre os níveis “0” e “1” e outra entre os níveis “1” e “2”. Para quatro valores, há três regiões. Para “n” valores, Marco Aurélio Seluque Fregonezi 179 Capítulo 11 – Circuitos MVL há “n-1” regiões. Para cada região, é preciso definir aqueles quatro parâmetros. Em muitos casos, também é necessário definir a corrente para cada parâmetro. As tensões associadas aos valores não precisam estar igualmente espaçadas entre si. Pode existir alguma função não linear que defina o valor de tensão para cada valor lógico: v=f(n); quando se deseja tornar a relação sinal-ruído constante para todos os valores lógicos. Uma função quaternária cujos valores lógicos 0,1,2 e 3 são associados aos níveis de tensão 0V,1V,2V e 3V, respectivamente, e cuja margem de erro absoluto seja de 0,1V, proporcionará uma margem de erro de 10% para o valor “1” e de 3,3% para o valor “4”, quanto menor for o valor lógico, maior será a probabilidade de ocorrer erro. Associando-se os valores lógicos a uma escala logarítmica de tensões, esse problema não existe. O conceito de dualidade diz que, para todos os circuitos analógicos e digitais, há um circuito cujas características são equivalentes, mas invertidas. A porta AND é a dual da porta OR (tanto em sua funcionalidade como em sua construção). A dualidade também vale para MVL. Se uma porta utiliza transistores BJT NPN, o seu dual usa transistores BJT PNP; se uma porta utiliza MOSFET de canal N, o seu dual usa MOSFET de canal P. 180 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL 11.2 Deslocadores Na lógica de Post estendida, há dois deslocadores, BASE e TOPO, sendo um o dual do outro. Isso significa que, com base no circuito BASE, basta construir o circuito dual para se obter o TOPO, e vice-versa. BASE de 2 valores TOPO de 2 valores V1 V1 VOUT VIN VOUT VIN V0 V0 V1 V0 V0 V2 V1 TOPO de 3 valores BASE de 3 valores V2 VOUT VOUT V1 V1 VIN V0 V0 V0 V0 V1 V2 TOPO de 4 valores V3 VOUT VOUT V2 V1 V2 BASE de 4 valores V3 V2 VIN V1 V1 VIN VIN V0 V0 V0 V1 V2 V3 V0 V1 V2 V3 Figura 11.1 – Gráficos dos deslocadores. Marco Aurélio Seluque Fregonezi 181 Capítulo 11 – Circuitos MVL Os circuitos dos conectivos, os comparadores de dominância, podem ser construídos com os mais variados dispositivos, como chaves hidráulicas, pneumáticas e mecânicas, ou sentenças lógicas; no campo da engenharia elétrica, os dispositivos mais utilizados são: 1. Diodo: 2. BJT: 3. MOSFET: Para fins didáticos. Menos usado. O mais utilizado. O deslocamento, na grande maioria das topologias de circuitos, é gerado por três alternativas, dependendo do tipo de dispositivo empregado: 1. VJ: 2. VBE: 3. VGS: Queda de tensão no diodo polarizado diretamente. Queda de tensão na junção direta do BJT saturado. Queda de tensão entre porta e fonte do MOSFET triodo. Para cada valor lógico, é atribuído um valor de tensão. Os gráficos mostram que a porta TOPO requer um nível de tensão acima daquele atribuído ao maior valor lógico, e a porta BASE requer um nível de tensão abaixo daquele atribuído ao menor valor lógico. Isso dificulta o emprego das duas portas no mesmo circuito. A seguir, exemplos de atribuição de valores de tensão, nos quais as tensões aumentam de 1 em 1V. Dois valores BASE TOPO 0 0 GND 1 0 V0 2 1 V1 2 2 VDD Três valores BASE TOPO 0 0 GND 1 0 V0 2 1 V1 3 2 V2 3 3 VDD Quatro valores GND V0 V1 V2 V3 VDD BASE TOPO 0 0 1 0 2 1 3 2 4 3 4 4 Tabela 11.1 – Exemplo de atribuição de valores de tensão [V]. Os gráficos também mostram que, para uma determinada faixa de tensão de entrada, a tensão na saída segue a da entrada, deslocada. Nessa faixa, atua o circuito de deslocamento, cuja função é a de adicionar (TOPO) ou subtrair (BASE) uma tensão. No circuito de deslocamento, o sinal é injetado em um terminal de um dispositivo, podendo ser: 1. Catodo (TOPO) ou anodo (BASE) de um diodo. 2. Base de um BJT. 3. Porta de um MOSFET. 182 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL VJ,VBE e VGS definem a diferença de tensão entre níveis lógicos consecutivos. Na outra faixa, a tensão de saída não segue mais a da entrada, permanece constante na tensão do menor nível lógico (TOPO) ou do maior nível lógico (BASE). Nessa faixa, atua o circuito de comutação, cuja função é a de comparar a tensão fornecida pelo circuito de deslocamento com a tensão do menor nível lógico (TOPO) ou do maior nível lógico (BASE); se essa diferença atinge certo patamar (tensão de comutação), o circuito de comutação entra em ação e leva a saída para o menor nível lógico (TOPO) ou o maior nível lógico (BASE). Trata-se da comutação realizada pelo operador MOD usado na definição dos deslocadores. Os valores de VJ, VBE ou VGS não são os mesmos para os do circuito de deslocamento. A tensão de comutação é determinada, de forma ideal, segundo os critérios a seguir: TOPO: BASE: Média entre o valor de tensão do maior nível lógico e VDD. Média entre o valor de tensão do menor nível lógico e GND. Os valores de VJ, VBE ou VGS são, então: TOPO: BASE: Tensão de comutação. Valor de tensão do maior nível menos a tensão de comutação. Com base nessas definições, e utilizando a atribuição de tensões da tabela 11.1, são determinados os valores dos módulos de VJ, VBE ou VGS (tabela 11.2). Para BJTs PNP e MOSFETs de canal P, esses valores são negativos. O projeto deve levar em consideração a não linearidade desses valores; por exemplo, o deslocamento provocado com aplicação de V0 não é, exatamente, o mesmo provocado com V1. Dois Três Quatro valores valores valores Deslocamento Comutação 1 1,5 1 2,5 1 3,5 Tabela 11.2 – Determinação o módulo de VJ, VBE ou VGS [V]. 11.3 Conectivos Na lógica de Epstein, há dois conectivos, Mínimo e Máximo, sendo um o dual do outro. Com base no circuito Mínimo, basta construir o circuito dual para se obter o Máximo, e Marco Aurélio Seluque Fregonezi 183 Capítulo 11 – Circuitos MVL vice-versa. Na lógica booleana, é mais fácil construir as portas NAND e NOR do que as portas AND e OR. O circuito mais simples fornece os conectivos deslocados, NAND e NOR, e, para obter os conectivos puros, AND e OR, é preciso incorporar um deslocador. O mesmo vale para circuitos MVL. Os conectivos mais simples são o Mínimo deslocado e o Máximo deslocado. Os dois conectivos sofrem deslocamentos antagônicos; o Mínimo sofre deslocamento TOPO e o Máximo sofre deslocamento BASE, formando, assim, as portas Mínimo-TOPO e Máximo-BASE, abreviadas para MINTOPO e MAXBASE. TOPO A /A Mínimo 0 1 0 0 0 0 1 BASE 1 0 A A/ 0 1 1 0 Máximo 0 1 1 0 1 MINTOPO 0 0 1 0 1 1 1 1 0 1 1 1 1 0 1 2 2 3 3 0 1 0 1 1 1 2 0 1 2 2 3 0 1 2 3 2 1 2 3 3 2 1 2 3 0 MAXBASE 0 1 0 1 0 1 0 0 Tabela 11.3 – Dois valores TOPO TOPO A /A 0 1 BASE 1 2 2 0 Mínimo 0 1 2 0 0 0 0 0 1 2 0 2 1 0 2 1 Máximo 1 0 1 1 2 0 1 2 MINTOPO 0 1 1 1 A A/ 1 1 2 2 0 1 2 0 0 1 2 1 1 1 2 2 2 2 2 0 1 2 0 2 0 1 1 0 0 1 Tabela 11.4 – Três valores BASE 0 1 Mínimo 0 1 2 3 0 0 0 0 0 2 1 1 1 0 1 2 3 0 1 1 1 1 A A/ 0 3 1 0 2 1 3 2 1 1 1 2 3 2 2 2 2 3 3 3 3 3 3 2 1 1 1 2 3 2 2 2 2 Máximo MINTOPO MAXBASE 2 1 2 0 A /A 1 1 2 2 2 0 1 2 3 0 0 1 2 3 MAXBASE 0 1 2 3 0 3 0 1 2 1 0 0 1 2 Tabela 11.5 – Quatro valores O fato dos circuitos dos conectivos incorporarem automaticamente os deslocadores é uma vantagem, pois, a partir deles, obtém-se os deslocadores, o que não é possível com os conectivos puros. Uma vez que as portas para os conectivos oferecem, naturalmente, um deslocamento, a porta BASE é a porta MAXBASE reduzida para uma entrada e a porta TOPO é a porta 184 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL MINTOPO reduzida para uma entrada. A porta “Mínimo” precisa ser gerada com uma porta MINTOPO seguida de uma porta TOPO (3 valores) ou duas portas TOPO (4 valores); não é recomendado juntar a porta MINTOPO com uma porta BASE, pois, além dessas portas usarem arquiteturas antagônicas, fato que complica o projeto do circuito integrado, ainda existe a possibilidade dessas portas usares níveis de tensão diferentes, fato verificado nas simulações. O mesmo vale para a porta MAXBASE. 11.4 Sub-circuitos e simbologia Para que circuitos possam ser construídos com as portas MAXBASE e MINTOPO sem ter que redesenhar os sub-circuitos dessas portas, elas podem ser gravadas como subcircuitos, e ser representadas por blocos, como sendo um único componente. Da mesma forma que nos circuitos binários, uma pequena circunferência desenhada na saída simboliza um deslocamento. Na porta, MAXBASE o deslocamento é BASE e, na porta MINTOPO, o deslocamento é TOPO. Os símbolos foram tirados da lógica booleana com base no fato de que MVL, para dois valores, coincide com a lógica booleana. Os deslocadores BASE e TOPO recebem o mesmo símbolo, por isso, nos circuitos, devem vir acompanhadas de seus respectivos nomes. BASE MAXBASE Máximo TOPO MINTOPO Mínimo Figura 11.2 – Simbologia utilizada em circuitos digitais (mínimo, máximo e deslocador). Marco Aurélio Seluque Fregonezi 185 Capítulo 11 – Circuitos MVL As portas MAXBASE e MINTOPO não podem ser construídas no mesmo circuito, possuem níveis de tensão diferentes. Também não se pode obter a porta MINTOPO a partir da porta MAXBASE e vice-versa pelo teorema de De Morgan, pois este teorema pode ser aplicado para a lógica aberta (Lukasiewicz) e fechada (Post), mas essas portas não pertencem a nenhuma destas lógicas, pois utilizam o conceito de máximo e mínimo da lógica aberta e os deslocadores BASE e TOPO da lógica fechada, é a mistura das duas lógicas. Figura 11.4 – Portas MAXTOPO e MINBASE. Figura 11.3 – Portas MAXBASE e MINTOPO. As portas MAXTOPO e MINBASE são obtidas da adição de uma (3 valores) ou duas (4 valores) portas BASE à porta MAXBASE e da adição de uma (3 valores) ou duas (4valores) portas TOPO à porta MINTOPO As portas MAXTOPO e MINBASE são obtidas da adição de uma (3 valores) ou duas (4 valores) portas BASE à porta MAXBASE e da adição de uma (3 valores) ou duas (4valores) portas TOPO à porta MINTOPO. Com mais um deslocador, pode-se, ainda, obter as portas MÁXIMO e MÍNIMO. 186 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL 11.5 Implementação da lógica de Post entendida A partir da porta MINTOPO3, são obtidos ALFA3, BETA3 e GAMA3. A partir da porta MINTOPO4, são obtidos ALFA4, BETA4, GAMA4 e DELTA4. Figura 11.5a – Simulação das portas lógicas (circuitos implícitos) ternárias. Marco Aurélio Seluque Fregonezi 187 Capítulo 11 – Circuitos MVL Figura 11.5 – Simulação das portas lógicas (circuitos implícitos) quaternárias. Figura 11.6 – As portas ALFA, BETA GAMA e DELTA (circuitos explícitos). 188 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL 11.6 Deslocadores em malha aberta Os deslocadores em malha aberta são um conjunto de m portas lógicas de n valores, em série, com apenas uma entrada. Este dispositivo é bastante útil na determinação do tempo de atraso das portas e dos erros nos níveis de tensão propagados. Figura 11.7 – Gráfico do último estágio do deslocador MAXBASE4. Figura 11.8 – Deslocadores de dois e três valores. Figura 11.9 – Deslocadores de quatro valores. Marco Aurélio Seluque Fregonezi 189 Capítulo 11 – Circuitos MVL 11.7 Exemplo Implementar a função: C = ( /A a B/ ) b ( ( //A c /B ) d A/ ) Figura 11.10 – A tabela-verdade Figura 11.11 – O circuito do exemplo. Figura 11.12 – O gráfico do exemplo, obtido no LMVS e no Waveform Analyser do Spice. Os dois gráficos coincidem. O circuito funciona corretamente. O circuito fornece o mesmo resultado fornecido pelo software LMVS, mostrando que os circuitos apresentados são coerentes com a teoria algébrica. Qualquer função de três e quatro valores pode ser simulada utilizando o mesmo procedimento. 190 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL 11.8 Circuitos seqüenciais Os circuitos mostrados e os programas simuladores correspondem à lógica combinacional, na qual o tempo não é levado em consideração. Serão apresentados circuitos seqüenciais; há estados temporais, uma sucessão de estados, uma seqüência no tempo, cujo espaçamento é dado pelo pulso de relógio (clock). 11.9 Flip Flop RS assíncrono (FF RS) Os circuitos seqüenciais mais simples são os biestáveis (dois valores), há, apenas, dois estados estáveis. Para três valores, os triestáveis e, para quatro valores, os quadriestáveis. Para n valores, tem-se os n-estáveis, que correspondem a uma sucessão de n portas (para n valores) em série, com uma realimentação da saída na entrada. O biestável mais simples é o RS (Reset-Set), um pulso na entrada “R” coloca a saída em valor “0”, um pulso na entrada “S” coloca a saída em valor “1”. Usando a porta NAND (MINTOPO para dois valores), o pulso é negativo (valor mínimo). Usando a porta NOR (MAXBASE para dois valores), o pulso é positivo (valor máximo). Para MVL, (n-estáveis), a nomenclatura muda. O nome Set x indica que, se tal entrada receber um pulso, a saída irá para o valor lógico x. Dois valores: Set 0 Set 1 Três valores: Set 0 Set 1 Set 2 Quatro valores: Set 0 Set 1 Set 2 Set 3 N valores: Set 0 Set 1 Set 2 Set 3 ... Marco Aurélio Seluque Fregonezi Set n-1 191 Capítulo 11 – Circuitos MVL ReSet Set Figura 11.13 – FF RS com NAND. Set ReSet Figura 11..14 – FF RS com NOR. Figura 11.15 – FF RS com MAXBASE2 e MINTOPO2. 192 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL Figura 11.16 – FF RS com MAXBASE3 e MINTOPO3. Figura 11.17 – FF RS com MAXBASE4 e MINTOPO4. Set 3 Set 0 Set 0 Set 3 Set 1 Set 2 Set 2 Set 1 Figura 11.18 – Gráfico do FF RS com MAXBASE4 MINTOPO4, respectivamente. Marco Aurélio Seluque Fregonezi 193 Capítulo 11 – Circuitos MVL Set 3 A ordem com a qual os es- Set 0 tímulos são fornecidos ao circuito Set 1 não altera a função de cada entra- Set 2 da do circuito, o estado anterior não é levado em consideração. Figura 11.19 – Gráfico do FF RS com MAXBASE4 com o estímulo diferente. 11.10 FF tipo D (datum) É preciso apresentar sobre o RS síncrono, também chamado de RS com controle. Figura 11.20 – FF RS síncrono. Um n-estável mais interessante é o do tipo D, que possui apenas uma entrada. Este flip-flop garante que sempre estará funcionando corretamente, para qualquer valor lógico de entrada. Ele elimina a vulnerabilidade do FF RS com relação ao problema de receber o comando Set e ReSet ao mesmo tempo. O FF D é obtido a partir do RS, e, tal como o RS, também possui a versão síncrona (ou com controle). No primeiro circuito, abaixo, o sinal de saída aparece complementado; para corrigir isso, adiciona-se mais um inversor, mostra- 194 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL do no segundo circuito (uma alternativa é ligar a carga na saída não complementada, no nó “D” logo acima do nó “/D”. Figura 11.21 – FF tipo D. Redesenhando o circuito, obtém-se o primeiro desenho da figura abaixo. Este circuito pode ser aperfeiçoado, conforme o segundo desenho. O terceiro desenho é a forma usual, com a diferença de que a conexão entre a saída da porta 6 e a entrada da porta 3, presente no primeiro circuito, é mantida, surgindo, então, a necessidade de se usar uma porta de três entradas. Essas redundâncias aumentam a rapidez do circuito. Figura 11.22 – FF tipo D em outras formas(3,10). Marco Aurélio Seluque Fregonezi 195 Capítulo 11 – Circuitos MVL Estes circuitos são formados por três etapas, cada uma consistindo em uma linha. 1. A primeira linha é uma rede de deslocamentos sucessivos que acompanha o sinal de entrada. Está sempre em sincronia com este sinal. 2. A segunda linha é um separador, uma ponte entre a primeira parte e a segunda parte. Por meio do pulso de clock, o sinal da primeira parte é transferido para a segunda parte (refresh rate). 3. A terceira linha contém o sinal amostrado da entrada, colhido em uma transição do pulso de clock. Enquanto outra transição não acontece, para que a amostragem aconteça, o sinal fica retido. circuito pode ser expandido para MVL. Figura 11.23 – FF D com MAXBASE2 e MINTOPO2. 196 Marco Aurélio Seluque Fregonezi Capítulo 11 – Circuitos MVL Figura 11.24 – FF D com MAXBASE3 e MINTOPO3. Figura 11.25 – Gráficos dos FFs tipo D síncronos com MAXBASE2 e MINTOPO2. Marco Aurélio Seluque Fregonezi 197 Capítulo 11 – Circuitos MVL Figura 11.26 – FF D com MAXBASE4 e MINTOPO4. 198 Marco Aurélio Seluque Fregonezi