2 Replies Latest reply on May 31, 2016 12:38 PM by userc_40086

    Highest throughput possible with two video streams

      I'd like to know what kind of throughput the FX3 is capable of when transferring two UVC video streams simultaneously over USB3, assuming no limitations imposed by the host computer.  In this forum I've seen where people have said they've been able to transfer up to two concurrent 1080p20 streams successfully, maybe even at p30 with a fast PC.  That would be about two 1Gbps streams.  What I'm wondering is if the FX3 can do an aggregate of 3Gbps divided over two streams, say one at 1Gbps and one at 2Gbps.  This approaches the maximum GPIF-II bandwidth of 3.2Gbps.


      Does adding additional endpoint(s) in the FX3 that require much lower bandwidth of data, say an additional 5Mbps, change things significantly?


      The data would be coming from an FPGA so throughput and switching between the sources would not be a limitation.


      Is 3Gbps sustained throughput reasonably possible.  Is there enough buffer space, DMA bandwidth, etc. to do this?  Has anyone actually done it?





        • 1. Re: Highest throughput possible with two video streams



          Yes, this should be able to consume the full 3.2 Gbps bandwidth of GPIF without any issue, provided the number of sockets on GPIF does not exceed 4.




          - Madhu Sudhan

          • 2. Re: Highest throughput possible with two video streams

            I'm not sure what you mean about 'number sockets on GPIF does not exceed 4'.  In the example
            I have, they use 4 sockets just for one 640x480 stream so that they can implement a circular
            buffer.  The 4 sockets are (I think) muxed down to a single USB endpoint (DMA type=Many to 1), and the
            ARM is doing a bit of work on each packet to adjust the header of each packet.  The app note
            talks about doing it this way to reduce the time it takes to switch buffers when one fills up.

            Also, I'm not sure how to implement a dual UVC device.  Are there any examples of this?