Jump to content
  • 0

How can I reset the Arty-S7 board via command from USB/UART ?


0xbadcaffe

Question

How can I reset the Arty-S7 board via command from USB/UART J10 Connector?

Do I need to use Vivado?

Can it be done without using Vivado?

I basically want to reset the FPGA so it will be programmed again using the SPI-Flash JP1 jumper set to SPI.

 

Thank you!

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

I believe that you have some confusion about reset verses reconfiguration; it might just be a linguistic thing.

Do read the reference manual provided by Digilent. Most of their boards provide some sort of access to the configuration mode input pins on the FPGA. In the case of your board JP1, when jumpered, configures the FPGA from a valid bitstream in the FLASH memory. So, after writing the FLASH memory you can just put a jumper on JP1 and after cycling power your board configuration data will come from the FLASH device instead of the USB JTAG interface.

I'm not sure what you have in mind with respect to using the UART/JTAG interface but the board was not designed in a way to control the mode bits on the fly. In theory, one could design board to do this. The NetFPGA-1G-CML has a PIC processor that looks for a bitstream in an externally connected thumb drive and configures the FPGA from that, if present. In my experience this doesn't work out properly if that board is sitting in a PC connected to a PCIe slot.

Edited by zygot
Link to comment
Share on other sites

  • 0

In addition to what Zygot's already said, and restating some of it, there's these two points:

1. You can generally reprogram via JTAG from the PC after programming the board initially via either JTAG or SPI mode. This is controlled by the host computer.

2. There's no dedicated signal on the Arty S7 from an FPGA pin to the prog input, which would be required to use the FPGA to retrigger SPI programming after power-on.

Thanks,

Arthur

Link to comment
Share on other sites

  • 0

Thanks,

I understand the difference between reset and configuration/programming.

I wanted to mimic the behaviour of pressing the physical reset or reprogram buttons, from a host PC.

I guess reprogramming with JTAG is the only to achieve that.

Link to comment
Share on other sites

  • 0
5 hours ago, 0xbadcaffe said:

I wanted to mimic the behaviour of pressing the physical reset or reprogram buttons, from a host PC.

Reset buttons on Digilent boards go to logic in the device. Any application that the device is configured with may or may not use that input; it depends on the design. Any effect on using the Reset button is purely dependent on how, and whether, it's used in a configured device.

Configuration takes place on specialized pins and, at least during power up or configuration, are independent of any application already in a configured FPGA device. The Program button does initiate the configuration process and the FPGA will use a number of sources for loading a bitstream depending on the mode pin settings. If JP1 is jumpered and you have a valid bitstream in the attached FLASH, then the device gets configured from FLASH. You can configure the FPGA using JTAG at any time.

There's a configuration guide for Seried 7 devices.

What kind of behavior were you looking for?

 

Edited by zygot
Link to comment
Share on other sites

  • 0

You are limited by how the board is designed.

You can configure an FPGA with a software application of your own design. Here's a nifty project that shows how: https://forum.digilent.com/topic/17096-busbridge3-high-speed-ftdifpga-interface/

Of course, there are multiple are multiple tools for configuration via a USB cable.. Vivado Hardware Manager, Digilent Adept Utilitites, etc.

Most FPGA boards have a button to accomplish the same thing.

You threw me off with the reference to reset. 

Edited by zygot
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...