FPGA
Skrót od „Field-Programmable Gate Array”. FPGA to układ scalony, który można dostosować do konkretnego zastosowania. W przeciwieństwie do tradycyjnych procesorów CPU, układy FPGA są programowalne w miejscu docelowym, co oznacza, że użytkownik może je konfigurować po wyprodukowaniu.
Układy FPGA zawierają programowalne bloki logiczne, które można łączyć w różne konfiguracje. Bloki te tworzą fizyczną matrycę bramek logicznych, których można używać do wykonywania różnych operacji. Ponieważ bramki można dostosowywać, układy FPGA można optymalizować pod kątem dowolnego zadania obliczeniowego. Dzięki temu mogą one wykonywać operacje kilka razy szybciej niż połączony na stałe procesor.
Programowalne matryce bramek są zwykle dostosowywane za pomocą języka opisu sprzętu, czyli HDL. Programista może używać poleceń HDL do konfigurowania połączeń między bramkami (czyli sposobu, w jaki bramki łączą się ze sobą), a także samych bramek. Na przykład bramce można przypisać operator logiczny, taki jak AND, OR lub XOR. Łącząc ze sobą kilka bramek, można wykonywać zaawansowane operacje logiczne.
Ponieważ układy FPGA projektuje się z myślą o programowaniu na potrzeby konkretnych zastosowań, nie nadają się one do komputerów osobistych. Mają jednak szeroki zakres zastosowań. Przykłady obejmują telekomunikację, centra danych, obliczenia naukowe oraz przetwarzanie dźwięku i obrazu. Oprócz stosowania ich w serwerach i zaawansowanych komputerach, można je również wdrażać w urządzeniach elektronicznych, takich jak telewizory, radia i sprzęt medyczny.
Sprawdź swoją wiedzę