Virtual Prototype Generation by Shockwave Flash for Simulating HW Components of Embedded System Soo Young Jang, Ajay Kumar Jha, Woo Jin Lee School of Computer Science and Engineering, Kyungpook National University 80 Daehak-ro, Buk-gu, Daegu 702-701, Republic of Korea
[email protected],
[email protected],
[email protected] (corresponding author)
ABSTRACT In developers' viewpoint, it is difficult to set up the hardware and operational environment required for the system during software development. Virtual prototyping approach can be used for simulating hardware and operational environment of embedded software. However, cost and effort required for developing virtual prototyping in programming language are very high. Furthermore, related supporting tools have some limitations in the areas of detailed representation, dynamic performance, modifiability, and so on. In this paper, we propose an SWF based virtual prototyping approach for implementing virtual prototype in embedded systems. Also, we evaluate our approach through case study which shows that the technique can be applicable in real world.
Categories and Subject Descriptors I.6.8 [Simulation and Modeling]: Type of Simulation – Visual, Combined, Animation.
General Terms Design.
Keywords
2. Related Work The RapidPLUS[1] and Rhapsody[2] are the representative tools for supporting virtual prototyping. However, RapidPLUS has limited support for components required for the embedded systems. Furthermore, visual effects of supported components can not represent dynamical behavior because of its static characteristic. Therefore, in order to express special and complex features of components similar to the actual system dynamically, professional graphics technologies are required. Rhapsody, similar to RapidPLUS, produces all the visual objects for simulation by programming technique and then it links those visual objects to virtual prototype application after creating the objects library. However, when the requirements are changed, it is quite difficult to modify the application due to complexity of source code structure in VP applications.
3. SWF-based Virtual Prototyping Approach
Virtual Prototyping, Embedded Software, SWF, Simulation
In this section, we present the SWF-based VP design concept. The SWF is a format which represents the vector graphic objects. Using Adobe's Flash for creating the SWF formatted entity has two main advantages. First, it does not require visual expertise in VP developers and second, the dynamic and detailed behavior of hardware can be easily expressed. Therefore, representing the operational environments and virtual hardware dynamically by using SWF-based VP is much easier than developing a VP application through general programming technique.
1. INTRODUCTION Currently, embedded systems, whose mission is to control peripheral hardware and to interact with peripheral environment, are widely used in various fields. In developer's viewpoint, it is difficult to set up the hardware and operational environment required for the system during software development. Virtual prototyping approach can be used for simulating hardware and operational environment of embedded software. However, cost and effort required for developing virtual prototyping are very high. Furthermore, related supporting tools have some limitations in the areas of detailed representation, dynamic performance, modifiability, and so on.
To virtualize real system into the SWF-based VP, the whole system is first divided into component units and then the behavior of each component is defined as a control state diagram. In order to visualize the components, our technique creates the SWF formatted entities which are activated when the control state diagram is placed in a particular state. An entity is the smallest unit in the system image and represents a part of the VP component. After making the entities, they are combined into a VP component image and then a system image is generated through the process of VP component placement and recombination [3]. Also, in the runtime frameworks, the relation between entities and control state diagram is saved in the control table as shown in Figure 1.
In this paper, we propose an SWF(Shockwave flash)-based virtual prototyping approach to mitigate the aforementioned problems. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SAC’14, March 24-28, 2014, Gyeongju, Korea. Copyright 2014 ACM 978-1-4503-2469-4/14/03…$15.00.
http://dx.doi.org/10.1145/2554850.2559926
The rest of the paper is organized as follows. Section 2 introduces the related tools for the virtual prototyping. Section 3 presents our approach for virtual prototyping which includes modeling concept and process of the SWF based VP (virtual prototyping). Section 4 presents a case study for demonstrating the applicability of our approach in real world. Section 5 concludes the paper.
1755
We developed source code for demonstrating the operation of infusion system based on NXJ platform[6]. When source code controls hardware during simulation, the virtual device driver of code simulator converts the instructions of source code into state message and then transmits it to the state manager of virtual prototype. Figure 3 is a screenshot of VP-based code simulation for the PCA Infusion Pump.
Figure 1 Modeling Concept of SWF-based VP The SWF-based virtual prototyping is operated by exchanging the state message with software simulator. The SWF-based VP is composed of system image, control table and state manager. The state manager is a message handling module between software simulator and system image. Once a state message is received by the state manager from software simulator, the state manager converts that state message into control messages with reference to the control table and then it controls the system image according to the control message. Conversely, when a user enters an event to the system image, the state manager sends it to the software simulator after converting the event into the type of message.
Figure 3 VP-based Code Simulation
5. Conclusion In this paper we proposed a SWF-based VP modeling concept and process of virtual prototyping to overcome limitations of existing virtual prototyping tools and techniques. Furthermore, we conducted a case study to show that the overall approach is applicable in various simulating environments. The SWF-based virtual prototype supports advanced simulation and multidimensional analysis in the embedded system. Beside that SWFbased VP application can be easily developed and modified. In future we intend to analyze the software faults using our SWFbased VP approach.
4. Case Study In this section we present a case study which illustrates our approach. Specifically, how a virtual prototype interacts with code and model simulator. We chose PCA (patient-controlled analgesia) Infusion Pump for our case study. The hardware characteristics of the PCA Infusion Pump is with reference to the Lifecare 4100 PCA PLUS II product[4], and the functional requirements are with reference to the Real-time system group of University of Pennsylvania [5].
6. ACKNOWLEDGMENTS This work was supported by the IT R&D program of MSIP (Ministry of Science, ICT & Future Planning)/KEIT. [10041145, Self-Organized Software platform (SoSp) for Welfare Devices] and the MSIP, Korea, under the C-ITRC (Convergence Information Technology Research Center) support program (NIPA-2013-H0401-13-1005) supervised by the NIPA (National IT Industry Promotion Agency.)
For VP-based model simulation, we designed software models demonstrating PCA Infusion Pump system by using the Telelogic Rhapsody. The software model is composed of VPAdapter and PumpApp classes. The PumpAPP class represents the PCA Infusion Pump system and it is connected to the state machine diagram of PCA Infusion Pump system. VPAdapter class connects itself to the state manager by using socket after executing virtual prototype. Once the message from the virtual prototype is received in the VPAdapter class, it parses the message and generates the trigger event for transition of the state machine diagram. Figure 2(a) shows the UML modeling of PCA Infusion Pump, and Figure 2(b) shows VP-based model simulation.
7. REFERENCES [1] RapidPLUS Community. User Manual 9.0. https://sites.google.com/site/rapidpluscommunity/. [2] Xing-hua, Liu, and Cao Yun-feng. Design of UAV Flight Control System Virtual prototype using Rhapsody and Simulink. 2010 International Conference on Computer Design and Applications (ICCDA), June 2010, 34-38. [3] Soo Young Jang, et al. Development of SWF Based Virtual Prototype Framework for Embedded Software. Korea Computer Congress 2013, 567-568. [4] Abbott Laboratories. http://www.abbott.com/index.htm.
(a) UML Modeling of PCA Infusion Pump System
[5] Real-Time system Group. http://rtg.cis.upenn.edu/medical/gpca/gpca.html.
(b) Virtual Prototyping Execution
[6] LeJOS NXJ. http://www.lejos.org/nxj.php
Figure 2 VP-based Model Simulation
1756