cancel
Showing results for 
Search instead for 
Did you mean: 

USB Superspeed Peripherals

maVa_1182686
New Contributor

Hi,

I'm trying to make the FX3 in the field programmable without having the need for the user to control jumpers.

The obvious thing that pops up in my head (having thought about it only very briefly) is controlling the PMOD signals with my FPGA.

The FX3 in my circuit is connected to a spartan 7 xilinx.

This seem doable but might introduce startup timing issues etc...

If I'm not mistaken...you CAN give a reset commando in the FX3s firmware that takes it through the bootloader again.

Surely, there must be an easy and cheap method i'm not thinking of right now to also set the PMODs from software?

Thanks!

0 Likes
1 Solution
YatheeshD_36
Moderator
Moderator

Hello,

For controlling the PMODE pins:

The FPGA can be used to control the PMODE pins. If an High Impedance (Z) is required on any PMODE pin,  the corresponding FPGA pin which is attached to it can be configured as input on FPGA. Similar for high and low. Please note that the FPGA should be configured before the FX3/FX3S starts booting.

Hard Reset:

You can use the cold reset method, here the firmware will start from the bootloader and samples the PMODE lines, then loads the firmware from the selected boot source.

Please refer to this KBA on how to perform a cold reset: Cold Reset in FX3 - KBA225773

SPI flash write:

Yes, the SPI flash can written from the firmware. Please refer to the UsbSpiDmaMode example from the FX3 SDK.

You can refer to the ReadMe document in the project.

path: <installation directory>\Cypress\EZ-USB FX3 SDK\1.3\firmware\serialif_examples\cyfxusbspidmamode

Best Regards,

Yatheesh

View solution in original post

0 Likes
2 Replies
maVa_1182686
New Contributor

My pmods are now

0 Z 1 SPI; on failure, USB Boot is enabled

I assume it is possible to write to SPI flash from firmware.

If i succeed in breaking the firmware on spi flash, my boot will fail after a reset, triggering the USB boot and enabling me from writing a new firmware into the flash.

Is this possible?

If so, it makes it easy for me as I don't even have to dabble with the PMODs, they can just stay the way they are!

Is there an obvious reason why i should NOT do it like this?

0 Likes
YatheeshD_36
Moderator
Moderator

Hello,

For controlling the PMODE pins:

The FPGA can be used to control the PMODE pins. If an High Impedance (Z) is required on any PMODE pin,  the corresponding FPGA pin which is attached to it can be configured as input on FPGA. Similar for high and low. Please note that the FPGA should be configured before the FX3/FX3S starts booting.

Hard Reset:

You can use the cold reset method, here the firmware will start from the bootloader and samples the PMODE lines, then loads the firmware from the selected boot source.

Please refer to this KBA on how to perform a cold reset: Cold Reset in FX3 - KBA225773

SPI flash write:

Yes, the SPI flash can written from the firmware. Please refer to the UsbSpiDmaMode example from the FX3 SDK.

You can refer to the ReadMe document in the project.

path: <installation directory>\Cypress\EZ-USB FX3 SDK\1.3\firmware\serialif_examples\cyfxusbspidmamode

Best Regards,

Yatheesh

View solution in original post

0 Likes