Synthesis and simulation of digital systems containing interacting hardware and software components
Abstract
Synthesis of systems containing application-specific as well as re-programmable components, such as off-the-shelf microprocessors, provides a promising approach to realization of complex systems using a minimal amount of application-specific hardware while still meeting the required performance constraints. We describe an approach to synthesis of such hardware-software systems starting from behavioral description as input. The input system model is partitioned into hardware and software components based on imposed performance constraints. Synchronization between various elements of a mixed system design is one of the key issues that any synthesis system must address. In this paper, we consider software and interface synchronization schemes that facilitate communication between system components. We present tools to perform synthesis and simulation of a system description into hardware and software components. In particular, we describe a program, Poseidon, that performs concurrent event-driven simulation of multiple functional modules implemented either as a program or as behavioral or structural hardware models. Input to Poseidon consists of description of interacting functional models with their respective clock cycle times and the interface synchronization scheme chosen by the partitioner. The resulting software component is assumed to be implemented for the DLX machine, a load/store microprocessor. We present simulation examples and design of a graphics controller demonstrate the feasibility of mixed system synthesis.
References
[1]
G. D. MicheIi, D. C. Ku, F. Mailhot, and T. Trung, 'The Olympus Synthesis System for Digital Design," IEEE Design and Test Magazine, pp. 37-53, Oct. 1990.
[2]
J. Rabaey, H. D. Man, and et. al, "Cathedral II: A Synthesis System for Multiprocessor DSP Systems", in Silicon Compilation, editor D. Gajski, pp. 311-360. Addision Wesley, 1988.
[3]
D. Thomas, E. Lagnese, R. Walker, J. Nestor, J. Rajan, and R. Blackburn, Algorithmic and Register-Transfer Level: The System Architect's Workbench. Kluwer Academic Publishers, 1990.
[4]
R. Camposano and W. Rosenstiel, "Synthesizing Circuits from Behavioral Descriptions" IEEE Transactions on CAD/ICAS, vol. 8, no. 2, pp. 171-180, Feb. 1989.
[5]
M. B. Srivastava and R. W. Broderson, "Rapid-Prototyping of Hardware and Software in a Unified Framework," in Proceedings of the International Conference on Computer-Aided Design, (Santa Clara), pp. 152-155, 1991.
[6]
D. C. Ku and G. D. Micheli, "Synthesis of ASIC. with Hercules and Hebe", in High-leveI VLSI Synthesis, editors: Raul Camposano, Wayne Wolf, pp. 177-203. Kluwer Academic Publishers, 1991.
[7]
P. K. Gupta and G. D. Micheli, "System-level Synthesis Using Re-programmable Components," in Proceedings of the Euro{ean Design Automation Conference, Mar. 1992
[8]
G. R. Andrews and F. Schneider, "Concepts and Notations for Concurrent Programming," ACM Computing Surveys, vol. 15, no. 1, pp. 3-44, Mar. 1983.
[9]
M. E. Conway, "Design of a Separate Transition-Diagram Compiler," Comm. the ACM, vol. 6, pp. 396-408, 1963.
[10]
R. K. Gupta and G. D. Micheli, "System Synthesis via Hardware-Software Cosign," CSL Technical Report CSL-Th, Stanford University, 1992
[11]
J. L. Hennesssey and D. A. Patterson, Computer Architecture: A Quantative Approach, ch. 3. Morgan-Kaufmann, 1990.
[12]
P. J. H. King, "Decision Tables," The Computer Journal, vol. 10, . 2, Aug. 1967.
[13]
I. C. Wand and A. J. Wellinga, Distributed Computing, F. B. Chambers et al. editors, ch 14: Programming languages, pp. 201-215. Academic Press, 1984.
[14]
T. Amon and G. Borriello, "Sizing Synchronization Qucuer A Case Study in Higher Level Synthesis," in Proceedings of the 24 Design Awomation Conference, June 1991.
[15]
T. H. Meng, Synchronization Design for Digital Systems, ch. Synthesis of Self-Timed Circuits, w. 33-63. Kluwer Academic Publishers, 1991.
[16]
G. Borriello and R. Katz. "Synthesis and Optimization of Interface Transducer Logic" in Proceedings of the IEEE Transactions on CAD/ICAS. Nov. 1987.
[17]
E. W. Dijkstra "Guarded Commands, Nondeterminacy, and Formal Derivation of Programs," CACM, vol. 18, no. 8, pp. 453-457, Aug. 1975.
Index Terms
- Synthesis and simulation of digital systems containing interacting hardware and software components
Comments
Please enable JavaScript to view thecomments powered by Disqus.Information & Contributors
Information
Published In
Publisher
Kluwer Academic Publishers
United States
Publication History
Published: 01 June 2001
Qualifiers
- Chapter
Contributors
Other Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- 0Total Citations
- 0Total Downloads
- Downloads (Last 12 months)0
- Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025