De Oliveira Junior 1

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

De Oliveira Junior 1

Geraldo Francisco de Oliveira Junior


Article resume
Ph 212 Physics with Calculus

A Run-Time FPGA Placement and Routing using Low Complexity Graph Traversal
A field-programmable gate array (FPGA) is a semiconductor device that can be reprogrammed
after its fabrication to perform any logic function. An FPGA is a basic two dimensional grid of
configurable logic boxes (CLB) and switch boxes (SB) that are connected together. The switch
boxes are basic SRAM memories which can be programmable to connect prefabricated wiring
together. A simple FPGA architecture is basic composed of three items: I/O blocks, CLB blocks,
and routing network. I/O pads are located in the periphery of the two-dimension grid. They allowed
external communication and are connected to CLBs inside the grid. The CLBs is usually composed
from a single programmable four-input lookup table (LUT), and some D flip-flops. They are
interconnected by a programmable routing network. Prefabricated wired segments and
programmable switches that are organized in vertical and horizontal routing channels compose the
routing network. The horizontal and vertical routing channels are connected via switch boxes. The
connecting box connects logic blocks with the routing network. The number of tracks in routing
channel is called the channel width of the architecture.
A major problem when using FPGA is how to assign the switch boxes to connect to wires
segments. The routability of switch modules is usually limited due to high resistive-capacitive delay
(RC) and large area. A wire segment in an FPGA cannot be shared by different nets. This constraint
on routing resources is called the congestion constraint. Together with performance constraints, the
congestion constraints make FPGA routing a very challenging problem [3]. The routing problem

De Oliveira Junior 2

consists in assigning routing resources to each net in the net-list, while satisfying overall
performance constraints.
A graph model can be used to model the FPGA routing problem. A routing graph Gr (Vr, Er) is
a directed graph where the vertexes represent the input pins and the output pins of logic modules,
and the wire segments; and the edges represent a viable connection between two nodes. With this
graph model, the FPGA routing problem can be reduced to finding vertex disjoint routing trees in
Gr for all the nets while satisfying performance constraints.

You might also like