[linux-dvb] High error rates when running Athcool
vdr at pickles.me.uk
Sat Feb 4 16:01:18 CET 2006
I have a Hauppauge DVB-T PCI card (original with L64781 decoder) in a
machine running Mandriva 2006 (kernel 2.6.12-14) and using the stock
kernel drivers. The CPU is an Athlon XP-M 2500+.
To keep the power consumption of the machine down I use 'Athcool'. This
utility tweaks registers on the Northbridge chip so that when the CPU is
idle it goes into a 'deep sleep' mode where is uses very little power. The
downside is that it takes much longer for the processor to resume, so
interrupt latency is greatly increased, though I have never before seen
any problem in use.
I get fairly poor reception of UK Freeview on the system, and an aerial
upgrade hasn't improved it much. I've just realised that Athcool may be to
blame. This is the output of 'dvbtune -m' on C5 with Athcool running:
Signal=14135, Verror=11891, SNR=40349dB, BlockErrors=99, (S|L|C|V|SY|)
Signal=14135, Verror=13445, SNR=39578dB, BlockErrors=191, (S|L|C|V|SY|)
Signal=14135, Verror=12998, SNR=42662dB, BlockErrors=188, (S|L|C|V|SY|)
And this is with it off:
Signal=14135, Verror=1497, SNR=51143dB, BlockErrors=0, (S|L|C|V|SY|)
Signal=14135, Verror=1385, SNR=50115dB, BlockErrors=0, (S|L|C|V|SY|)
Signal=14135, Verror=1366, SNR=51143dB, BlockErrors=0, (S|L|C|V|SY|)
Tinkering with PCI parameters has no effect.
Although I can imagine that high interrupt latency could corrupt the output
from the card, I don't see how the SNR and Viterbi error rates can be
affected, since AIUI decoding is done by the L64781 chip not the drivers.
I'm wondering whether the problem is caused by power supply noise. Putting
the processor to sleep between interrupts means that there is a much
greater variation in power supply current than normal, and maybe the
card's electronics don't have enough filtering. Interestingly the problem
is most evident on the QAM64 channels, where noise around the A/D could
have more effect.
Before I delve into the electronics, is there any way in which the
operation of the driver could be affected by interrupt latency such as to
cause the effect I'm seeing?
More information about the linux-dvb