Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
FPGA programming technology and
Interconnect architecture
Dr. D. V. Kamath
Professor, Department of E&C Engg.,
Manipal Ins...
2
Programming technology for FPGAs
The logic cells within an FPGA are configured using a programming
technology. There are...
3
Antifuse technology for ACTEL FPGAs
 An antifuse is the opposite of a regular fuse
 An antifuse is a normally open(N.O...
4
Programming technology for ACTEL FPGAs
Actel’s Antifuse
 Two types of antifuses are used :
[i] Poly-diffusion antifuse ...
5
ACTEL antifuse
A cross section of Actel antifuse
 The ONO (oxide-nitride-oxide) dielectric layer having thickness less
...
6
ACTEL antifuse
Actel antifuse (a) A cross section of a poly-diffusion antifuse (b) A
simplified drawing. The ONO (oxide–...
7
ACTEL ‘s PLICE
• The size of an antifuse is limited by the resolution of the
lithography equipment used to makes ICs.
 ...
8
Metal-metal antifuse (Quick Logic)
Cross section of a Metal-metal antifuse
 Uses a two-level metal process
 The conduc...
9
Metal-metal antifuse
Advantages of metal-metal antifuse over poly-diffusion antifuse
(i) Connections form antifuses to w...
10
Programming technology for Xilinx FPGAs
Xilinx sRAM configuration cell
 Consists of two cross-coupled inverters
 Uses...
11
Xilinx sRAM configuration cell
Advantages:
 Designers can reuse chips
 Easy to upgrade the circuit design
Disadvantag...
12
sRAM cell
5V
Word line
BIT
Line
BIT
Line
 SRAM cells are found in Xilinx FPGA
 Allow for efficient implementation
of ...
13
EPROM cell
Double-Poly EPROM Cell
14
EPROM
 Altera MAX CPLDs and most of the PLDs use UV-erasable EPROM cells
as their programming technology.
 Size of th...
15
Double poly EPROM memory cell
 Applying programming voltage Vpp > 12 V to the drain of n-
channel EPROM transistor pro...
16
Double poly EPROM memory cell
 Electrons trapped on floating gate raise the threshold voltage of n-
channel EPROM tran...
17
Double poly EPROM memory cell
 UV light is used to erase the EPROM cell. UV light provides
enough energy for the elect...
18
EEPROM
 Programming an EEPROM transistor is similar to programming
an UV-erasable EPROM transistor, but the erase mech...
19
Actel ACT family interconnect
 The channel routing uses dedicated rectangular areas of fixed size
within the chip call...
20
Interconnect architecture used in an Actel ACT family FPGA
21
Segmented channel routing
 To allow programming of the interconnect, Actel divides the fixed
interconnect wires within...
22
Detailed view of the channel and the connections to each Logic Module
23
Horizontal tracks
 The ACT1 interconnection architecture uses a total of 25
tracks per channel ( 22 horizontal tracks ...
24
Vertical tracks
 Each ACT1 logic module has 8 inputs ( 4 input stubs on top and 4 on
bottom)
 8 vertical tracks per L...
25
Vertical tracks
 One vertical track per column is a long vertical track (
LVT ) that spans the entire height of the ch...
26
 The ACT 1 devices are very nearly fully populated (an antifuse at
every horizontal and vertical interconnect intersec...
27
Xilinx LCA
 The vertical lines and horizontal lines run between CLBs.
 The general-purpose interconnect joins switch ...
28
Xilinx LCA
Xilinx LCA interconnect. (a) The LCA architecture (notice the matrix element size is
larger than a CLB). (b)...
29
Components of interconnect delay in a Xilinx LCA array. (a) A portion of the interconnect
around the CLBs. (b) A switch...
30
Altera MAX 5000 and 7000 Interconnect scheme
A simplified block diagram of the Altera MAX interconnect scheme. (a) The ...
31
Altera MAX Interconnect scheme
• Altera MAX 5000/7000 devices use a Programmable
Interconnect Array ( PIA ).
• The PIA ...
32
• reachdvkamath@yahoo.com
• dv.kamath@manipal.edu
Contact
Upcoming SlideShare
Loading in …5
×

fpga programming

1,685 views

Published on

Published in: Engineering, Technology, Business
  • Be the first to comment

  • Be the first to like this

fpga programming

  1. 1. FPGA programming technology and Interconnect architecture Dr. D. V. Kamath Professor, Department of E&C Engg., Manipal Institute of Technology, Manipal 1
  2. 2. 2 Programming technology for FPGAs The logic cells within an FPGA are configured using a programming technology. There are two classes of programming technology : [i] OTP(One time programmable) [ii] Reprogrammable Different FPGAs use different programmable (switching) elements : [i] Antifuse in ACTEL FPGA [ii] Static RAM cell in Xilinx FPGA [iii] EPROM/ EEPROM in Altera CPLD Programmable interconnect (PI) is used to connect any two logic cells. Different FPGAs use different interconnect architectures [i] Segmented Channel routing in ACTEL FPGA [ii] LCA interconnect architecture in Xilinx FPGA
  3. 3. 3 Antifuse technology for ACTEL FPGAs  An antifuse is the opposite of a regular fuse  An antifuse is a normally open(N.O) type of switch. A programming current of 5 mA through it closes the switch. e.g. In a poly-diffusion antifuse, the high current density causes a large power dissipation in a small area, which melts a thin insulating dielectric between polysilicon and diffusion electrodes and forms a thin (about 20 nm in diameter), permanent, and resistive silicon.  Antifuses separate interconnect wires on FPGA and programmer blows an antifuse to make a permanent connection. This programming process cannot be reversed.
  4. 4. 4 Programming technology for ACTEL FPGAs Actel’s Antifuse  Two types of antifuses are used : [i] Poly-diffusion antifuse (Actel) [ii] Metal-metal antifuse (Quick Logic)  Actel calls its antifuse as Programmable Low Impedance Circuit Element (PLICE)  Advantage: small area overhead (size of the antifuse switching element is very small in comparison with size of sRAM cell)  Disadvantage : OTP
  5. 5. 5 ACTEL antifuse A cross section of Actel antifuse  The ONO (oxide-nitride-oxide) dielectric layer having thickness less than 10 nm is deposited between conducting polysilicon and diffusion layers.  ONO dielectric is a combination of silicon dioxide and silicon nitride 2λ
  6. 6. 6 ACTEL antifuse Actel antifuse (a) A cross section of a poly-diffusion antifuse (b) A simplified drawing. The ONO (oxide–nitride–oxide) dielectric is less than 10 nm thick, so this diagram is not to scale. (c) From above, an antifuse is approximately the same size as a contact.
  7. 7. 7 ACTEL ‘s PLICE • The size of an antifuse is limited by the resolution of the lithography equipment used to makes ICs.  The fabrication process and the programming current control the average resistance of a blown antifuse.  For programming current of 5 mA, antifuse resistance is of the order of about 500 Ω. For 15 mA current, antifuse resistance is about 100 Ω.  The number of antifuse switches used in an ACTEL FPGA is large. Eg. An Actel 1010 contains 1,12,000 antifuses.
  8. 8. 8 Metal-metal antifuse (Quick Logic) Cross section of a Metal-metal antifuse  Uses a two-level metal process  The conductive link is an alloy of tungsten, titanium and silicon with a bulk resistance of 500 μΩcm
  9. 9. 9 Metal-metal antifuse Advantages of metal-metal antifuse over poly-diffusion antifuse (i) Connections form antifuses to wiring layers (metal) are direct. Hence, associated parasitic capacitance is less. (ii) Because of direct connection, area requirement is also reduced. (i) Also due to direct connection, it is easier to use larger programming current which results in reduced antifuse resistance.  For Quick logic antifuse resistance is given by R ≈ 0.8/ I Ω, where I in mA  Resistance of metal-metal antifuse is around 80 Ω for a programming current of 15 mA (for quick logic).
  10. 10. 10 Programming technology for Xilinx FPGAs Xilinx sRAM configuration cell  Consists of two cross-coupled inverters  Uses a standard CMOS process  The outputs of configuration cell are used to drive the gates of other transistors (i.e., pass transistors or transmission gates) to make or break the connection
  11. 11. 11 Xilinx sRAM configuration cell Advantages:  Designers can reuse chips  Easy to upgrade the circuit design Disadvantages:  Volatile and power supply should be kept applied (Alternatively, the configuration data can be downloaded from a PROM or Flash memory) every time the system is turned ON)  Larger in size
  12. 12. 12 sRAM cell 5V Word line BIT Line BIT Line  SRAM cells are found in Xilinx FPGA  Allow for efficient implementation of memory Six transistor SRAM cell
  13. 13. 13 EPROM cell Double-Poly EPROM Cell
  14. 14. 14 EPROM  Altera MAX CPLDs and most of the PLDs use UV-erasable EPROM cells as their programming technology.  Size of the EPROM cell is almost same as that of an antifuse.  EPROM technology is sometimes called floating-gate avalanche MOS (FGMOS or FAMOS ).  An unprogrammed n-channel EPROM transistor (having normal threshold voltage) acts as ON switch for normal operating voltage.  A programmed n-channel EPROM transistor (with a high threshold voltage) acts as OFF.
  15. 15. 15 Double poly EPROM memory cell  Applying programming voltage Vpp > 12 V to the drain of n- channel EPROM transistor programs the EPROM cell.  A High electric field causes electrons flowing toward the drain to move so fast they jump across the insulating gate oxide, where they are trapped on the bottom of the floating gate (gate1).  These energetic electrons are hot and this effect is known as hot- electron injection or avalanche injection .
  16. 16. 16 Double poly EPROM memory cell  Electrons trapped on floating gate raise the threshold voltage of n- channel EPROM transistor.  Once programmed, an n-channel EPROM device remains OFF for normal operating voltages (i.e., even with VDD applied to the top gate).
  17. 17. 17 Double poly EPROM memory cell  UV light is used to erase the EPROM cell. UV light provides enough energy for the electrons stuck on gate1 to “jump” back to the bulk, allowing the transistor to operate normally.
  18. 18. 18 EEPROM  Programming an EEPROM transistor is similar to programming an UV-erasable EPROM transistor, but the erase mechanism is different.  In an EEPROM transistor an electric field is also used to remove electrons from the floating gate of a programmed transistor.  This is faster than using a UV lamp and the chip does not have to be removed from the system.
  19. 19. 19 Actel ACT family interconnect  The channel routing uses dedicated rectangular areas of fixed size within the chip called wiring channels or just channels.  The horizontal channels run across the chip in the horizontal direction.  The vertical channels run over the top of the basic logic cells in the vertical direction .  Within the horizontal or vertical channels wires run horizontally or vertically, respectively, within tracks.  The channel capacity refers to the number of tracks it contains. Each track holds one wire.  In a channeled gate array the designer decides the location and length of the interconnect within a channel. But, in an FPGA the interconnect is fixed at the time of manufacture.  Each Logic Module is provided with the input stubs and output stubs.
  20. 20. 20 Interconnect architecture used in an Actel ACT family FPGA
  21. 21. 21 Segmented channel routing  To allow programming of the interconnect, Actel divides the fixed interconnect wires within each channel into wires of various lengths called wire segments.  This is referred as segmented channel routing, a type of channel routing.  Antifuses join the wire segments. The designer then programs the interconnections by blowing antifuses and making connections between wire segments; unwanted connections are left unprogrammed.  A statistical analysis of many different layouts determines the optimum number and the lengths of the wire segments.
  22. 22. 22 Detailed view of the channel and the connections to each Logic Module
  23. 23. 23 Horizontal tracks  The ACT1 interconnection architecture uses a total of 25 tracks per channel ( 22 horizontal tracks per channel for signal routing + 3 tracks dedicated to VDD, GND, and the global clock (GCLK))  Horizontal segments vary in length from 4 columns of Logic Modules to the entire row of modules (Actel calls these long segments as long lines). ACT1 interconnection architecture
  24. 24. 24 Vertical tracks  Each ACT1 logic module has 8 inputs ( 4 input stubs on top and 4 on bottom)  8 vertical tracks per LM are available for inputs (4 from the LM above the channel and 4 from the LM below).These connections are the input stubs.  The single LM output connects to a vertical track that extends across the 2 channels above the module and across the 2 channels below the module (output stub). Since this is a dedicated connection, no antifuse is needed.  Thus module outputs use 4 vertical tracks per module (counting 2 tracks from the modules below, and 2 tracks from the modules above each channel). ACT1 interconnection architecture
  25. 25. 25 Vertical tracks  One vertical track per column is a long vertical track ( LVT ) that spans the entire height of the chip (Actel 1020 contains some segmented LVTs).  There are thus a total of 13 vertical tracks per column in the ACT 1 architecture (8 for inputs, 4 for outputs, and 1 for an LVT). ACT1 interconnection architecture
  26. 26. 26  The ACT 1 devices are very nearly fully populated (an antifuse at every horizontal and vertical interconnect intersection).  If the Logic Module at the end of a net is less than two rows away from the driver module, a connection requires 2 antifuses, 1 vertical track, and 2 horizontal segments.  If the modules are more than two rows apart, a connection between them will require a long vertical track (LVT) together with another vertical track (the output stub) and two horizontal tracks. To connect these tracks will require a total of 4 antifuses in series and this will add delay due to the resistance of the antifuses. ACT1 interconnection architecture
  27. 27. 27 Xilinx LCA  The vertical lines and horizontal lines run between CLBs.  The general-purpose interconnect joins switch boxes (also known as magic boxes or switching matrices).  The long lines run across the entire chip. It is possible to form internal buses using long lines and the three-state buffers that are next to each CLB.  The direct connections (not used on the XC4000) bypass the switch matrices and directly connect adjacent CLBs.  The Programmable Interconnection Points (PIP’s) are programmable pass transistors that connect the CLB inputs and outputs to the routing network.  The bidirectional (BIDI) interconnect buffers restore the logic level and logic strength on long interconnect paths.
  28. 28. 28 Xilinx LCA Xilinx LCA interconnect. (a) The LCA architecture (notice the matrix element size is larger than a CLB). (b) A simplified representation of the interconnect resources. Each of the lines is a bus.
  29. 29. 29 Components of interconnect delay in a Xilinx LCA array. (a) A portion of the interconnect around the CLBs. (b) A switching matrix. (c) A detailed view inside the switching matrix showing the passtransistor arrangement. (d) The equivalent circuit for the connection between nets 6 and 20 using the matrix. (e) A view of the interconnect at a Programmable Interconnection Point (PIP). (f) and (g) The equivalent schematic of a PIP connection.
  30. 30. 30 Altera MAX 5000 and 7000 Interconnect scheme A simplified block diagram of the Altera MAX interconnect scheme. (a) The PIA (Programmable Interconnect Array) is deterministic— delay is independent of the path length. (b) Each LAB (Logic Array Block) contains a programmable AND array.
  31. 31. 31 Altera MAX Interconnect scheme • Altera MAX 5000/7000 devices use a Programmable Interconnect Array ( PIA ). • The PIA is a cross-point switch for logic signals traveling between LABs. • The advantages of this architecture is it uses a fixed number of connections so the routing delay is also fixed. • Simpler and regular structure in nature that improved speed of the placement and routing software. • The delay between LAB1 and LAB2 is the same as the delay between LAB1 and LAB6
  32. 32. 32 • reachdvkamath@yahoo.com • dv.kamath@manipal.edu Contact

×