星期四, 十月 08, 2009

Wireless Network Design Based on Modern Energy Efficinet Algorithms

Abstract
This report is related to the wireless network design based on modern energy efficient algorithms. The background of this project is briefly introduced in the beginning along with the aim and proposes of the project. After that the report briefly explained the modern energy efficient algorithms considered in this project. The report explained the architecture of the wireless network, the topology, and the function of each layer. Two layers of this system are described in detail. IBM Telelogic SDL and TTCN Suite is used to design and test the protocol. The basics of SDL and the design process of protocol are included in this report. In conclusion it listed the result, conclusions of this project and future plans if the project is continued. 

1. Introduction
This project belongs to telecommunication networks. Computer network, the Internet and public switched telephone are all kinds of telecommunication networks. This kind of network can be used in huge variety of fields. Such as short range communication, sensor networks, network integration. Wireless networks have a significant impact on the world since they were invented.
There are some energy efficient algorithms designed by other research groups to improve the performance of wireless networks such as interleavers and cooperative communication. In order to implement those modern energy efficient algorithms into wireless sensor networks specific protocol needs to be designed. The IEEE 802.15.4 standard is used as the foundation of our protocol. In this project a software tool called SDL is also used to help the development of protocol. The aim of this project is to design a wireless networks protocol based on IEEE standard use SDL, test the SDL software to see if it is capable of design a complete wireless sensor network, and to research where in the protocol the modern energy efficient algorithms can be implemented in. This project is the research and preparation stage of our long term goal which is to develop hardware and software based on our protocol.
IEEE 802.15.4-2006 standard is a standard designed for wireless sensor networks which mostly used in area monitoring and environmental monitoring. It is targeted at radio-frequency (RF) applications that require a low data rate, low energy, and secure networking. Some protocols have already been developed based on this standard such as ZigBee. ZigBee is a specification for a suite of high level communication protocols using small, low-power digital radios which meet the IEEE standard for wireless personal networks (WPANs). Industry protocols like ZigBee is complex and expensive. For specific wireless sensor networks some features in the industry protocols are unnecessary. And those protocols cannot be modified to include the modern energy efficient algorithms. So we need to design our own protocol and research if the modern energy efficient algorithms can be achieved in the protocol. The IBM Telelogic SDL and TTCN Suite is used in this project. It is a software used to design and test communication systems. The SDL language developed by ITU is used to implement the system. Study SDL language and test the potential of IBM SDL software is also part of our project’s purpose.

2. Modern Energy Efficient Algorithms
Energy efficient is a requirement of wireless sensor networks. Several modern energy efficient algorithms are developed by our research groups such as cooperative communication and CDMA system with interleavers. The functions of those algorithms need to be considered during the development of our protocol.
2.1. Cooperative Communication
In a typical wireless sensor network, sensor nodes wirelessly transmit information they have collected from the environment to a destination receiver. In cooperative communication a partner node is recruited to help with communicating the source node’s message by overhearing and repeating it to the destination [1] which is shown in figure 1.


Figure 1: Cooperative communication for wireless sensor networks
The bit error rate of systems with successful cooperation is below that of the non-cooperative system. So that cooperative communication could reduce the total transmission energy required for a given reliability of communication. The cooperation protocol has been envisaged whereby the source selects the best partner to cooperate with and determines the most energy efficient transmit power allocation for the cooperative system [2].
  
2.2.    CDMA System with Interleavers
Our research group investigated how to mitigate fading in a CDMA link that uses noise-like spreading sequences by the use of a block interleaver/deinterleaver structure. The system use reverse link CDMA that includes interleaver and deinterleaver blocks. The theoretical expression for the probability of error is derived. This research shows that the severe negative fading influence on the communication system can be substantially improved by implementing a block interleaver/deinterleaver structures into the system [3].  This is a theoretical algorithm for energy efficient communication which we need to consider where inside the protocol stock it could be implemented in. 

3.    Wireless Sensor Networks
A wireless sensor network is a wireless network formed by separate distributed autonomous devices using sensors to cooperatively monitor physical or environmental conditions [4]. Wireless sensor networks are wildly used in many industrial and civilian areas such as air quality monitoring, industrial process control and integration with other networks. The standard of wireless network we used in our project is IEEE standard 802.15.4-2006. This standard specifies the wireless medium access control (MAC) and physical layer (PHY) for low-rate wireless personal area networks (LR-WPANs). 

