You are on page 1of 4

FIELD PROGRAMMABLE GATE ARRAY

Shah Siddhi S
Dept.:-Electronics and Communication
Nirma University
Ahmadabad ,India
11bec177@nirmauni.ac.in

Abstract—Field Programmable Gate Arrays (FPGA's) have rapidly The Optimized Reconfigurable Cell Array (ORCA) is a new
grown in acceptance and use over the last few years. Infect, some SRAM based FPGA architecture which makes FPGA's
aspects of FPGA's are preventing this growth from being much attractive in applications that which were previously reserved
more rapid than it is now. Particularly there is a need for closing for Gate Arrays. The ORCA has an architecture that assures
part of the gap between the performance of FPGA's and the
performance of traditional approaches to ASIC design in the areas
dense layout of all major types of functionality needed
of gate density, clock rate, and ease of use. FPGA chips contain including data path, random logic, and SRAM. High density
tens to hundreds of thousands of logic gate with programmable data paths are obtained through a completely nibble oriented
interconnects and are available to the users for their custom structure for both routing and functionality. Good random
hardware Programming. This design style provides a means of fast logic packing results from a novel approach to interconnect
prototyping and also cost effective chip design, especially for low that simplifies software and reduces transistor count, coupled
volume applications. It consists of I/O buffers, an array of with a powerful and flexible functional unit. All SRAM bits
configurable logic blocks (CLBs) and programmable interconnects that are associated with Look Up Tables (LUT's) gives good
structure.
SRAM density. High speed is assured with high speed
arithmetic circuits, low resistance interconnect lines, and
Keywords— FPGA, AND-LUT, PLA, LUT, ORCA, CLBs. special low skew clock lines.

Introduction To make the ORCA easy to use, the entire architecture was
ASIC designers had two basic options for implementing their designed so that it could be efficiently used with simple,
designs in 1980s. Highly complex designs for which a large straightforward algorithms. This eliminates the need for the
unit volume was expected were designed as cell based ASIC's, manual manipulation of FPGA placement and routing that has
and simpler or lower volume circuits were used as Gate made working with FPGA’s a challenge. Apart from that a
Arrays. As illustrated in Figure 1. It changed when FPGA's new approach is taken to automatic timing design that
became available. Currently FPGA's offer a reliable option for automatically reallocates Routing and other resource for
designers of ASIC's with low volume needs of up to 10K gates critical signals so that fast routing paths can be saved for it.
and for somewhat higher volumes with lower gate counts. FPGA programmed with SRAM technology are usually based
on Look-Up Tables (LUTs). For implementing random logic
circuits in LUT based FPGA, the cost of LUTs increases
exponentially according to the inputs of circuits. So LUT is
suitable for low fan-in logic circuits.

2. A Hybrid FPGA Architecture

2.1. Symmetrical FPGA architecture

The diagram of symmetrical FPGAs is Shown in Figure 2. It


consists of programmable logic clusters, Connection Boxes
Figure 1: Complexity vs production volume for three types (CBs) and Switch Boxes (SBs). The connection box of the
of ASIC circuits. symmetrical FPGA, illustrated in Figure 3, is fully-populated,
which connects signal between routing channel tracks and
The reason FPGA's are limited to the lower left corner of logic clusters.
Figure 1 is that FPGA's still lag behind both Gate Array and
Cell Based designs in three key areas. These are gate density,
system clock speed, and ease of use. With improvements in
these three areas, FPGA use will extend well into the mid-
range of the Gate Array Market.
Figure 2 : Symmetrical FPGA Architecture.

Figure 4: Wire-and CB

Detailed architecture of the wire-and CB is presented in


Figure 5. A pull-up resistor is used in every wire-and line. Two
serial NMOS pass transistors draw the wire-and line to the
ground when the SRAM bit and channel input are both at
logic “1”. Keep the SRAM bit to logic “0” when the channel
input is not in use. If the CB works in the LUT mode, the
channel input signal is routed though the inverse input of the
MUX and set corresponding SRAM bit to logic “1” while
other SRAM bits in the same wire-and line are kept at logic
“0”. In contrast to the LUT mode, several SRAM bits of the
same wire-and line may be set to logic “1” when the CB is
used in the PLA mode.

Figure 3 : Connection Box.

Figure 3. shows the internal structure of connection box


which contains vertical channel and the horizontal channels are
used to connect the routing channels with left and right
clusters. It consists of SRAM and Mos transistor connected
between horizontal and vertical channels.

2.2. A new hybrid FPGA architecture

The new hybrid FPGA architecture is based on symmetrical


FPGA, which utilizes existing CBs in implementing logic
functions. Its logic tiles can be configured as either PLAs or
LUTs. In the PLA mode, CBs are employed to implement the
AND plane and LUTs are used to realize the OR plane. While
in the LUT mode, it can be configured as LUT, which is the
same as general LUT-based FPGA. Figure 4 shows the CB Figure 5 : Detailed CB Architecture.
structure used in the hybrid FPGA. A 2 to 1 MUX with an
inverse input is used because both input and inverse input are 3. An on-line reconfigurable FPGA architecture
needed simultaneously in AND plane. So the number of PLA
inputs is 16, half of the channel width. Signals from routing FPGAs are widely used for prototyping of digital systems. A
channel can be programmably connected to the cluster major problem of current FPGA architectures is that if a there
inputs. All the connected signals to a cluster input are wire- is a fault in a single combinational logic block (CLB), it may
and connected and regarded as a product term. take a significant amount of time to find an alternative,
mapping of the circuit to bypass the faulty block. Thus, there Let us illustrate the fault tolerant capability of a cell by
is a need for new type FPGA architectures that allow rapid implementing the following four-variable function using three
recovery from internal faults in a FPGA. Currently only the CLBs in a cell as shown in Fig. 3(a).
detection of permanent faults in logic blocks, and on their F (a,b,c,d) = afl + cfz
interconnections are considered in FPGA-based systems. Where J=abd+ 6 c d + a c 2
And,
Reconfigurable FPGA architecture h = bfl + Ff,
Let us assume next that CLB C is faulty. An alternate
An FPGA architecture to accommodate on-line error detection configuration of the CLBs that implements the original
and replacement of faulty CLBs by fault-free CLBs has been function is shown in Fig.7. Note that in this configuration
proposed. Fig. 6 .shows the implementation of the CLB. Each spare CLB S replaces CLB C. Since the critical path delay in
multiplexer has both normal and the complement value of its a cell is equivalent to the propagation delays of any two CLBs
data and control inputs, and its outputs are also in series, the replacement of a faulty CLB by the spare does
complementary. not affect the critical path delay of a cell. In other words, the
rerouting of signals to achieve fault tolerance does not change
Thus, a 2-to-1 multiplexer has six inputs and two outputs, and the timing of a circuit implemented using a cell of any two
a 4-to-1 multiplexer has twelve inputs and two outputs. The D CLBs in series, the replacement of a faulty CLB by the spare
flip-flop also generates both normal output and its does not affect the critical path delay of a cell. In other words,
complement. In the presence of a single fault in any of its the rerouting of signals to achieve fault tolerance does not
components, a CLB produces either 00 or 11 as output, change the timing of a circuit implemented using a cell. Three
otherwise the outputs are 01 or 10. The CLBs are grouped into cells can be interconnected as shown in Fig. to form a super
a matrix of cells. Each cell contains four CLBs , three of cell. The spare CLBs if not used, can be interconnected to
which can be interconnected to perform a logic function. The form a spare super cell. Thus, if none of the cells in a super
fourth CLB is a spare, and is used to replace any of the other cell has a faulty CLB the spares CLBs are utilized for normal
three CLBs if any of these has a fault. Fig.6 shows the data processing. In addition to the cells, a supercell contains
structure of a cell. A cell has four inputs , all of which or a an additional CLB; only a 440-1 multiplexer in this CLB is
subset of these can be routed to the inputs of a CLB. In used to transfer the output of one of the four possible
addition, a CLB can transfer data to or receive data from any constituent cells to the output of the supercell. Normally the
other CLB in the cell. For example , the outputs of CLBs A a select inputs of the multiplexer are set such that the output of
and B can be connected to the inputs of CLB C by enabling the supercell is derived from the output of cell C. This is
links 5 and 1 I. Subsequently if one of the CLBs fails, it can be because cell C may use up to four CLBs in series ( the longest
replaced by the spare CLB S. Thus, as long as there is not path in a supercell ) to implement a certain function. It should
more than one faulty CLB in a cell , it can have three possible be clear from the configuration of a supercell that in the
configurations of CLBs. Each configuration of the three fault- absence of a faulty CLB, the supercell can make a 100%
free CLBs can implement the original function. utilization of all 12 CLBs in it. In the worst possible situation
i.e. the presence of a single faulty CLB in each of the
constituent cells, the CLB utilization in a supercell reduces to
75%.

Fig.6 Implementation of a CLB Figure 7: Implementation of the Function.


\

Figure 9: FPGA Architecture

Figure 8: Alternate Implementation.


5. Conclusion:
This paper include an FPGA architecture which is composed
4. FPGA Architecture. of large matrix of programmable cells. Each cell contains
four configurable logic blocks (CLBs) out of which Three
FPGA contains tens of hundreds of thousands of gate s with CLBs in a cell can be interconnected to perform a logic
programmable interconnects, are available to the user for their function. The fourth CLB is a spare, and is used to replace any
custom hardware programming. These design style provides a of the other three CLBs if any of these has a fault. Four cells
means of fast prototyping and cost-effective chip design, are grouped together to form a super cell. A CLB is designed
especially for low volume applications. FPGA consists of I/O such that it is self-checking for any single ( permanent or
Buffers, an array of configurable logic blocks (CLBs), and transient) fault in itself. If a cell has a faulty CLB, the
programmable interconnect structure. The programming of the interconnecting links among the CLBs are reprogrammed such
interconnects is accomplished by programming of RAM cells that the faulty CLB is replaced with the spare. The new
whose output terminals are connected to the gates of the MOS configuration implements the original function. This technique
pass transistor. The CLBs offers significant flexibility of can be used in applications where on-line fault detection is
implementing a wide range of functions, with up to nine input extremely important.
variables. The complexity of a FPGA chip is typically
determined of the same by the number of CLBs it contains. 6.References:
The largest advantage of FPGA based design is the very short [1]. A. Dehon, "Balancing interconnect and computation in a
turn around time, i.e., the time required from the start of the reconfigurable computing array(or why you don't really want
design process until a functional chip is available. The typical 100% LUT utilization), Proc. IEEE Int. Symp. Defect Fault-
price of FPGA chips is usually higher than other alternatives Tolerance VLSI Systems, 1999, pp. 69-78.
of the same design style, but for small volume production of [2]  A. L. Burress and P. K. Lala, "On-line testable logic
ASIC chips and fast prototyping , FPGA offers a very valuable design for FPGA implementation," in Proc. Int. Test Conf.,
option. 1997, pp. 471-478.
[3] N.J. Howard, A.M. Tyrrell, and N.M. Allinson, ‘*The yield
enhancement of Field-Programmable Gate Arrays”, IEEE
Trans. VLSI Systems, v01.2, no.4, pp. 115-123.
[4] J. Narasimhan, K. Nakajima, C.S.Rim and A.T. Dahbura,
“Yield nhancement of programmable ASICs arrays by
reconfiguration of circuit placements”, IEEE Trans. CAD,
vol.13, August 1,1994, pp. 976-986.
[5] Altera Corporation, APEX20K Programmable Logic
Device Family Data Sheet(2004).
[6] Xilinx Corporation, Virtex-II Platform FPGAs Complete
Data Sheet (2005)

You might also like