Lesson 02: Verilog HDL

What is an FPGA?

FPGA is a programmable device or a programmable chip, which you can design your own chips completely from a sketch. FPGA allows you to design and implement any digital function. The big difference between FPGA and other chip you can buy on the market is that the FPGA does have any intended function when you actually bought it. For example, when you bought a microcontroller to build a computer system. The microcontroller already builds logical functions and hardware wires inside the chip, so you can program it to do some useful jobs. FPGA cannot do this, because of FPGA

FPGA architecture is flexible,


FPGAs (Field Programmable Gate Arrays) are semiconductor devices constituted by a matrix of configurable logic blocks (CLBs)  connected via programmable interconnects. FPGAs can be reprogrammed to the desired application or functionality requirements after manufacturing. This feature distinguishes FPGAs from Application-Specific Integrated Circuits (ASICs), which are custom manufactured for specific design tasks. Although one-time programmable (OTP) FPGAs are available, the dominant types are SRAM based which can be reprogrammed as the design evolves.


When we want to design the logical circuit,