Open Access

Implementing a WLAN Video Terminal Using UML and Fully Automated Design Flow

  • Petri Kukkala1Email author,
  • Mikko Setälä2,
  • Tero Arpinen2,
  • Erno Salminen2,
  • Marko Hännikäinen2 and
  • TimoD D Hämäläinen2
EURASIP Journal on Embedded Systems20072007:085029

DOI: 10.1155/2007/85029

Received: 28 July 2006

Accepted: 10 January 2007

Published: 15 March 2007

Abstract

This case study presents UML-based design and implementation of a wireless video terminal on a multiprocessor system-on-chip (SoC). The terminal comprises video encoder and WLAN communications subsystems. In this paper, we present the UML models used in designing the functionality of the subsystems as well as the architecture of the terminal hardware. We use the Koski design flow and tools for fully automated implementation of the terminal on FPGA. Measurements were performed to evaluate the performance of the FPGA implementation. Currently, fully software encoder achieves the frame rate of 3.0 fps with three 50 MHz processors, which is one half of a reference C implementation. Thus, using UML and design automation reduces the performance, but we argue that this is highly accepted as we gain significant improvement in design efficiency and flexibility. The experiments with the UML-based design flow proved its suitability and competence in designing complex embedded multimedia terminals.

[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44]

Authors’ Affiliations

(1)
Nokia Technology Platforms
(2)
Institute of Digital and Computer Systems, Tampere University of Technology

