Sign in

username or email:

password:



Not a member?
Forgot your password?

Search code



Search tips

Ads

See Also

Embedded SystemsFPGA

DSP Code Sharing - Code Snippets - Code Examples

Markus Nentwig
Markus received his Dipl. Ing. degree in electrical engineering / communications in 1999. Work interests include RF transceiver system design, implementation, modeling and verification. He works as senior architect for Renesas Mobile Europe in Finland.

Contact Markus Nentwig


NEW: Suggest a Snippet

Generate ideal QPSK..64QAM symbol error rates (reference result) [Matlab]

Calculates the symbol error rate of QPSK/16QAM/64QAM/256QAM/1024QAM modulation for additive white Gaussian noise Output: ...

posted by Markus Nentwig on Oct 21 2010
Comments (0) |

Raised-cosine window for OFDM intersymbol transitions [Matlab]

Calculates a raised-cosine window pair for OFDM windowing. Results in a smooth transition between symbols that causes less interference to adjacent frequency bands....

posted by Markus Nentwig on Oct 21 2010
Comments (0) |

Audio interpolation (Catmull-Rom/Cubic Hermite Spline) [Matlab]

Matlab example for Cubic Hermite Spline audio interpolation for sample-rate conversion or variable-speed playback. It is computationally efficient and audio quality is good....

posted by Markus Nentwig on Oct 24 2010
Comments (3) |

Least-Squares silver bullets: Moore-Penrose Pseudoinverse (Example) [Matlab]

While not exactly a "silver bullet", the Moore-Penrose Pseudoinverse is a powerful tool that can be applied to many practical problems. It calculates a least-squares solution to an overdetermined equa...

posted by Markus Nentwig on Oct 24 2010
Comments (4) |

Heuristic multiuser waterfilling algorithm [C]

A heuristic implementation of power-allocation by multi-user waterfilling (a communications problem when scheduling transmissions from a basestation to several receivers with frequency varying channel...

posted by Markus Nentwig on Nov 4 2010
Comments (0) |

WCDMA channelization code generator [Matlab]

Generates wideband CDMA channelization codes, based on 3GPP TS 25.213 V10.0.0 section 4.3.1.1 http://www.3gpp.org/ftp/Specs/archive/25_series/25.213/25213-a00.zip...

posted by Markus Nentwig on Nov 13 2010
Comments (0) |

Continuous-time equivalent of a discrete-time impulse response [Matlab]

Constructs a continuous-time waveform that corresponds to a discrete-time impulse response (i.e. FIR filter coefficients). Description: A sampled (time-discrete) signal often represents a continuous-...

posted by Markus Nentwig on Aug 12 2011
Comments (0) |

Farrow resampler [Matlab]

Implements a Farrow resampler in plain Matlab / Octave (no toolboxes). Description: A Farrow resampler reconstructs a continuous-time signals from samples using an impulse response that is appro...

posted by Markus Nentwig on Aug 12 2011
Comments (1) |

Bank-switched Farrow resampler [Matlab]

A Farrow resampler variant that requires fewer multiplications per output sample, at the expense of more coefficients. A conventional Farrow structure uses piecewise polynomial approximation on a con...

posted by Markus Nentwig on Aug 13 2011
Comments (0) |

Farrow resampler implementation [C]

Farrow resampler implementation in C, including optional bank switching. The functionality is mainly identical to the matlab code snippet. A discussion of the optional bank switching variant (which m...

posted by Markus Nentwig on Aug 13 2011
Comments (0) |

Resampling on arbitrary grid (vectorized) [Matlab]

Resamples a band-limited cyclic signal on an arbitrary grid via a vectorized evaluation of the Fourier series at the requested locations. The special case with signal energy at the Nyquist limit (-1, ...

posted by Markus Nentwig on Aug 14 2011
Comments (0) |

Signal fitting with subsample resolution [Matlab]

Update: The most recent version can be found here and a demonstration here.The downloadable code is a "real-life" implementation that is a good choice for "real-life problems", but has grown to almost...

posted by Markus Nentwig on Aug 16 2011
Comments (0) |

Resampling by Lagrange-polynomial interpolation [Matlab]

Calculates Lagrange-resampler coefficients and resamples an example signal.A Lagrange-resampler evaluates the unique n-th order polynomial that crosses through n+1 input samples. This code snippet map...

posted by Markus Nentwig on Aug 17 2011
Comments (0) |

Remez (FIR design) weights from requirements [Matlab]

The Remez (Parks McClellan) method is commonly used for the design of FIR filters. It uses user-provided weighting factors that determine the filter accuracy in different bands. While they can be foun...

posted by Markus Nentwig on Aug 19 2011
Comments (0) |

Yet Another FIR design algorithm [Matlab]

Designs real- or complex-valued FIR filters with linear or non-linear phase that match or equalize arbitrary frequency responses. Update: Download the latest version here (uses object-oriented synta...

posted by Markus Nentwig on Aug 21 2011
Comments (3) |

GSM (GMSK) power spectrum equation [Matlab]

A simple, empirical model for the power spectrum shape of a GMSK-modulated GSM signal, generated according to 3GPP TS 45.004 section 2 on a signal stream without slot structure. The picture shows t...

posted by Markus Nentwig on Sep 18 2011
Comments (0) |

integrate RMS phase error from spectrum [Matlab]

In a radio transmitter or receiver, the signal is translated in frequency by multiplication with a local-oscillator (LO) signal. Ideally, the LO signal is a pure sine wave, in reality it also contains...

posted by Markus Nentwig on Oct 21 2011
Comments (0) |

Peak-to-average ratio analysis [Matlab]

Determines the peak-to-average ratio of a signal for a given target percentile Background: Processing of communications signals - digital, analog or radio frequency - needs to be dimensioned for the d...

posted by Markus Nentwig on Dec 10 2011
Comments (0) |

Spectrum analyzer [Matlab]

Determines the power spectrum, similar to a hardware measurement instrument The function takes an input signal and gives the two-sided power spectrum. Results are similar to what is obtained using a ...

posted by Markus Nentwig on Dec 10 2011
Comments (0) |

Digital model for analog filters [Matlab]

Modeling an analog (continuous-time) component in a digital (discrete-time) environment using a sampled impulse response. Example impulse response: BackgroundFrequently, digital signal processing ...

posted by Markus Nentwig on Dec 17 2011
Comments (0) |

Baseband-equivalent phase noise model [Matlab]

Models a noisy local oscillator as found in wireless communications Example output On a logarithmic frequency axis: On a linear frequency axis: Background In wireless communications, signals ...

posted by Markus Nentwig on Dec 18 2011
Comments (0) |

Alias/error simulation of interpolating RRC filter [Matlab]

Shows alias and error spectrum of a root-raised cosine/upsample-by-64 multi-stage polyphase FIR. Documentation: Blog article Data files (impulse responses): Included in the zip archive. Example ...

posted by Markus Nentwig on Dec 25 2011
Comments (0) |

Narrow-band moving-average decimator, one addition/sample [Matlab]

Decimation for narrow-band signals by averaging It is usually not practical to implement filters with a bandwidth many orders of magnitude below the sampling rate. For example, an application might d...

posted by Markus Nentwig on Dec 31 2011
Comments (0) |

Delay estimation revisited [Matlab]

Estimates delay and scaling factor between two signals by iteration ( Code snippet: ) Introduction Quite many DSP-related tasks involve an unknown time delay between signals that needs to be estimat...

posted by Markus Nentwig on Jun 9 2012
Comments (4) |