← Latest papers
⚡ electrical engineering

A Digital Twin of the FPGA Digital Signal Processing Chain for MKIDs Readout: Root-Cause Analysis and Mitigation of Spurs

To resolve unexplained spurs in the FPGA-based MKID readout for the CONCERTO instrument, the authors developed a Python-based digital twin of the DSP chain to identify root causes related to periodicity mismatches and filter limitations, leading to a mitigation strategy that effectively eliminates the interference with minimal resource overhead.

Original authors: Mounir Abdkrimi, Olivier Rossetto, Olivier Bourrion, Christophe Vescovi, Christophe Hoarau

Published 2026-08-07
📖 6 min read🧠 Deep dive

Original authors: Mounir Abdkrimi, Olivier Rossetto, Olivier Bourrion, Christophe Vescovi, Christophe Hoarau

Original paper licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine the universe whispering its secrets in the language of light, but not the visible kind we see with our eyes. Instead, it speaks in millimeter waves, a hidden radio frequency that carries stories about how stars are born and how galaxies evolve. To listen to these whispers, scientists use super-sensitive detectors called Microwave Kinetic Inductance Detectors (MKIDs). Think of these detectors as thousands of tiny, super-cooled tuning forks. When a single photon of light hits one, it changes the fork's pitch ever so slightly. By listening to the pitch of thousands of these forks at once, astronomers can create a map of the cosmos.

However, listening to thousands of tuning forks simultaneously is like trying to hear a single violin in a stadium full of cheering fans. To make this possible, engineers use a clever trick called "frequency multiplexing." They assign a unique radio tone to each tuning fork and send them all down a single wire. The challenge is that the electronics used to generate these tones and listen for the changes are incredibly complex, involving digital signal processing that happens at lightning speed. If the digital system has even a tiny glitch, it can create fake "ghost" signals that look like real cosmic events but are actually just noise. This is the problem the researchers in this paper set out to solve: they needed to find out why their listening equipment was hearing ghosts, and how to silence them.


The Ghost in the Machine

The team, working on the CONCERTO instrument which sits atop a telescope in the high Andes, noticed something strange. When they looked at the data coming from their 400 MKID detectors, they saw sharp, annoying spikes in the noise—like static on a radio station. These spikes appeared at specific frequencies (763 Hz and 1526 Hz) and were messing up their ability to see the faint signals from space. The problem was that no one knew where these "spurs" were coming from. They weren't coming from the telescope, the cold detectors, or the cables. They were hiding inside the computer code itself.

To hunt down these digital ghosts, the researchers built a "Digital Twin." Imagine if you could build a perfect, virtual copy of a car engine inside a computer, down to the last bolt and spark, and run it a million times faster than real life. That is what they did with their FPGA (a specialized computer chip) that processes the MKID signals. Instead of waiting days to run a simulation on the actual hardware, they created a Python-based model that mimicked the chip's behavior exactly, bit-for-bit and cycle-for-cycle. This virtual twin allowed them to run thousands of experiments in just an hour, something that would have taken days on the real machine.

The Detective Work

Using their digital twin, the team ran the system in a "loop-back" mode. This means they took the signal they generated, sent it through the entire digital processing chain, and fed it right back into the input, just to see what the machine did to its own voice. When they did this, the virtual twin perfectly reproduced the ghostly spikes at 763 Hz and 1526 Hz that they had seen in the real telescope data. This was a huge clue: it proved the problem was entirely inside the digital logic, not the physical world.

The investigation revealed two main culprits working together to create the noise:

  1. The Mismatched Rhythm: The system has two main parts: the "Excitation" chain (which creates the tones) and the "Analysis" chain (which listens for them). The Excitation chain creates tones using a digital counter that repeats every 65,536 steps (a standard number for 16-bit computers). However, when the signal was shifted and processed, a "Band-shifter" introduced a new rhythm based on the number 40. When you mix a rhythm of 65,536 with a rhythm of 40, the math gets messy. The combined signal ended up having a much longer, weirdly complex repeating pattern (specifically, a cycle of 5 times 2 to the power of 19 samples). This mismatch meant the signal wasn't "clean" anymore; it had a hidden, repeating wobble.
  2. The Leaky Filter: The second part of the problem was the "Digital Down-Converter" (DDC), which acts like a sieve to filter out unwanted frequencies. This sieve was designed to average out the signal over 65,536 samples. Because the signal's rhythm had become that weird, extended pattern mentioned above, the "ghost" frequencies didn't line up with the holes in the sieve. Instead of being blocked, these unwanted frequencies slipped right through the filter and folded back into the main signal, creating the annoying spikes.

The Fix: Tuning the Digital Engine

Once they understood the rhythm mismatch, the solution became clear. The team needed to make the Excitation chain and the Analysis chain dance to the same beat.

They proposed a simple but clever change:

  • Change the Counter: Instead of letting the digital counter wrap around at the standard 65,536, they forced it to wrap around at 65,520. Why this specific number? Because 65,520 is perfectly divisible by 40. This meant the rhythm of the tone generator and the rhythm of the band-shifter would finally sync up. The signal would now have a clean, predictable repeating pattern.
  • Resize the Sieve: They also adjusted the averaging filter in the DDC to look at 65,520 samples instead of 65,536. Now, the filter's "holes" lined up perfectly with the frequencies of the ghost signals, ensuring they would be blocked completely.

The Result

The team tested this new design on the actual FPGA chip. They set up a digital loop-back (bypassing the telescope for a moment) and compared the old firmware with the new one.

The results were dramatic. With the old firmware, the noise spectrum showed those two distinct, jagged spikes at 763 Hz and 1526 Hz. With the new firmware, those spikes vanished. The noise floor became perfectly flat and quiet, reaching a level of -240 dBc/Hz. The "ghosts" were exorcised.

The only cost for this victory was a tiny increase in the computer chip's memory usage—about 3.2% more of the chip's logic resources were used. Given that the chip still had plenty of room to spare, this was a very small price to pay for a crystal-clear view of the universe.

By building a digital twin, the researchers didn't just guess where the problem was; they proved it, fixed it, and verified it, ensuring that the CONCERTO instrument can now listen to the universe without the static of its own digital heartbeat.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →