FPGA resource and timing estimation from Matlab execution traces

We present a simulation-based technique to estimate area and latency of an FPGA implementation of a Matlab specification. During simulation of the Matlab model, a trace is generated that can be used for multiple estimations. For estimation the user provides some design constraints such as the rate and bit width of data streams. In our experience the runtime of the estimator is approximately only 1/10 of the simulation time, which is typically fast enough to generate dozens of estimates within a few hours and to build cost-performance trade-off curves for a particular algorithm and input data. In addition, the estimator reports on the scheduling and resource binding used for estimation. This information can be utilized not only to assess the estimation quality, but also as first starting point for the final implementation.

[1]  Luciano Lavagno,et al.  Hardware-Software Co-Design of Embedded Systems , 1997 .

[2]  Felice Balarin STARS of MPEG decoder: a case study in worst-case analysis of discrete-event systems , 2001, CODES '01.

[3]  Donatella Sciuto,et al.  Source-level execution time estimation of C programs , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[4]  Axel Jantsch,et al.  Floating- to Fixed-Point Refinement in Matlab with an Object-Oriented Library , 1999 .

[5]  Alex K. Jones,et al.  A MATLAB compiler for distributed, heterogeneous, reconfigurable computing systems , 2000, Proceedings 2000 IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00871).

[6]  Axel Jantsch,et al.  Performance analysis with confidence intervals for embedded software processes , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

[7]  Luciano Lavagno,et al.  Software performance estimation strategies in a system-level design tool , 2000, Proceedings of the Eighth International Workshop on Hardware/Software Codesign. CODES 2000 (IEEE Cat. No.00TH8518).

[8]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[9]  Luciano Lavagno,et al.  Hardware-software co-design of embedded systems: the POLIS approach , 1997 .

[10]  Alok N. Choudhary,et al.  FPGA hardware synthesis from MATLAB , 2001, VLSI Design 2001. Fourteenth International Conference on VLSI Design.