Components in Audio recognition - Part 1
This post introduces the core components of an audio recognition system, framed against how the human auditory system naturally familiarizes and retrieves tunes. Prabindh Sundareson outlines the three building blocks: an archive store, an analysis and fingerprinting engine that groups tracks, and a front-end that accepts queries and places samples into groups. He previews upcoming posts that will dig into implementations and tradeoffs.
TI goes the Open Source way!
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 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
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 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 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
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
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 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
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.
Premium Forum?
Stephane Boucher proposes a paid "premium" forum for DSPRelated that would redistribute membership fees to the community s top contributors via voting. The plan frames the $20/year fee as an incentive mechanism, not a revenue stream, with monthly payouts to the most appreciated posters. Boucher invites reader feedback to decide whether to implement the idea or pursue alternatives.
Polynomial calculations on an FIR filter engine, part 1
FIR filter blocks can be repurposed as fast polynomial evaluators, offering hardware acceleration for non-linear compensation, function approximation, and harmonic synthesis, but they require careful scaling and coefficient management. This article outlines when to use binomial or fitted polynomials, compares Horner's nested evaluation with the direct power-sum approach, and highlights precision and overflow pitfalls on fixed-point engines like the Cypress DFB.
New Discussion Group: DSP & FPGA
Stephane Boucher has launched a new discussion group for engineers implementing DSP functions on FPGAs. It is meant to become a focused place for sharing ideas, but he notes it may take a few weeks before enough members join for the discussion to really get going. If FPGA-based DSP is your thing, this is an open invitation to get involved early.
ICASSP 2011 conference lectures online (for free)
For the first time, the oral sessions of ICASSP 2011 were recorded and posted online for free, giving engineers worldwide easy access to the conference. The talks span speech and communication signal processing, plus eclectic topics like bio-inspired methods, where Prof. Sayed uses a distributed LMS model to reproduce group predator and prey behavior. Expect some theoretical material, but many presentations are practical and inspiring for DSP practitioners.
Multilayer Perceptrons and Event Classification with data from CODEC using Scilab and Weka
For my first blog, I thought I would introduce the reader to Scilab [1] and Weka [2]. In order to illustrate how they work, I will put together a script in Scilab that will sample using the microphone and CODEC on your PC and save the waveform as a CSV file.
Components in Audio recognition - Part 1
This post introduces the core components of an audio recognition system, framed against how the human auditory system naturally familiarizes and retrieves tunes. Prabindh Sundareson outlines the three building blocks: an archive store, an analysis and fingerprinting engine that groups tracks, and a front-end that accepts queries and places samples into groups. He previews upcoming posts that will dig into implementations and tradeoffs.
DSPRelated faster than ever!
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.
Knowledge Mine for Embedded Systems
A little-known interactive portal makes learning embedded systems surprisingly practical and visual. The site is organized into four main areas: embedded systems design, design lifecycle, design methods, and design tools. Each section uses clickable system block diagrams so you can jump from a block, for example a MAC unit, to a focused page with detailed explanations. It’s a handy, ready reference for DSP and embedded engineers.
Approximating the area of a chirp by fitting a polynomial
Once in a while we need to estimate the area of a dataset in which we are interested. This area could give us, for example, force (mass vs acceleration) or electric power (electric current vs charge).
Online DSP Classes: Why Such a High Dropout Rate?
Rick Lyons digs into a startling statistic: online DSP courses reported a 97% dropout rate. He argues the main culprits are math-heavy curricula that overwhelm beginners and rigid, non-self-paced schedules that demand sustained 8-10+ hours per week. Rick urges course creators to rethink pacing and mathematical depth to improve completion rates and student engagement.
Update To: A Wide-Notch Comb Filter
Rick Lyons extends his earlier wide-notch comb filter work with a set of practical alternatives, including a linear-phase 3-RRS version and a dual 2-RRS structure. The post lays out the block diagrams, z-domain transfer functions, and MATLAB coefficients needed to model each option, then compares their frequency responses against the original design. It is a compact update for engineers who want more flexibility in notch width and realization style.
We are famous!!
A quick bit of DSPRelated pride, the IEEE Signal Processing eNewsletter mentioned the site’s blog section in a roundup of social media resources for DSP. The post shares the moment the author heard the news and points readers to the original mention. It is short, but it captures a nice sign that the community is paying attention.
Deesspee #5
Peter Kootsookos's Deesspee #5 is a very short micro-post simply titled "Computers". It acts as a minimalist flag in the Deesspee series pointing readers toward the computing topic on DSPRelated; click through to view the original entry and any context or discussion. This compact post is useful if you track the author's brief topic markers or short-format updates.
Hello and Introduction
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.
See Ya', Rick
Rick Lyons wrote 88 blog posts and some 2,800 forum posts on DSPRelated, and the DSP book most of us learned from. He passed away last Wednesday. A few words about the most meticulous, and most generous, contributor this site has ever had.
Software Defined Radio at SAMOS
At SAMOS, the SDR track drew a strong academic crowd, with groups from UMich, Wisconsin-Madison, Linköping, IMEC, and others presenting their latest ideas. Praveen Raghavan also notes that IMEC finally made its SyncPro architecture public, a vector synchronization processor design. The post gives a quick snapshot of where software defined radio research was active, and which major industry names were noticeably absent.
ICASSP 2011 conference lectures online (for free)
For the first time, the oral sessions of ICASSP 2011 were recorded and posted online for free, giving engineers worldwide easy access to the conference. The talks span speech and communication signal processing, plus eclectic topics like bio-inspired methods, where Prof. Sayed uses a distributed LMS model to reproduce group predator and prey behavior. Expect some theoretical material, but many presentations are practical and inspiring for DSP practitioners.
A Markov View of the Phase Vocoder Part 1
The phase vocoder is reframed here as a Markov process, letting simple statistics reveal how sinusoidal energy migrates across frequency bins. The author shows how per-bin amplitude-difference correlations produce a data-driven transition picture, and provides MATLAB code and practical gating strategies to make those estimates robust. The results explain common phase-vocoder heuristics and point toward improved, structure-aware time-frequency processing.
Random GPGPU Musings
Shehrzad Qureshi argues that general-purpose GPU computing is poised to reshape engineering workloads, and contrasts Nvidia's CUDA ecosystem with ATI's Stream and OpenCL. He points out that GPU architectures and programming models are similar across vendors, but Nvidia's head start in sample code and developer community gives CUDA a practical advantage. Read for a concise industry perspective on choosing a GPGPU platform.
Components in Audio recognition - Part 1
This post introduces the core components of an audio recognition system, framed against how the human auditory system naturally familiarizes and retrieves tunes. Prabindh Sundareson outlines the three building blocks: an archive store, an analysis and fingerprinting engine that groups tracks, and a front-end that accepts queries and places samples into groups. He previews upcoming posts that will dig into implementations and tradeoffs.




















