Entendo o que é metaestabilidade, mas não entendo como vincular chinelos reduz isso?
Se a saída do primeiro flip-flop for metaestável, isso será usado como entrada para o segundo. Mas não vejo como o segundo flip flop será capaz de fazer qualquer coisa com essa entrada e torná-la estável.
Desde já, obrigado!
digital-logic
flipflop
metastability
Wouter A
fonte
fonte
Respostas:
A metaestabilidade não pode ser "curada", mas se você esperar o suficiente , a probabilidade de ocorrer pode ser arbitrariamente pequena. Uma vez que você tenha chegado a uma idade do universo, provavelmente não será o suficiente para causar problemas.
É como equilibrar um lápis na ponta. É provável que caia e, quanto mais você esperar, menor a probabilidade de permanecer em pé.
Há dois problemas com a espera de um longo tempo, e um deles é fundamental.
O problema fundamental é que, se você tiver um único elemento de memória (trava ou flip-flop, ambos sofrem metastabilidade) em um sistema com clock que recebe a saída de um sistema externo assíncrono, não é possível definir fisicamente um limite inferior para o tempo de espera , às vezes o sinal externo fará uma transição perto da borda de controle da trava. Você precisa encaminhar o sinal para outro flip-flop para deixá-lo esperar lá. Isso garante um tempo de espera mínimo garantido de um ciclo de relógio.
O segundo problema é que muitas vezes você está tentando executar um sistema o mais rápido possível, e a taxa de clock do sistema não pode ser reduzida para dar tempo suficiente no segundo flip-flop. A única maneira de aumentar a latência do sinal para o necessário, sem diminuir a taxa de transferência, é canalizar a espera para mais estágios.
Algumas pessoas têm problemas para visualizar o que está acontecendo entre os chinelos. Existem duas maneiras de induzir a metaestabilidade, e ambas envolvem violar as regras do flip-flop. Uma maneira é violar a configuração da entrada e os tempos de espera, para fazer uma transição quando o flip-flop espera que a entrada seja estável. O outro é violar os níveis lógicos de entrada, fazer com que a entrada de dados do flip-flop fique em um nível de tensão intermediário. Um flip-flop que está sendo metaestável pode produzir qualquer tipo de violação em sua saída, passando para o próximo flip-flop.
fonte
Reduz a probabilidade de metaestabilidade afetando o circuito, permitindo mais tempo até que o sinal seja realmente usado. Com dois flip-flops, ele permite um ciclo de relógio extra para o sinal se acalmar. Com três, permite dois ciclos de relógio extras.
fonte
Eles não impedem que a metaestabilidade afete a saída, mas podem aumentar bastante o tempo médio entre os incidentes, pois a metaestabilidade deve ter uma duração relativamente longa.
Conectar três (ou mais) flip-flops bem projetados pode aumentar o tempo entre os incidentes para algo como a idade da Terra.
fonte
Porque o primeiro flip-flop, mesmo que seja metaestável, terá todo o período do relógio para se estabilizar. No momento em que o segundo flip-flop prova o primeiro, sua saída já pode estar estável.
fonte
Se você quiser o entusiasmo da metaestabilidade, implemente DOIS INVERSORES MUITO LENTO, conecte-os consecutivamente e incline-os (em uma simulação) no VDD / 2. Em seguida, remova a polarização e observe a velocidade da resolução para os níveis lógico1 e lógico0. Pode ser necessário escolher uma voltagem de polarização inicial diferente de VDD / 2.
Se os seus 2 ou 3 flip-flops forem LENTOS em comparação com o período do relógio, a vida poderá estar cheia de problemas.
fonte
A metaestabilidade significa simplesmente que, se você tiver uma transição de dados dentro de uma janela de tempo específica relacionada ao relógio, a saída se comportará mal por um determinado período após o limite do relógio. No entanto, a janela não é um intervalo fixo. Pelo contrário, a probabilidade de um valor ruim (oscilação ou nível intermediário de tensão) diminui exponencialmente com o tempo. Portanto, se você amostrar o sinal com um relógio e esperar um pouco antes de aplicar o relógio no segundo flip-flop, poderá reduzir as chances de um bit ruim para qualquer probabilidade desejada (mas não zero). Se o tempo necessário for muito longo, você pode usar 3 ou mais chinelos em série.
fonte