O que é uma "meia trava" em um FPGA?


10

Em um artigo sobre FPGAs com radiação, deparei-me com esta frase:

"Outra preocupação com os dispositivos Virtex são as meias travas. Às vezes, as meias travas são usadas nesses dispositivos para constantes internas, pois isso é mais eficiente do que usar a lógica".

Nunca ouvi falar de um dispositivo primitivo de FPGA chamado "meia trava". Pelo que entendi, parece um mecanismo oculto para "fonte" constante de '0' ou '1' nas ferramentas de back-end ... Alguém pode explicar o que exatamente é uma "meia trava", especialmente no contexto de FPGAs e como eles podem ser usados ​​para salvar a lógica?

EDIT: O artigo foi encontrado em uma comparação de FPGAs resistentes à radiação e tolerantes à radiação para aplicações espaciais


7
Qual mecanismo de pesquisa você usou?
Ale..chenski 25/01

É uma falha relatada no estágio de design que requer ação corretiva devido ao estresse acelerado, como um pequeno erro internamente, exceto que trava e pode fazer uma tristate para uma saída, por exemplo
Tony Stewart Sunnyskyguy EE75

1
@ TonyStewart.EEsince'75 Falhas são usadas para constantes internas? Isso não faz sentido.
duskwuff -inactive-

Não. As meias travas são falhas ocultas que devem ser evitadas.
você precisa saber é o seguinte

1
@ TonyStewart.EEsince'75 Isso ainda não faz sentido no contexto. A apresentação à qual você vinculou descreve claramente uma "meia trava" como parte do FPGA, juntamente com outras coisas como "bits de configuração" e "BRAM". Não é uma falha; é algo que pode ser afetado por uma falha.
você precisa saber é o seguinte

Respostas:


14

Uma meia trava é uma porta com feedback positivo implementado com um transistor de pull-up fraco:

esquemático

simular este circuito - esquemático criado usando o CircuitLab

Quando a entrada é acionada ativamente, ela anula o sinal proveniente da tração fraca. Quando a entrada está no estado Z, o pullup fraco pode manter o "1" lógico na entrada (e "0" na saída) indefinidamente. Não manterá o estado oposto de forma confiável, portanto, "meia trava".

Por que alguém iria querer uma meia trava em vez de uma trava completa? Para alguns sinais, não faz sentido poder armazenar as duas constantes. Por exemplo, um D-flipflop pode ter enableentrada apenas com trava alta e resetentrada apenas com trava baixa, caso contrário, ele será simplesmente eliminado durante a síntese. Esse é o tipo de sinal para o qual as meias travas são usadas: elas são travadas no valor padrão ou acionadas por interconexão.


Então você deve aumentar a entrada por um momento antes de flutuar, ou você acabará com um estado metaestável que, eventualmente, mas imprevisivelmente mudará?
hmakholm sobrou Monica

@ HenningMakholm Sim, o FPGA aciona todas as meias travas antes de cada ciclo de programação.
Dmitry Grigoryev

Isso soa como uma complicação significativa de qualquer circuito que forneça a entrada, apenas para salvar um único transistor. Se você pudesse escrever algo sobre por que diabos valeria a pena, acho que melhoraria a resposta.
hmakholm sobrou Monica

@ HenningMakholm Por que você acha que meias travas apenas salvam um único transistor? AFAIK são usados ​​como constantes que, caso contrário, teriam que ser codificadas em LUTs.
Dmitry Grigoryev 26/01

Uma trava totalmente funcional precisaria apenas de um único NMOS fraco, além do seu diagrama, para puxar a entrada para baixo quando a saída for alta, certo? Não sei o que é uma LUT - você pode dizer algo em sua resposta sobre como "usado como constantes" funciona se a única coisa que pode armazenar com segurança é um 1? Como essas coisas são usadas ?
hmakholm sobrou Monica

-2

Parece que eles fornecem a lógica para manter constantes.

Como eles não são observáveis, só podem ser inicializados uma vez (portanto, somente reconfiguráveis ​​após a inicialização do dispositivo), eles não consomem uma LUT completa e são muito mais simples, no entanto, úteis.


1
Também vi esse texto abstrato quando pesquisei no google. Não os explica adequadamente conforme a pergunta do OP, nem os leva a um exemplo de folha de dados. Downvoting.
TonyM

Se for uma estrutura diferente do FPGA e menor que uma LUT completa, com mais alguns detalhes específicos, explique como ele não responde à pergunta 'o que é' e como 'como salva a lógica', isso também é respondido .
Gommer
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.