FPGA
| Acest articol are nevoie de ajutorul dumneavoastră. Puteți contribui la dezvoltarea și îmbunătățirea lui apăsând butonul Modificare. |
| Acest articol sau această secțiune are bibliografia incompletă sau inexistentă. Puteți contribui prin adăugarea susținerii bibliografice pentru afirmațiile conținute. |
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). Configurarea FPGA se face, in general, cu ajutorul unui limbaj de descriere hardware HDL, similar cu cel folosit pentru dispozivele ASIC, dezvoltându-se recent și compilatoare care traduc intructiuni 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.
Cuprins |
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).
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.