What does FPGA stand for?
FPGA stands for Field Programmable Gate Array. Field programmable means you configure the chip yourself, after the factory has made it. A gate array is the grid of logic blocks and connections inside. So the name describes exactly what it is: a grid of logic you program in the field.
What is an FPGA?
An FPGA is an integrated circuit you configure into custom digital circuits after manufacturing. A CPU executes instructions one after another from memory. An FPGA instead becomes the logic you describe, so everything runs as physical hardware at the same time. You can also reconfigure it later, which an ordinary chip never allows.
How does an FPGA work?
Inside an FPGA sit thousands of small logic blocks. A programmable interconnect network wires them together. Hard blocks handle common jobs such as memory and arithmetic. You describe the circuit you want, and the toolchain works out how to configure those blocks. The chip then behaves as that circuit.
What is an FPGA used for?
Engineers reach for an FPGA when a job needs parallelism, a guaranteed response time, or an unusual interface. Typical uses include real-time control, signal and image processing, and high-speed networking. Aerospace, defence and medical equipment rely on them too. So does prototyping a chip before committing to an ASIC.
Is an FPGA better than a CPU?
Neither is better in general. A CPU wins on general software, development speed and cost. An FPGA wins when work runs in parallel, when a deadline cannot slip, or when power matters. An FPGA circuit takes the same clock cycles every run. So its timing is predictable in a way a CPU’s never is.
Can you program an FPGA without learning VHDL or Verilog?
Yes. Clash, the compiler we build at QBayLogic, describes hardware in Haskell and generates standard VHDL or Verilog. So a software engineer can design circuits in a familiar functional language. The design and its specification then stay in one place.