Apakah "setengah kait" dalam FPGA?

10

Dalam sebuah makalah tentang radiasi FPGA keras saya menemukan kalimat ini:

"Kekhawatiran lain mengenai perangkat Virtex adalah setengah kait. Setengah kait kadang-kadang digunakan dalam perangkat ini untuk konstanta internal, karena ini lebih efisien daripada menggunakan logika".

Saya belum pernah mendengar tentang perangkat FPGA primitif yang disebut "setengah kait". Sejauh yang saya mengerti, ini terdengar seperti mekanisme tersembunyi untuk "sumber" konstanta '0' atau '1' di alat backend ... Adakah yang bisa menjelaskan apa sebenarnya "setengah kait" itu, terutama dalam konteks FPGA , dan bagaimana mereka dapat digunakan untuk menyimpan logika?

EDIT: Makalah yang saya temukan ini adalah Perbandingan FPGA Radiasi-Keras dan Toleransi Radiasi untuk Aplikasi Antariksa

andrsmllr
sumber
7
Mesin pencari mana yang Anda gunakan?
Ale..chenski
Ini adalah kesalahan yang dilaporkan pada tahap desain yang memerlukan tindakan perbaikan slideserve.com/delilah/single-event-upsets-in-sram-fpgas karena stres yang dipercepat, seperti sedikit kesalahan secara internal kecuali terkunci dan dapat membuat tristate menjadi sebuah output misalnya
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 Kesalahan digunakan untuk konstanta internal? Itu tidak masuk akal.
duskwuff -inactive-
Tidak. Setengah kait adalah kesalahan tersembunyi yang harus dihindari.
Tony Stewart Sunnyskyguy EE75
1
@ TonyStewart.EEsince'75 Itu masih tidak masuk akal dalam konteks. Presentasi yang Anda tautkan dengan jelas menggambarkan "setengah kait" sebagai bagian dari FPGA, di samping hal-hal lain seperti "bit konfigurasi" dan "BRAM". Itu bukan kesalahan; itu adalah sesuatu yang dapat dipengaruhi oleh suatu kesalahan.
duskwuff -inactive-

Jawaban:

14

Half-latch adalah gerbang dengan umpan balik positif yang diimplementasikan dengan transistor pull-up yang lemah:

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Ketika input diaktifkan secara aktif, input tersebut mengabaikan sinyal yang berasal dari pullup yang lemah. Ketika input berada dalam Z-state, pullup yang lemah dapat menjaga logis "1" pada input (dan "0" pada output) tanpa batas. Itu tidak akan membuat negara yang berlawanan andal, karenanya "setengah kait".

Mengapa seseorang menginginkan kait setengah dan bukan kait penuh? Untuk beberapa sinyal, tidak masuk akal untuk dapat menyimpan kedua konstanta. Misalnya, D-flipflop dapat memiliki enableinput yang hanya terkunci tinggi, dan resetinput hanya terkunci rendah, jika tidak maka akan dihilangkan selama sintesis. Itu adalah jenis sinyal yang menggunakan setengah-kait: mereka terkunci pada nilai default, atau digerakkan oleh interkoneksi.

Dmitry Grigoryev
sumber
Jadi, Anda seharusnya menggerakkan input tinggi untuk sesaat sebelum melayang, atau Anda akan berakhir dengan kondisi metastabil yang akhirnya akan berubah secara tak terduga?
hmakholm tersisa Monica
@HenningMakholm Ya, FPGA menggerakkan semua setengah kait sebelum setiap siklus pemrograman.
Dmitry Grigoryev
Kedengarannya seperti komplikasi signifikan dari sirkuit mana saja yang memasok input, hanya untuk menghemat satu transistor. Jika Anda dapat menulis sesuatu tentang mengapa itu sepadan, saya pikir itu akan meningkatkan jawabannya.
hmakholm tersisa Monica
@HenningMakholm Mengapa Anda berpikir setengah kait hanya menyimpan satu transistor? AFAIK mereka digunakan sebagai konstanta yang jika tidak harus dikodekan dalam LUT.
Dmitry Grigoryev
Kait yang berfungsi penuh hanya akan membutuhkan satu NMOS yang lemah selain diagram Anda untuk menarik input ke bawah ketika output tinggi, kan? Saya tidak tahu apa itu LUT - dapatkah Anda mengatakan sesuatu dalam jawaban Anda tentang bagaimana "digunakan sebagai konstanta" bekerja jika satu-satunya yang dapat disimpan dengan andal adalah angka 1? Bagaimana hal-hal ini digunakan ?
hmakholm tersisa Monica
-2

Tampaknya mereka memberikan logika untuk menjaga konstanta.

Karena mereka tidak dapat diamati, hanya dapat diinisialisasi sekali (jadi hanya dapat dikonfigurasi ulang setelah inisialisasi perangkat), mereka tidak mengkonsumsi LUT penuh dan mereka jauh lebih sederhana, namun bermanfaat.

Gommer
sumber
1
Saya melihat teks abstrak itu ketika saya mencari di google juga. Itu tidak menjelaskan dengan benar sesuai pertanyaan OP, atau mengarahkan mereka ke contoh lembar data. Downvoting.
TonyM
Jika strukturnya berbeda dari FPGA dan kurang dari LUT penuh, dengan beberapa lebih spesifik, maka tolong jelaskan bagaimana itu tidak menjawab pertanyaan 'apa itu' dan untuk 'bagaimana menghemat logika', itu juga dijawab .
Gommer