Paul

Thanks for your reply and the education. My main reason behind asking
this question is that I am using the RME PST card presently to do
CPU controlled transfer of data to the memory mapped buffers in those
cards. I am interested in using the CPU to do the transfer since
I have heard that DMA or busmastering produces many millisecond latency
in sound data playback. Such latency would be unacceptable in my app.
BTW I am using RTAI to schedule tasks.

I see in the ESS docs that many (maybe all) of their chipsets do
something similar to the RME PST card except that the ESS does
not use mapped-memory buffers. Instead it appears the use a single
FIFO which generates interrupts as the data in the FIFO moves past
the half-full (half empty :-) mark). These fifos are much smaller
than the RME buffers if I recall correctly. The ESS docs refer to
this as "ping-pong" transfer of sound data. I naive have called
both the RME and ESS "ping-pong" methods double-buffering. My error.

So I guess I should say that I am looking for cards that can use
the ping-pong method in addition to the RME and ESS chipsets.

Where does the DMA latency arise?

Thanks again,
Daniel Sheltraw




>From: Paul Davis <[EMAIL PROTECTED]>
>To: "daniel sheltraw" <[EMAIL PROTECTED]>
>CC: [EMAIL PROTECTED], [EMAIL PROTECTED]
>Subject: Re: AW: [Alsa-devel] general audio card Q Date: Tue, 30 Jul 2002 
>19:25:50 -0400
>
> >>i'm not exactly shure, what is double-buffers... the turtle beach
> >>pinnacle/fiji has shared memory, that can be accessed
> >>simultanously from the pc & the sound card.
> >
> >Some cards/chipsets (RME PST, ESS solo1) allow one to transfer
> >data for playback (record is similar) using a memory-mapped 
>double-buffer.
> >When buffer 1 has emptied its data to the DAC an
> >interrupt is issued. An ISR then fills buffer 1 with more
> >sound data while the buffer 2 continues to send its data to
> >the DAC for playback. When buffer 2 is emptied it causes an
> >interrupt and an ISR can fill it again. This goes on and on
> >until all data is played back.
>
>this has nothing to do with DMA or not. what you're describing in ALSA
>terms is a configuration with 2 periods per buffer. nothing more
>less. just about all ALSA support hardware allows for this
>configuration; a few don't allow anything else.
>
>the question as i read it was about cards that cannot do DMA. no
>matter how many periods, buffers or whatever, they rely on the host
>CPU to move data into memory on their hardware. such cards are rare,
>and getting rarer. see rui's recent post for a description of how
>cards that do use DMA use it.
>
> >In this method the transfer of the data from memory to the
> >memory-mapped buffers is performed by the CPU. This is in
> >contrast to DMA transfer of data where the busmaster on the
> >sound card controls transfer of data from memory to card.
>
>No, this has nothing to do with "double buffering". "double buffering"
>is a description of a particular configuration, not a mechanism. it
>can be accomplished in various ways.
>
> >So far I only know of the two cards mentioned above but there
> >must be others that allow data tranfser in this manner. I would
> >like to know which cards have the capablity to do this whether
> >or not ALSA supports this method yet in their drivers.
>
>cards that do not use DMA should generally be considered inferior
>because of the extra CPU cycles they force on the host system.
>
>ALSA neither supports nor not-supports this in the drivers. Its an
>implementation detail for the low-level (h/w specific) driver code;
>the mid-level code knows nothing about it.
>
>--p
>
>
>-------------------------------------------------------
>This sf.net email is sponsored by: Dice - The leading online job board
>for high-tech professionals. Search and apply for tech jobs today!
>http://seeker.dice.com/seeker.epl?rel_code=31
>_______________________________________________
>Alsa-devel mailing list
>[EMAIL PROTECTED]
>https://lists.sourceforge.net/lists/listinfo/alsa-devel




_________________________________________________________________
Chat with friends online, try MSN Messenger: http://messenger.msn.com



-------------------------------------------------------
This sf.net email is sponsored by: Dice - The leading online job board
for high-tech professionals. Search and apply for tech jobs today!
http://seeker.dice.com/seeker.epl?rel_code=31
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to