References

  1. Lavagno L, Martin G, Selic B (Eds): UML for Real: Design of Embedded Real-Time Systems. Kluwer Academic, New York, NY, USA; 2003.Google Scholar
  2. Soley R: Model Driven Architecture. 2000.Google Scholar
  3. France RB, Ghosh S, Dinh-Trong T, Solberg A: Model-driven development using UML 2.0: promises and pitfalls. Computer 2006,39(2):59-66. 10.1109/MC.2006.65View ArticleGoogle Scholar
  4. Object Management Group (OMG) : MDA Guide (Version 1.0.1). 2003.Google Scholar
  5. Kangas T, Kukkala P, Orsila H, et al.: UML-based multi-processor SoC design framework. ACM Transactions on Embedded Computing Systems 2006,5(2):281-320. 10.1145/1151074.1151077View ArticleGoogle Scholar
  6. Object Management Group (OMG) : Unified Modeling Language (UML) Superstructure Specification (Version 2.0). 2005.Google Scholar
  7. Kukkala P, Helminen V, Hännikäinen M, Hämäläinen TD: UML 2.0 implementation of an embedded WLAN protocol. Proceedings of the 15th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC '04), September 2004, Barcelona, Spain 2: 1158-1162.Google Scholar
  8. Kukkala P, Hännikäinen M, Hämäläinen TD: Design and implementation of a WLAN terminal using UML 2.0 based design flow. In Embedded Computer Systems: Architectures, Modeling, and Simulation, Lecture Notes in Computer Science. Volume 3553. Springer, New York, NY, USA; 2005:404-413. 10.1007/11512622_43View ArticleGoogle Scholar
  9. Martin G, Lavagno L, Louis-Guerin J: Embedded UML: a merger of real-time UML and co-design. Proceedings of the 9th International Workshop Hardware/Software Codesign, April 2001, Copenhagen, Denmark 23-28.Google Scholar
  10. Chen R, Sgroi M, Lavagno L, Martin G, Sangiovanni-Vincentelli A, Rabaey J: UML and platform-based design. In UML for Real: Design of Embedded Real-Time Systems. Kluwer Academic, Norwell, Mass, USA; 2003:107-126.Google Scholar
  11. Object Management Group (OMG) : UML Profile for Schedulability, Performance, and Time Specification (Version 1.1). 2005.Google Scholar
  12. Selic B: Using UML for modeling complex real-time systems. Proceedings of Languages, Compilers, and Tools for Embedded Systems (LCTES '98), June 1998, Montreal, Canada, Lecture Notes in Computer Science 1474: 250-260.View ArticleGoogle Scholar
  13. Green P, Edwards M, Essa S: HASoC - towards a new method for system-on-a-chip development. Design Automation for Embedded Systems 2002,6(4):333-353. 10.1023/A:1016599225218View ArticleGoogle Scholar
  14. Pllana S, Fahringer T: On customizing the UML for modeling performance-oriented applications. In Proceedings of the 5th International Conference on the Unified Modeling Language, September-October 2002, Dresden, Germany, Lecture Notes in Computer Science. Volume 2460. Springer; 259-274.Google Scholar
  15. Object Management Group (OMG) : UML Profile for System on a Chip (SoC) Specification (Version 1.0). 2006.Google Scholar
  16. Object Management Group (OMG) : OMG Systems Modeling Language (SysML) Specification. 2006.Google Scholar
  17. Olukotun K, Nayfeh BA, Hammond L, Wilson K, Chang K: The case for a single-chip multiprocessor. Proceedings of the 7th International Symposium on Architectural Support for Programming Languages and Operating Systems (ASPLOS '96), October 1996, Cambridge, Mass, USA 2-11.Google Scholar
  18. Kaiserswerth M: The parallel protocol engine. IEEE/ACM Transactions on Networking 1993,1(6):650-663. 10.1109/90.266053View ArticleGoogle Scholar
  19. Ahmad I, He Y, Liou ML: Video compression with parallel processing. Parallel Computing 2002,28(7-8):1039-1078. 10.1016/S0167-8191(02)00100-XMATHView ArticleGoogle Scholar
  20. Agi I, Jagannathan R: A portable fault-tolerant parallel software MPEG-1 encoder. Multimedia Tools and Applications 1996,2(3):183-197.Google Scholar
  21. Nang J, Kim J: Effective parallelizing scheme of MPEG-1 video encoding on ethernet-connected workstations. Proceedings of the Conference on Advances in Parallel and Distributed Computing, March 1997, Shanghai, China 4-11.View ArticleGoogle Scholar
  22. Garrido MJ, Sanz C, Jiménez M, Menasses JM: An FPGA implementation of a flexible architecture for H.263 video coding. IEEE Transactions on Consumer Electronics 2002,48(4):1056-1066.View ArticleGoogle Scholar
  23. Cantineau O, Legat J-D: Efficient parallelisation of an MPEG-2 codec on a TMS320C80 video processor. Proceedings of the International Conference on Image Processing (ICIP '98), October 1998, Chicago, Ill, USA 3: 977-980.Google Scholar
  24. Bhattacharjee S, Das S, Saha D, Chowdhury DR, Chaudhuri PP: A parallel architecture for video compression. Proceedings of the 10th IEEE International Conference on VLSI Design, January 1997, Hyderabad, India 247-252.View ArticleGoogle Scholar
  25. Akramullah SM, Ahmad I, Liou ML: Performance of software-based MPEG-2 video encoder on parallel and distributed systems. IEEE Transactions on Circuits and Systems for Video Technology 1997,7(4):687-695. 10.1109/76.611179View ArticleGoogle Scholar
  26. Yung NHC, Leung K-K: Spatial and temporal data parallelization of the H.261 video coding algorithm. IEEE Transactions on Circuits and Systems for Video Technology 2001,11(1):91-104. 10.1109/76.894289View ArticleGoogle Scholar
  27. Object Management Group (OMG) : The Common Object Request Broker Specification (Version 3.0). 2004.Google Scholar
  28. Object Management Group (OMG) : UML Profile for CORBA Specification (Version 1.0). 2002.Google Scholar
  29. Schmidt DC, Kuhns F: An overview of the real-time CORBA specification. Computer 2000,33(6):56-63. 10.1109/2.846319View ArticleGoogle Scholar
  30. Brinkschulte U, Ungerer T, Bechina A, et al.: A microkernel middleware architecture for distributed embedded real-time systems. Proceedings of the 20th IEEE Symposium on Reliable Distributed Systems (SRDS '01), October 2001, New Orleans, La, USA 218-226.View ArticleGoogle Scholar
  31. Gill C, Subrarnonian V, Parsons J, et al.: ORB middleware evolution for networked embedded systems. Proceedings of the 8th International Workshop on Object-Oriented Real-Time Dependable Systems (WORDS '03), January 2003, Guadalajara, Mexico 169-176.Google Scholar
  32. Rintaluoma T, Silven O, Raekallio J: Interface overheads in embedded multimedia software. In Proceedings of the 6th International Workshop on Architectures, Modeling, and Simulation (SAMOS '06), July 2006, Samos, Greece, Lecture Notes in Computer Science. Volume 4017. Springer; 5-14.Google Scholar
  33. Born M, Holz E, Kath O: A method for the design and development of distributed applications using UML. Proceedings of the 37th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS-PACIFIC '00), November 2000, Sydney, Australia 253-264.View ArticleGoogle Scholar
  34. Kukkala P, Riihimäki J, Hännikäinen M, Hämäläinen TD, Kronlöf K: UML 2.0 profile for embedded system design. Proceedings of Design, Automation and Test in Europe (DATE '05), March 2005, Munich, Germany 2: 710-715.View ArticleGoogle Scholar
  35. Kukkala P, Hännikäinen M, Hämäläinen TD: Performance modeling and reporting for the UML 2.0 design of embedded systems. Proceedings of International Symposium on System-on-Chip (SoC '05), November 2005, Tampere, Finland 50-53.Google Scholar
  36. Björkander M: Graphical programming using UML and SDL. Computer 2000,33(12):30-35. 10.1109/2.889090View ArticleGoogle Scholar
  37. Gnesi S, Latella D, Massink M: Modular semantics for a UML statechart diagrams kernel and its extension to multicharts and branching time model-checking. Journal of Logic and Algebraic Programming 2002,51(1):43-75. 10.1016/S1567-8326(01)00012-1MATHMathSciNetView ArticleGoogle Scholar
  38. Arpinen T, Kukkala P, Salminen E, Hännikäinen M, Hämäläinen TD: Configurable multiprocessor platform with RTOS for distributed execution of UML 2.0 designed applications. Proceedings of Design, Automation and Test in Europe (DATE '06), March 2006, Munich, Germany 1: 1-6.View ArticleGoogle Scholar
  39. Setälä M, Kukkala P, Arpinen T, Hännikäinen M, Hämäläinen TD: Automated distribution of UML 2.0 designed applications to a configurable multiprocessor platform. In Proceedings of the 6th International Workshop on Architectures, Modeling, and Simulation (SAMOS '06), 2006, Lecture Notes in Computer Science. Volume 4017. Springer; 27-38.
  40. Salminen E, Kangas T, Hämäläinen TD, Riihimäki J, Lahtinen V, Kuusilinna K: HIBI communication network for system-on-chip. Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology 2006,43(2-3):185-205. 10.1007/s11265-006-7270-6MATHView ArticleGoogle Scholar
  41. Massa A: Embedded Software Development with eCos. Prentice-Hall Professional Technical Reference, New York, NY, USA; 2002.Google Scholar
  42. Kukkala P, Arpinen T, Setälä M, Hännikäinen M, Hämäläinen TD: Dynamic power management for UML modeled applications on multiprocessor SoC. Proceedings of the IS&T/SPIE 19th Annual Symposium on Electronic Imaging, January-February 2007, San Jose, Calif, USA Google Scholar
  43. Hännikäinen M, Lavikko T, Kukkala P, Hämäläinen TD: TUTWLAN - QoS supporting wireless network. Telecommunication Systems 2003,23(3-4):297-333.View ArticleGoogle Scholar
  44. Altera : Nios II Processor Reference Handbook (Version 6.0). 2006.Google Scholar

Copyright

© Kukkala et al. 2007

This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.