参考:Basics of FPGA Architecture and Applications
- 简介
FPGA(Field Programmable Gate Array)是一种半导体逻辑芯片,可以用于设计任意类型系统何逻辑电路,类似于PLD(包含几百个逻辑门,而FPGA包含上千个逻辑门)。 - 结构
FPGA包含三个模块:I/O blocks or Pads、Switch Matrix/Interconnection Wires和 Configurable logic blocks(CLB)。基本的FPGA含有一个二维的logic blocks阵列,并提供相应的方法用于用户组织连接不同的logic block。
- CLB (Configurable Logic Block) includes digital logic, inputs, outputs. It implements the user logic.
- Interconnects provide direction between the logic blocks to implement the user logic.
- Depending on the logic, switch matrix provides switching between interconnects.
- I/O Pads used for the outside world to communicate with different applications.
Logic Block 包含:MUX(选择器)、D filp flop 和LUT(LookUp Table 实现组合逻辑功能)、D触发器用于存储查找表输出。
- FPGA类型
- Low End FPGAs: These types of FPGAs are designed for low power consumption, low logic density and low complexity per chip. Examples of low end FPGAs are Cyclone family from Altera, Spartan family from Xilinx, fusion family from Microsemi and the Mach XO/ICE40 from Lattice semiconductor.
- Mid Range FPGAs: These types of FPGAs are the optimum solution between the low-end and high- end FPGAs and these are developed as a balance between the performance and the cost. Examples of Mid range FPGAs are Arria from Altera, Artix-7/Kintex-7 series from Xlinix, IGL002 from Microsemi and ECP3 and ECP5 series from Lattice semiconductor.
- High End FPGAs: These types of FPGAs are developed for logic density and high performance. Examples of High end FPGAs are a Stratix family from Altera, Virtex family from Xilinx, Speedster 22i family from Achronix, and ProASIC3 family from Microsemi.