News & Analysis

An Inside Look at OIF's Tunable Laser MSA

Jeff Hutchins, Optical Internetworking Forum

3/23/2004 5:00 AM EST

Full-band tunable lasers are not a new topic in the communication sector. In fact, these lasers have been around for some time. But, while available, they have been only used in limited deployments in telecom and networking equipment.

Supply has been one of the big holdups on the tunable laser deployment front. While many other modules have second source options, tunable lasers have typically been developed using custom footprints, electrical specifications, and interfaces.

The Optical Internietworking Forum (www.oiforum.org) is hoping to change that landscape. with the development of the Tunable Laser multi-source agreement (MSA) specification, the OIF is standardizing the interface, electrical specs, and size of tunable laser modules. And, by doing that, the standards body is opening the door to true second-source development in the tunable laser market.

In this article, we'll look at th traditional ways in which tunable lasers have been developed. Then, we'll look in detail at the key technical requirements defined under OIF's Tunable Laser MSA.

The Traditional Design Approach
Today's fixed wavelength DFB lasers diodes are sold in standard 14-pin butterfly packages and have a more or less standard pin-out, size, and interface requirements (Figures 1a and 1c below). For example, a 14-pin butterfly package DFB will typically contain a thermo-electric cooler (TEC), a thermistor, a laser diode, and a wavelength locker (etalon). Standard integrated circuits exist to drive the laser diode, TEC, and to servo the DFB's lasing frequency.

Tunable lasers are also contained in butterfly packages. However, due to the different laser technologies employed, the butterfly packages are different sizes, have different pin-outs and require a variety of differing drive circuitries. For instance, some tunable lasers have one laser diode to drive and others may have four laser diode currents to drive and control!! Clearly a technology independent interface must be defined. The solution is to define the tunable laser interface at a higher integration level as shown in Figures 1b and 1d.


Figure 1: Diagram illustrating integration levels for DFB and tunable lasers.

To address the need for a standard interface for tunable lasers, the OIF completed two projects. The first project resulted in the Tunable Laser Implementation Agreement, OIF-TL-01.1 released in November 2002. This spec addressed the communication protocol, electrical interface, and mechanical form factor interoperability for tunable continuous wavelength (CW) lasers.

In May 2003, the OIF added to its first tunable laser specification with the development of the Tunable Laser MSA Implementation Agreement. This MSA-IA builds upon the existing tunable laser IA, generating a more comprehensive specification of the optical, electrical, mechanical, and communication protocols. It further provides sufficient additional definition such that it virtually guarantees compatibility between manufacturer's lasers. Let's take a clocker look at the MSA-IA spec. Physical Interfaces
Definition of the physical interface is one of the key elements defined under the Tunable Laser MSA-IA. Although differing laser technologies may require a wide range of voltages to support a given laser technology, the Tunable Laser MSA defines a common interface around a single 3.3V supply voltage. The module is responsible for generating any other voltages that are required.

The communications interface supports three physical layer protocols: I2C, RS-232, and SPI. The SPI bus and the I2C can both be bussed and the RS232 serial interface cannot.

The interface to be used is determined at power up or hard reset by the state of the IOMode and IOMode1 pins for the tunable laser module. Note that for a given application, the manufacturer need only implement the physical interface required by the user application.

Figure 2 depicts the communication process over an RS-232 serial interface. In this diagram, the application layer provides the ability for registers to hold two object types: either 16 bit integers or an arbitrarily long sequence of bytes (multi-byte response). The command response identifies the response as either a 16-bit integer or multi-byte response.


Figure 2: Diagram illustrating the three layers of the Tunable Laser MSA-IA.

