Hardware/software partitioning and minimizing memory interface traffic

We present a fully automatic approach to hardware/software partitioning and memory allocation by applying compiler techniques to the hardware/software partitioning problem and linking a compiler to a behavioural VHDL generator and high level hardware synthesis tools. Our approach is based on a hierarchical candidate preselection technique and allows (a) efficient collection of profiling data, (b) fast partitioning, and (c) high complexity of the hardware partition.

[1]  Harvey F. Silverman,et al.  An adaptive hardware machine architecture and compiler for dynamic processor reconfiguration , 1991, [1991 Proceedings] IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[2]  Joseph Varghese,et al.  An efficient logic emulation system , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[3]  Rolf Ernst,et al.  COSYMA: a software-oriented approach to hardware/software codesign , 1994 .

[4]  A. Jantsch,et al.  A case study on hardware/software partitioning , 1994, Proceedings of IEEE Workshop on FPGA's for Custom Computing Machines.

[5]  Peter Mark Athanas An adaptive machine architecture and compiler for dynamic processor reconfigurations , 1992 .

[6]  Axel Jantsch,et al.  A software oriented approach to hardware-software co-design , 1994 .

[7]  H. Tenhunen,et al.  Exploring ASIC design space at system level with a neural network estimator , 1994, Proceedings Seventh Annual IEEE International ASIC Conference and Exhibit.

[8]  R. Tibshirani,et al.  An introduction to the bootstrap , 1993 .

[9]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[10]  Ahmed Hemani,et al.  A neural net based self organising scheduling algorithm , 1990, Proceedings of the European Design Automation Conference, 1990., EDAC..

[11]  R.K. Gupta,et al.  System-level synthesis using re-programmable components , 1992, [1992] Proceedings The European Conference on Design Automation.