Implementing a WLAN Video Terminal Using UML and Fully Automated Design Flow
EURASIP Journal on Embedded Systems volume 2007, Article number: 085029 (2007)
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.
Lavagno L, Martin G, Selic B (Eds): UML for Real: Design of Embedded Real-Time Systems. Kluwer Academic, New York, NY, USA; 2003.
Soley R: Model Driven Architecture. 2000.
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.65
Object Management Group (OMG) : MDA Guide (Version 1.0.1). 2003.
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.1151077
Object Management Group (OMG) : Unified Modeling Language (UML) Superstructure Specification (Version 2.0). 2005.
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.
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_43
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.
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.
Object Management Group (OMG) : UML Profile for Schedulability, Performance, and Time Specification (Version 1.1). 2005.
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.
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:1016599225218
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.
Object Management Group (OMG) : UML Profile for System on a Chip (SoC) Specification (Version 1.0). 2006.
Object Management Group (OMG) : OMG Systems Modeling Language (SysML) Specification. 2006.
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.
Kaiserswerth M: The parallel protocol engine. IEEE/ACM Transactions on Networking 1993,1(6):650-663. 10.1109/90.266053
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-X
Agi I, Jagannathan R: A portable fault-tolerant parallel software MPEG-1 encoder. Multimedia Tools and Applications 1996,2(3):183-197.
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.
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.
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.
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.
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.611179
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.894289
Object Management Group (OMG) : The Common Object Request Broker Specification (Version 3.0). 2004.
Object Management Group (OMG) : UML Profile for CORBA Specification (Version 1.0). 2002.
Schmidt DC, Kuhns F: An overview of the real-time CORBA specification. Computer 2000,33(6):56-63. 10.1109/2.846319
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.
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.
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.
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.
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.
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.
Björkander M: Graphical programming using UML and SDL. Computer 2000,33(12):30-35. 10.1109/2.889090
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-1
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.
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.
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-6
Massa A: Embedded Software Development with eCos. Prentice-Hall Professional Technical Reference, New York, NY, USA; 2002.
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
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.
Altera : Nios II Processor Reference Handbook (Version 6.0). 2006.
About this article
Cite this article
Kukkala, P., Setälä, M., Arpinen, T. et al. Implementing a WLAN Video Terminal Using UML and Fully Automated Design Flow. J Embedded Systems 2007, 085029 (2007). https://doi.org/10.1155/2007/85029