Hi,

On 10/15/2014 11:34 PM, Slichter, Daniel H. wrote:
> I agree with Robert that DMA would be the most sensible next step
> here, rather than trying other tweaks.  I don't really know how
> difficult this would be to implement, though. 

Implementing DMA in the SoC is not necessarily very difficult depending
on how it is to be done. Most of the issues revolve around having a
consistent software/user interface for DMA RTIO and for non-DMA RTIO. We
also need to keep in mind that other devices may need to be controlled
in the middle of a series of RTIO pulses (e.g. the DDS data bus).

If we go the DMA route, maybe a good option is to have DRAM backing of
the RTIO FIFOs that is implemented all in gateware and is fully
transparent for the software. Then we can have FIFOs with hundreds of
megabytes of storage (note that loading/unloading them will take some
time). But this is not straightforward to do, and wasting the abundance
of resources that the K7 FPGA has on large on-chip FIFO memories is much
easier.

> It would be a handy
> feature if one wanted to stream pre-programmed data to a high speed
> DAC, for example, or record data points from a high speed ADC --
> useful if one is interested in implementing the kind of extensible
> hardware Joe has championed.

Yes; that DMA-capable DAC/ADC would be another device from the software
point of view (if not another physical device).

> Right now, the
> longest patterns are limited by the depth of the FIFO queue for each
> RTIO (real-time input/output) channel, which is 64 entries deep per
> channel (Sebastien, can this be made deeper on the KC705?).

Yes.

> I think it's safe to say that we might want timestamps as well as
> counts, so would it be possible to make one or two input channels
> with very deep FIFOs, and the rest with standard ones?

Yes.

Sébastien
_______________________________________________
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq

Reply via email to