DSPRelated.com

TI goes the Open Source way!

Praveen RaghavanPraveen Raghavan November 19, 20077 comments

TI has started opening parts of its toolchain by releasing a free standalone compiler for its C54x line, announced through Googles Summer of Code. Praveen Raghavan points out the bundle includes a compiler, optimizer, assembler, and linker but no debugger, and shows why this can enable open-source codec work on DM320-based OSD projects. The post calls for industry and academia to collaborate on improving compilers.


Resolving 'Can't initialize target CPU' on TI C6000 DSPs - Part 2

Mike DunnMike Dunn November 12, 20073 comments

Mike Dunn walks through practical, low-level debugging to fix "Can't initialize target CPU" on TI C6000 DSPs using CCS 3.3, focusing on XDS510-class emulators. He demonstrates how to run xdsprobe to perform JTAG resets, read and interpret adapter and port error messages, and run JTAG IR/DR integrity tests. The article shows example outputs and a simple scope-based trace to locate signal faults.


Spectral Flipping Around Signal Center Frequency

Rick LyonsRick Lyons November 7, 20075 comments

Most DSP engineers know that multiplying a real signal by (-1)^n inverts its spectrum about fs/4, but that trick fails when you need to flip around a specific carrier. Rick Lyons presents two practical techniques: a multirate upsample-by-two solution using paired lowpass filters and cosine mixing, and a computationally heavier complex-multiply plus real-part method attributed to Dirk Bell, both yielding the desired fcntr-centered flip.


A Differentiator With a Difference

Rick LyonsRick Lyons November 3, 200712 comments

Rick Lyons presents a compact, practical FIR differentiator that combines central-difference noise attenuation with a much wider linear range. The proposed ydif(n) doubles the usable frequency range to about 0.34π (0.17fs), uses ±1/16 coefficients so multiplications become simple 4-bit right shifts, and has an exact three-sample group delay for easy synchronization with other signals.


A brief look at multipath radio channels

Markus NentwigMarkus Nentwig October 31, 20078 comments

Markus Nentwig walks through a hands-on RF experiment that makes multipath and fading visible using a network analyzer and simple dipole antennas. He shows how reflections produce frequency-domain notches when path differences equal half wavelengths, and how doubling distance increases free-space path loss by roughly 6 dB. The post explains why narrowband signals often see flat fading while wideband links become frequency-selective, motivating OFDM and multi-tap channel models.


Resolving 'Can't initialize target CPU' on TI C6000 DSPs - Part 1

Mike DunnMike Dunn October 30, 200715 comments

Misconfigured Code Composer Studio settings cause most 'Can't initialize target CPU' errors on TI C6000 boards, not a faulty silicon. Mike Dunn walks through the practical first steps: confirm your CCS version, identify the exact emulator and board or device part number, and ensure you have the correct emulator driver. The post also shows how to duplicate TI's factory board configuration to avoid common setup mistakes.


Modelling a Noisy Communication Signal in MATLAB for the Analog to Digital Conversion Process

Parth VakilParth Vakil October 30, 200713 comments

Practical signal modeling treats receiver noise as a fixed power source, not something tied to the transmitted waveform. Parth demonstrates why using MATLAB's awgn(sig,SNR,'measured') can misrepresent an analog front end and provides a short function that scales your signal so the added AWGN produces the desired receiver noise variance. This prepares realistic inputs for upcoming ADC simulations.


Embedded TMS320C6000 Information Kick Off

Mike DunnMike Dunn October 25, 20072 comments

Mike Dunn kicks off a series on the TMS320C6000 family, drawing on decades of hardware-first experience. He plans pragmatic posts that focus on device differences, odd quirks, and real-world debugging rather than DSP theory. Expect concise troubleshooting stories driven by his Yahoo c6x group activity and an emphasis on explaining why solutions work, not just what to do.


ES Week Emphasis on Component Based Design

Praveen RaghavanPraveen Raghavan October 7, 2007

ES Week in Salzburg brought a strong theme into focus, component based design and automation for embedded and MPSoC systems. Praveen Raghavan highlights a few standout keynotes and industry talks, from SDR evolution at Infineon to Tensilica’s push toward instruction set extension and MPSoC assembly. He also notes Toshiba’s new VLIW vector processor for image and video front ends, along with the compiler challenges that come with it.


Delay estimation by FFT

Markus NentwigMarkus Nentwig September 22, 200750 comments

