Resource-constrained loop list scheduler for DSP algorithms

We present a new algorithm for resource-constrained scheduling for digital signal processing (DSP) applications when the number of processors is fixed and the objective is to obtain a schedule with the minimum iteration period. This type of scheduling is best suited for moderate speed applications where conservation of area and power is more important than speed. We define and make use of newgraph dependent constraints to obtain a lower bound estimate on the iteration period for any data-flow graph. By satisfying these constraints before performing the scheduling task, we can restrict the design space and can generate valid schedules in less time than previously reported. The graph dependent constraints provide a more accurate lower bound estimate on the iteration period than previously published results. This new scheduling algorithm exploits the iterative nature of DSP algorithms and uses aniterative-loop based scheduling approach. This resource scheduling algorithm has been incorporated in the Minnesota ARchitecture Synthesis (MARS) system. Our approach exploits inter-iteration and intra-iteration precedence constraints and incorporates implicit retiming and pipelining to generate optimal and near optimal schedules.

[1]  Edwin Hsing-Mean Sha,et al.  Rotation Scheduling: A Loop Pipelining Algorithm , 1993, 30th ACM/IEEE Design Automation Conference.

[2]  Catherine H. Gebotys,et al.  Optimal synthesis of high-performance architectures , 1992 .

[3]  Weijia Shang,et al.  Systematic designs of buffers in macropipelines of systolic arrays , 1988 .

[4]  Raul Camposano,et al.  Path-based scheduling for synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Keshab K. Parhi,et al.  Pipelining of lattice IIR digital filters , 1994, IEEE Trans. Signal Process..

[6]  Benjamin W. Wah,et al.  Systematic Designs of Buffers in Macropipelines of Systolic Arrays , 1988, J. Parallel Distributed Comput..

[7]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[8]  Monica Sin-Ling Lam,et al.  A Systolic Array Optimizing Compiler , 1989 .

[9]  Markku Renfors,et al.  The maximum sampling rate of digital filters under hardware speed constraints , 1981 .

[10]  Yu Hen Hu,et al.  Optimal scheduling of linear recurrence equations on a multiprocessor array , 1991, [Proceedings] ICASSP 91: 1991 International Conference on Acoustics, Speech, and Signal Processing.

[11]  Keshab K. Parhi,et al.  Systematic synthesis of DSP data format converters using life-time analysis and forward-backward register allocation , 1992 .

[12]  Albert E. Casavant,et al.  Scheduling and hardware sharing in pipelined data paths , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[13]  Joos Vandewalle,et al.  An efficient microcode compiler for application specific DSP processors , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[14]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[15]  Keshab K. Parhi,et al.  Static Rate-Optimal Scheduling of Iterative Data-Flow Programs via Optimum Unfolding , 1991, IEEE Trans. Computers.

[16]  Sabih H. Gerez,et al.  Range-chart-guided iterative data-flow graph scheduling , 1992 .

[17]  Yu-Chin Hsu,et al.  A formal approach to the scheduling problem in high level synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[18]  Minh N. Do,et al.  Youn-Long Steve Lin , 1992 .

[19]  Alok Sharma,et al.  Estimating architectural resources and performance for high-level synthesis applications , 1993, IEEE Trans. Very Large Scale Integr. Syst..

[20]  Miodrag Potkonjak,et al.  Fast prototyping of datapath-intensive architectures , 1991, IEEE Design & Test of Computers.

[21]  Keshab K. Parhi,et al.  Generalized ILP scheduling and allocation for high-level DSP synthesis , 1993, Proceedings of IEEE Custom Integrated Circuits Conference - CICC '93.

[22]  Yu-Chin Hsu,et al.  PLS: a scheduler for pipeline synthesis , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[23]  Keshab K. Parhi,et al.  High-level DSP synthesis using concurrent transformations, scheduling, and allocation , 1995, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[24]  Alexandru Nicolau,et al.  Incremental tree height reduction for high level synthesis , 1991, 28th ACM/IEEE Design Automation Conference.

[25]  Charles E. Leiserson,et al.  Optimizing Synchronous Circuitry by Retiming (Preliminary Version) , 1983 .

[26]  P. Marwedel,et al.  A New Synthesis Algorithm for the MIMOLA Software System , 1986, 23rd ACM/IEEE Design Automation Conference.

[27]  Alice C. Parker,et al.  MAHA: A Program for Datapath Synthesis , 1986, DAC 1986.

[28]  Tai A. Ly,et al.  Bottom up synthesis based on fuzzy schedules , 1991, 28th ACM/IEEE Design Automation Conference.

[29]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[30]  Alok Sharma,et al.  InSyn: Integrated Scheduling for DSP Applications , 1993, 30th ACM/IEEE Design Automation Conference.

[31]  Alice C. Parker,et al.  Sehwa: a software package for synthesis of pipelines from behavioral specifications , 1988, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[32]  Peter Marwedel A new synthesis for the MIMOLA software system , 1986, DAC.

[33]  Alice C. Parker,et al.  The high-level synthesis of digital systems , 1990, Proc. IEEE.

[34]  Keshab K. Parhi,et al.  Loop list scheduler for DSP algorithms under resource constraints , 1993, 1993 IEEE International Symposium on Circuits and Systems.

[35]  Alexandru Nicolau,et al.  Percolation based synthesis , 1991, DAC '90.

[36]  Keshab K. Parhi,et al.  The MARS High-Level DSP Synthesis System , 1994 .

[37]  Mohamed I. Elmasry,et al.  Architectural synthesis for DSP silicon compilers , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[38]  Chong-Min Kyung,et al.  FAMOS: an efficient scheduling algorithm for high-level synthesis , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[39]  Keshab K. Parhi,et al.  Dedicated DSP architecture synthesis using the MARS design system , 1991, [Proceedings] ICASSP 91: 1991 International Conference on Acoustics, Speech, and Signal Processing.

[40]  Keshab K. Parhi,et al.  Design of pipelined lattice IIR digital filters , 1991, [1991] Conference Record of the Twenty-Fifth Asilomar Conference on Signals, Systems & Computers.

[41]  P. Six,et al.  Cathedral-II: A Silicon Compiler for Digital Signal Processing , 1986, IEEE Design & Test of Computers.

[42]  Hugo De Man,et al.  Cathedral-III : architecture-driven high-level synthesis for high throughput DSP applications , 1991, 28th ACM/IEEE Design Automation Conference.

[43]  Mohamed I. Elmasry,et al.  Global optimization approach for architectural synthesis , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[44]  Minjoong Rim,et al.  Lower-bound performance estimation for the high-level synthesis scheduling problem , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..