This Article 
 Bibliographic References 
 Add to: 
Virtual Benchmarking and Model Continuity in Prototyping Embedded Multiprocessor Signal Processing Systems
September 2002 (vol. 28 no. 9)
pp. 832-846

Abstract—The complexity of hardware/software codesign of embedded real-time signal processing systems can be reduced by rapid system prototyping (RSP). However, existing RSP frameworks do not provide a sound specification and design methodology (SDM) because they require the designer to choose the implementation target before specification and design exploration and they do not work together coherently across development stages. This paper presents a new SDM, called MAGIC, that allows the designer to capture an executable specification model for use in design exploration to find the optimal multiprocessor technology before committing to that technology. MAGIC uses a technique called “virtual benchmarking,” for early validation of promising architectures. The MAGIC SDM also exploits emerging open-standards computation and communication middleware to establish model continuity between RSP frameworks. This methodology has been validated through the specification and design of a moderately complex system representative of the signal processing domain: the RASSP Synthetic Aperture Radar benchmark. In this case study, MAGIC achieves three orders of magnitude speedup over existing virtual prototyping approaches and demonstrates the ability to evaluate competitive technologies prior to implementation. Transfer of this methodology to the system-on-a-chip domain using Cadence's Virtual Component Codesign infrastructure is also discussed with promising results.

[1] R.S. Pressman, Software Engineering: A Practitioner's Approach, fourth ed. New York: McGraw-Hill, 1997.
[2] E.A. Lee and A. Sangiovanni-Vincentelli, “A Framework for Comparing Models of Computation,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 17, pp. 1217-1229, 1998.
[3] S. Edwards, L. Lavagno, E.A. Lee, and A. Sangiovanni-Vincentelli, “Design of Embedded Systems: Formal Models, Validation, and Synthesis,” Proc. IEEE, vol. 85, pp. 366-390, Mar. 1997.
[4] R. Janka and L. Wills, “Considering Models of Computation in Developing a New Specification and Design Methodology for Large Real-Time Embedded Multiprocessor Signal Processing Systems,” Proc. IEEE Int'l Workshop Intelligent Signal Processing (WISP '99), 1999.
[5] R. Janka, “Models of Computation for Specification and Design Methodology Frameworks for Parallel and Distributed Real-Time Embedded Multiprocessor Signal Processing Systems,” Proc. Int'l Conf. Parallel and Distributed Processing Techniques and Applications (PDPTA '99), 1999.
[6] R. Janka, “A New Development Framework Based on Efficient Middleware for Real-Time Embedded Heterogeneous Multicomputers,” Proc. IEEE Conference and Workshop Eng. of Computer-Based Systems (ECBS '99), 1999.
[7] R. Janka and L. Wills, “Early System-Level Design Exploration of Large DSP Systems Targeted for Real-Time Embedded COTS Multiprocessors,” Int'l Conf. Signal Processing Applications and Technology and DSP World Workshops (DSP World—ICSPAT), 1999.
[8] R. Janka and L. Wills, “Specification and Synthesis of Real-Time Embedded Distributed and Parallel Multiprocessor-Based Signal Processing Systems,” Proc. Int'l Conf. Compilers, Architectures and Synthesis for Embedded Systems (CASES '00), pp. 72-80, Nov. 2000.
[9] R. Janka, Specification and Design Methodology for Real-time Embedded Systems, Norwell, Mass.: Kluwer Academic, 2002.
[10] The MathWorks, “The Mathworks Product Family,” available at , 2002.
[11] The MathWorks, “Real-Time Workshop User's Guide,” available at help/toolbox/rtw/rtw_ugrtw_ug.shtml, 2001.
[12] The MathWorks, “Excel Link User's Guide,” available at help/pdf_doc/exlinkexlink.pdf, 2000.
[13] In noveda, “eArchitect,” available at earchitect.asp, June 2002.
[14] VSIPL Forum, “VSIPL v1.0 API Standard Specification,” available at , Mar. 2000.
[15] Real-Time Message Passing Interface (MPI/RT) Forum, “Real-Time Message Passing Interface (MPI/RT-1.1) Standard Draft,” DARPA, available athttp://www.mpirt.orgdrafts.html, 2001.
[16] MPI Software Tech nology “MPI Software Technology, Inc., Announces MPI/ProTMVersion 1.6.3,” available at , June 2001.
[17] M.A. Richards, A.J. Gadient, and G.A. Frank, “Rapid Prototyping of Application Specific Signal Processors,” J. VLSI Signal Processing, S.Y. Kung, ed., vol. 15, p. 200, 1997.
[18] L. Scanlan, W. Lee, M. Vahey, and M. McCollough, “RASSP Methodology Evaluation and Lessons Learned Developing IRST Signal Processor,” Rapid Prototyping of Application Specific Signal Processors, M.A. Richards, A.J. Gadient, and G.A. Frank, eds., pp. 145-160, 1997.
[19] B.W. Zuerndorfer, J.C. Anderson, R.A. Ford, A.H. Anderson, G.A. Rocco, and G.A. Shaw, “RASSP Benchmark 1 Technical Description,” Project Report ESC-TR-94-113, MIT Lincoln Laboratory, Lexington, Mass.: Dec. 1994.
[20] RASSP Benchmarking Home Page, available at, 1999.
[21] Cadence Design Systems, “Cierto Virtual Component Co-Design (VCC) Environment,” available at , June 2002.
[22] S. Chakravarty and G. Martin, “A New Embedded System Design Flow based on IP Integration,” Proc. Design, Automation and Test in Europe (DATE '99), 1999.
[23] M. Baker and E. O'Brien-Strain, “Co-Design Made Real: Generating and Verifying Complete System and Software Implementations,” Proc. Embedded Systems Conf., 1999.
[24] A. Clouard, G. Mastrorocco, F. Carbognani, A. Perrin, and F. Ghenassia, “Towards Bridging the Precision Gap between SoC Transactional and Cycle-Accurate Levels,” Proc. Design, Automation and Test in Europe (DATE), Mar. 2002.
[25] B. Nuseibeh, J. Kramer, and A. Finkelstein, "A Framework for Expressing the Relationships Between Multiple Views in Requirements Specification," IEEE Trans. Software Eng., vol. 20, no. 10, pp. 760-773, Oct. 1994.
[26] A. Finkelstein and I. Sommerville, “The Viewpoints FAQ,” Software Eng. J., vol. 11, pp. 2-4, 1996.
[27] A. Finkelstein et al., "Inconsistency Handling in Multi-Perspective Specifications," IEEE Trans. Software Eng., vol. 20, no. 8, Aug. 1994, pp. 569-578.
[28] H. Eriksson and M. Penker, UML Toolkit. Somerset, N.J.: John Wiley&Sons, 1997.
[29] G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide. Addison Wesley, 1999.
[30] J.E. Robbins, N. Medvidovic, D.F. Redmiles, and D.S. Rosenblum, “Integrating Architecture Description Languages with a Standard Design Method,” Proc. 20th Int'l Conf. Software Eng. (ICSE '98), 1998.
[31] T.J. Grose, G.C. Doney, and S.A. Brodsky, Mastering XMI: Java Programming with XMI, XML, and UML. Somerset, N.J.: John Wiley&Sons, 2002.
[32] J. Suzuki and Y. Yamamoto, “SoftDock: A Distributed Collaborative Platform for Model-Based Software Development,” Proc. 10th Int'l Workshop Database and Expert Systems Applications (DEXA '99), 1999.
[33] J. Suzuki and Y. Yamamoto, “Extending UML for Modeling Reflective Software Components,” Proc. Second Int'l Conf. Unified Modeling Language (UML '99), 1999.
[34] D.C. Luckham,J.J. Kenney,L.M. Augustin,J. Vera,D. Bryan,, and W. Mann,“Specification and analysis of system architecture usingRapide,” IEEE Transactions on Software Engineering, vol. 21, no. 4, pp. 336-355, Apr. 1995.
[35] D.D. Gajski, J. Zhu, R. Dömer, A. Gerstlauer, and S. Zhao, Spec C: Specification Language and Methodology. Norwell, Mass.: Kluwer Academic, 2000.
[36] Open SystemC Initiative, “Welcome to the SystemC Community,” available athttp:/, June 2002.
[37] S. Swan, “An Introduction to System Level Modeling in SystemC 2.0,” technical paper, Open SystemC Initiative (OSCI), available at document/SystemC_WP20/en1, May 2001.
[38] R. Bhatt, G.D. Micheli, D.D. Gajski, C.K. Lennard, S. Liao, J. Sanguinetti, P. Schaumont, R.K. Gupta, and K. Roy, “System-on-Chip Specification and Modeling Using C++: Challenges and Opportunities,” IEEE Design&Test of Computers, vol. 18, pp. 115-123, 2001.
[39] D.H.-J. Schlebusch, “C-based Design of Systems-on-Chip: An EDA Perspective (Abstract),” Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen (ITG/GI/GMM) Workshop 2000, 2000.
[40] P. Baraona and P. Alexander, “Abstract Architecture Representation Using VSPEC,” VLSI Design, vol. 9, pp. 181-202, 1999.
[41] A. Venkataraman, M. Rangarajan, and P. Alexander, “Composing Specifications in VSPEC,” Proc. Third IEEE Int'l Conf. Formal Eng. Methods (ICFEM '00), pp. 45-56, Sept. 2000.
[42] J. Guttag, J. Horning, S. Garland, K. Jones, A. Modet, and J. Wing, Larch: Languages and Tools for Formal Specification. Springer-Verlag, 1993.
[43] A. Beugnard, J.-M. Jézéquel, N. Plouzeau, and D. Watkins, “Making Components Contract Aware,” Computer, vol. 32, pp. 38-45, 1999.
[44] E. Lee, "What's Ahead for Embedded Software?" Computer, Sept. 2000, pp. 18-26.

Index Terms:
Hardware/software codesign, model continuity, open-standards middleware, specification and design methodology.
Randall S. Janka, Linda M. Wills, Lewis B. Baumstark, Jr., "Virtual Benchmarking and Model Continuity in Prototyping Embedded Multiprocessor Signal Processing Systems," IEEE Transactions on Software Engineering, vol. 28, no. 9, pp. 832-846, Sept. 2002, doi:10.1109/TSE.2002.1033224
Usage of this product signifies your acceptance of the Terms of Use.