I have read the document"Designing with the EZ-USB® FX3 Slave FIFO Interface".
It writes"Flags may be configured by EZ-USB FX3 firmware as empty, full, partially empty, or partially full signals. These are not
controlled by GPIF II states, but, rather, by the DMA hardware engine internal to FX3."
But in the fireware's API,I can't find any apis to config that.
Could you tell me how to config that?thank you.
You can configure the flags of slave FX3 to indicate one of the following:
Current_thread_DMA_ready usage is as follows:
Let say FPGA is writing data to FX3. Then it will select the socket/thread by driving address on address lines. Then this Current_thread_DMA_ready indicates the status of the slected socket. Here FPGA is writing data into a producer socket. So this flag indicates whether the socket is free to accept data or not.
In case if FPGA wants to read data from FX3 then the same flag indicates the readyness of the active socket. Here in this case a Consumer socket. So it will be asserted if consumer socket has some data in it.
Thread_0_DMA_ready/Thread_1_DMA_ready/Thread_2_DMA_ready/Thread_3_DMA_ready - these are dedicated flags for the corresponding sockets/threads irrespective of the address lines.
All watermark flags can be set by using the API - CyU3PGpifSocketConfigure.