FPGA'da "yarım mandal" nedir?


10

Radyasyon sert FPGA'lar hakkında bir makalede şu cümleyle karşılaştım:

"Virtex cihazları ile ilgili bir diğer endişe yarım mandal. Bu mantıkta kullanmaktan daha verimli olduğu için bu cihazlar içinde yarım mandallar dahili sabitler için bazen kullanılıyor".

"Yarım mandal" adı verilen bir FPGA ilkel cihazını hiç duymadım. Anladığım kadarıyla, arka uç araçlarında "0" veya "1" sabitini "kaynaklamak" için gizli bir mekanizma gibi geliyor ... Herkes, özellikle FPGA'lar bağlamında bir "yarım mandal" ın tam olarak ne olduğunu açıklayabilir ve mantığı kaydetmek için nasıl kullanılabilir?

DÜZENLEME: Makale bunun Uzay Uygulamaları için Radyasyon-Sert ve Radyasyon-Toleranslı FPGA'lerin Karşılaştırılması olduğunu buldum


7
Hangi arama motorunu kullandınız?
Ale..chenski

Tasarım aşamasında rapor edilen ve düzeltici eylem gerektiren bir hatadır. Slideserve.com/delilah/single-event-upsets-in-sram-fpgas , hızlanma stresi nedeniyle dahili olarak mandallanan ve bir tristate yapabileceği gibi örneğin bir çıktı
Tony Stewart Sunnyskyguy EE75

1
@ TonyStewart.EEsince'75 İç sabitler için arızalar kullanılıyor mu? Bu mantıklı değil.
duskwuff -inactive-

Hayır. Yarım mandallar, kaçınılması gereken gizli arızalardır.
Tony Stewart Sunnyskyguy EE75

1
@ TonyStewart.EEsince'75 Bu hala bağlamda bir anlam ifade etmiyor. Bağlandığınız sunu, "yapılandırma bitleri" ve "BRAM" gibi diğer şeylerin yanı sıra FPGA'nın bir parçası olarak "yarım mandal" ı açıkça gösterir. Bu bir hata değil; bir faydan etkilenebilecek bir şey .
duskwuff -inactive-

Yanıtlar:


14

Yarım mandal, zayıf bir çekme transistörü ile uygulanan olumlu geri bildirime sahip bir kapıdır:

şematik

bu devreyi simüle et - CircuitLab kullanılarak oluşturulan şematik

Giriş aktif olarak sürüldüğünde, zayıf çekmeden gelen sinyali geçersiz kılar. Giriş Z durumunda olduğunda, zayıf çekme, mantıksal "1" değerini girişte (ve çıkışta "0") süresiz olarak tutabilir. Tersi durumu güvenilir bir şekilde tutmayacak, dolayısıyla "yarım mandal".

Neden birisi tam mandal yerine yarım mandal ister? Bazı sinyaller için her iki sabiti de saklamak mantıklı değildir. Örneğin, bir D-flipflop enableyalnızca giriş yüksek, resetgiriş yalnızca düşük kilitlenebilir, aksi takdirde sentez sırasında elimine edilir. Bu, yarım mandalların kullanıldığı sinyal türüdür: ya varsayılan değere kilitlenirler ya da ara bağlantı ile tahrik edilirler.


Yani girdiyi yüzmeden önce bir anlığına yüksekte tutmanız gerekiyor, ya da sonunda ama beklenmedik bir şekilde dönecek metastabil bir durumla sonuçlanacak mısınız?
hmakholm Monica

@HenningMakholm Evet, FPGA her programlama döngüsünden önce tüm yarım mandalları sürüyor.
Dmitry Grigoryev

Bu, hangi devrelerin girişi sağladığını, sadece tek bir transistörü kurtarmak için önemli bir komplikasyon gibi görünüyor. Yeryüzünde neden buna değecek bir şey yazabilirseniz, bunun cevabı geliştireceğini düşünüyorum.
hmakholm Monica

@HenningMakholm Neden yarım mandalların sadece tek bir transistörü kurtardığını düşünüyorsunuz? AFAIK, aksi takdirde LUT'larda kodlanması gereken sabitler olarak kullanılırlar.
Dmitry Grigoryev

Tamamen işlevsel bir mandal, çıkış yüksek olduğunda girişi aşağı çekmek için şemanıza ek olarak yalnızca tek bir zayıf NMOS'a ihtiyaç duyar, değil mi? Bir LUT nedir bilmiyorum - Eğer güvenilir bir şekilde saklayabilir tek şey 1 ise "sabit olarak kullanılan" nasıl çalışır hakkında cevabınızda bir şey söyleyebilir misiniz? Bunlar nasıl kullanılıyor ?
hmakholm Monica

-2

Görünüşe göre sabitleri tutmak için mantık sağlıyorlar.

Gözlenebilir olmadıklarından, yalnızca bir kez başlatılabilirler (bu nedenle yalnızca cihaz başlatıldıktan sonra yeniden yapılandırılabilirler), tam bir LUT tüketmezler ve yine de çok daha basittirler, ancak yararlıdırlar.


1
Google'da arama yaparken de bu soyut metni gördüm. Onları OP'nin sorusuna göre düzgün bir şekilde açıklamaz veya bir veri sayfası örneğine yönlendirmez. Downvoting.
TonyM

FPGA'nın farklı bir yapısı ve tam bir LUT'tan daha azı, birkaç daha fazla ayrıntıya sahipse, lütfen 'bu nedir' sorusuna nasıl cevap vermediğini ve 'mantığı nasıl kurtardığını' açıklayın. .
gommer
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.