Por que o Digital 0 não é 0V em sistemas de computador?

32

Estou fazendo um curso de design de sistemas de computadores e meu professor nos disse que, nos sistemas digitais, as voltagens convencionais usadas para denotar 0 digital e 1 digital mudaram ao longo dos anos.

Aparentemente, nos anos 80, 5 V era usado como 'alto' e 1 V era usado para denotar 'baixo'. Atualmente, um 'alto' é de 0,75 V e um 'baixo' é de cerca de 0,23 V. Ele acrescentou que, em um futuro próximo, podemos mudar para um sistema em que 0,4 V denota um alto e 0,05 V, um baixo.

Ele argumentou que esses valores estão diminuindo para que possamos reduzir nosso consumo de energia. Se for esse o caso, por que nos damos ao trabalho de definir o 'baixo' para qualquer voltagem positiva? Por que não ajustamos a tensão de 0 V (neutra das linhas de energia, eu acho)?

Anirudh Ajith
fonte
9
Penso que a explicação mais simples é que existem resistências parasitas em fios / traços / "interruptores" (transistores), para que você nunca chegue a 0V, por isso precisa de alguma margem. À medida que a tecnologia melhora, as margens podem ficar mais apertadas.
Wesley Lee
26
A lógica nunca teve valores únicos absolutos para alto e baixo; O TTL possui uma faixa absoluta e o CMOS puro possui uma faixa definida pelo trilho de potência.
Peter Smith
8
O limite baixo nunca foi de 1v, verifique a resposta de Andy, que indica que é 0,4v ou 0,8v, dependendo de você estar enviando ou recebendo (fale com precisão, ouça com perdão)
Neil_UK
4
A tensão que você está citando é o limite superior (limite) para um zero lógico.
CramerTV
3
Não existe 0 V, apenas em um mundo perfeito falamos disso.
Mastro

Respostas:

45

Você está confundindo o valor "ideal" com a faixa de entrada válida.

Na lógica usual, em condições ideais, o zero lógico seria precisamente 0V. No entanto, nada é perfeito no mundo real e uma saída eletrônica possui uma certa tolerância. A tensão real de saída depende da qualidade dos fios, do ruído EMI, da corrente que ele precisa fornecer etc. Para acomodar essas imperfeições, as entradas lógicas tratam toda uma faixa de tensão como 0 (ou 1). Veja a figura na resposta de Andy.

O que seu professor provavelmente quis dizer com 0,75V é um dos pontos que faz o intervalo lógico 0.

Observe que também existe uma faixa vazia entre 0 e 1. Se a tensão de entrada cair aqui, o circuito de entrada não pode garantir uma operação adequada, portanto, é dito que esta área é proibida.

akwky
fonte
76

Você está ficando confuso. Veja o TTL, por exemplo: -

insira a descrição da imagem aqui

Um baixo nível de entrada está entre 0 volts e algum valor pequeno acima de 0 volts (0,8 volts no caso de TTL).

por que nos damos ao trabalho de definir o 'baixo' para qualquer voltagem positiva?

Nós nos esforçamos para garantir que esteja abaixo de um certo valor pequeno.

Imagem daqui .

Andy aka
fonte
Para expandir isso, as faixas de tensão de entrada válidas são diferentes para sinalização TTL versus sinalização CMOS versus LVCMOS. A razão para isso é que a lógica TTL (e o NMOS compatível que a seguiu) teve muito mais dificuldade em puxar o trilho positivo do que o solo. A lógica moderna do CMOS pode funcionar igualmente bem de qualquer maneira, e é mais fácil criar simetricamente um estágio de entrada do CMOS. Uma saída CMOS aciona com prazer uma entrada TTL, mas você deve usar entradas especiais compatíveis com TTL com uma saída TTL.
Chromatix
Há uma boa e detalhada explicação sobre esse assunto da TI, aqui: ti.com/lit/an/scla011/scla011.pdf
Chromatix
16

É impossível produzir sinalização lógica de zero volts verdadeira. Deve haver alguma tolerância permitida, pois o circuito não é infinitamente perfeito. Gastar dinheiro tentando torná-lo infinitamente perfeito também não seria um bom investimento em fundos de design. Os circuitos digitais proliferaram e avançaram tão rápido porque utilizam um grande número de cópias dos circuitos muito simples e tolerantes que são portas lógicas.

Os estados binários 1 e 0 são representados nos circuitos lógicos digitais por tensões lógicas altas e lógicas baixas, respectivamente. As tensões que representam a lógica alta e a lógica baixa caem em faixas pré-definidas e pré-acordadas para a família lógica em uso.

A capacidade de trabalhar com tensões dentro dessas faixas é uma das principais vantagens dos circuitos lógicos digitais - não é uma falha. As entradas do portão lógico podem distinguir facilmente entre altas tensões lógicas e baixas lógicas. As saídas do portão lógico produzirão tensões lógicas altas e baixas válidas. Pequeno ruído de sinal é removido quando os sinais lógicos passam através dos portões. Cada saída está restaurando o sinal de entrada para uma boa tensão lógica.

Nos circuitos analógicos, é mais difícil e praticamente impossível distinguir o ruído do sinal de interesse e rejeitá-lo completamente.

