You are here

How to reset a slave fifo with fx3 | Cypress Semiconductor

How to reset a slave fifo with fx3

Summary: 2 Replies, Latest post by MioKiseki on 15 Nov 2013 09:38 PM PST
Verified Answers: 0
Last post
Log in to post new comments.
MioKiseki's picture
6 posts

 Is there somebody who can give me some advice about how to reset a slave fifo with fx3?

Mudabir Kabir's picture
Cypress Employee
44 posts


 Here are some APIs that can be used to control the Slave FIFO state machine. You can either pause the state machine or stop and start it from reset.

1) CyU3PGpifSMControl() API can be used to pause or resume state machine operation.( Can be used when Slave FIFO state machine is to be suspended and resumed later)

2)CyU3PGpifDisable() API: stops the state machine and disables the hardware. You can restart the state machine using CyU3PGpifSMStart() API.

If the active GPIF configuration is to be changed, the CyU3PGpifDisable() API can be used with the forceReload parameter set to CyTrue. The CyU3PGpifLoad() API can then be used to load a fresh configuration before restarting the state machine.

3) However, if you want to change the clock configuration, you need to disable and power off P-port interface block using CyU3PPibDeInit() API and load new clock configuration with CyU3PPibInit() which also powers up the PIB block.

It is recommended to disable GPIF state machine ( CyU3pGpifDisable() ) and destroy DMA channel (CyU3PDmaChannelDestroy()) before calling CyU3PPibDeInit()


Please refer to FX3 API guide provided with the SDK for more details about these APIs.

Following App Note may be useful to understand how to design with FX3 slave FIFO interface.

If this doesnt answer your question, please elaborate with details so that we can address it.


Mudabir Kabir





MioKiseki's picture
6 posts

 Thank you so much for replying my question

Log in to post new comments.