# Eye Diagram for a Direct Modulated Semiconductor Laser in *ATLAS*

Introduction

An eye diagram is a convenient way to visualise
how the waveforms used to send multiple bits of data can potentially
lead to errors in the interpretation of those bits. This is the
so-called problem of intersymbol interference. An eye diagram is
also a useful means for readily obtaining information regarding
the timing jitter, voltage swing and transition time of the modulation
data. The eye diagram operation in ** ATLAS**
is a post processing function where the eye diagram is created by
taking the time domain signal and overlapping the traces for a certain
number of symbols. The time domain signal in this article represents
the output from a directly modulated semiconductor laser. The modulation
of the laser drive current takes a pseudo-random form.

LASER Simulation

Firstly a Fabry-Perot semiconductor laser is created
in ** ATLAS** using the advanced material module
Blaze; the laser structure created is shown in Figure 1. The laser
considered consists of an InGaAsP active region with InP cladding
layers. An important parameter in a heterostructure device is bandgap
alingment. How the bandgap difference is distributed between the
conduction and valance bands has a large impact on the charge transport.
In order to align the bandgaps use may be made of the ALIGN parameter
in the MATERIAL statement. This specifies the fraction of the bandgap
difference which will appear as the conduction band discontinuity.
Internally, Blaze creates the desired conduction band offset by
modifying the electron affinity of the material for which the ALIGN
parameter is specified. In this example ALIGN=0.6 has been used
for the InP material, therefore 60% of the bandgap difference is
assigned to the conduction band offset.

Figure 1. Cross sectional view
of the

simulated semiconductor laser device.

Semiconductor lasers are simulated in * ATLAS*
with the module

**. The module allows coupled electrical and optical simulation of semiconductor lasers. Laser works in conjunction with Blaze to solve the two dimensional Helmholtz equation in order to calculate the transverse optical field profile. It also allows calculation of the carrier recombination rate, optical gain and laser output power. The modal gain spectra for several longitudinal cavity modes is also readily available.**

*Laser***simulation is first initiated by specifying an independent rectangular mesh for the solution of the Helmholtz equation covering the entire active region. Since light may not entirely be contained within the active region this rectangular grid is chosen to extend so as to include an area slightly bigger than the active region. The turn on characteristics are shown in Figure 2 where it is clearly evident that for forward bias voltages from around 1.2V the output dramatically increases. Figure 3(a) shows the side view of the laser structure for a forward bias of 1.4V, where light emission is clearly evident, whilst Figure 3(b) shows the transverse mode profile obtained from Figure 3(a) by a 1 dimensional cut line across the active region. From figure 3(b) good optical confinement is evident.**

*Laser*

Figure 2. IV characteristic for
simulated semiconductor laser.

Figure 3(a). Cross sectional
view showing

optical intensity spatial properties.

Figure3(b). Light intensity profile
obtained via a 1 dimensional

cutline through the centre of the semiconductor laser structure.

Pseudorandom Modulation

Modulation of the laser is performed by adjusting the drive current. A forward bias of 1.3V is chosen to represent logic level 0, whilst a forward bias of 1.4V is chosen to represent logic level 1. These two logic levels are separately applied several times, the occurrence of a particular logic level being pseudorandom. In this way a pseudorandom modulation waveform, figure 4, is established. Example Atlas syntax for such a modulation scheme is detailed below.

solve vanode=$logic_1 ramptime=2e-10
tstop=2.5e-9 dt=0.1e-11

solve vanode=$logic_0 ramptime=2e-10 tstop=3.0e-9 dt=0.1e-11

solve vanode=$logic_0 ramptime=2e-10 tstop=3.5e-9 dt=0.1e-11

solve vanode=$logic_0 ramptime=2e-10 tstop=4.0e-9 dt=0.1e-11

solve vanode=$logic_1 ramptime=2e-10 tstop=4.5e-9 dt=0.1e-11

solve vanode=$logic_0 ramptime=2e-10 tstop=5.0e-9 dt=0.1e-11

solve vanode=$logic_0 ramptime=2e-10 tstop=5.5e-9 dt=0.1e-11

solve vanode=$logic_1 ramptime=2e-10 tstop=6.0e-9 dt=0.1e-11

Figure 4. Anode voltage versus
time for

pseudorandom modulation scheme.

Each statement in the above syntax represents a
transient in * ATLAS*. Considering such a
group of transient statements as that above,

**solves for the first transient, where ramptime is the rise time of the pulse and tstop is the time at which**

*ATLAS***stops the transient. For this first transient the pulse width is almost equal to tstop. On solving for the next transient in the group, risetime is once again the rise time of the pulse, however the duration of this pulse is essentially the difference between the tstop of the first transient and that of the second transient.**

*ATLAS***then proceeds onto the next transient and so on. In order to record the solution data for the transient simulations it is noted that a log file must be opened so that only transient data is recorded in it.**

*ATLAS*

Eye Diagram Creation

The output photon density versus time, Figure 5,
shows the modulated output from the semiconductor laser. Another
very useful representation of the modulation data in terms of examining
inter symbol interference, timing jitter, voltage swing and transition
time for example, is that of an eye diagram. The eye diagram is
constructed by taking a large sample of the time domain signal and
essentially splitting it up into several equal time segments, termed
here as the period, which are then overlaid on each other. The ** ATLAS**
syntax used for this is detailed below:

eye.diagram inf=for_eye_diagram_a.log outf=eye_diagramd.log t.start=1.0e-9 period=1.5e-9

Figure 5. Light intensity output
from the

pseudorandom modulated semiconductor laser.

In the above, inf=for_eye_diagram_a.log specifies the input log file that the eye diagram algorithm is to use i.e. the log file that the time domain information is stored in, outf=eye_diagramd.log is the output file that the eye diagram is to be stored in. The eye diagram algorithm requires the time at which the data in the input log file is to be used for the eye diagram, this is specified with t.start. The period i.e. time segment, that the eye diagram is to use is specified by period. Care must be taken to correctly chose this value. The resulting eye diagram is shown in Figure 6. As can be seen from the figure there is a large open eye in the figure indicative of a reasonable modulation scheme. Also of notice is that there exist a reasonable transition time, indicated by the slope of the walls of the eye diagram.

Figure 6. Eye diagram of the
modulated output.

Conclusion

It has been shown that a pseudo-random modulation
scheme is easily performed in ** ATLAS** .
Also of ease is the creation of an eye diagram. Since it is a post
processing function it is extremely quick to perform experiments
regarding the choice of the period.