Markus Nentwig presents a practical FFT-based algorithm to estimate and correct integer and fractional sample delays between two signals, returning a scaled, aligned replica and delay estimate. The method combines coarse cross-correlation with a phase-slope linear regression on weighted spectra to achieve subsample timing accuracy. The article also discusses accuracy limits, phase-unwrapping pitfalls, and how to use the error-vector spectrum to reveal distortion in lab measurements.


Maximum Likelihood Estimation

Mehdi Mehdi November 24, 2015

Any observation has some degree of noise content that makes our observations uncertain. When we try to make conclusions based on noisy observations, we have to separate the dynamics of a signal from noise.


Personal presentation and greetings

David David October 27, 2010

David Valencia joins DSPRelated from Mexico City and brings hands-on DSP projects and code. He plans to share Spectrum Digital DSK6713 examples covering GPIO control, external memory, and expansion port access, with MATLAB, C and TI DSP C implementations. Expect wavelet transform filter bank code, and occasional FPGA and CPLD notes. Stay tuned for practical, hardware-focused DSP resources.


Embedded TMS320C6000 Information Kick Off

Mike DunnMike Dunn October 25, 20072 comments

Mike Dunn kicks off a series on the TMS320C6000 family, drawing on decades of hardware-first experience. He plans pragmatic posts that focus on device differences, odd quirks, and real-world debugging rather than DSP theory. Expect concise troubleshooting stories driven by his Yahoo c6x group activity and an emphasis on explaining why solutions work, not just what to do.


New Blog Section!

Stephane BoucherStephane Boucher September 19, 20072 comments

DSPRelated just launched a new blogs section, and it is already starting to take shape. Stephane Boucher says he received around 50 proposals from DSP engineers, chose an initial set of 10 bloggers, and is now setting up their accounts. The section is still in beta, but there is also more on the way, including a future area for sharing quality code in asm, C, and MATLAB.


Code Snippets Section Now LIVE

Stephane BoucherStephane Boucher November 2, 20101 comment

A new code-sharing section on DSPRelated is now live, giving engineers a central place to browse and share DSP code snippets. Take a few minutes to rate and comment on snippets you can judge, or apply to become a contributor and upload your own examples. You can also learn about the contributor reward program and send feedback to help the community grow, says Stephane Boucher.


A Markov View of the Phase Vocoder Part 2

Christian YostChristian Yost January 8, 2019

This post builds a Markov-chain transition graph to guide phase vocoder time-frequency decisions, using spectral correlation data from a Bach violin sonata. It shows how FFT size and the time-stretch factor alpha change bin-to-bin correlations, proposes an inverse-square plus log-boundary probability model for transitions, and demonstrates practical limits and implementation choices with accompanying MATLAB code.


Simple but Effective Spectrum Averaging

Neil RobertsonNeil Robertson January 2, 20264 comments

In this article, I provide a Matlab function that performs exponential PSD averaging, using first-order infinite impulse response (IIR) filtering to continuously average the PSD bins. This approach works well for computing the spectrum of a long-duration signal over time, because the spectrum is constantly updated as new PSD’s are computed. Conveniently, the time constant of the PSD averaging is determined by the single adjustable parameter α. I also provide a Matlab function for conventional (unweighted) PSD averaging. Neither function requires any canned code other than the Fast Fourier Transform (FFT), although I do use the Matlab hann window function for convenience.


Almost 50,000 Members!

Stephane BoucherStephane Boucher November 26, 20091 comment

DSPRelated is about to hit a big milestone, and Stephane Boucher marks the moment with a playful giveaway announcement. The post jokes about a BMW prize for the 50,000th registered member, then reveals the real reward, a copy of Rick Lyons’ Understanding Digital Signal Processing. It is a lighthearted community update built around a membership milestone and a bit of fun.


Hello and Introduction

Parth VakilParth Vakil September 14, 20071 comment

Parth Vakil introduces a personal DSP journal built to capture techniques he has worked through and to share them with the community. He plans to focus on how methods behave in practice, with just enough math to point readers toward the right references. Digital receivers will be one of the first topics, along with occasional MATLAB functions and FPGA code.


DSPRelated faster than ever!

Stephane BoucherStephane Boucher March 2, 20094 comments

Stephane Boucher moved DSPRelated's static assets to Amazon CloudFront to shrink page load times worldwide. Images, JavaScript and CSS are now served from the nearest CloudFront edge server, reducing latency especially for readers in Europe and Asia. If you visit regularly, you should notice the speedup, and the author asks readers to report their load-time experience in the comments.