150 likes | 266 Vues
This paper presents a novel approach to FPGA routing by applying speculative parallelism and utilizing non-blocking priority queues in the maze expansion process. With a focus on reducing the runtime of circuit design—dominated by placement and routing—the study achieves significant speedup (up to 5.5x) while ensuring scalability across multiple threads. By exploring the operator formulation for parallel algorithms, the research demonstrates how multiple active nodes can be processed concurrently, offering a promising direction for future advancements in parallel Computer-Aided Design (CAD) algorithms.
E N D
Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University of California Riverside Design Automation Conference (DAC 2014) San Francisco, CA, USA, June 1-5, 2014
Motivation • Runtime of circuit design is dominated by P&R • Maze Expansion consumes over 65% of Runtime • Large number of non-conflicting operations executed at each iteration
Contribution • Application of Speculative Parallelism to FPGA routing • Use of non-blocking priority queues for the Maze Expansion • Implementation of the parallel router in VPR
FPGA Routing • Find a physical path for every signal in the circuit • Disjoint-path problem; NP-complete S T1 T2 • Pathfinder: Negotiation-based algorithm
Routing Resource Graph (RRG) source wire3 wire4 2-LUT out out wire3 wire4 in2 in1 wire2 wire1 in2 in1 wire1 wire2 sink • RRG represents the routing resources of the FPGA 5
Serial Pathfinder We Parallelize the Maze Expansion
Maze Expansion Operation • PQ contains nodes that have not been fully explored
Galois • Software framework for parallelizing irregular algorithms • Employ speculation based approach to parallelism • Operator formulation of algorithms Parallel program = Operator + Schedule + Parallel data structure
Operator formulation of algorithms • Operator • Computation at active element • Activity: application of operator to active element • Amorphous data-parallelism • Multiple active nodes can be processed in parallel subject to neighborhood and ordering constraints : active node : neighborhood Parallel program = Operator + Schedule + Parallel data structure 9
Maze Expansion in Galois • Threads speculatively explore the node of RRG • Each Thread has a local Priority Queue
Benchmarks • We selected 10 of the largest IWLS benchmarks. • We target 65nm CMOS (BPTM)
Maze Router Speedup • Achieved up-to 5.5x speedup (Using 8 threads) • Steady Scalability up to 8 threads
Maze Router – Configuration Options (Normalized Speedup) • STM PQ + Iteration Coalescing achieved 5.46x speedup
Maze Router - Critical Path Delay (CPD) • # of Threads has no impact on Critical Path Delay (CPD) • Parallel implementation achieved better CPD than VPR
Conclusion & Future Work • Speculative parallelism can be good choice for parallel • CAD algorithms • Achieved Near-linear speedup (up to 5.5x) over • Serial FPGA Router. • Future work includes applying this speculative • model to parallelize Placement.