[Asterisk-Users] How many TDM22P Card can be used on thesame PC ?

Rich Adamson radamson at routers.com
Fri Aug 19 06:33:50 MST 2005


> >Actually they have.  Interrupt sharing for one.  Interrupt overhead for
> >another. Drivers which are optimized for minimum latency instead of a balance
> >between latency and ability to share interrupts and overhead for a third.
> >-A.
> 
> Can you explain a little bit more? I thought they don't share interrupts.
> 
> Each TDM400P card writes and reads 4bytes to RAM through DMA in
> every 125usec. And they generate an interrupt for every 32bytes,that is 1ms.
> 
> So my suspect for not to use multiple TDM400P card would be that:
> 
> Is there any data lost on DMA, especially when CPU enters the interrupt_routine?

I'll jump into this dialog "one time".

There seems to be two outstanding issues (maybe more) with the TDM card.
 - each card requires 1k interrupts per sec. the reliability of servicing
   multiple cards without delay is highly dependent on the motherboard
   and other activities within the OS. Sharing interrupts between any
   two (or more) devices is oftentimes a problem. Most motherboards do
   not allow an interrupt "per slot", therefore you end up with a limitation
   of around two or three TDM cards per motherboard. (Two will work with
   some motherboards, but three TDM cards is pushing the motherboard
   interrupt structure.)
 - the transfer of data from the TDM card to the OS happens across the
   PCI bus, and the PCI bus latency is very very inconsistent from one
   motherboard to another. The TDM's interaction with the PCI bus is
   questionable at best, and some folks tend to point to the TigerJet
   320 a problematic pci chip. (I don't know of anyone that has actually
   proven that however.)

The motherboard PCI bus issues are well known by those involved with 
handling audio (as in music editing), and those individuals tend to 
point out lots of issues with the North and South PCI bridge chips 
used on motherboards (regardless of manufacturer).

If you dig through the archives you'll find comments suggesting one of
the older Apple motherboards does in fact support an interrupt per pci
slot. Doubtful that's the only difference and highly likely the Apple
motherboard uses a very different pci slot design (in addition to a
different interrupt design even though the phyical appearence might
be the same.)

Since a number of well known PC manufacturers purchase motherboards for
their systems from various suppliers, it almost imppossible to create
a list of what works and what doesn't. Its also a known fact that some
manufacturers will use two or more different motherboards in a specific
PC model run, making it even more difficult to identify which systems
work, etc.

If you'd like to write a utility program that would quantify those
issues and make that utility available for others to use, lots of
asterisk folks would be very very happy.





More information about the asterisk-users mailing list