[Asterisk-Users] Re: Fax to Email

Rich Adamson radamson at routers.com
Thu Apr 14 07:45:13 MST 2005


> I've had a question related to this: what's the deal with frame 
> slippage on the Digium TDM analog cards?  What would cause this?  How 
> can one correct for this?  I've recently seen a bad buzz every 6 
> seconds or so, heard by callers when calls are bridged with my TDM card 
> analog phones.
> 
> Any information you know of online about this?
> 
> Thanks in advance for any help you can give!

Don't know about the buzz every 6 seconds, but I assume you mean mean
"missed frames" as opposed to frame slippage. Right?

The missed frames issue seems to be related to two possible items:
1. other devices on the pci bus not relinquishing the bus in time
for the TDM to move data across the bus.
2. pci bus design issues with certain motherboards

There have been many postings related to item #1. One recent posting
related to IDE disk usage and its impact on the pci bus.

There were also many postings relative to motherboard issues over
the last twelve months. Some found that swapping a 3 ghz motherboard
for an older/slower P3 motherboard fixed their problem. (That really
implies a different pci bus design; had nothing to do with P3 vs P4,
processor speed, memory, etc.

The TDM card wants to move data across the pci bus at the rate of
1,000 interrupts per second. Essentially, there is no buffering on
the TDM card, therefore if "one" interrupt can't be handled before
the next frame of pcm data on the TDM card is ready, the frame is
lost/missed. One or two of those per second will probably not be
noticed, however as the number of missed frames increase, so do the
chances those missed frames will impact the audio quality. If the
number of missed frames is rather large, the resulting audio might
suffer from clicks, no audio, buzz, etc.

Digium tech support suggests running /usr/src/zaptel/zttest to
get a perspective of how well the interrupt structure is operating.
They have suggested that values around 99.975% and below represent
an inadequate interrupt structure that will impact audio.

I'm not having any audio problems at all with results like:
 Best: 99.975586 -- Worst: 99.975586 -- Average: 99.975586

However, I cannot use Steve Underwood's spandsp reliably, and that
is very likely because of missed frames (missed interrupts). I'll
be swapping motherboards to verify/validate that for sure.

Attempts to use a modem through the TDM card with missed frames
is a serious problem even though missed frames may not have any
noticable impact on audio. 

I'm not sure I trust Digium's represetation that 99.975% is a bad
number. Multiplying 1,000 interrupts per second by .99975 results
in 999.75 valid interrupts. Looks like a rounding or floating
point issue in zttest to me. A single missed interrupt would be
99.9000%, well below where Digium indicates the threashold to be.

If I run "zttest -v", I see:
 8192 samples in 8190 sample intervals 99.975586% 
which implies two additional samples were received over and above
those that were sent. That certainly suggests a different issue
then missed frames, interrupt problem, or pci bus issue. Guess 
I'll need to run debug against that just to better understand what 
this is supposed to be measuring.

Hopefully this rambling sheads a little lite on the subject.





More information about the asterisk-users mailing list