DESIGNING WIRELESS PROTOCOLS: METHODOLOGY AND APPLICATIONS M. Sgroi, J. L. da Silva Jr., F. De Bernardinis, F. Burghardt, A. Sangiovanni-Vincentelli, J. Rabaey University of California at Berkeley Abstract – Communication protocols are essential components of wireless systems. Present methods for protocol design are heuristic in nature and are not suited for next generation wireless systems where time-to-market concerns require correct-the-first-time im- plementations. In this paper we present a new design methodology for wireless protocols based on the principle of orthogonalization of concerns. In particular, the methodology separates function and architecture design and emphasizes the use of formal models to ensure correctness and reduce design time. Protocols are described using Co-design Finite State Machines (CFSMs), a model of com- putation that has been introduced to allow the efficient capture of both the control and the data processing parts of the specification. Furthermore, algorithms for automatic hardware and software syn- thesis from CFSMs are available. This allows a fast exploration of different HW/SW partitions and the analysis of tradeoffs involved. Intercom, a wireless system supporting full-duplex voice commu- nication among different users, is presented and the design of its protocols is described. The design methodology presented here will be used for the design of PicoRadio, a low-power and highly adaptive network of sensors. 1. INTRODUCTION Future wireless systems will provide reliable and mobile con- nectivity while supporting a broad variety of multimedia services at very low cost. Among next generation wireless systems, sensor networks are of special interest. Distributed, large-scale sensor in- formation networks combine a number of seemingly contradictory implementation requirements. On the one hand the networks have to be versatile, self-organizing multi-functional, and dynamically reconfigurable. This implies that the communication and computa- tional components of the sensor nodes need to be adaptive and programmable. On the other hand, extensive large scale coverage requirements which implies large numbers, require that the sensor nodes be inexpensive, have a very small footprint and consume a minimum amount of energy to extend their operational lifetimes. Deep sub-micron integrated circuit technology allows imple- menting within a single silicon circuit a variety of heterogeneous functions, e.g. data processing, channel control, modem, interfac- ing, position location, thus providing a possible solution to the re- quirements stated above. An essential problem in the design of wireless systems is the design of the protocol, not only because it is usually error-prone and time-consuming, but also because the design decisions made in this phase greatly affect the quality of the entire system imple- mentation. Pushing performances/cost requirements and integra- tion capabilities to the limit requires developing new design tools and methodologies. Our research efforts move indeed in two main directions: • design of fully integrated wireless systems from specification to final chip implementation, • development of a complete methodology for the design of low-power and dynamically adaptive protocols. This paper provides an overview of both efforts. In the first part (Section 2) we describe the methodology we are developing for the design and the implementation of protocols. In the second part we describe Intercom, a wireless system for voice-based confer- encing within a single-cell network, currently under development in Berkeley. The paper will be concluded with perspectives on fu- ture developments, especially with respect to PicoRadio, a low- power and highly adaptive network of sensors and monitors. 2. DESIGN METHODOLOGY Protocols are currently designed using a rather informal ap- proach. Starting from a textual description of the service that the protocol must provide, the design process is iteratively carried on through several steps. At every step the designer informally re- fines the protocol by adding further details and eventually remov- ing existing errors. This process terminates only when the designer is convinced that the protocol is free of errors and satisfies all the system requirements. In this design method, the refinement proc- ess is carried out informally and, as a consequence, it is not guar- anteed to maintain the properties of the initial specification. Hence, the final implementation may be incorrect or inconsistent with the initial specification. It is not surprising that most of the efforts of the protocol design research community have been de- voted to formal verification. Besides the need of formal tech- niques, the design methodologies currently used lack of real sup- port for performance analysis and therefore do not allow to ad- dress early in the design process important issues such as architec- ture selection and HW/SW partitioning. Our goal is to define a formal methodology that allows to • design correct-by-construction protocols • implement them efficiently, i.e. using a minimal amount of physical resources (area and/or energy) The design methodology we propose for wireless protocols is based on a top-down flow rooted on a clear separation between behavior and architecture. This paradigm can be applied at any stage of the design. In fact, we advocate starting thinking along these lines from the network level where the topology of the net- work is decided, or even at the application level. Network design is based on assumptions of the performances of the network nodes in terms of power and timing. If these assumptions are satisfied, then our design methodology ensures that the network will work correctly. These assumptions become constraints for the design of the nodes and are propagated down the design hierarchy. This guarantees that, if the constraints at the lower level of the hierar- chy are satisfied, we do not have to verify the top level again. In addition, properties that are typically enforced at the top level of the hierarchy are extremely difficult to verify at lower levels where implementation details are overwhelming. We refer to this