FPGA (Field Programmable Gate Arrays)
FPGA (Field Programmable Gate Arrays)
FPGA (Field Programmable Gate Arrays)
Lecture Outline
Available choice for digital designer FPGA a choice for designers Interconnection Framework
FPGAs and CPLDs
Designers Choice
Digital designer has various options
SSI (small scale integrated circuits) or MSI (medium scale integrated circuits) components
Difficulties arises as design size increases Interconnections grow with complexity resulting in a prolonged testing phase
Designers Choice
Quest for high capacity; Two choices available
MPGA (Masked Programmable Logic Devices)
Customized during fabrication Low volume expensive
Comparison
Interconnection Framework
Granularity and interconnection structure has caused a split in the industry FPGA
Fine grained Variable length interconnect segments Timing in general is not predictable Timing extracted after placement and route
Interconnection Framework
CPLD
Coarse grained (SPLD like blocks) Programmable crossbar interconnect structure Interconnect structure uses continuous metal lines The switch matrix may or may not be fully populated Timing predictable if fully populated Architecture does not scale well
FPGA
Based on the principle of functional completeness FPGA: Functionally complete elements (Logic Blocks) placed in an interconnect framework Interconnection framework comprises of wire segments and switches; Provide a means to interconnect logic blocks Circuits are partitioned to logic block size, mapped and routed
Field Programmability
Field programmability is achieved through switches (Transistors controlled by memory elements or fuses) Switches control the following aspects
Interconnection among wire segments Configuration of logic blocks
Distributed memory elements controlling the switches and configuration of logic blocks are together called Configuration Memory
Desired properties:
Minimum area consumption Low on resistance; High off resistance Low parasitic capacitance to the attached wire Reliability in volume production
Understand and define design requirements Design description Behavioral simulation (Source code interpretation) Synthesis Functional or Gate level simulation Implementation Fitting Place and Route Timing or Post layout simulation Programming, Test and Debug