¿Qué es un "medio pestillo" en un FPGA?

10

En un artículo sobre FPGA de radiación dura me encontré con esta oración:

"Otra preocupación con respecto a los dispositivos Virtex son los medios pestillos. Los medios pestillos a veces se usan dentro de estos dispositivos para constantes internas, ya que esto es más eficiente que usar la lógica".

Nunca he oído hablar de un dispositivo primitivo FPGA llamado "medio pestillo". Según tengo entendido, suena como un mecanismo oculto para "obtener" un constante '0' o '1' en las herramientas de back-end ... ¿Alguien puede explicar qué es exactamente un "medio enclavamiento", especialmente en el contexto de FPGAs? y cómo se pueden usar para guardar la lógica?

EDITAR: El documento donde encontré esto era una comparación de FPGAs resistentes a la radiación y resistentes a la radiación para aplicaciones espaciales

andrsmllr
fuente
77
¿Qué motor de búsqueda usaste?
Ale..chenski
Es una falla que se informa en la etapa de diseño que requiere una acción correctiva slideserve.com/delilah/single-event-upsets-in-sram-fpgas debido al estrés acelerado, como un pequeño error interno, excepto que se traba y puede hacer un tristado en una salida, por ejemplo
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 ¿Se utilizan fallas para las constantes internas? Eso no tiene sentido.
duskwuff -inactive-
No. Los semicierre son fallas ocultas que deben evitarse.
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 Eso todavía no tiene ningún sentido en su contexto. La presentación a la que se vinculó muestra claramente un "medio pestillo" como parte de la FPGA, junto con otras cosas como "bits de configuración" y "BRAM". No es una falta; Es algo que puede verse afectado por una falla.
duskwuff -inactive-

Respuestas:

14

Un medio pestillo es una puerta con retroalimentación positiva implementada con un transistor pull-up débil:

esquemático

simular este circuito : esquema creado con CircuitLab

Cuando la entrada es activada, anula la señal proveniente del pullup débil. Cuando la entrada está en estado Z, el pullup débil puede mantener el "1" lógico en la entrada (y "0" en la salida) indefinidamente. No mantendrá el estado opuesto de manera confiable, por lo tanto, "medio enclavamiento".

¿Por qué alguien querría un medio pestillo en lugar de un pestillo completo? Para algunas señales no tiene sentido poder almacenar ambas constantes. Por ejemplo, un D-flipflop puede tener una enableentrada bloqueada en alto y una resetentrada bloqueada en bajo, de lo contrario, simplemente se eliminará durante la síntesis. Ese es el tipo de señales para las que se utilizan medios enclavamientos: están enganchados al valor predeterminado o son activados por interconexión.

Dmitry Grigoryev
fuente
Entonces, ¿se supone que debes elevar la entrada por un momento antes de hacerla flotar, o terminarás con un estado metaestable que eventualmente cambiará de manera impredecible?
hmakholm dejó a Mónica el
@HenningMakholm Sí, el FPGA acciona todos los medios pestillos antes de cada ciclo de programación.
Dmitry Grigoryev
Eso suena como una complicación significativa de cualquier circuito que suministre la entrada, solo para guardar un solo transistor. Si pudieras escribir algo sobre por qué valdría la pena, creo que mejoraría la respuesta.
hmakholm dejó a Mónica el
@HenningMakholm ¿Por qué crees que un medio pestillo solo salva un solo transistor? AFAIK se usan como constantes que de otro modo tendrían que estar codificadas en LUT.
Dmitry Grigoryev
Un pestillo completamente funcional solo necesitaría un solo NMOS débil además de su diagrama para tirar de la entrada hacia abajo cuando la salida es alta, ¿verdad? No sé qué es un LUT: ¿puede decir algo en su respuesta sobre cómo funciona "usado como constantes" si lo único que puede almacenar de manera confiable es un 1? ¿Cómo se usan estas cosas ?
hmakholm dejó a Mónica el
-2

Parece que proporcionan la lógica para mantener constantes.

Como no son observables, solo se pueden inicializar una vez (por lo que solo se pueden reconfigurar después de la inicialización del dispositivo), no consumen una LUT completa y son mucho más simples, pero útiles.

Gommer
fuente
1
También vi ese texto abstracto cuando busqué en google. No los explica adecuadamente según la pregunta de OP, ni los lleva a un ejemplo de hoja de datos. Votación a favor.
TonyM
Si es una estructura diferente del FPGA y menos de una LUT completa, con algunos detalles más, entonces explique cómo no responde la pregunta 'qué es' y en cuanto a 'cómo ahorra lógica', eso también se responde .
Gommer