CMAPS: A Cosynthesis Methodology for Application-Oriented Parallel Systems

Pao-Ann Hsiung
Institute of Information Science
Academia Sinica, Taipei, Taiwan.
( ACM Transactions on Design Automation of Electronic Systems, Vol. 5, No. 1, January 2000.)


Much of current research is devoted to system design and little work is done on requirements analysis. Besides going from specification to design, one of our main objectives is how an application problem is transformed into specifications. Working in the hardware-software codesign perspective, a system is designed starting from an application problem itself, rather than the detailed behavioral specifications. Given an application problem, specified as a directed acyclic graph of elementary problems, a hardware-software solution is derived such that the synthesized software, a parallel pseudo-program, can be scheduled and executed on the synthesized hardware, a set of system-level parallel computer specifications, with heuristically optimal performance. This is known as system-level cosynthesis of application-oriented general-purpose parallel systems for which a novel methodology called Cosynthesis Methodology for Application-Oriented Parallel Systems (CMAPS), is presented. Since parallel programs and multiprocessor architectures are largely inter-dependent, CMAPS explores the relationship between hardware designs and software algorithms by interleaving the modeling phases and the synthesis phases of both hardware and software. High scalability in terms of problem complexity and easy upgradability to new technologies are achieved through the modularization of the input problem specification, of the software algorithms, and of the hardware subsystem models. The work presented in this paper would be beneficial to designers of general-purpose parallel computer systems which must be oriented towards solving some user specified problem such as the global controller of an industry automation process, or a multiprocessor video server. Some application examples are given to illustrate various codesign phases of CMAPS and its feasibility.
Keywords: application-oriented general-purpose parallel systems, hardware-software modeling and cosynthesis, requirements analysis