TonyM
fonte
4
Limiares muito acentuados (sem histerese) também significam amplificadores de ganho ridiculamente altos. Também conhecido por ser ridiculamente propenso a feedback e oscilação, tendência à deriva e geralmente nervoso.
rackandboneman 11/09
Observe também que as lógicas 1 e 0 podem ser utilmente representadas como tensões baixa e alta, respectivamente, onde faz mais sentido para o circuito fazê-lo. De fato, sinais como redefinições globais são tradicionalmente ativos baixos e, na era da Nmos (uma tecnologia notoriamente ruim em puxar para cima) e, em menor grau, na era TTL (mesmo problema), era comum o IO masculino ativo baixo apenas porque era a única maneira de realmente fazer fluir qualquer corrente.
Dan Mills
Também é digno de nota a lógica do modo atual, onde os valores lógicos são definidos em termos de corrente e não de tensão. Isso permite uma comutação mais rápida e uma melhor tolerância a ruídos na transmissão (por causa da lei atual de Kirchhoff) ao custo de um maior uso de energia (embora a Wikipedia afirme que a CML picoamp foi alcançada, o que também não seria um problema).
John Dvorak
8

Além dos argumentos apresentados pelas outras respostas, há a questão das capacidades parasitas em altas velocidades de comutação (a capacitância geralmente ignorada dos fios e outros componentes). Os fios também costumam ter uma leve resistência. (Um modelo muito simplificado!)

esquemático

simular este circuito - esquemático criado usando o CircuitLab

Sendo uma rede RC, isso resulta em uma curva de queda exponencial (V ~ e ^ -kt). Se o receptor definir seu limite muito baixo (próximo de 0V), ele terá que esperar um tempo significativo para que a tensão de saída caia o suficiente para acionar o limite. Desta vez, pode parecer insignificante, mas para um dispositivo que deveria trocar um milhão (até bilhões) de vezes por segundo, isso é um problema. Uma solução é aumentar a tensão "OFF", para evitar a cauda longa da função exponencial.

antipadrão
fonte
6

Porque nada é perfeito e você precisa fornecer isso com uma margem de erro. Esses números são limites. Se a tensão mais baixa possível em seu sistema for 0V e seu limite for 0V, onde isso o deixará se TODOS os seus componentes e fiação não forem condutores perfeitos (ou seja, sempre tiverem alguma queda de tensão) e silenciosos em um ambiente silencioso? Isso deixa você com um sistema que nunca pode produzir 0V de maneira confiável, se é que consegue fazê-lo.

DKNguyen
fonte
3

Em um sistema de 2 trilhos (geralmente chips alimentados com apenas uma única tensão positiva mais terra), qualquer chave ou dispositivo que esteja puxando a capacitância de saída para um nível baixo de sinal tem resistência finita e, portanto, não pode mudar um fio de sinal para zero Volts em tempo finito. (Ignorando supercondutores). Assim, é escolhido um balanço de tensão menor realista que atenda aos requisitos de desempenho (velocidade de comutação versus requisitos de energia e geração de ruído, etc.)

Além das margens necessárias para cobrir o ruído à terra (níveis diferentes de tensão à terra ou "zero" entre os circuitos de origem e destino), outras fontes de ruído, tolerâncias e etc.

hotpaw2
fonte
0

Ao contrário de algumas respostas aqui, tenho certeza de que houve uma baixa pura de 0V no passado. Lógica de relé! Acho que não queremos voltar a isso!

user3042526
fonte
6
Seus relés usaram supercondutores? Acho que não.
Elliot Alderson
1
+1 por causa de críticas injustas. Um 0V puro pode ser facilmente alcançado. Isso quase pode ser alcançado com um relé e simplesmente com acesso a dispositivos conectados a fontes negativas e feedback, se desejado. O fato de ter sido usado como um valor de design necessário para as comunicações digitais parece pouco provável, mas isso não deve ser motivo para rejeitar esta resposta.
KalleMP 12/09
2
@ ElliotAlderson Não, não posso, escrevi especificamente que era improvável que existisse, o que significa que não tenho como provar que existe. No entanto, você pode provar que esse valor de design nunca foi necessário? Eu acho que não. Agora vá e dê ao novato um voto positivo (para que ele volte a zero), para que ele não fique desmoralizado com uma piada e vá embora, e perdemos mais uma mente brilhante (jovem) por nenhuma boa razão.
KalleMP 13/09
1
@ElliotAlderson Eu acho que se você colocar um escopo em uma bobina de relê real, você veria o movimento de tensão através de zero no seu caminho para um valor negativo largeish quando os contatos abrem. Mas, não está claro para mim se você está falando sobre um circuito real ou um circuito ideal. Os contatos ideais são arcados? Caso contrário, a tensão deve ir para o infinito negativo. De qualquer forma, após os contatos serem abertos e o arco ser extinto, a resistência no circuito ideal será infinita . Não sei o que isso faz com o seu tempo constante.
Solomon Slow
1
@SolomonSlow O comportamento transitório é real, mas é facilmente modelado com um circuito ideal. A resistência que controla o comportamento da tensão da bobina após a abertura dos contatos é a resistência da própria bobina (dando-lhe o benefício da dúvida de que não há correntes de fuga de nenhum tipo). É um circuito RL paralelo nesse ponto, que requer tempo infinito para que a corrente do indutor caia para exatamente zero. Mesmo no mundo prático, há um tempo em que a tensão na bobina é diferente de zero, mas os contatos do relé ficam abertos ... um '0' lógico com tensão diferente de zero.
Elliot Alderson