Un FPGA (Field Programmable Gate Array) este un circuit integrat digital configurabil, de către utilizator, după ce a fost fabricat (spre deosebire de dispozivele a căror funcție este implementată in procesul de fabricație). FPGA este un tip de circuit logic programabil. Configurarea FPGA se face, în general, cu ajutorul unui limbaj de descriere hardware HDL, similar cu cel folosit pentru dispozivele ASIC, dezvoltându-se recent și compilatoare care traduc instrucțiuni din limbajul C în limbaje HDL. Un astfel de compilator este Impulse C. FPGA-urile sunt alcătuite din blocuri logice configurabile (programabile) legate între ele de o serie de conexiuni configurabile la rândul lor.

Un circuit integrat Altera.

Arhitectura modificare

Cea mai comună arhitectură pentru FPGA este constituită dintr-o matrice de blocuri logice configurabile (CLB-configurable logic blocks), pads I/O și canale de rutare. În general toate canalele de rutare au aceași lățime (același numar de conexiuni).

Un bloc logic FPGA clasic este alcătuit dintr-un tabel de căutare cu 4 intrări, un flip-flop și un multiplexor care selectează fie ieșirea tabelului de căutare, fie ieșirea sincronizată a acestuia (trecută prin flip-flop).

 
Structura tipică a unui bloc logic

Tipuri de FPGA modificare

După tehnologia folosită în procesul de fabricare există mai multe tipuri de FPGA:

  • SRAM - au la bază celule SRAM. Pot fi programate/reprogramate odată instalate în sistem. Sunt volatile.
  • Antifuse - pot fi programate doar în laborator, cu un dispozitiv special. Nu pot fi reprogramate. Nu sunt volatile.
  • Fuse - pot fi programate doar în laborator, cu un dispozitiv special. Nu pot fi reprogramate. Nu sunt volatile.
  • EPROM -Erasable Programmable Read-Only Memory- în mod obișnuit sunt programate doar o dată. Conținutul lor poate fi șters sub acțiunea razelor ultraviolet. Nu sunt volatile.
  • EEPROM -Electrically Erasable Programmable Read-Only Memory- similare EPROM doar că pot fi reprogramate.
  • Flash - au la bază celule Flash care sunt mai mici decât cele EEPROM, ceea ce le face mai ieftine. Sunt reprogramabile. Nu sunt volatile.

Vezi și modificare

Legături externe modificare