Re: Direct card to card transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Nov 29, 2010 at 08:59:00PM -0700, Matthew Wilcox wrote:
> > Wouldn't the pxi -> bus extender -> pci -> bridge -> PCIe path involve
> > more latency than the pxi -> bus extender -> PCIe path?
> 
> Ah, I didn't realise what a PXI card was ... here's how I understand
> the two options you have:
> 
> root complex --> PCIe extender --> PXI card
> root complex --> PCIe-PCI bridge --> PCI extender --> PXI card
> 
> There's a PCIe-PCI bridge involved in both cases, but there's one fewer
> bus segment involved if you're using the PCIe extender card.

Could he use a PCIe bridge to have multiple PCIe devices downstream from root complex?
e.g. like a PLX bridge?

> > > The latency will all be in the setup.  You only want to transfer 180
> > > bytes, and even the 33MHz, 32bit PCI bus can transfer that much data
> > > in under two microseconds.
> > 
> > Yes, that's what I expected. But what is a reasonable time for the
> > setup? 
> 
> Hard to say; you need to figure out how the capture card is going to
> notify the processing card that there's new data to be processed.

Yeah, look at how common PCIe devices are programmed to do DMA
to the host using either descriptor rings or scatter-gather lists.
Then think about how the payload data will be generated and moved
to the PCIe peer. It's not that different. Setup will be slightly
different but the same basic principals apply.

My guess is you'll need to DMA some control data as well to notify
the peer that data has been transferred. Willy suggested this as well.
At some point, the host will need to be involved again...but depending
on the data rate and buffer sizes probably not that frequently.

cheers,
grant
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux