IrDA protocol layers are introduced in the following:


Physical Layer
The IrDA Physical Layer Specification sets a standard for the IR transceiver, the modulation or encoding/ decoding method, as well as other physical parameters. IrDA uses IR with peak wavelength of 0.85 to 0.90 micro-meter. The transmitter's minimum and maximum intensity is 40 and 500 mW/Sr within a 30 degree cone. The receiver's minimum and maximum sensitivity is 0.0040 and 500 mW/(cm.cm) within a similar 30 degree cone. The link length is 0 to 1 m with an error rate of less than 1 in 10**8 bits. There are three different modulation or encoding/decoding methods. The first one is mandatory for both IrDA-1.0 and IrDA- 1.1. The other two are optional and are for IrDA-1.1 only. For transfer rate of 9.6k, 19.2k, 38.4k, 57.6k or 115.2 kbps operations, a start (0) bit and a stop (1) bit is added before and after each byte of data. This is the same format as used in a traditional UART. However, instead of NRZ, a method similar to RZ is used, where a 0 is encoded as a single pulse of 1.6 micro-sec to 3/16 of a bit cell, and a 1 is encoded as the absence of such a pulse. In order to have unique byte patterns to mark beginning and ending of a frame and yet allow any binary data bytes, byte stuffing (escape sequence) is used in the body of the frame. A 16-bit CRC is used for error detection. The 9.6 kbps operation is mandatory for both IrDA-1.0 and IrDA-1.1. 19.2k, 38.4k, 57.6k and 115.2 kbps are all optional for IrDA-1.0 and IrDA-1.1. For transfer rate of 0.576M or 1.152 Mbps operation, no start or stop bits are used and the same synchronous format as HDLC is used. Again, a 0 is encoded as a single pulse (1/4 the bit cell) whereas a 1 is encoded as the absence of such a pulse. In order to ensure clock recovery, bit stuffing is used (same as in HDLC). The same 16-bit CRC is also used. Both 0.576M and 1.152 Mbps operations are optional for IrDA-1.1. For transfer rate of 4.0 Mbps operation, a 4-PPM method is used. Again, no start or stop bits are used. In addition, bit/byte stuffing are not needed either. A 32- bit CRC is used in this case. This rate is used in IrDA-1.1 only.

IrLAP Layer
The IrDA Link Access Protocol (IrLAP) establishes the IR media access rules and various procedures for discovery, negotiation, information exchange, etc. IrLAP is a mandatory layer of the IrDA standard but not all the features are mandatory. The minimum requirements are clearly spelled out in the specification. The main media access rules are that for any station which is currently not participating in a connection, it must listen for more than 500 msec to make sure that there is no IR traffic before it starts to transmit, and that for any station which is currently participating in a connection, it must transmit a frame within any given 500 msec. Media access among the stations participating in a connection is controlled by a token-like Poll/Final bit in each frame. Transmission of user data without first establishing a connection is allowed in IrLAP. As far as IrLAP is concerned, connection-less transmission are broadcast in nature and are not acknowledged by the receiver. The discovery procedure defines a orderly way to exchange IDs. The initiator broadcasts its own ID repeatedly for a known number of times and listens between these repeated transmissions (slots). The responders randomly choose one of the slots and send their own IDs. If there is a collision, this procedure can be repeated. The negotiation procedure is used to establish a connection with operating parameters that both parties can support. Some or these parameters, such as bit rate, must be identical for both side, thus the "largest common denominator" is used. Some other parameters, such as maximum data size, are the limits of one party which the other party must respect. After all these operating parameters are known to both parties, a connection can be established. Before this happens, all traffic (connection-less transmission of data, discovery procedure, negotiation procedure, etc.) are carried out at 9.6 kbps async. mode with maximum data size of 64 bytes. Once connection is made, the negotiated data rate can be as high as 115.2 kbps (IrDA-1.0) or 4 Mbps (IrDA-1.1), the negotiated maximum data size can be as big as 2048 bytes. During connection, the information exchange procedures are used. Frames containing user data are sequence checked in addition to CRC. There are also supervisory frames used for flow control, error recovery, and to pass the token. Connection may be one-to-one or one-to-many. One of the stations in a connection plays the role of a primary, all others play the roles of secondaries. Usually, the station that initiated the connection, or the common one in a one-to-many connection is the primary station. The primary station is responsible for the recovery of lost token, to maintain the 500 msec heart beat, and, in general, the orderly operation of the connection. In addition to the above major procedures, there are many other procedures, for example: sniffing, address conflict resolution, exchange primary/ secondary roles, just to name a few. Collectively, IrLAP provides an orderly and reliable connection between the IR stations.

IrLMP Layer
The IrDA Link Management Protocol (IrLMP) consists of two components: the Link Management Information Access Service (LM-IAS), and the Link Management Multiplexer (LM- MUX). IrLMP is a mandatory element of the IrDA standard, but again, not all features of IrLMP are mandatory. LM-ISA entity maintains an information base so that other IrDA stations can inquire what services are offered. This information is held in a number of objects, each associated with a set of attributes. For example, "Device" is an mandatory object and has attributes "DeviceName" (an ASCII string) and "IrLMPSupport" (IrLMP version number, IAS support, and LM-MUX support). The other component of IrLMP, LM- MUX, provides multiple data link connections over the single connection provided by IrLAP. Within each IR station, multiple Link Service Access Points (LSAPs) can be defined, each with a unique selector (LSAP-SEL). LM-MUX provides data transfer services between LSAP-SEL end points within the same IR station as well as across the IrLAP connection to other IR stations. The LM-ISA discuss previously uses a pre-defined LSAP-SEL (0) for other IR stations to access over IrLAP and through LM-MUX. The LM-MUX can be in one of two modes, exclusive or multiplexed. When in exclusive mode, only one LSAP connection may be active. In this case the flow control provided by IrLAP can be used for the only connection. When in multiplexed mode, several LSAP connections may actively share the same underlying IrLAP connection. However, in this case additional flow control must be provided by upper layers or the applications.

IrTP, TinyTP, IrCOMM, and Beyond
IrTP and TinyTP are optional transport protocols. The main proposes are to provide individual LSAP flow control functions and to segment or reassemble data. The additional flow control is needed when the LM-MUX is in multiplexed mode. The segmentation and reassembly of data is used to match the user buffer size and IrLAP/IrLMP data size. IrCOMM is the protocol to emulate pre-existing wired serial and parallel ports. There are four service types. The 3-wire raw service type emulates a 3-wire RS-232 port ( TxD, RxD and Gnd wires with no flow control). It has no control channel and relies on IrLAP for flow control (and hence it must use LM-MUX exclusive mode). The other three service types use TinyTP and have separate control channels. They emulate 3- wire (cooked), 9-wire, and Centronics parallel. Other IrDA optional layers include PnP (Plug-and-Play), Obex (Object exchange), and many others. Most of these optional layer are aiming at facilitating the adoption/development of application programs. Physical Layer, IrLAP, and IrLMP are the only layers that are mandatory in the IrDA standard. While these three layers provide the bases for an efficient and reliable link, the design is extensible and open-ended. IrDA has defined and is continuously working on other optional upper layers.

← Prev Next →

ACTiSYS CORP.  | 921 Corporate Way | Fremont, CA 94539
Tel: +1-510-490-8024 | Fax: +1-510-623-7268
  irda-info@actisys.com

© 1996-2019 ACTiSYS Corporation,
All Rights Reserved