Rapid Design Space Exploration of Application Specific Heterogeneous Pipelined Multiprocessor Systems

This paper describes a rapid design methodology to create a pipeline of processors to execute streaming applications. The methodology seeks a system with the smallest area while its runtime is within a specified runtime constraint. Initially, a heuristic is used to rapidly explore a large number of processor configurations to find the near Pareto front of the design space, and then an exact integer linear programming (ILP) formulation (EIF) is used to find an optimal solution. A reduced ILP formulation (RIF) or the heuristic is used if the EIF does not find an optimal solution in a given time window. This design methodology was integrated into a commercial design flow and was evaluated on four benchmarks with design spaces containing up to 1016 design points. For each benchmark, the near Pareto front was found in less than 3 h using the heuristic, while EIF took up to 16 h. The results show that the average area error of the heuristic and RIF was within 2.25% and 1.25% of the optimal design points for all the benchmarks, respectively. The heuristic is faster than RIF, while both the heuristic and RIF are significantly faster than EIF.

[1]  Paul M. Chau,et al.  Macro pipelining based scheduling on high performance heterogeneous multiprocessor systems , 1995, IEEE Trans. Signal Process..

[2]  Sri Parameswaran,et al.  Synthesis of heterogeneous pipelined multiprocessor systems using ILP: jpeg case study , 2008, CODES+ISSS '08.

[3]  Alice C. Parker,et al.  Optimal synthesis of application specific heterogeneous pipelined multiprocessors , 1994, Proceedings of IEEE International Conference on Application Specific Array Processors (ASSAP'94).

[4]  Hironori Kasahara,et al.  Multigrain parallel processing for JPEG encoding on a single chip multiprocessor , 2002, International Workshop on Innovative Architecture for Future Generation High-Performance Processors and Systems.

[5]  Shiann-Rong Kuang,et al.  Partitioning and Pipelined Scheduling of Embedded System Using Integer Linear Programming , 2005, 11th International Conference on Parallel and Distributed Systems (ICPADS'05).

[6]  A. Beric,et al.  Heterogeneous multiprocessor for high definition video , 2006, 2006 Digest of Technical Papers International Conference on Consumer Electronics.

[7]  Sri Parameswaran,et al.  Design Methodology for Pipelined Heterogeneous Multiprocessor System , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[8]  Jason Cong,et al.  Synthesis of an application-specific soft multiprocessor system , 2007, FPGA '07.

[9]  Mahmut T. Kandemir,et al.  An integer linear programming based approach for parallelizing applications in On-chip multiprocessors , 2002, DAC '02.

[10]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[11]  Srivaths Ravi,et al.  Synthesis of application-specific heterogeneous multiprocessor architectures using extensible processors , 2005, 18th International Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design.

[12]  Kiyoung Choi,et al.  Loop pipelining in hardware-software partitioning , 1998, Proceedings of 1998 Asia and South Pacific Design Automation Conference.

[13]  Sri Parameswaran,et al.  Rapid runtime estimation methods for pipelined MPSoCs , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[14]  Peter Pirsch,et al.  A formal approach for the optimization of heterogeneous multiprocessors for complex image processing schemes , 1995, Proceedings of EURO-DAC. European Design Automation Conference.

[15]  J.L. van Meerbergen,et al.  Heterogeneous multiprocessor for the management of real-time video and graphics streams , 2000, IEEE Journal of Solid-State Circuits.

[16]  Sri Parameswaran,et al.  Heterogeneous multiprocessor implementations for JPEG:: a case study , 2006, Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06).