This is a brief description of the most important functions in Robochameleon, grouped thematically.
DSP
Description |
File name |
Dispersion compensation (FFT-based) |
CDCompensation_v1 |
Timing recovery |
Resample_v1, Decimate_v1 |
I-Q imbalance compensation |
QuadratureImbalanceCompensation_v1 |
MMA or CMA-based adaptive equalization |
AdaptiveEqualizer_MMA_RDE_v1 |
Carrier recovery (decision-directed PLL) |
DDPLL_v1 |
Error counting and display |
BERT_v1 |
Physical models
Description |
File name |
Linear fiber model (dispersion, mode mixing, loss) |
LinChBulk_v1 |
Nonlinear fiber model (split-step Fourier solver, ssprop3) |
NonlinearChannel_v1 |
Noise loading |
EDFA_v1, SNR_v1, OSNR_v1 |
Symbol sequence generation |
PatternGenerator_v1, Mapper_v1, SymbolGenerator_v1 |
Pulse shaping and digital-analog conversion |
PulseShaper_v1, Quantizer_v1, DAC_v1 |
Transmitter models (coherent and intensity) |
IQModulator_v1, IntensityModulator_v1 |
Receiver models (photodiodes, balanced pairs, analog-digital conversion) |
PD_v1, BalancedPair_v1, ADC_v1, CoherentFrontend_v2 |
Other optical components (laser, optical hybrid, polarization beam splitter, ...) |
Laser_v1, OpticalHybrid_v1, PBS_1xN_v1, PBC_Nx1_v1, Polarizer_v1 |
Other impairments |
ResampleSkewJitter_v1, ElectricalFilter_v1 |
Signal analysis and display
Description |
File name |
Signal display with DCA-like triggering |
DSO_v1 |
EVM analysis |
EVM_Analysis |