Jump to content
  • 0

Programming Artix 7 without JTAG using GPIO pins


amkichu

Question

I have PCB with Artix-7 FPGA and other components including flash and has CMOS connection via 8 lines to FPGA GPIO pins. How can I configure/program/load this unprogrammed FPGA (no previous bitstream or mcs image loaded in the FPGA) with GPIO pins? Note that, I don't have access to the JTAG port and no embedded processor and and configuration mode pins M2, M1, M0 is (001) in the design.

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

unsolder flash / program flash / resolder flash ?

OK most likely that's not what you wanted to hear. ..
The men in white coats might have some ideas (e.g. needle-probing a Flash in a large-pitch package isn't that hard, and / or lift off the MISO pin with a scalpel and connect your own Flash).

Other than that, I think you've ruled out the possibilities (001 is "Master SPI", table 2-1). How would you think does the manufacturer of the board handle this?

 

 

Link to comment
Share on other sites

I wasn't going to think about this question but as @xc6lx45 already has and concluded that the board is set up for Master SPI I'll bite. ( I was thinking that you wanted to use any available IO pins for configuration.... fortunately for you xc6lx45 wasn't so lazy.

Read the datasheet for the device. Read the Xilinx configuration reference manuals and tutorials. Look over my project in the Project to configure a Spartan 3 board using the CMOD A7-35T for a head start on a possible approach. You'll need a different board if you want to replicate my approach as the configuration file is considerably larger than the 512KB SRAM on the CMOD A7; but there are certainly ways to solve that problem. You'll need to use a different configuration method than I did. If a PROM with an SPI port can spit out configuration data then so can a logic design ( Assuming that there isn't some undocumented magic sauce... and that could be the case I suppose; I've not done SPI configuration before ). You'll have a fairly good project in getting your board programmed... and need a lot of patience waiting for configuration to complete,.

I don't know of a reason why  it can't be done.

Sounds like a lot of work... but... sure beats "unsolder flash / program flash / resolder flash"...

I only did the Spartan 3 programmer project because I told another questioner to this forum site that it could be done with minimal difficulty.. and later felt obligated to prove it.

 

Link to comment
Share on other sites

19 hours ago, xc6lx45 said:

Or am I missing something here?

Questions like the one posted to this thread cause me a bit of anxiety as it's not quite clear that providing clues isn't abetting nefarious activity. It certainly strikes me as curious that someone wants to configure a board that isn't a known development kit and with a non-obsolete device and no obvious way to configure it. I just have that uneasy feeling... 

Link to comment
Share on other sites

Using something like libxsvf can be a good option. @D@n, you are definitely a veritable lifesaver for me in this aspect. Thanks to all for your inputs.

 

Besides, I feel modifying the board a bit like adding a demux to switch the (4 pins) pins of GPIO to JTAG tracks can also be a good choice.

Link to comment
Share on other sites

On 7/4/2018 at 5:01 AM, amkichu said:

Note that, I don't have access to the JTAG port

 

On 7/7/2018 at 8:14 AM, D@n said:

If you have access to the JTAG pins

 

21 hours ago, amkichu said:

you are definitely a veritable lifesaver

Zygot: "   "

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...