The type of endpoint to be used depends on one's end requirement. Is guaranteed bandwidth a must for your design?
In my current model with the previous FX, I have the GPIF bus connected to a memory port where I can do single word accesses or large 51k or larger block addresses. I currently send out the address/data on a control transactioin which sets up the GPIF address DMA and the GPIF bus and I do a series of bulk transaction for the data.
When i look at the data sheet for the USB 3 device, Async transaction, the bus will send out an address and then data on the following strobes. How does the current FW setup the address portion of the transaction. For now lets assume that I am doing a large 512K USB Out transaction with multiple out packets.
A better description of what I am after. In the current FW example SDK which I have not looked at. If I want to send out a large amount of data to a specific address on the GPIF bus, does the FW expect two USB transactions. One control sequence to actually initialize the address portion of the GPIF bus and then bulk transaction which would DMA the data to/from the USB/DMA <-->GPIF bus?
I am not looking for BW analysis as there are two many variables that can interact with this. I am looking at specific USB seqeunces for the examples in the SDK.