[Asterisk-Users] Sangoma E1 board Experience

Steve Underwood steveu at coppice.org
Sun Dec 18 17:05:55 MST 2005


janvb at caselaboratories.com wrote:

>
>> Its not a limitation. Its an architectural design which is based on 
>> pulse code modulation (pcm) standards, which essentially says:
>> - 8,000 audio samples per second,
>> - each sample is an 8-bit value
>> - resulting in 64,000 bits/second (like g711 codec standard)
>>  
>>
> Thank you for your answer, but I don't think you read/understood my 
> question?
>
> The Zaptel driver uses a 8 byte buffer for buffering G.711 in each 
> direction. This has nothing to do with the sample rate, but how large 
> packets you can buffer the voice for to be transported through the PCI 
> interface. I get the impression that the Digium boards are limited to 
> 8 bytes (1 ms ) by reading the zaptel driver. But, I don't know this 
> cause I have no hardware manual that cover the PCI interface. I was 
> hoping that the Sangoma boards offered a more variable buffer size???
>
The current cards from Digium use bus mastering, so the amount of 
buffering on the board should not be a big issue, unless the PCI latency 
in really bad. The 1ms buffering is a driver issue, and was a design 
choice which made a lot of sense originally. It might make less sense now.

- 1ms ensured the latency between E1/T1 ports bridged in the drievr was 
low, and EC would not be an issue. The latest revision of the 4 port 
E1/T1 cards from Digium now have on board bridging, so this is less of 
an issue. It still matters when bridging between cards, though.

- 1ms ensured good EC convergence, using software EC. Adding delay 
really degrades the performance of an EC adaption loop. It may be a 
block size of 2 or 3 ms might have been a better compromise between 
adaption performance, and the necessary response time of the software. 
However, making the block size considerably bigger - say ta 20ms block, 
which is what * generally works with in its core - would significantly 
degrade EC adaption.  Now there are cards with hardware EC, for which 
20ms blocks seems to make a lot of sense. However, right now they still 
all work in the same 1ms block manner.

Regards,
Steve




More information about the asterisk-users mailing list