Abstract
A software environment designed to support the real-time implementation of Digital Signal Processing (DSP) applications onto multiple programmable processors is described. The system, called McDAS, allows a designer to program his application as he would on a single processor, using a high level signal-flow DSP language. The program is then automatically scheduled and compiled onto a target multiprocessor. The environment allows the scheduler to be invoked with different numbers of processors and multiprocessor topology to explore various implementations. McDAS maximizes the computational throughput by exploiting pipelining, retiming, and parallel execution under the architectural constraints. The code generator is retargetable to different multiprocessor architectures as well as core processors. Data buffers and synchronizations are automatically inserted to ensure correct execution. The final implementation can be used for simulation speedup or real-time processing.
Similar content being viewed by others
References
DSP96002 User's Manual, Motorola, 1990.
K.A. Frenkel, “HDTV and the computer industry,”Communications of the ACM, November 1989.
J.P. Campbell Jr., V. Welch, and T. Tremain, “An Expandable Error-Protected 4800 bps CELP coder,”ICASSP, March 1985.
“Description of Reference Model 8 (RM8),” Document 525, CCITT SGXV, Working Party XV/4, Specialist Group for Visual Telephony, 1989.
G.K. Wallace, Techincal Description of the Proposed JPEG Baseline Standard for Color Image Compression,EI'89, Boston, Oct. 1989.
E.A. Lee, et al., “Gabriel: A Design Environment for DSP,”IEEE Trans. on ASSP, vol. 37, Nov. 1989.
M.A. Zissman, G.C. O'Leary, and D.H. Johnson, “A block diagram compiler for a digital signal processing MIMD computer,” DSP Workshop Presentation, Chatham, MA, October 1986.
V. Sarkar,Partitioning and Scheduling Parallel Programs for Multiprocessors, MIT Press, 1989.
M.J. Gonzalez, Jr., “Deterministic Processor Scheduling,”Computing Surveys, vol. 9, no. 3, Sept. 1977.
M.L. Campbell, “Static Allocation For a Data Flow Multiprocessor,”Proc. Int. Conf. Parallel Processing, 1985, pp. 511–517.
B. Greenblatt and C.J. Linn, “Branch and Bound Algorithms for Scheduling Communicating Tasks in a Distributed System,”Compcon, pp. 12–16, 1987.
S. W. Bollinger and S.F. Midkiff, “Processor and Link Assignment in Multicomputers using simulated annealing,”Proc. Int. Conf. Parallel Processing, Aug. 1988, pp. 1–7.
G. Sih and E.A. Lee, “Dynamic-Level Scheduling for Heterogeneous Processor Networks,”IEEE Symposium on Parallel and Distributed Processing, December 1989.
H. Printz, “Automatic Mapping of Large Signal Processing Systems to a Parallel Machine,” Ph.D. Thesis, Carnegie Mellon University, May 1991.
M. Annaratone, et al., “Warp Architecture: From Prototype to Production,”Proceedings of the 1987 National Computer Conference, Chicago, Illinois, June 1987.
D.A. Schwartz, “Synchronous Multiprocessor Realizations of Shift-invariant Flow Graphs,” Doctoral Thesis, Georgia Institute of Technology Technical Report, June 1985.
S.H. Lee, C.J.M. Hodges, and T.P. Barnwell, III, “An SSIMD Compiler for the Implementation of Linear Shiftinvariant Flow Graphs,”ICASSP, March 1985.
K.K. Parhi, “Rate-Optimal Fully-Static Multiprocessor Scheduling of Data-Flow Signal Processing Programs,”ISCAS'89.
H.R. Forren, “Multiprocessor Design Methodology for Real-Time DSP Systems Represented by Shift-Invariant Flow Graphs,” Doctoral Thesis, Georgia Institute of Technology Technical Report, 1988.
S. Bokhari, “Assignment Problems in Parallel and Distributed Computing,”Parallel Processing and Fifth Generation Computing, Kluwer Academic Publishers, 1988.
G. Sih and E.A. Lee, “A Multiprocessor Scheduling Strategy,”Electronics Research Laboratory Memorandum, December 1990.
P. Hilfinger, “SILAGE, A High Level Language and Silicon Compiler for Digital Signal Processing,”Proceedings IEEE CICC Conference, Portland, May 1985.
D.R. Genin, et al., “System Design, Optimization, and Intelligent Code Generation for Standard DSP,”ISCAS, May 1989.
J. Rabaey et al., “Fast Prototyping of Datapath-Intensive Architectures,”IEEE Design & Test of Computers, June 1991.
D.C. Chen, “A Field Programmable Architecture and CAD Framework for High Speed DSP applications,”Internal Report, U.C. Berkeley, 1991.
A.V. Aho, R. Sethi, and J. Ullman,Compilers: Principles, Techniques and Tools, Addison-Wesley Publishing Company, 1986.
C. Scheers, “User Manual for the S2C Silage toC Compiler,”Internal Document, IMEC Laboratory, Leuven, Belgium, August 1988.
P. Hoang, “Compiling Real-Time DSP Applications onto Multiprocessor Systems,” Ph.D. Thesis, U.C. Berkeley, May 1992.
W. Koh, A. Yeungk, P. Hoang, and J. Rabaey, “A Configurable Multiprocessor System for DSP Behavioral Simulation,”ISCAS'89.
A. Osterhaug, “Guide to Parallel Programming on Sequent Computer Systems,” Sequent Computer Systems, Inc.
P. Hoang and J. Rabaey, “Scheduling of DSP Programs onto Multiprocessors for Maximum Throughput,”IEEE Trans. on ASSP, June 1993.
M.R. Garey and D.S. Johnson, “Complexity Results for Multiprocessor Scheduling under Resource Constraints,”SIAM Journal on Computing, vol. 4, pp. 397–411, 1975.
B.M. Kim and T.P. Barnwell, III, “Resource Allocation and Code Generation for Pointer-Based Pipelined DSP Multiprocessors,”ISCAS'90.
D.G. Messerschmitt, “A Tool for Structured Functional Simulation,”IEEE J. Select. Areas Commun., vol. SAC-2, January 1984.
E.A. Lee, “Recurrences, Iterations, and Conditionals in Statically Scheduled Block Diagram Languages,”VLSI Signal Processing III, IEEE press, 1988.
Soonhoi Ha, “Compile-Time Scheduling of Dataflow Program Graphs with Dynamic Constructs,” Ph.D. Thesis, University of California, Berkeley, 1992.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Hoang, P., Rabaey, J. A CAD environment for Real-time DSP implementations on multiprocessors. Journal of VLSI Signal Processing 8, 131–150 (1994). https://doi.org/10.1007/BF02109381
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF02109381