3.1.    Overview
WPANs are used to convey information over relatively short distance. Connection via WPANs involves little or no infrastructure so that small, power-efficient and inexpensive solutions can be implemented for a wide range of devices. The problem with wireless sensor network is that its sensor nodes are distributed in the environment. Each sensor node is battery powered. It is hard to change those nodes’ batteries so that energy efficient is very import for wireless sensor networks. The IEEE 802.15.4 standard is chosen because among lots of wireless network standards it is the most energy efficient one. This standard already contains some energy efficient functions could be used in this project.
An IEEE 802.15.4 LR-WPAN can operate in either of two topologies: the star topology or the peer-to-peer topology. Figure 2 shows the two topologies. In the star topology there is a single central controller called the PAN controller. The communication happens between devices and the PAN controller. The communication can be initiated, terminated, or routed around the network by PAN controller. A device will not be the initiation point or the termination point. In peer-to-peer topology though there is a PAN coordinator but any device may communicate with any device as long as they are in range of one another. The network formation is performed by the higher layer, which is not part of the standard. However because the modern energy efficient algorithms is related to partner choice, the topology and how to choose partner node in the protocol need to be considered in this project.


Figure 2: Star and peer-to-peer topology examples
A number of blocks called layers are defined for the IEEE 802.15.4 architecture. Each layer is responsible for one part of the standard and offers services to the higher layers. The PHY layer and the MAC sublayer is the main part of this protocol. The PHY layer contains the RF transceiver along with its low-level control mechanism, the MAC sublayer that provides access to the physical channel for all types of transfer [5]. Over these two layers are upper layers, which include a network layer used to configure, manipulate and route message and an application layer provides the function of the device. Figure 3 shows two nodes in a wireless sensor network each has MAC and PHY layer.

Figure 3: The architecture of two nodes.
The data or commands come from higher layer go into MAC sublayer. After processing MAC sublayer passes the data or commands in the form as MPDU (MAC protocol data unit) also called PSDU (PHY service data unit) to PHY layer. The data is processed and packed into PPDU (PHY protocol data unit) and sent to another nodes PHY layer. Primitives are used to control the features of MAC and PHY layer. Each primitive contains one or more parameters which control the values and functions of primitive.

3.2.    PHY Layer
The PHY is an interface between the MAC sublayer and the physical radio channel, via the RF firmware and RF hardware. The PHY also conceptually includes a management entity called the PLME which provides the layer management service interfaces through which layer management function may be invoked. The PLME also maintains a database of managed objects pertaining to the PHY. This database is referred to as the PHY PAN information base (PIB).

Figure 4: The PHY reference model
The PHY provides two services: the PHY data service and the PHY management services interfacing to the physical layer management entity (PLME) service access point (SAP) see figure 4. The PHY data service enables the transmission and reception of PPDUs across the physical radio channel.
A device meet the standard shall operate in one or several bands. These frequency bands include 868/915 MHz and 2450 MHz. The 2450 MHz is been chosen as our PHY layer’s operation band. This is related to the channel page and channels available for this project’s protocol. As specified in the standard [5] our protocol use channel page 0, channel number 11-26. The optional 868/915 MHz band PHY and the mandatory 868/915 MHz BPSK PHYs will not be considered. The data rate of the IEEE 802.15.4 (2450 MHz) PHY is 250 kb/s. The 2450 MHz PHY employs a 16-ary quasi-orthogonal modulation technique. During each data symbol period, four information bits are used to select one of 16 nearly orthogonal pseudo-random noise (PN) sequences to be transmitted. The PN sequence for successive data symbols are concatenated, and the aggregate chip sequences is modulated onto the carrier using offset quadrature phase-shift keying (O-QPSK)[5]. The modulation and spreading such as bit-to-symbol mapping, symbol-to-bit mapping and O-QPSK modulation are not considered in this project. These processes could be part of the future plan of hardware implementation of the wireless sensor networks.
The features of the PHY are activation and deactivation of the radio transceiver, energy detection (ED), link quality indication (LQI), channel selection, clear channel assessment (CCA), and transmitting as well as receiving packets across the physical medium. There are two groups of primitives in PHY layer: one is PHY data service which has PD-DATA primitives; the other is PHY management service which contains PLME-CCA, PLME-EC, PLME-GET, PLME-SET-TRX-STATE and PLME-SET primitives. 

3.2.1.    PHY Data Service
PHY data service controls the data go through PHY layer. Three primitives are used in PHY data service: PD-DATA.request, PD-DATA.confirm and PD-DATA.indication. PD-DATA.request is generated by local MAC layer used to request the transfer of an MPDU from the MAC sublayer to the local PHY layer. It contains parameters used to indicate PSDU’s length and store the MPDU. The PD-DATA.confirm primitive is generated by the PHY layer in response of a PD-DATA.request primitive. It is used to confirm the end of the transmission of a PSDU from a local PHY layer to a peer PHY layer. This primitive contains the status of the transmission and the PHY layer. The PD-DATA.indication primitive is generated by the PHY layer to its MAC sublayer to indicate the transfer of an MPDU from the PHY to the local MAC sublayer. It contains the length of the MPDU, the MPDU and the link quality value measured during reception of the PPDU. The standard does not specified how higher layers use the link quality value but it could be used as an indicator of node’s location and the transmit quality. These primitives together support the transport of MPDUs between peer MAC sublayer entities.
3.2.2.    PHY Management Service
The PLME controls the functions of PHY layer; it receives management commands from MLME. Most of the primitives’ requests are generated by MAC layer, and confirms are generated by PHY layer in reply of the request. The PLME-CCA primitives are used to request the PLME perform a CCA and reply the status of the clear channel assessment. In the standard three CCA modes are provided: CCA mode 1 only reports a busy medium when energy is above threshold, CCA mode 2 only reports a busy medium when it senses a carrier. CCA mode 3 reports a busy medium when energy is above threshold and detecting a signal with the modulation and spreading characteristics of this standard. The CCA mode 3 is chosen in our protocol. PLME-ED primitives are used to perform an energy detection measurement. They contain parameters used to store the status and energy level. PLME-GET primitives are used by MAC sublayer to request information about a given PHY PIB attribute. The value of required PHY PIB attribute along with the status is generated by PHY layer and sent back to MAC layer. PLME-SET-TRX-STATE is generated by the MLME and issued to its PLME when the current operational state of the receiver needs to be changed. Upon receiving the request the PLME generates a confirm primitive based on the reaction it makes. The PLME-SET primitives are used to write the indicated PHY PIB attribute by the MLME. These ten primitives are all considered by us during the design of the protocol.

3.3.    MAC Sublayer
The MAC sublayer is an interface between the SSCS (service-specific convergence sublayer) and the PHY. It handles all access to the physical radio channel. The management entity in MAC sublayer is called the MLME. It provides the service interface through which layer management functions may be invoked. The MLME also maintains a database of managed objects pertaining to the MAC sublayer. This database is referred to as the MAC sublayer PIB.
The MAC sublayer provides two services: the MAC data services and the MAC management service interfacing to the MAC sublayer management entity (MLME) service access point (SAP). The MAC data service enables the transmission and reception of MPDUs across the PHY data service. They work as an interface between the SSCS and the PHY, via the PD-SAP and PLME-SAP. An implicit interface also exists between the MLME and the MCPS that allows the MLME to use the MAC data service [5]. Figure 5 shows the structure of the MAC sublayer model.


Figure 5: The MAC sublayer reference model
The features of MAC sublayer are beacon management, channel access, guaranteed time slot (GTS) management, frame validation, acknowledged frame delivery, association, and disassociation. In our project we decided to design a non-beacon-enabled MAC sublayer because it uses less energy than beacon-enabled one and it is less complex. In addition, the MAC sublayer provides hooks for implementing application-appropriate security mechanisms. But for this project the security-related MAC PIB attributes are excluded because these attributes are unnecessary for our project design for specific protocol, and our own security-related attributes can be designed after the study of standard.

3.3.1.    MAC Data Service

In MAC Data Service there are five primitives divided into MCPS-DATA primitives and MCPS-PURGE primitives.  MCPS-DATA primitives are used to control the data from or to the SSCS entity. Information like status, source address, destination address, time stamp, data length and security level are parameters of these primitives.  Based on the value of primitives MCPS will either transfer the data or generate certain confirm response to the request. Figure 6 below is a message sequence chart (MSC) describing MCPS-DATA primitives of the MAC data service.