For example, assume the host has a request to transmit to the module (Host's Request). The request is first encoded as a 28-bit command packet in the host driver's application layer. The command is then framed as a 32-bit packet in the host driver's transport layer. The framing operation includes the addition of a BIP-4 (byte interleaved parity) checksum. Finally, the host driver's physical interface (RS-232 shown) encodes the 32-bit packet as four 10-bit RS-232 "characters" and transmits in across the TxD line to the module.

The module's physical layer receives 40 bits and decodes them by removing the RS-232 start and stop bits. The resulting 32-bit frame is delivered to the module's transport layer where checksum is checked for consistency. Assuming no error is generated, the 28-bit command packet is delivered to the module's application layer where the command is decoded and executed.

The command execution will generate a response when complete. Consisting of 26 bits, the response packet is delivered to the module's transport layer which frames the packet by pre-pending a checksum, communication error (CE), and a response flag. The resulting 32-bit packet is then delivered to the module's physical layer where it is then encoded as 40 bits.

The host then receives the four RS-232 characters and performs the inverse operations as the packet moves up the host's layer hierarchy.

Command Overview
In the Tunable Layer MSA-IA, the application layer's command set has been divided into two groupings. The first group of commands deals with general module behavior as well as providing a way to determine what kind of module is present (tunable laser, tunable transmitter, etc.). These commands are independent of device type. The second group of commands, on the other hand, is device type specific. One of the commands provides away for the host to determine which type of device it is communicating with. The OIF implementation agreement defines the device type as "CW Laser".

The commands to the module consist of one read/write bit followed by an 8-bit register number followed by 2 bytes of optional data as shown in Figure 3.


Figure 3: Diagram illustrating the Tunable Laser MSA-IA command format.

There are 256 directly accessible registers (0x00 to 0xFF) in the primary register address space. The OIF-IA allocates the first 32 registers (0x00 to 0x1F) for generic module operations for all module types. Another 96 registers (0x20-0x7f) are reserved for device type "CW Laser". Finally, the remaining 128 registers (0x80-0xFF) are provided as manufacturing specific registers.

Command Execution Overlap
The application layer provides support for pending operations especially useful for operations that can take a significant period of time to complete. If a command is issued to the module that results in a long time to complete, the module will return a response packet within the specified time out period for the module and flag the operation as pending.

The interface is now free for the host to issue additional commands to the tunable laser module or to issue commands to another device on the bus. The host can determine when the pending operation completes by polling the NOP register (0x00). The NOP register returns the pending operation status as well as any error conditions.

Extended addressing provides an additional memory space (22 address bits) in addition to the primary 256 registers (8-bit address space). The extended addressing feature consists of three registers:

  1. Configuration Register: Defines the basic configuration for the extended address such as which address space is being referred to (e.g., register space, code space, data space, etc).
  2. Address Register: Defines the address for the memory location to be referenced.
  3. Content Register: A "read" or "write" operation to this register will indirectly access the memory location specified in the two previous registers.

Once the configuration and address registers are configured, the host may issue a series of read or write commands to the indirect contents register, thereby accessing the memory locations pointed to by the extended address registers in a sequential manner. Note that the locations may map to physical or virtual memory spaces. Typically, the extended address registers are used to access multi-byte fields such as manufacturer name, model number, firmware upgrades, etc.

Data Types and Register Lockout
All of the general registers hold 16-bit data values or serve as pointers to a sequence of bytes (extended addressing mode). All numerical values are stored as two's complement big-endian format. Note: a big-endian format stores the most significant byte in the byte with the lowest address. Data is represented in the registers as either signed or unsigned 16-bit integers. Note that single byte values would be stored with the appropriate leading zeros. Real values are stored with an implied decimal point location. For instance, the value "12.3 dBm" would be stored as 1230010 in a field and has an implied formatting of two decimal places.

Fields holding data longer than 16 bits are stored as a sequence of bytes and accessed through the extended addressing register. ASCII strings are terminated with a null. Note that the extended address register allows the host to read beyond a null termination but not beyond the maximum field size. Integers, floats, or structures are stored as a sequence of bytes .

Under the OIF spec, registers are classified as falling into one of four lockout levels ranging from level 0 (all lockable registers protected) to level 3 (all lockable registers are writeable). The lockout feature provides a degree of protection from altering registers which impact network traffic. Changing the lock level is accomplished by writing the appropriate key to the lock register.

Error Reporting
Errors can be generated for transport layer detected error or for application layer errors. Execution errors are asserted by the application layer and occur when the module is unable to execute the requested command. The module defined under the Tunable Laser MSA encodes the XE flag bit (execution error flag) in the response packet. When the host detects an XE flag in the response packet, it can read the NOP (0x00) register to determine the error field condition. Errors conditions include illegal memory or register references, execution failure, value range errors, etc.

Communication errors are asserted by the transport layer and error detection occurs on the module and host sides of the communication interface. The module examines the in-bound packets (host to module) to see if the checksum or the optional 16-bit cyclic redundancy check (CRC-16) is consistent. An inconsistency results in an unprocessed response packet with the CE flag asserted in the out-bound packet. When the host observes the CE flag, the last in-bound packet is resent.

The host examines the response packets for consistency by checking the checksum and the optional CRC-16 for the out-bound packet (module to host). If either the CRC or checksum is inconsistent, the host may request the module's last response to be retransmitted by reading the Last Response register (0x13).

Pin Assignments
OIF's tunable laser specification calls for the development of a 40-pin module. The pin assignments for the module are shown in Figure 4


Figure 4: Diagram illustrating the pin assignments for the Tunable Laser MSA-IA module.

The module select* (MS*) line is used to deselect the module when the host desires to communicate with another device on the same bus. The MS* line can also be used to reset the communication interface terminating any transfers that were in progress.

The IOCLK line is used by the I2C and SPI interfaces to clock the communication interface. The A0, A1, and A2 lines are used to set the module's I2C slave device address at power up. The interface ready* (IRDY*) line is used by the module to signal to the host that it is ready to receive a command over the communication interface. The disable output* (DIS*) line is used to immediately shutdown the laser output. The reset* (RST*) pin is used to perform a hard reset to the module and is traffic interrupting.

The module has three hardware lines to signal its status: FATAL*, SRQ*, and ALM*. The FATAL* line is used to signal fatal conditions that typically will cause shutdown of the optical output. The FATAL*, once asserted, remains asserted until the status register is cleared.

The SRQ* line is used to signal fatal conditions, warning conditions, or other module service request needs such as an execution error (XE) for a command processing in the background (pending operation) or a communication error (CE) which occurs on the SPI interface. The SRQ* line, once asserted, remains asserted until the status register is cleared.

The ALM* line is used to signal a warning condition. It remains asserted only during the time that the specified conditions occur. Due to the transient nature of the ALM* line, it is recommended to use the SRQ* to signal errors. The default module configuration specifies the ALM* to function as a locked line.

The Transport Layer
The transport layer encapsulates the command and response packets to form a 32-bit frame. Figure 5 depicts the in-bound and out-bound frames. The transport layer is responsible for the fields in white. The application layer is responsible for the gray shaded fields below.


Figure 5: In-bound and out-bound packets.

Each in-bound and out-bound packet contains a four-bit checksum. The checksum is computed over all the bits being encapsulated using a BIP-4 checksum. An optional CRC-16 is also available

The Tunable Laser MSA-IA also specifies the mechanical form factor (Figure 6). The mechanical dimensions include a minimum and maximum for most dimensions. Note that the mounting-hole locations and heat-sink locations are fixed.


Figure 6. Diagram showing the mechanical form factor defined under the tunable Laser MSA-IA.

What's Ahead?
The OIF tunable laser implementation agreements provide a comprehensive specification for tunable lasers assuring that compliant tunable laser modules will provide credible second sources for each other. OIF-IA compliant tunable lasers are now becoming available and are being designed into networking systems.

And what might the future hold? Although there are no currently active tunable laser projects at the OIF, some OIF members have begun to explore the feasibility of initiating a new OIF project to specify an OIF-IA based integratable assembly for use within the 300pin MSA transponder. The integrated assembly would comprise of a butterfly package surrounded by a miniaturized electronics PCB in a compact form factor and without a protective housing. The integratable assemblies would provide CW laser source as well as transmitter level functionality.

Author's Note: Information on the Tunable Laser MSA can be found at http://TunableLaserMSA.com or at http://www.oiforum.com"target="_new">www.oiforum.com.

About the Author
Jeff Hutchins is the Edito of the Optical Internetworking Forum's Tunable Laser MSA Implementation Agreement. He is also a senior applications engineering manager/program manager at Iolon. Jeff has an MSEE and BSEE from Stanford University and can be reached at jeff@iolon.com.


print

email

rss

Bookmark and Share

Joinpost comment




Please sign in to post comment

Navigate to related information

Product Parts Search

Enter part number or keyword
PartsSearch

FeedbackForm