The situation is as follows. I am generating a white noise voltage signal with a certain power spectral density amplitude of choice, from 0 to some cutoff frequency, for example 200 MHz. This proceeds as follows: first I make my white noise in Mathematica. I use a technique in which I convolve unit white noise (with variance = 1) with a self made FIR filter based on the amplitudes I want the real noise to have. This gives me a time trace, which corresponds to the desired spectrum very well after analysing it with periodograms. I then load the time trace into an arbitrary waveform generator (AWG). The AWG then produces the pattern, and I look at it through a spectrum analyzer. This helps me verify if the noise is as desired.
Now, there are a number of difficulties in this of course, but the main one turns out to be the finite sampling rate of the AWG. The one I use produces signals at 1.2GSamples, and thus cannot be expected to produce signals at over 600 MHz (the Nyquist frequency). However, a priori this is not a big deal; my cutoff is at 200 MHz anyway. But in practice, the AWG doesn't just produce perfect noise up to 600 MHz. When producing white noise there is a downward trend in the spectral density for increasing frequencies, which is undesired.
My question, is how I can postprocess my data knowing the downward trend in the spectral density to make it more flat. Of course 100% flatness will never be achieved, but I am sure that one could somehow mitigate the decline in some way, getting it better than what it is right now. I have to my disposal a theoretical spectrum that I want, a digital time domain trace that would produce this spectrum if perfectly executed, and the analyzed spectrum realized by the AWG. Is there some way I can combine this information to achieve my goal?
To clarify what I mean, below is a plot of the measured PSD, overplotted with the PSD that was to be produced. The part after the cutoff is simply the noise floor of the spectrum analyzer, which is not a problem.
Note that the low frequency point that deviates can be ignored, this is due to the spectrum analyzer.