Figure 6: MSC describing the MAC data service
The MCPS-PURGE primitives allow the next higher layer to purge an MSDU (MAC service data unit) from the transaction queue. The request is generated by the next higher layer with the handle of the MSDU to be purged. Upon receiving it the MCPS will generate a confirm primitive with status of the purge function.

3.3.2.    MAC Management Service
MLME supports thirty primitives which controls the function of MAC sublayer.  MLME-ASSOCIATE and MLME-DISASSOCIATE are primitives generated by the next higher layer to associate or disassociate with another node. The device address is contained in these primitives to locate the location of the coordinator. The MLME-BEACON-NOTIFY is an indication used to send parameters contained within a beacon frame received by the MAC sublayer to the next higher layer. This primitive also contains the measurement of the link quality level and the time the beacon frame was received. Though the protocol in this project is non-beacon-enabled but this primitive is still useful for some function. The MLME-GET primitives are used for reading PIB attributes. The request is generated by the next higher layer to read the PIB attributes of MAC sublayer or PHY layer. The PLME-GET request is generated by MLME if the request needs to read PHY PIB attributes.  The MLME-GTS primitives are optional for a wireless sensor network and it need a device to track the beacons of its PAN coordinator. Because our protocol is non-beacon-enabled and there is no regular beacon to trace so MLME-GTS primitives are excluded. In MAC layer there are also primitives for orphan notification, resetting the MAC sublayer, specifying the receiver enable time, channel scanning, communication status primitive, writing PIB attributes, updating the super frame configuration, synchronizing with a coordinator and requesting data from a coordinator. Among those primitives the MLME-SYNC and MLME-SYNC-LOSS primitives are excluded for the reason same as the MLME-GTS primitives.

4.    SDL Tools and Protocol Design
IBM Telelogic SDL and TTCN Suite 6.2 is used to develop the wireless network in this project. SDL language is used to design the PHY layer and MAC sublayer of the LR-WPAN.

4.1.    SDL Language Overview
Specification and description language (SDL) is an object-oriented, standard, formal, portable, efficient, highly reusable, graphical and symbol-based language defined by The International Telecommunications Union-Telecommunications Standardization Sector (ITU-T) as recommendation Z.100. The language is intended for the specification of complex, event-driven, real-time, and interactive applications involving many concurrent activities that communicate using discrete signals.
SDL language was developed to be an internationally standardized formal method for the development of complex software. The strength of SDL is its ability to describe the structure, behavior, and data of a system. It has a well-defined set of concepts. It is unambiguous, clear, precise, and concise specifications. It has a thorough and accurate basis for analyzing specifications. It has a basis for determining whether or not an implementation conforms to the specifications and many other advantages. More detailed specifications and explanations could be found in [6].
Furthermore, there are tools available that can generate executable code, for example, C/C++ or ITU high-level language (CHILL), directly from the SDL design. Tests can also be generated from the SDL specification by making a test suite in tree and tabular combined notion (TTCN). This function is very important for our protocol design. The SDL system developed in the software could be converted to C/C++ program and implement to hardware directly.

4.2.    The Basics of SDL
The base of SDL language is it use finite state machine to descript a system’s behaviours. Communication system has the features of finite state machine such as has finite inputs and outputs, has a start state, and the input will cause the shift of state. So SDL is very useful in development of communication systems. In our protocol each primitive in MAC sublayer and PHY layer is an input or output of one or both layers. In SDL structure there are system, block, process, service (optional) and procedure (optional). Figure 7 below shows this structure. System is the top level, outermost construct; block must be contained in the system; process must be contained in a block; service must be contained in a process; procedure can be placed anywhere and be called remotely [6].

Figure 7: The Structural View of an SDL System
SDL is mainly a graphic presented language, table 1 below lists some important symbols used in SDL and meanings of them.

Table 1: Symbols in SDL Behavior Diagrams
In SDL text code is also used to define values and variables. The code used to declare a signal is: signal SignalName (DataType1, DataType2 …); A signal list which contains several signals can be declared use: signallist SignallistName = signal1, signal2…; A new data type can be defined use newtype TypeName endnewtype; More detailed information is in [6, 7]. 

4.3.    IBM Telelogic SDL and TTCN Suite 6.2]
IBM Telelogic SDL and TTCN Suite is a standard environment for compliance testing of communicating systems. This software is used worldwide to test telecommunications and data communications equipment ranging from built-in communication chips to huge switches and intelligent network services.
This software has a modern, graphical editor used to edit the SDL blocks. It can be used to debugging, co-simulate and test our design. It will automatically generate test suite from our specification. It also has the ability to compile the design to low-level languages. The Performance Simulator is available for running simulation of a performance model (specified in SDL) to obtain estimates about the SDL system’s performance. The Telelogic SDL Suite allows interfacing to C and C++ code in a power and flexible manner an included code can be analyzed and simulated.
This software also includes the SDL Target Tester which is used on the target hardware to trace the activity of the system on an SDL level and to run test suites by sending both environment and internal signals into the system. This function is useful for hardware design and test. Especially it could create and store error traces that can be used to diagnose the system. 


4.3.1.    License and Installation of SDL Suite
The license of this SDL Suite could be downloaded from IBM License Key Center using ID and password. The software is available on IBM website. The software has been installed on the computers assigned to our group in the telecommunication lab. In order to use the SDL Suite the Telelogic License Server 1.4 need to be installed. The license file needs to be edited to add the direction of license server software and the computer name of the PC it installed on. Figure 8 shows how to use License Server to manage license. In the path to the license file field (underlined use red) the direction of license file need to be put in. After setup of the license server you can start the server first, and then you will have the authority to use the SDL Suite.



Figure 8: Setup of the License Server


4.3.2.    Use of SDL Suite
In SDL Suite we could use GUI editor to design whole system and each block as shown in figure 9. Figure 9 shows the overview of our protocol. In this system there are data types and data constants defined in the protocol.  The whole 802 system contains a MAC sublayer block and a PHY layer block. In each block there are some processes such as MLME in MAC and TRX_PROCESS in PHY. Each function or algorithm can be edited use SDL Editor which shows in figure 10, 11 and 12. Every service, primitive and frame are designed and arranged in SDL.

Figure 9: The main window of SDL Suite
In SDL Suite we could start a new empty system, use a standard template or use other template file. The standard templates include access control, alternating bit protocol, mobile, phone and so on. In the main window shown in figure 9 you can add and edit new process, model, and chart or process mode. It also provides lots of test analyze and debug features such as simulation.
Figure 10 shows an editor view of PHY block. Inside the PHY block there are two processes and one process reference. The PHY layer’s structure is contained in the TRX_PROCESS reference. It is referenced by process TP1 and TP2. TP1 and TP2 present the PHY layers of two nodes; CH_2 between them is the channel between two PHY layers; CH_1 and CH_3 are channels connected to each PHY layer’s MAC layer.

Figure 10: SDL Editor-edit block PHY
In SDL Editor shown in figure 11 you can edit process, function, model, and library and so on. The editor includes a powerful help system and an analyzer for full syntactic and static semantic checks of our test scripts. We can edit the code directly in the editor and test it. Figure 11 shows the window when edit the code of a function. Here the contents are the data constants defined in the standard which are used in our protocol. Such as the energyLevelThreshold used by the CCA function in PHY layer is set to -70 (underlined use red).

Figure 11: SDL Editor-edit DataConstants

4.4.    Protocol Design
During the protocol design process a simple communication system with two nodes and four primitives is designed first to test the function and simulation features of the SDL software. Then the design of PHY and MAC protocol starts. After the protocol is tested one block is added to present one node to test the communication between two nodes. Then one more node is added to test the capability of the protocol. Figure 12 shows the overview at the system level. Three blocks present three nodes. Each block contains a PHY layer and a MAC sublayer. The lines between each node (ch1, ch3 and ch4) are channels they exchange signals. The lines ch0, ch2 and ch5 are the channel between every node and their own next high layer.

Figure 12: The network at system level

4.4.1.    PHY Layer Design
The PHY layer could be presented as one finite state machine with three main states so that its behavior could be described using SDL. These three main states are TRX_OFF, TX_ON and RX_ON. TRX_OFF means the transceiver is in or is to be configured into disable state. TX_ON means the transceiver is in or is to be configured into the transmitter enabled state. RX_ON means the transceiver is in or is to be configured into the receiver enabled state. Figure 13 shows the finite state machine of PHY layer.

Figure 13: Finite state machine of PHY layer
First step to design the PHY layer is define all the primitives in it. Each primitive has one or more parameters. For example the PD-DATA.request has two parameters; one this psduLength which is an integer, the other is PSDU which is set of octets. So this primitive could be declared use: signal PD_DATA.request (Integer, Octets_String);  The SDL has build in data types such as bit, Boolean, character, duration, integer, octet and so on which could be used to define most of the primitives. But some special data types like string and enumeration are needed so new data types need to be defined in our system. The statu is a parameter contained in many primitives whose type is enumeration. In PHY layer there are twelve enumerations. The status could be defined in the SDL use the following code:
NEWTYPE statu
LITERALS BUSY,BUSY_RX,BUST_TX,FORCE_TRX_OFF,IDLE,INVALID_PARAMETER,RX_ON,SUCCESS,TRX_OFF,TX_ON,UNSUPPORD,READ_ONLY;
ENDNEWTYPE;
After command LITERALS are twelve enumerations used in the PHY layer.
When above stage is finished, each primitive in the PHY layer is analyzed to see whether it is an input or an output. What reaction the PHY layer has under each of the state when receive a primitive. For example the PHY layer only performs CCA upon receive PLME-CCA.request when it is in RX_ON state. In TX_ON state it just returns BUSY and in TRX_OFF state it returns TRX_OFF. After this stage the PHY layer’s structure could be designed use SDL. For example if PD-DATA.request, PLME-CCA.request and PLME-ED.request are received by PHY layer when it is in TRX_OFF state. The PD-DATA.confirm and PLME-CCA.confirm are generated by the PLME with the statu value TRX_OFF. Energy detection is performed and PLME-ED.confirm is generated with statu value TRX_OFF and integer value ED level. These behaviors are presented in SDL like figure 14 below.

Figure 14: The SDL of the PHY layer: TRX_OFF
In the situation mentioned before there is no state change, so in figure 14 after the outputs are sent out the PHY layer keeps in its previous state. If the state changes, the new state will be indicated in the state symbols like in figure 15.

Figure 15: SDL of the PHY layer: RX_ON
The figure above shows the behaviors PLME has when it receives PLME-SET-TRX-STATE.request and in RX_ON state. Decision is made base on the values contained in the request, the state of PHY layer changes into TX_ON, TRX_OFF or remains in RX_ON.
Algorithms are the last part of the development of PHY layer. In PHY layer there are four important algorithms: the formatting of PPDU, the ED, the CCA and the LQI. These algorithms’ design need to consider the function of the hardware. These algorithms are designed in SDL and simulated. But when this system is implemented into hardware those algorithms may need to be modified. And we found out that SDL is not suitable for the design of complex algorithms. But with the function of integrate with C/C++ the system could be designed use SDL and algorithms could be written in C then integrate into SDL system. 

4.4.2.    MAC Sublayer Design
The processes of MAC sublayer design are similar to PHY layer with one difference. The primitives of MAC layer is more than PHY layer and the behaviors are far more complex.
The primitives of MAC layer are declared in the SDL. Along with many new data types such as MPDU type which contains MAC header (MHR) and MAC footer (MFR). MHR and MFR their selves are new data types contain frame control unit. The new types defined in MAC layer are MPDU, MHR, MFR, MACPayload, FrameControl, PendingAddressFields, PANDescriptor and CommandFrame.
The brief structure of MAC layer is designed use SDL. Because unlike PHY layer has three main states, MAC layer has more states and entities which are hard to present use finite state machine. The development of MAC layer is in the middle stage. In order to test the function of our protocol the simulation feature of SDL is used to make up for some unfinished MAC layer’s features and algorithms. These algorithms could be designed use SDL and C/C++ in the future. 

4.4.3.    Simulation of the Protocol
Simulation means execution the system under control. Lots of simulation features are provided by IBM SDL software. The variables, signals could be controlled; the execution could be traced. In SDL we could set breakpoint, do step by step simulation. The process queue, input port, process instances and active timers are viewable during the SDL simulation.

Figure 16: SDL simulation window: CCA
Figure 16 above shows part of the simulation window of SDL. The algorithm shown in this window is CCA of PLME. After an algorithm is developed we could use make function to convert it into executable file then run it in the SDL software. The signals go into this algorithm is controllable using the control window showed in following figure.

