23-07-2016, 06:59 PM
I've been going on about sin(x)/x correction forgetting that some of you won't have any idea of what this is about. The theory is quite heavy on maths and is explained pretty well in this application note: https://www.maximintegrated.com/en/app-n...vp/id/3853
In practice it means that the frequency response of any DAC inherently falls off as the frequency rises. What matters is the ratio of the highest output frequency of interest to the sampling clock. The higher this ratio the less correction you need. For a 5.5MHz bandwidth video signal and 54MHz sampling (I use this in some of my professional designs) the correction is only 0.1dB or so. For this project I want colour subcarrier of 4.43MHz to come out right with a clock of 25MHz. It works out at a little over 0.4dB.
The classic method of doing sin(x)/x correction was in the analogue filter (reconstruction filter) that follows the DAC. In the video world these were available with the necessary correction. And a hefty price tag. With oversampling, such as the 54MHz mentioned above, the analogue filter is much simplified and the small correction can also be done easily enough in analogue. It's also easier to do it in digits before the DAC. A simple high pass transversal filter is needed. In my 54MHz example it was a 3 tap filter which was trivial in the FPGA I was using. It's not trivial in the CPLD of this project.
So I'm looking for a quick and dirty solution. I don't need nice flat frequency response, just equal gain at 4.43MHz and DC. So I'll just increase the chroma amplitude as necessary by tweaking the gain numbers for each colour bar. Need to watch out that the maximum ampltude of luminance + chrominance doesn't go over 255 and wrap around to zero. That would look very ugly. I just need to take care and possibly tweak the amount of signal I give to each LSB. At the moment it's 4mV, may have to raise it by a few percent.
sin(x)/x correction matters for all DACs where the fequency response is important. For audio the DACs are usually so heavily oversampled that the correction is truly negligible and can be ignored.
One further point is that the correction needs to be linear phase (or constant group delay to express it another way). The drop in frequency response is unlike a normal simple low pass filter where the phase varies with frequency. Hence the correction should also be linear phase, such as a transversal filter.
In practice it means that the frequency response of any DAC inherently falls off as the frequency rises. What matters is the ratio of the highest output frequency of interest to the sampling clock. The higher this ratio the less correction you need. For a 5.5MHz bandwidth video signal and 54MHz sampling (I use this in some of my professional designs) the correction is only 0.1dB or so. For this project I want colour subcarrier of 4.43MHz to come out right with a clock of 25MHz. It works out at a little over 0.4dB.
The classic method of doing sin(x)/x correction was in the analogue filter (reconstruction filter) that follows the DAC. In the video world these were available with the necessary correction. And a hefty price tag. With oversampling, such as the 54MHz mentioned above, the analogue filter is much simplified and the small correction can also be done easily enough in analogue. It's also easier to do it in digits before the DAC. A simple high pass transversal filter is needed. In my 54MHz example it was a 3 tap filter which was trivial in the FPGA I was using. It's not trivial in the CPLD of this project.
So I'm looking for a quick and dirty solution. I don't need nice flat frequency response, just equal gain at 4.43MHz and DC. So I'll just increase the chroma amplitude as necessary by tweaking the gain numbers for each colour bar. Need to watch out that the maximum ampltude of luminance + chrominance doesn't go over 255 and wrap around to zero. That would look very ugly. I just need to take care and possibly tweak the amount of signal I give to each LSB. At the moment it's 4mV, may have to raise it by a few percent.
sin(x)/x correction matters for all DACs where the fequency response is important. For audio the DACs are usually so heavily oversampled that the correction is truly negligible and can be ignored.
One further point is that the correction needs to be linear phase (or constant group delay to express it another way). The drop in frequency response is unlike a normal simple low pass filter where the phase varies with frequency. Hence the correction should also be linear phase, such as a transversal filter.
www.borinsky.co.uk Jeffrey Borinsky www.becg.tv








