Co to jest „pół-zatrzask” w FPGA?

10

W artykule o FPGA trudnych do napromieniowania natrafiłem na to zdanie:

„Innym problemem związanym z urządzeniami Virtex są pół-zatrzaski. Pół-zatrzaski są czasami używane w tych urządzeniach dla stałych wewnętrznych, ponieważ jest to bardziej wydajne niż użycie logiki”.

Nigdy nie słyszałem o prymitywnym urządzeniu FPGA o nazwie „pół-zatrzask”. O ile rozumiem, brzmi to jak ukryty mechanizm „źródła” stałej „0” lub „1” w narzędziach zaplecza ... Czy ktoś może wyjaśnić, czym dokładnie jest „pół-zatrzask”, szczególnie w kontekście układów FPGA i jak można je wykorzystać do zapisania logiki?

EDYCJA: Opracowanie, w którym znalazłem, to porównanie układów FPGA odpornych na promieniowanie i tolerujących promieniowanie do zastosowań kosmicznych

andrsmllr
źródło
7
Z jakiej wyszukiwarki korzystałeś?
Ale..chenski
Jest to usterka zgłaszana na etapie projektowania, która wymaga działań naprawczych slideserve.com/delilah/single-event-upsets-in-sram-fpgas z powodu przyspieszonego naprężenia, jak wewnętrzny błąd, z wyjątkiem tego, że się zatrzaskuje i może powodować wyjście na przykład
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 Błędy są używane dla stałych wewnętrznych? To nie ma sensu.
duskwuff -inactive-
Nie. Pół-zatrzaski to ukryte usterki, których należy unikać.
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 To wciąż nie ma sensu w kontekście. Prezentacja, do której linkujesz, wyraźnie przedstawia „pół-zatrzask” jako część FPGA, a także inne rzeczy, takie jak „bity konfiguracji” i „BRAM”. To nie jest wina; to coś, na co może mieć wpływ awaria.
duskwuff -inactive-

Odpowiedzi:

14

Pół-zatrzask jest bramą z dodatnim sprzężeniem zwrotnym realizowanym za pomocą słabego tranzystora podciągającego:

schematyczny

symulacja tego obwodu - Schemat utworzony przy użyciu CircuitLab

Kiedy wejście jest aktywnie sterowane, zastępuje sygnał pochodzący ze słabego podciągania. Kiedy wejście jest w stanie Z, słaby pullup może utrzymać logiczne „1” na wejściu (i „0” na wyjściu) w nieskończoność. Nie zachowa niezawodnie stanu przeciwnego, stąd „pół-zatrzask”.

Dlaczego ktoś miałby chcieć pół-zatrzask zamiast pełnego zatrzasku? W przypadku niektórych sygnałów nie ma sensu przechowywanie obu stałych. Na przykład, D-flipflop może mieć enablewejście zatrzaśnięte tylko wysoko, a resetwejście tylko zatrzaśnięte nisko, w przeciwnym razie zostanie po prostu wyeliminowane podczas syntezy. Jest to rodzaj sygnałów, w których używane są pół-zatrzaski: są albo zatrzaśnięte do wartości domyślnej, albo sterowane przez interkonekt.

Dmitrij Grigoriew
źródło
Więc powinieneś przez chwilę podnieść poziom wejściowy, zanim go uniesiesz, czy może powstanie stan metastabilny, który w końcu, ale nieprzewidzianie się odwróci?
hmakholm pozostawił Monice
@HenningMakholm Tak, FPGA napędza wszystkie pół-zatrzaski przed każdym cyklem programowania.
Dmitrij Grigoriew
To brzmi jak znaczna komplikacja któregokolwiek z obwodów zasilających wejście, aby uratować pojedynczy tranzystor. Jeśli mógłbyś napisać coś o tym, dlaczego, do licha, byłoby tego warte, myślę, że poprawiłoby to odpowiedź.
hmakholm opuścił Monikę
@HenningMakholm Dlaczego uważasz, że pół-zatrzaski ocalają tylko jeden tranzystor? AFAIK są używane jako stałe, które w innym przypadku musiałyby zostać zakodowane w LUT.
Dmitrij Grigoryev
W pełni funkcjonalna zatrzask potrzebowałaby tylko jednego słabego NMOS oprócz twojego schematu, aby wyciągnąć wejście w dół, gdy wyjście jest wysokie, prawda? Nie wiem, co to jest LUT - czy możesz powiedzieć coś w swojej odpowiedzi na temat tego, jak działa „używane jako stałe”, jeśli jedyną rzeczą, którą może przechowywać niezawodnie, jest 1? Jak te rzeczy są używane ?
hmakholm pozostawił Monikę
-2

Wygląda na to, że zapewniają one logikę zachowania stałych.

Ponieważ nie można ich zaobserwować, można je zainicjować tylko raz (a więc można je ponownie skonfigurować tylko po inicjalizacji urządzenia), dlatego nie zużywają pełnego LUT i są znacznie prostsze, ale mimo to przydatne.

Gommer
źródło
1
Widziałem ten abstrakcyjny tekst, gdy szukałem google. Nie wyjaśnia ich odpowiednio zgodnie z pytaniem OP ani nie prowadzi ich do przykładu arkusza danych. Downvoting.
TonyM
Jeśli jest to inna struktura FPGA i mniej niż pełna LUT, z kilkoma bardziej szczegółowymi szczegółami, proszę wyjaśnić, w jaki sposób nie odpowiada na pytanie „co to jest”, a jeśli chodzi o „jak to oszczędza logikę”, to również odpowiada .
gommer