The Community for Technology Leaders
Design, Automation & Test in Europe. DATE'08 (2008)
March 10, 2008 to March 14, 2008
ISBN: 978-3-9810801-3-1
pp: 1268-1273
Miroslav N. Velev , Aries Design Automation, LLC.
Ping Gao , Aries Design Automation, LLC
We compare 12 new encodings for representing of FPGA detailed routing problems as equivalent Boolean satisfiability (SAT) problems against the only 2 previously used encodings. We also consider two symmetry-breaking heuristics. Compared to other methods for FPGA detailed routing, SAT-based approaches have the advantage that they can prove the unroutability of a global routing for a particular number of tracks per channel, and that they consider all nets simultaneously. The experiments were run on the standard MCNC benchmarks. The combination of one new encoding with a new symmetry-breaking heuristic resulted in speedup of 3 orders of magnitude or 1,139x of the total execution time on the collection of benchmarks, when proving the unroutability of FPGA global routings. The maximum obtained speedup was 9,499x on an individual benchmark. On the other hand, most of the encodings had comparable and very efficient performance when finding solutions for configurations that were routable. The availability of many SAT encodings, that can each be combined with various symmetry-breaking heuristics, opens the possibility to design portfolios of parallel strategies - each a combination of a SAT encoding and a symmetry- breaking heuristic - that can be run in parallel on different cores of a multicore CPU in order to reduce the solution time, with the rest of the runs terminated as soon as one of them returns an answer. We found that a portfolio of three particular parallel strategies produced additional speedup of more than 2x.
Boolean algebra, field programmable gate arrays

M. N. Velev and P. Gao, "Comparison of Boolean Satisfiability Encodings on FPGA Detailed Routing Problems," Design, Automation & Test in Europe Conference & Exhibition(DATE), Munich, Germany, 2008, pp. 1268-1273.
483 ms
(Ver 3.3 (11022016))