Programmable Gate Array (FPGA, Eng. Programmable logic device, PLD) - an electronic component used to create digital integrated circuits. Unlike conventional digital circuits, FPGA logic operation is not defined in the manufacture, and is defined by the programming (design). Used for programming and debugging environment programmers, allowing to set the desired structure in the form of digital device schematic diagrams or programs on special hardware description languages​​: Verilog, VHDL, AHDL and other alternative FPGAs are programmable logic controllers (PLCs), the base matrix crystals (BMK), requiring the factory production process for programming; ASIC - large specialized custom integrated circuits (LSI), which for small batch and unit production much more expensive; specialized computers, processors (eg, a digital signal processor) or microcontrollers that due to software method for implementing algorithms in the FPGA slower. 

Some manufacturers offer software FPGA processors for its FPGAs that can be modified for a specific task, and then embedded into the FPGA. Thereby providing a reduction in board space and simplify the design of the FPGA itself, due to performance.