Em um tutorial anterior nós olhamos para o digital Not Gate comumente chamado de inversor, e vimos que o estado de saída NOT gates é o complemento, oposto ou inverso do seu sinal de entrada.
Então, por exemplo, quando a entrada única para NOT gate é “ALTA”, seu estado de saída NÃO será “ALTA”. Quando seu sinal de entrada é “BAIXO” seu estado de saída NÃO será “BAIXO”, ou seja, “inverte” seu sinal de entrada, daí o nome “Inverter”.
Mas às vezes em circuitos eletrônicos digitais precisamos isolar as portas lógicas umas das outras ou fazer com que elas acionem ou comutem cargas maiores que as normais, como relés, solenóides e lâmpadas sem a necessidade de inversão. Um tipo de portão lógico de entrada única que nos permite fazer exatamente isso é chamado de “Buffer Digital”.
Não como o portão de entrada única, inversor de saída única ou NOT como o TTL 7404 que inverte ou complementa seu sinal de entrada na saída, o “Buffer” não realiza nenhuma inversão ou capacidade de tomada de decisão (como portões lógicos com duas ou mais entradas), mas em vez disso produz uma saída que coincide exatamente com a de sua entrada. Em outras palavras, um buffer digital não faz nada, pois seu estado de saída é igual ao estado de entrada.
Então os buffers digitais podem ser considerados como portões Idempotentes aplicando a Lei de Idempotentes de Boole porque quando uma entrada passa por este dispositivo seu valor não é alterado. Então o buffer digital é um dispositivo “não-invertente” e portanto dar-nos-á a expressão booleana de: Q = A.
Then we can define the logical operation of a single input digital buffer as being:
“Q is true, only when A is true”
In other words, the output ( Q ) state of a buffer is only true (logic “1”) when its input A is true, otherwise its output is false (logic “0”).
- The Single Input Digital Buffer
- Double Inversion using NOT Gates
- Digital Buffer Fan-out Example
- O “Tri-state Buffer”
- Tri-state Buffer Switch Equivalent
- Active “HIGH” Tri-state Buffer
- Active “HIGH” Inverting Tri-state Buffer
- Active “LOW” Tri-state Buffer
- Active “LOW” Inverting Tri-state Buffer
- Controle de Buffer de tri-estado
- Controle do barramento de dados do buffer de tri-estado
- Controle de Buffer Tri-estado
The Single Input Digital Buffer
Symbol | Truth Table | |
The Digital Buffer
|
A | Q |
0 | 0 | |
1 | 1 | |
Boolean Expression Q = A | Read as: A gives Q |
The Digital Buffer can also be made by connecting together two NOT gates as shown below. O primeiro irá “inverter” o sinal de entrada A e o segundo irá “reinvertê-lo” de volta ao seu nível original realizando uma dupla inversão da entrada.
Double Inversion using NOT Gates
You may be thinking, Bem, qual é o interesse de um Buffer Digital se ele não inverte ou altera seu sinal de entrada de alguma forma, ou toma qualquer decisão lógica ou operações como os portões AND ou OR fazem, então por que não usar apenas um pedaço de fio em vez disso, e isso é um bom ponto. Mas um Buffer Digital não-inversivo tem muitos usos na eletrônica digital com uma de suas principais vantagens sendo que ele fornece amplificação digital.
Buffers Digitais podem ser usados para isolar outros portões ou estágios de circuito uns dos outros evitando que a impedância de um circuito afete a impedância de outro. Um buffer digital também pode ser usado para acionar cargas de corrente elevadas, como interruptores transistor, porque sua capacidade de acionamento de saída é geralmente muito superior aos seus requisitos de sinal de entrada. Em outras palavras, os buffers podem ser usados para amplificação de potência de um sinal digital, uma vez que eles têm o que se chama uma alta capacidade de “fan-out”.
Digital Buffer Fan-out Example
O parâmetro Fan-out de um buffer (ou qualquer CI digital) é a capacidade de condução de saída ou a capacidade de corrente de saída de uma porta lógica dando uma maior amplificação de potência do sinal de entrada. Pode ser necessário conectar mais do que apenas uma porta lógica à saída de outra ou trocar uma carga de corrente elevada, como um LED, então um buffer nos permitirá fazer exatamente isso.
Geralmente a saída de uma porta lógica é normalmente conectada às entradas de outras portas. Cada entrada requer uma certa quantidade de corrente da saída do portão para mudar de estado, de modo que cada conexão adicional do portão adiciona à carga do portão. Assim, a fan-out é o número de cargas paralelas que podem ser acionadas simultaneamente por um buffer digital do portão lógico. Atuando como fonte de corrente, um buffer pode ter uma alta classificação de fan-out de até 20 portas da mesma família lógica.
Se um buffer digital tem uma alta classificação de fan-out (fonte de corrente), ele também deve ter uma alta classificação de “fan-in” (dissipador de corrente). No entanto, o atraso de propagação da porta se deteriora rapidamente em função do fan-in, portanto portas com um fan-in maior que 4 devem ser evitadas.
Então há um limite para o número de entradas e saídas que podem ser conectadas juntas e em aplicações onde precisamos desacoplar portas umas das outras, podemos usar um Buffer tri-estado ou driver de saída trista.
O “Tri-state Buffer”
Como o Buffer Digital padrão visto acima, há outro tipo de circuito de buffer digital cuja saída pode ser “eletronicamente” desconectada de seus circuitos de saída quando necessário. Este tipo de Buffer é conhecido como um Buffer de 3-Estados ou mais comumente um Buffer de Tri-estado.
Um Buffer de Tri-estado pode ser pensado como um interruptor controlado de entrada com uma saída que pode ser eletronicamente ligada “ON” ou “OFF” por meio de uma entrada de sinal externo “Control” ou “Enable” ( EN ). Este sinal de controle pode ser do tipo lógico “0” ou do tipo lógico “1” resultando que o buffer de tri-estado esteja em um estado permitindo que sua saída funcione normalmente produzindo a saída necessária ou em outro estado onde sua saída esteja bloqueada ou desconectada.
Então um buffer de tri-estado requer duas entradas. Uma é a entrada de dados e a outra é a entrada de habilitação ou controle, como mostrado.
Tri-state Buffer Switch Equivalent
Quando ativado em seu terceiro estado ele desativa ou desliga sua saída produzindo uma condição de circuito aberto que não está nem em uma lógica “ALTA” ou “BAIXA”, mas em vez disso dá um estado de saída de impedância muito alta, High-Z, ou mais comumente Hi-Z. Então este tipo de dispositivo tem duas entradas de estado lógico, “0” ou “1”, mas pode produzir três estados de saída diferentes, “0”, “1” ou ” Hi-Z “, razão pela qual é chamado de dispositivo “Tri” ou “3 estados”.
Note que este terceiro estado NÃO é igual a um nível lógico “0” ou “1”, mas é um estado de alta impedância no qual a saída dos buffers é eletricamente desconectada do resto do circuito. As a result, no current is drawn from the supply.
There are four different types of Tri-state Buffer, one set whose output is enabled or disabled by an “Active-HIGH” control signal producing an inverted or non-inverted output, and another set whose buffer output is controlled by an “Active-LOW” control signal producing an inverted or non-inverted output as shown below.
Active “HIGH” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 0 | |
1 | 1 | 1 | |
Read as Output = Input if Enable is equal to “1” |
An Active-high Tri-state Buffer such as the 74LS241 octal buffer, is activated when a logic level “1” is applied to its “enable” control line and the data passes through from its input to its output. When the enable control line is at logic level “0”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
An active-high tri-state buffer can also have an inverting output as well as its high impedance state creating an active-high tri-state inverting buffer as shown.
Active “HIGH” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 1 | |
1 | 1 | 0 | |
Read as Output = Inverted Input if Enable equals “1” |
The output of an active-high inverting tri-state buffer, such as the 74LS240 octal buffer, is activated when a logic level “1” is applied to its “enable” control line. The data at the input is passes through to the output but is inverted producing a complement of the input. When the enable line is LOW at logic level “0”, the buffer output is disabled and at a high impedance condition, Hi-Z.
The same two tri-state buffers can also be implemented with an active-low enable input as shown.
Active “LOW” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 0 | |
0 | 1 | 1 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Input if Enable is NOT equal to “1” |
An Active-low Tri-state Buffer is the opposite to the above, and is activated when a logic level “0” is applied to its “enable” control line. The data passes through from its input to its output. When the enable control line is at logic level “1”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
Active “LOW” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 1 | |
0 | 1 | 0 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Inverted Input if Enable is NOT equal to “1” |
An Active-baixo Buffer Tri-estado invertido é o oposto do acima, pois sua saída é habilitada ou desabilitada quando um nível lógico “0” é aplicado à sua linha de controle “habilitada”. Quando um buffer é habilitado por uma lógica “0”, a saída é o complemento da sua entrada. Quando a linha de controle de habilitação está no nível lógico “1”, a saída do buffer é desabilitada e uma condição de alta impedância, Hi-Z está presente na saída.
Controle de Buffer de tri-estado
Vimos acima que um buffer pode fornecer amplificação de tensão ou corrente dentro de um circuito digital e também pode ser usado para inverter o sinal de entrada. Vimos também que buffers digitais estão disponíveis na forma tri-estado que permite que a saída seja efetivamente desligada produzindo um estado de alta impedância (Hi-Z) equivalente a um circuito aberto.
O Buffer Tri-estado é usado em muitos circuitos eletrônicos e microprocessadores pois eles permitem que múltiplos dispositivos lógicos sejam conectados ao mesmo fio ou barramento sem danos ou perda de dados. Por exemplo, suponha que temos uma linha de dados ou bus de dados com alguma memória, periféricos, I/O ou uma CPU conectada a ele. Cada um desses dispositivos é capaz de enviar ou receber dados entre si neste único barramento de dados ao mesmo tempo criando o que é chamado de contenção.
Contenção ocorre quando múltiplos dispositivos são conectados juntos porque alguns querem conduzir sua saída para cima e outros para baixo. Se estes dispositivos começam a enviar ou receber dados ao mesmo tempo, um curto-circuito pode ocorrer quando um dispositivo sai para o barramento uma lógica “1”, a tensão de alimentação, enquanto outro é definida no nível lógico “0” ou terra, resultando em uma condição de curto-circuito e possivelmente danos aos dispositivos, bem como perda de dados.
A informação digital é enviada sobre esses barramentos ou rodovias de dados em série, um bit de cada vez, ou pode ser até oito (ou mais) fios juntos em forma paralela, como em um barramento de dados com microprocessador, permitindo que múltiplos buffers tri-estado sejam conectados à mesma rodovia de dados sem danos ou perda de dados como mostrado.
Controle do barramento de dados do buffer de tri-estado
Então, o buffer de tri-estado pode ser usado para isolar dispositivos e circuitos do barramento de dados e uns dos outros. Se as saídas de vários Buffers Tri-estados estiverem eletricamente conectadas entre si, Decodificadores são usados para permitir que apenas um conjunto de Buffers Tri-estados esteja ativo a qualquer momento enquanto os outros dispositivos estão em seu estado de alta impedância. Um exemplo de Buffers Tri-estado conectados a um barramento de dados de 4 fios é mostrado abaixo.
Controle de Buffer Tri-estado
Este exemplo básico mostra como um decodificador binário pode ser usado para controlar um número de buffers tri-estados individualmente ou juntos em conjuntos de dados. O decodificador seleciona a saída apropriada que corresponde à sua entrada binária permitindo que apenas um conjunto de dados passe ou um estado de saída lógica “1” ou lógica “0” para o barramento. Neste momento todas as outras saídas triestatais conectadas às mesmas linhas de barramento são desabilitadas ao serem colocadas no seu estado de alta impedância Hi-Z.
Então os dados do conjunto de dados “A” só podem ser transferidos para o barramento comum quando um sinal HIGH ativo é aplicado aos buffers triestatais através da linha Enable, ENA. Em todos os outros momentos ele representa uma condição de alta impedância sendo isolado efetivamente do barramento de dados.
Likewise, o conjunto de dados “B” só passa dados para o barramento quando um sinal de habilitação é aplicado via ENB. Um bom exemplo de buffers triestados conectados juntos para controlar conjuntos de dados é o TTL 74244 Octal Buffer.
Também é possível conectar Buffers triestados “back-to-back” para produzir o que é chamado de circuito Bi-direcional de Buffer com um “buffer ativo-alto” conectado em paralelo, mas ao contrário, com um “buffer ativo-baixo”.
Aqui, a entrada de controle “enable” age mais como um sinal de controle direcional fazendo com que os dados sejam lidos “de” e transmitidos “para” o mesmo fio do barramento de dados. Neste tipo de aplicação um buffer tri-estado com capacidade de comutação bidirecional como o TTL 74245 pode ser usado.
Vimos que um buffer tri-estado é um dispositivo não-invertente que dá uma saída (que é igual à sua entrada) somente quando a entrada para o pino Enable, ( EN ) é ALTA, caso contrário a saída do buffer entra no seu estado de alta impedância, ( Hi-Z ). As saídas tri-estado são utilizadas em muitos circuitos integrados e sistemas digitais e não apenas em buffers tristais digitais.
Both buffers digitais e tri-estados podem ser utilizados para fornecer amplificação de tensão ou corrente conduzindo cargas muito elevadas, tais como relés, lâmpadas ou transistores de potência, do que com portas lógicas convencionais. Mas um buffer também pode ser usado para fornecer isolamento elétrico entre dois ou mais circuitos.
Vimos que um barramento de dados pode ser criado se vários dispositivos tristais forem conectados juntos e desde que apenas um seja selecionado ao mesmo tempo, não há problema. Tri-state buses allow several digital devices to input and output data on the same data bus by using I/O signals and address decoding.
Tri-state Buffers are available in integrated form as quad, hex or octal buffer/drivers in both uni-directional and bi-directional forms, with the more common being the TTL 74240, the TTL 74244 and the TTL 74245 as shown.
Commonly available Digital Buffer and Tri-state Buffer IC’s include:
TTL Logic Digital Buffers
- 74LS07 Hex Non-inverting Buffer
- 74LS17 Hex Buffer/Driver
- 74LS244 Octal Buffer/Line Driver
- 74LS245 Octal Bi-directional Buffer
CMOS Logic Digital Buffers
- CD4050 Hex Non-inverting Buffer
- CD4503 Hex Tri-state Buffer
- HEF40244 Tri-state Octal Buffer