Figure 17: SDL simulator UI-CCA
The signals could be chosen use the simulator in figure 17. Send To and Send Via are used to set the value and channel of the signal. Go and Break are used to control the execution of the system. The command, signal, path and next state are shown in the right side window. There are also log window and process controller show the warning and error messages and process of simulation. SDL also provide simulation options such as random simulation used to automatically run huge among of simulation to test the stability of a system. We have not used this kind of simulation considering the simulation time and resource of auto-simulation. 
5.    Discussion
The result of this project is the reduced function PHY and MAC layer protocol designed and simulated use SDL software. After design the protocol based on the 802.15.4 standard use SDL software we have gain a deep understanding and experience of the protocol and SDL language. The advantage of SDL is its graphic interface and its ability to design a protocol in short time. Its disadvantage is the lack of ability to present complex algorithms. But because SDL could integrate with other languages such as C/C++, we think the complete design of wireless sensor network can be done use SDL.
During the design of our protocol the modern energy efficient algorithms are also considered. After testing the capability of SDL and study the standard we conclude that the cooperative communication could be implemented in the MAC sublayer and higher layer. Because MAC sublayer contains primitives control association and disassociation of the nodes. The ED value and LQI could be used to decide which node is suitable as a partner node and association primitives in MAC sublayer could be used to connect with the partner node. On the other hand the interleavers could be put in the PHY layer and hardware design because PHY layer and hardware are in charge of the modulation and demodulation of the signal.
For this project’s future plan, the first step is to finish the complete design of our own specific protocol. Then implement the protocol on hardware, incorporate the hardware with sensor network. Last but not the least; achieve cooperative communication and interleaver algorithms in our wireless sensor networks. 

6.    Conclusion
After this project the reduced function PHY and MAC layers protocol has been designed use SDL. The system and algorithms developed are simulated in the SDL software. The function of the IBM SDL Suite has been tested and proved that it could be used to design the complete wireless senor network. Knowledge and experience about 802.15.4 standard, SDL language and protocol design are gained in the process of this project which is very important and valuable. The skills of using SDL software is learnt during the development process. The skill is very helpful for our future work.
After research we conclude that cooperative communication could be implemented in MAC and higher layer considering the exits primitives could be used in the algorithms and interleavers could be achieve in PHY and hardware design based on the modulation and demodulation functions of PHY. A future plan has been made. In the future the complete development of our own protocol could be achieved. The system could be implemented on hardware and integrate with sensor networks. Finally the wireless sensor network with modern energy efficient algorithms could be achieved. 

Acknowledgements
I would like to thank the supervisor Dr. Stevan Berber for providing the support and guidelines to this project and this report. Thanks my partner Yong Gui for working with me on the project. Also thank IBM New Zealand Limited for providing us Telelogic SDL and TTCN Suite 6.2 for this project.

7.    References
[1]    Ljiljana Simić, Stevan M. Berber and Kevin W. Sowerby, “Cooperative Communication for Energy Efficient Wireless Sensor Network”, Department of Electrical and Computer Engineering, The University of Auckland.
[2]    Ljiljana Simić, Stevan M. Berber and Kevin W. Sowerby, “Partner Choice and Power Allocation for Energy Efficient Cooperation in Wireless Sensor Networks”, submitted to IEEE International Conference on Communications (ICC 2008), Beijing, 2008.
[3]    Stevan M. Berber and Xinghua Zhan, “Reverse CDMA Link Based on Noise-like Spreading Sequences and Fading Mitigation”, International Conference on Communications and Mobile Computing: Connecting the World Wirelessly, pp. 253-257, 2009.
[4]    Wireless Sensor Network. [Online]. Available: http://en.wikipedia.org/wiki/Sensor_network
[5]    IEEE Standard for information technology-Telecommunications and information exchange  between systems-Local and metropolitan area networks-Specific requirements Part 15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (WPANs), IEEE Standard 802.15.4-2006, 2006
[6]    Specification and Description Language (SDL). [Online].Available:http://www.iec.org/online/tutorials/acrobat/sdl.pdf
[7]    Laurent Doldi, Validation of Communications System with SDL: the Art of SDL Simulation and Reachability Analysis, John Wiley and Sons, 2003

没有评论:

发表评论