FX3: Why does 32-bit Slave Fifo conflict with SPI?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi there,

The CYUSB301x manual (001-52136 Rev. *N), states: "When GPIF II is configured for the 32-bit data bus width, GPIO[50]-GPIO[52] may be configured as GPIOs or I2S, and GPIO[53] to GPIO[56] may be configured as
GPIOs or UART interface only."

Could someone elaborate on exactly why the SPI peripheral becomes unavailable when using a 32-bit GPIF II bus?  I see no physical pin conflicts; GPIO[53] - GPIO [56] certainly don't overlap the GPIF II data or control signals, as far as I can tell.

I assume there must be some internal signal muxing/routing conflict, or other internal resource contention? If so, could someone share some details on this? 

Thank you,

Jon

0 Likes
1 Solution

SPI can be used for Booting purpose, even you configure the GPIF II with 32-bit in the firmware.

Booting process explained here

When ROM Bootloader samples the PMODE lines (0Z1) and it comes to know that it has to boot from the SPI Flash.

Therefore, it boots the Firmware to System RAM.

Once the firmware image has been completely transferred, the FX3 bootloader automatically jumps to the

entry point of the newly downloaded firmware and starts executing.

Then, all the blocks will be configured as per the FIRMWARE Loaded from SPI.

Once it is configured, GPIF II with 32-bit data bus, SPI Block will not be available for any SPI Communication.

View solution in original post

0 Likes
2 Replies
Anonymous
Not applicable

I would like to know the answer to that as well.  I did see elsewhere in the forum that you can implement SPI in software using GPIO. I would like to know why the SPI function and 32-bit FIFO conflict.

   

 

   

Doug

0 Likes

SPI can be used for Booting purpose, even you configure the GPIF II with 32-bit in the firmware.

Booting process explained here

When ROM Bootloader samples the PMODE lines (0Z1) and it comes to know that it has to boot from the SPI Flash.

Therefore, it boots the Firmware to System RAM.

Once the firmware image has been completely transferred, the FX3 bootloader automatically jumps to the

entry point of the newly downloaded firmware and starts executing.

Then, all the blocks will be configured as per the FIRMWARE Loaded from SPI.

Once it is configured, GPIF II with 32-bit data bus, SPI Block will not be available for any SPI Communication.

0 Likes