|Type of Data Transfer||Type of FIFO||Considerations|
|Between Clock-Driven Loops||Local FIFO||
You can access local FIFOs created through a resource collection (.grsc) across multiple documents in your project. To share the documents that reference that FIFO with another user, you must send the resource collection and documents.
To create individual FPGA VIs within a single document that you can send to other users, use the Create FIFO node to create a local FIFO within the VI.
|Between the host processor and the FPGA||Direct Memory Access (DMA) FIFO||Use DMA FIFOs to stream data between a host processor and the FPGA. A DMA FIFO allocates memory on both the host computer and the FPGA target yet acts as a single FIFO to take advantage of the resources of each device.|
|Between two FPGA targets or between an FPGA and non-FPGA target||Peer-to-Peer FIFO||
Peer-to-peer FIFOs write data to a peer-to-peer writer FIFO on one target and read data from a peer-to-peer reader on another
To define peer-to-peer FIFOs, use a resource collection. The writer and reader FIFOs are paired in the host VI but the actual data transfer happens directly from one target to another.