Code Monkey home page Code Monkey logo

optdsp_lite's Introduction

General Description of the OptDSP Library

The OptDSP library includes a set of m-files to implement transmitter- and receiver-side digital signal processing (DSP) for coherent optical communication systems.
Currently supported functionalities:

  • pulse shaping (RRC, SRRC, Gaussian, ...);
  • QAM modulation (BPSK, QPSK, 8QAM, 16QAM, 32QAM, 64QAM, 128QAM, 256QAM, 512QAM);
  • Probabilistic Shaping;
  • Emulation of laser phase and intensity noise;
  • matched filtering (SRRC);
  • carrier phase estimation and removal (Viterbi&Viterbi, blind-phase search, maximum likelihood, decision-directed, data-aided, ...);
  • signal demodulation and decision (BER, SER, EVM, MSE, MI, ...);

In addition, the library also includes a set of functions to perform general purpose DSP operations such as:

  • low-pass/band-pass filtering (frequency-domain);
  • digital resampling;
  • synchronization of Tx and Rx signals;
  • conversion between performance metrics (BER, SNR, MI, ...);

How to Use the OptDSP Library

The OptDSP library requires the use of MATLAB and it includes an _examples folder containing simple application examples that can be run by anyone. Users are encouraged to adapt the provided examples to their own application. Note: when developing your own project, please consider placing your main-files outside of the OptDSP directory, so that they are out of the Git version control. To load the OptDSP library, simply place the following line of code in the preamble of you m-file:
addpath(genpath('path\to\OptDSP\library'));

Acknowledgment

This library and its included routines were developed by Fernando Guiomar and supported by the European Commission (EC) within the framework of a Marie Skłodowska-Curie Individual Fellowship, project Flex-ON: Flexible Optical Networks – Time Domain Hybrid QAM: DSP and Physical Layer Modelling, with grant agreement number 653412.
http://cordis.europa.eu/project/rcn/194861_en.html

optdsp_lite's People

Contributors

fernandoguiomar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.