Skip to main content

a Python package to synthesize, simulate, scale and map to implementable topologies delta sigma modulators.

Project description

It aims to provide a 1:1 Python port of Richard Schreier’s *excellent* MATLAB Delta Sigma Toolbox, the de facto standard tool for high-level delta sigma simulation, upon which it is very heavily based.

Getting started

To have an idea of the currently implemented functionality, take a look at these IPython notebooks:

If you have some examples you would like to share, send me a mail, and I will add them to the above list.

Further functionality is expected to be ported according to the ROADMAP.


  1. You can find the included package documentation online.
  2. The original MATLAB Toolbox provides in-depth documentation, which is very useful to understand what the toolbox is capable of. See DSToolbox.pdf and OnePageStory.pdf (PDF warning).
  3. The book:

Richard Schreier, Gabor C. Temes, Understanding Delta-Sigma Data Converters, ISBN: 978-0-471-46585-0, November 2004, Wiley-IEEE Press

is probably the most authoritative resource on the topic. Chapter 8-9 show how to use the MATLAB toolkit and the observations apply also to this Python port. Links on amazon, on the Wiley-IEEE press.

I am not affiliated with neither the sellers nor the authors.


Version 0.1 series

The 0.1 series features support for (real) baseband and passband modulator topologies.

0.1-4: Cython implementation of simulateDSM(), PEP8 and DOC fixes.
  • deltasigma/_simulateDSM_cblas.pyx and deltasigma/_simulateDSM_scipy_blas.pyx, Cython implementation from pydsm of simulateDSM(), available if Cython is, providing a 70x speed-up of DSM simulations.
  • More documentation improvements and PEP8-related fixes.
0.1-3: Bugfixes, PEP8, more test coverage
  • deltasigma/ now supports FF topologies.
  • deltasigma/ now supports MIMO systems.
  • pretty_lti() has been improved to provide the prettiest printing of LTIs to date.
  • Many documentation improvements and PEP8-related fixes.
0.1-2: Bugfixes, PEP8, DOC and most importantly a, g, b, c reshape.
  • The a, g, b, c coefficients are now 1-dimensional.
  • deltasigma/ scalar b bugfix.
  • deltasigma/ fix bin width.
  • deltasigma/ add mround(), round compatibly with MATLAB.
  • deltasigma/ add root multiplicity support in pretty_lti().
  • deltasigma/ bugfix in cplxpair for incoherent complex values.

0.1-1: Bugfix: most importantly fix realizeNTF_ct().

  • deltasigma/ Fixes for multi-timing, add unit tests for FB.
  • deltasigma/ Bugfix (reshape missing assignment), fix documentation formatting.
  • deltasigma/ Fix plot. Add unit test.
  • deltasigma/ Fix docstring.
  • deltasigma/ Use matplotlib’s stem function. Enforce PEP8. Add support for color ‘None’.

0.1: Bugfix: missing copy() in mapABCD().

0.1rc4 : Multiple bugfixes. Py3k fixes. Test coverage up to 85+%.

0.1rc3 : Fix file-not-found issue with

0.1rc2 : Fix travis and support.

0.1rc1 : Initial release

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deltasigma-0.1-4.tar.gz (115.9 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page