Using stopwatch with feedback loop to create periodic test signal by BrettG
I was given the task today of using SigmaStudio to generate a very specific multichannel test signal that would loop endlessly. I was able to implement the signal generator by manually creating a sine tone lookup table and a stopwatch, along with some logic and delays. This project might be helpful to other users, so I am posting it here, along with screenshots of the results.
The signal is generated by the ADAU1442 and is sent out to a class D amplifier for testing.
The goal was to generate exactly 8 cycles of a 1 kHz test tone on 4 channels, in succession, and then to repeat the process endlessly. At a 48 kHz sample rate, 1 cycle of 1 kHz takes 48 samples, so 8 cycles takes 384 samples. With 4 channels, that brings the overall length of the multichannel test signal to 1536 samples.
In my approach, I generate one copy of the signal and then send it through a delay tree to generate the 3 delayed copies.
The stopwatch resets itself every 1536 samples, allowing the signal to repeat ad infinitum.
Here is the resulting output: