QuickLogic interview question

Difference between FPGA, ASIC and SOC