Numerical Modelling Software for Teaching
Educational institutions are continually asked to make courses more relevant to current industrial practice, yet also have to provide students with a thorough understanding of fundamental concepts, so that students are ‘future proofed’. As technology progresses, the gap between these requirements widens, or one side becomes ignored completely.
A common compromise is to teach theory (usually analytical solutions) in the lecture theatre, and leave practical aspects to laboratories and design projects. Unfortunately, this often means that lectures are ‘dry’, as real-world solutions often go beyond the mathematical prowess of undergraduates, and often beyond the reach of analytical solutions altogether. The other problem is that real-world laboratories are equipped with millions of dollars of equipment, which universities can never emulate, and also carry safety hazards and high maintenance costs.
Fortunately, numerical models can help bridge the gap between analytical solutions and realistic engineering design. This is because a numerical model is based on fundamental mathematics (such as differential equations), but can extrapolate to extremely complex situations. Thus, students can test that a numerical model agrees with analytical solutions in simple cases, and then extrapolate to complex designs using the model. Ideally, they will gain some understanding of how the algorithm works.
Industry has embraced commercial numerical modelling software, as it supports creativity beyond analytical solutions, and also captures the design details during use . It also supports collaborative design amongst teams and between vendors and customers (‘design chains’) . It is also essential for verifying designs, and optimizing production yields.
There are a number of software packages aimed at education and training, many of them developed in-house. However, using commercial software for teaching gives several benefits for the students:
• Students get to see professionally-written software applications and graphical interfaces
• Students work on realistic design problems (such as applications demos supplied with the software)
• Students learn that there can be many solutions to the same problem (e.g. many ways of transmitting a Tbit/s or generating a modulated optical signal)
• Students can put something relevant on their CVs
Commercial software also has several benefits for the educational institution:
• The software contains hundreds of years of development work
• The software is well-tested
• The software comes with extensive manuals and applications examples
• Updates to the software and demos occur automatically, so is always ‘fresh’
• Students can exchange ideas with industrial users using on-line forums linked to the software.
The main disadvantage, addressed here, is that commercial-grade software cannot be given away for free to the students for use off-campus. This is for the simple reason that the free software will undermine the commercial market, so eventually all development and support of the software will cease because it becomes unprofitable. One option is to provide cut-down simulation tools, with a limited range of models. Unfortunately, this means that the more interesting effects and phenomena cannot be explained.
Free Take-Home Virtual Laboratories
To address this problem, VPI has developed VPIplayer™. This has the full simulation capabilities of the commercial tools VPItransmissionMaker™ and VPIcomponentMaker™, including exactly the same numerical models. Thus students get realistic results without compromise. VPIplayer can be downloaded from http://www.vpiphotonics.com/VPIplayer
VPIplayer is shown in Fig. 1. This GUI appears if a dynamicDataSheet™ is opened, say from an email, server or webpage. A dynamicDataSheet is a term coined for the commercial market, where vendors what to promote components and sub-systems to equipment manufacturers. For the purposes of the article a dynamicDataSheet is synonymous with a Virtual Laboratory. The top of the GUI shows the schematic of the system being simulated, including instrumentation. This uses Adobe’s SVG vector graphics format that can be zoomed into without losing detail. This allows annotations and parameter values to be seen, even of very complex schematics.
The buttons at the bottom-left allow (1) new dynamicDataSheets to be opened, (2) simulations to be run, and (3) emails sent to the originator, or the originator’s web-page to be accessed. This feature is useful when submitting questions to the course coordinator, or looking for updated tasks.
Above these buttons is an attachment area. This can show information relevant to a particular schematic, like course notes, spreadsheets with analytical solutions, mathematical modeling programs, or presentations.
To the right of the buttons is an area for controls. These controls allow certain parameters of the simulation to be changed before each simulation run. In the case of Fig. 1, the delay of the external cavity can be adjusted. This allows students to investigate harmonic mode-locking and unstable pulse generation. These controls can also be lists, such as lists of component choices or preferred values.
Running a simulation produces results presented within sophisticated visualization tools. The tools allow data to be examined and post processed after a simulation. For example the WDM Channel Analyzer (Fig. 2) can:
• Display the spectrum of multiple channels
• Display the waveform of a selected channel
• Display the Poincaré sphere of any channel
• Display the Eye diagram of any channel, including BER contours
• Plot BER versus Received Optical Powers for all channels
• Calculate Signal Powers, Noise Powers, Optical Signal to Noise Ratios, BERs, Q-factors and effective Q-factors for all channels
• Apply dispersion compensation to each or every channel
• Apply attenuation to each channel
• Display timing and amplitude metrics for all channels
Other visualizers include:
• Optical and electrical oscilloscopes with inbuilt filtersand resolution controls
• Eye diagrams with BER contours
• Optical spectrum analyzer with phase, dispersion, delay and Stoke’s vector plots
• Histogram with curve fitting
• Tabular display for spread-sheet type data
• Poincaré sphere to view polarization states (and their frequency dependence)
• Displays of fiber internal states, laser performance plots, dispersion and power plots, amplifier metrics, and almost any performance measure in an optical system
A range of applications demos also shows the operation of laboratory equipment and common test and measurement techniques , including the imitations of these techniques.
Generating dynamicDataSheets (Virtual Laboratories) for distribution
Over 150 universities have purchased the full versions of VPIsystems’ simulation software, VPItransmissionMaker™ and VPIcomponentMaker™. These share a common interface, and allow almost any experiment to be assembled from over 700 generic photonic and electronic modules. Also, there are over 350 readymade demos, which can be modified if desired.
Schematics created in VPItransmissionMaker/VPIcomponentMaker can be exported as a dynamicDataSheet for free distribution and use with VPIplayer, as shown in Fig. 3. This is a simple process:
• Define which parameters are to be available as controls (sliders or lists) in VPIplayer. This involves selecting ‘Create Player Parameter’ from a context sensitive menu in the parameter editor for that component. If not already specified, the max and min ranges will have to be specified.
• Attach any documents to the schematic that should appear in VPIplayer
• Select ‘File → Export → dynamicDataSheet’, then completing the contact details and web-page details. A university logo can also be added at this stage.
The completed dynamicDataSheets are very compact (10-40 kB) so can be distributed electronically using email or web-page downloads. If desired, they can be locked with a password. This could be useful if a start-date is specified for an assignment: the password should be distributed on that start data.
Full Versions of the Simulator
VPItransmissionMaker/VPIcomponentMaker share a graphical design environment, so that new components, subsystems, systems and networks can be defined by wiring modules together in a schematic. This design environment is shown in Figure 4. The modules are selected from a library on the left, and placed onto a schematic. Different parameter values can be set for each instance of a module on a schematic, or parameters values may be linked to common ‘global’ parameter settings (say to set the bandwidths of all optical filters at once).
Once the schematic has been created, simulations can be run and visualizers will appear, just as in VPIplayer. However, design process tools are provided to speed the design process, such as:
• Design Assistants to replicate keyboard and mouse actions, so that topologies can be automatically synthesized by answering questions in a wizard
• Simulation Scripts to control multiple simulation runs, setting parameters, manipulating data and sending results to files
• Interactive Simulation control panel, to drive a design process through annual tuning, multidimensional parameter sweeps, optimization and yield estimation
• Remote simulation server controls, so that large jobs can be sent to one or more simulation servers
• Third party (and in-house) software can be accessed ‘live’ using cosimulation interfaces.
Table 1 compares the features of VPIplayer and the full simulation tools. One important point is that the simulation engine within VPIplayer is identical to that within the full tools. This means that VPIplayer will generate exactly the same results as the full tool.
Comparison of features in VPIplayer and the full simulation tools.
|Schematic Editor||View Only||View and Edit|
|Schematic Hierarchy||View Top Level Only||View and Edit (any level)|
|Photonic Component Model Library||Simulate Only||Select, Edit, Simulate|
|Signal Processing Model Library||Simulate Only||Select, Edit, Simulate|
|Full Simulation Engine||YES||YES|
|Encrypted Data Files||YES||YES|
|Use Measured Data||YES||YES|
|Demo Library||Created with Full Product||Over 350 demos included|
|Manual Parameter Tuning||YES (set before each run)||YES (interactively: 4 modes)|
|Parameter Sweeps||Only if programmed graphically||YES (from interactive controller)|
|Simulation Engine Scripting||YES|
|Remote Simulation Servers||YES|
|Test and Measurement Interface||YES|
|Photonic Module Reference Manual||YES|
|Product Specific Documentation||YES|
|Licensing||Free distribution (at time of writing)||Discounted to Universities|
VPIplayer dynamicDataSheets can be created from scratch using the almost infinite number of combination of the 700 photonic and electronic modules in VPItransmissionMaker and VPIcomponentMaker. However, it is easier to start from the existing demo set, of which there are more than 350. These demos cover the following categories:
These examples illustrate the some physical phenomena in isolation and are intended for comparison with analytical formalisms as found in text books:
• Coherent and Incoherent light sources
• Optical couplers: phase shift
• Fabry-Perot resonators: free spectral range and tuning
• Interferometers: optical interference in the time domain
• MZI modulators illustrating optical chirp
• Intensity-modulated optical spectrum
• Gaussian pulse broadening in dispersive fiber
• Chirped Gaussian pulse broadening in dispersive fiber
• Self-Phase Modulation: Soliton propagation in nonlinear fiber
• Cross-Phase Modulation: Jitter in WDM systems
• Four-Wave Mixing in optical fibers
• Coherent and Incoherent optical crosstalk
• Direct and coherent optical detection
• First-order, second-order and all-order PMD
• Raman gain and power transfer in optical fibers
• Brillouin scattering in optical fibers
These examples illustrate the basics of laboratory instrumentation, and are best used with a text on Fiber Optic Test and Measurement :
• Operation of an Optical Spectrum Analyzer
• Amplitude and timing metrics from an oscilloscope
• BER estimation by error counting
• RIN measurement
• Linewidth from the frequency fluctuation spectrum
• Linewidth using heterodyne detection (with a second laser)
• Linewidth using self-heterodyne detection (with a delay line and frequency shifter)
• Linewidth using self-homodyne detection (with a delay line)
• IM and FM response measurement for lasers
• Side-Mode Suppression Ratio Measurement
• Modulator chirp from the modulation response
• Modulator Extinction Ratio (ER) using RF Power Meters
• Chromatic Dispersion by Delay Measurement
• Chromatic Dispersion Modulation Phase Shift Method
• PMD by Fixed Analyzer Method (null counting)
• PMD by the Pulse Delay Method
• PMD by the Modulation Response Method
• PMD by Jones Matrix Eigenanalysis
• PMD monitoring insensitive to chromatic dispersion
• Amplifier gain slope measurement
• Swept homodyne interferometry (for CD/DGD/PMD/PDL)
• Optical Amplifier Characterization
These examples illustrate the behavior of components in isolation.
• Laser Light-Current characteristics (edge emitting and VCSEL)
• Laser frequency fluctuation spectrum, optical spectrum and linewidth
• Laser intensity noise and RIN spectrum
• Small signal IM and FM modulation response
• Laser transient response (Rate Equations), Laser chirp (transient, adiabatic and SHB)
• Effect of optical feedback-RIN and chaos
• Biasing a laser for fast response, low jitter and reasonable extinction ratio
• Multi-mode lasers: effect of material gain spectrum
• Single mode lasers (DFB, external cavity, and Gain-coupled)
• Vertical-cavity lasers (L-I characteristics and modulation response including thermal effects)
• Mode-locking techniques
• Multi-section and tunable lasers
• Light-emitting diode spectrum and modulation response
• Mach-Zehnder modulators: drive configurations, extinction ration and chirp
• Electro-absorption modulators: static and dynamic characteristics
• Integrated lasers and EAMs: effect of feedback into the laser section
Doped fiber amplifiers:
• Pumping schemes: forward, backward, dual, multi-section
• Pump power conversion efficiency
• Gain and noise figure spectra
• Saturation of gain at high input powers
• Higher-order effects
• Waveguide amplifiers
Raman fiber amplifiers:
• Raman gain spectrum; relation to the gain coefficient and pump wavelength
• Signal, pump and noise powers along a fiber
• Pumping schemes: backwards/forward single/multiple
• Polarization issues: pump multiplexing
• Multi-stage and hybrid amplifiers
• Shot noise (Quantum Limit)
• Thermal noise
• Receiver bandwidth and noise filtering
• ASE beat noise (SxN, NxN), optical filtering
• Relationship between BER and Received Optical Power (thermal-noise limited)
• Effect of ASE on BER versus ROP
• Avalanche Photodiodes
• Optically-preamplified receivers: improvement in sensitivity
• Transimpedance Amplifiers
• Limiting Amplifiers
• Clock and Data recovery: resonator circuits
• Clock and Data recovery: phase-locked loops
• Thresholding and Retiming
• Decoding and FEC gain
These examples illustrate how components can be assembled into systems of increasing complexity:
• Single-channel attenuation-limited unamplified system: BER versus length
• Single-channel dispersion-limited system: BER vs. ROP for various dispersions
• Single-channel optically-preamplified system: effect of optical receiver bandwidth
• Single-channel and WDM soliton systems
• Coarse-WDM system, Dense WD system
• Multi-span amplified system (‘58’ equation)
• Dispersion maps: pre-compensation versus post compensation
• RZ versus NRZ systems
• Chirped-RZ systems
• Vestigial side-band modulation
• Dispersion-supported transmission
• Optical single-sideband modulation
• Phase-shift keyed systems
• Raman amplification in systems: upgrade strategies
• Polarization Mode Dispersion: degradation and compensation
• Optical time-division multiplexing (OTDM)
• Passive optical networks
• Broadband access networks using CATV infrastructure
• Analog and sub carrier transmission
These examples illustrate emerging technologies based on photonic signal processing:
Ready-made VPIplayer dynamicDataSheets for educational use
A set of VPIplayer dynamicDataSheets have been created especially for the popular undergraduate and graduate textbook by Gerd Keiser “Optical Fiber Communications”, McGraw Hill, Boston, 2000. The downloads are available from http://www.mhhe.com/engcs/electrical/keiser/.
• BER vs. Dispersion: (Chap 3 and 7) This demo shows the effects of chromatic dispersion on signal quality, as displayed on an eye diagram.
• BER vs. Extinction Ratio: (Chap 7) This demo illustrates the BER as a function of the extinction ratio (ER) for a system without optical amplifiers.
• BER vs. Extinction Ratio (Amplified System): (Chap 7 and 11) This extension of Demo #2 includes the effects on ER when an optical amplifier is included in the system.
• BER vs. ROP with Channel Analyzer: (Chap 7) This provides an efficient method of calculating and plotting BER versus Received Optical Power.
• Black Box versus Full EDFA model (980nm Pump): (Chap 11 and 12) This demo compares three different simulation models. Some suggestions for this demo: Compare the noise figure (NF) and gain for different pump powers.
• Black Box versus Full EDFA model (1480nm Pump): (Chap 11 and 12) Same comment as for Demo #5.
• CNR, CSO, CTB, IMD CATV Measurements: (Chap 9) This demo illustrates various performance parameters of a 20-channel NTSC analog system.
• Directly Modulated Laser System: (Chap 3, 4, and 7) This setup shows how the chirped output waveform from a directly modulated laser interacts with fiber dispersion to cause pulse spreading.
• Dispersion Managed Sections: (Chap 11 and 12) This setup demonstrates the use of dispersion compensating fiber (DCF) to mitigate the effects of chromatic dispersion in a link. Different fiber span lengths and attenuation values can be selected.
• EDFA Gain and Noise Figure Characterization: (Chap 10 and 11) This demo characterizes the gain and noise figure of an EDFA.
• EDFA Gain versus Input Power: (See Figure 11.3 in Chap. 11) This illustrates the gain versus optical input power characteristics of an EDFA.
• EDFA Preamplifier Design: (Chap 11) This demo allows many variations on EDFA design configurations, such as 980 or 1480 nm pump wavelengths, forward or backward pumping, and different EDF lengths.
• Four Wave Mixing: (Chap 12) This demo illustrates the growth of four-wave mixing effects. The simulation takes some time to run, since it goes through 50 loop cycles. During the simulation the degradation in the eye diagrams with each successive simulation loop can be seen.
• NRZ Pre/Post Compensation: (Chap 8 and 12) This module compares the effectiveness of three different dispersion compensation methods for NRZ formatted signals.
• OSNR vs. Transmission Distance: (Chap 6, 8, and 11) This demo shows the build-up of ASE noise along an amplified link. In the “XY: Power, Noise, and OSNR vs. Distance” display, the top trace gives the OSNR.
• Raman Gain Characterization: (Supplement to Chap 11 and 12) This setup demonstrates how to measure the gain of a distributed Raman amplifier. In the “XY: Power Distribution” display, the top curve is the optical power level in the fiber from the Raman pump laser (using backward pumping). The bottom set of curves are the signal power levels for the different WDM channels.
• Relative Intensity Noise: (Chap 9) This setup shows how the relative intensity noise (RIN) can be determined as a function of the frequency, and the effect of laser bias current on RIN and its spectrum.
• Time-Resolved Frequency Chirp: (Chap 8) This module shows how to characterize the dynamic chirp of a laser.
VPIplayer provides free take-home laboratories and is based on the full capabilities of professional photonic simulation tools. This combination gives students to ‘industrial’ simulation power at no cost. The downside, if it can be called that, is that the experiments have fixed topologies, and a few variable parameters. However, this may actually be an advantage, as it focuses students on a prescribed parameter space. For postgraduate students, who wish to create new topologies and component libraries, VPIphotonics offers discounted versions of its full professional tools VPIcomponentMaker and VPItransmissionMaker.