Placement-Driven%20Technology%20Mapping%20for%20LUT-Based%20FPGAs - PowerPoint PPT Presentation

About This Presentation
Title:

Placement-Driven%20Technology%20Mapping%20for%20LUT-Based%20FPGAs

Description:

... Driven Technology Mapping. for LUT-Based FPGAs. Joey Y. Lin , Ashok Jagannathan , Jason Cong. Proceedings of the 2003 ACM/SIGDA eleventh international symposium ... – PowerPoint PPT presentation

Number of Views:60
Avg rating:3.0/5.0
Slides: 21
Provided by: nthucadC
Category:

less

Transcript and Presenter's Notes

Title: Placement-Driven%20Technology%20Mapping%20for%20LUT-Based%20FPGAs


1
Placement-Driven Technology Mapping for
LUT-Based FPGAs
  • Joey Y. Lin , Ashok Jagannathan , Jason Cong
  • Proceedings of the 2003 ACM/SIGDA eleventh
    international symposium
  • on Field programmable gate arrays
  •  

2
Introduction
Depth
Interconnect Delay
3
Experimental Flow
MCNC benchmarks
SIS(script.algebraic)
Cutmap algorithm
T-VPack
VPR
Obtain the initial locations for LUTs and
filp-flops
4
Experimental Flow
5
Outline
  • Timing-Driven Logic Decomposition
  • Placement-Driven Mapping
  • Placement Legalization and Refinement
  • Experimental Result
  • Conclusion

6
Timing-Driven Logic Decomposition
  • Topological order
  • Arrival time
  • Gate delay
  • Interconnect delay
  • lookup-table
  • Assign the same location
  • Guarantee a minimum delay
  • for each node

5
5
d 4
4
c 4
a b c
2 3 4
a b 2 3
7
Placement-Driven Mapping
  • Labeling phase
  • Label each node in network with their best
    possible signal arrival time
  • Mapping phase
  • Perform the actual mapping of simple gates into
    LUTs while considering both delay and area

8
Placement-Driven Mapping Labeling Phase
  • Cut enumeration technique on a 2-bounded Network
  • Cutv Xw U Xu Xw ? Cutw U w ,
  • Xu ? Cutu U u , Xw U Xu
    K

V
W
U
9
Placement-Driven Mapping Labeling Phase
  • Signal arrival time of node v ,label(v)
  • Min Ax x ? Cutv
  • The arrival time Ax
  • max label(u)delay(location(u),location(v))
  • dg u ? X
  • Alogorithm
  • Label(u) 0 , for node u which is a PI or FF
    output
  • Label each node v in topological order

10
Placement-Driven Mapping Mapping Phase
  • Cell congestion problem
  • Global cell congestion
  • The total area increase between our mapping and
    original mapping
  • Local cell congestion
  • Many LUTs are assigned to a small area

11
Placement-Driven Mapping Mapping Phase
  • Mapping phase
  • An Iterative procedure and contains multiple
    mapping passes
  • Mapping in each pass starts from the PO, and maps
    nodes backward until PI
  • The largest lable is the best critical path we
    expected
  • Set it as the signal required arrival time for
    each PO
  • require(v) min(require(v) , require(u)
    -delay(location(u),location(v)) - dg)
  • Candidate cuts from Cutv ,whose best arrival time
    is less than require(v)
  • Handles the cell congestion problem
  • For each candidate cut , we will evaluate it with
    a cost function
  • Cost sum of all the nodes in this cut
  • Choose cut with the best cost

12
Placement-Driven Mapping Mapping Phase
  • The Cost
  • 1st priority
  • If a node is already in the cut of previously
    mapped node in the same mapping pass , using this
    node will increase neither global nor local cell
    congestion
  • Set to 0
  • 2nd priority
  • If a node fans out to many LUTs in the previous
    mapping pass , it is very likely to be reused in
    this mapping pass
  • Set to a very small cost e

13
Placement-Driven Mapping Mapping Phase
  • 3rd priority
  • Our goal find a mapping solution without cell
    congestion
  • Original mapping is a solution without any cell
    congestion but cant meet our timing target
  • Only made changes at some critical points , it
    will introduce less cell congestion
  • if a node is the root node of any LUT in the
    original mapping solution , it is assigned a
    small cost value d, withd gt e

14
Placement-Driven Mapping Mapping
  • 4th priority
  • Use a hierarchical area control scheme to
    evaluate the local congestion cost
  • Count the area increase in several bin level
  • Put a new node v into our mapping solution
  • Check whether we will have area overflow in the
    adjacent bin regions
  • Penalty costs will be given to bins at every
    level if the area overflows

15
Placement-Driven Mapping Mapping
  • 5th priority
  • After each mapping pass ,we accumulate the actual
    number of nodes assigned in each small region
  • In the ongoing mapping pass ,we will use these
    records to guide the new mapping
  • i.e. we assign a node with a high cost if this
    node is in a region which contains a lot of LUTs
    in previous passes
  • 2.3 cuts using 4th and 5th priority costs
  • Most of the cuts using 1st , 2nd and 3rd
    priority costs
  • Majority of LUTs in the original circuit are
    unchanged

16
Placement Legalization and Refinement
  • Timing-Driven legalization step
  • Move overlapping cells into empty locations in
    their neighborhood based on the timing slack
    available for the cell
  • Alogrithm
  • Sort all the overlapping cells in the placement
    in non-decreasing order of their timing slacks
  • Move one cell at a time to the closest empty
    location in the placement till the placement is
    legalized
  • Perform timing analysis after every n cell
    movements
  • n50

17
Placement Legalization and Refinement
  • Refinement step
  • A simulated annealing based placement refinement
  • VPR
  • Low temperature
  • Movement of cells within a small area around its
    location

18
Experimental Result
19
Experimental Result
20
Conclusion
  • A general delay model considers dynamically
    changing interconnect delays based on actual LUT
    locations
  • A effective technology mapping algorithm based on
    the cut-enumeration technique was developed which
    optimizes the circuit performance with
    consideration of interconnect delays and cell
    congestion
Write a Comment
User Comments (0)
About PowerShow.com