Jump to content

Need help. Bitstream does not work for Software Only or Hardware Only programs.

Recommended Posts

April 7, 2022

Dear Anyone Out There Willing to Help, 

     Hello. This is Josh Sparber. I am a retired System Engineer, with an MSEE who is rerouting his career into  Embedded Tech. A fellow researcher and I are forming a business and we both intend to incorporate Embedded Tech into our research.

Working with the Artix-7 100T Nexsys board I have many questions.

There has been some discrepancy in the literature, and although I have both a USB dual ended cable and a converter with a phone-style input for power, and I seem to get 5 volts on the board as needed for power, I am wondering if the power inputs I have are correct. I have the onboard jumper for USB set. Some current problems are making me wonder about this. I keep seeing a 7 to 12 volt converter is needed; although this may not be a problem, it may be. In addition I have a JTAG cable for which I have soldered a plug onto the board, if JTAG is needed. 

On both the available introductory programs, the Hardware Only and the Software Only I have had problems generating a Bitstream for both of these programs. I was seriously wondering if this related to the power input. In addition, the book I had obtained on the Artix 7 Nexsys was either so out of date that Mr. Colvin didn’t recognize it, or it is a rogue imitation of the book that is needed. or since everything now seems to be on line, the other, younger  techies don’t recognize it. This brings up other questions—maybe the board itself is a rogue imitation. That is why the Bitstream doesn’t work? I am taking a picture of the board itself so this can be verified.

Software Only program: my question is this—is there onboard GPIO on the Artix 7 100T Nexsys board itself? I know there are inputs and outputs and so on, buttons and LEDs. Are these the GPIO that the Software Only program refers to, or is an external connection needed? The Software Only program is swimming in nice to know and go backs; however, wading through these is not helpful.
Is there a Zynq processor on board? If there is can I go on without Zync at this stage?  It seems like pulling teeth to get answers to these questions. I am including a photo of the board I have, the power inputs, and the cables to verify my current situation with the development set up.

Software Only—I do not recognize the Vitis application as it is described. The format is completely different from is described in the program and I have not been able to implement the C Language example program in it. Not sure why this is happening.

Is there another service out there that can help quicker or another forum that can help more responsively? I would be willing to pay someone to come to my residence to help out.

I have included photos that hopefully, fully describe my setup and some of my available accessories.
Please advice as needed



Josh Sparber

my converter box cable for power.pdf my JTAG cable.pdf My reference literature.pdf My setup.pdf my USB to USB cable for power.pdf setup powered on with converter.pdf setup powered on with USB to local computer.pdf

Link to comment
Share on other sites

Don't waste money having someone set up your board tools.

Usually, Digilent FPGA boards are powered by an external power supply. A separate micro-USB PROG or JTAG connector is used for configuring the FPGA with build products like the HW bitstream ( and possibly software files if there is a processor in the project ). That's all you need to do basic FPGA development. You don't have to have a physical board to do development with Vivado; you can build a bitstream for any device that your tool version supports. For Digilent boards this includes all ZYNQ based devices and any Artix devices, like the board that you are using.

Don't try an power your board using the HOST USB connector. I'm unaware of any Digilent FPGA board that use USB 3.0 cables ( except for ZYNQ Ultrascale boards with USB 3.0 HOST capability; and this only applies to a situation where the ZYNQ is the USB host connecting to a USB downstream device). Most Digilent boards come with at least 1 USB 2.0 cable with the micro connector on one end.

To get started you want to visit the product page for your board and get the constraints file, the reference manual, and schematic. The RMs typically provide good information as to power supply design and using the board. If you are using the HDL design flow those are all you need. If you want to use the board design flow you can install the Digilent vivado-boards-master repository into your Vivado installation.

To understand the tools, use the Document Navigator that should be installed along with the tools for device documentation, tool documentation, application notes, etc.

Your System Engineer background likely is an impediment toward getting started with FPGA development so I recommend strongly that you start off by reading the Xilinx literature to understand what you have and are working with. I realize that there is a strong urge to see you board work. It should come with a default application if you configure the FPGA from FLASH, instead of JTAG. Unfortunately, most of Digilent's demos use the board design flow and are unlikely to be built without some work unless your version of the tools matches the version of the tools that the demo was built with. The HDL flow is generally simpler, though recent versions of Vivado have had the habit of breaking any HDL relying on specific versions of Xilinx IP. If you are using a soft processor, then expect to double your effort as the software tools have always broken anyting created with earlier tool versions.

Your board does not use ZYNQ. For beginners learning FPGA development ZYNQ just means learning both HW and SW tool usage and techniques.. that is 4X the work. Unfortunately, Digient has very few HDL flow demo project to try and rebuild. The design flow that you choose depends on the device and project requirements, but eventually, for any real world application, you will need a solid HDL flow experience level to survive.

Xilinx documentation has always been notorious for being out of date. Using the Xilinx Document Navigator might help keep versioning issues to a minimum.. so use that instead of searching online. Edited by zygot
Link to comment
Share on other sites

  • 4 weeks later...

Thanks zygot.

I'll run with this advice.

Seems a little bit strange that they would go to the trouble of building a board, testing it
to see it working, and then not be clear or capable of updating their own description
of how to make it work. It's like paying for someone to paint your house, and then
they ask you for the brushes and the ladders needed to do the job. I can imagine many
people out there striving to build projects and being set adrift by what is actually available.
I started with the JTAG cable, thinking it was the natural way to go. The programming and
the like reminds me of sophomore level EE courses on steroids. I actually took the subject 
matter twice to nail it down (UCLA and CSUF plus lab).  I'll read what you stated through 
and try to make the best of it. Thank you for offering some help. Anything would be 
appreciated at this point.








Link to comment
Share on other sites

FPGA development is very complicated. Anyone trying to get started, without out any formal training, and with a software development mindset could easily get confused.

For anyone with a pretty good head start, that is solid HDL experience and tool usage experience, the Digilent board reference manual documentation is pretty good and sufficient. Without that, it's possible to make some pretty bad assumptions that will get one into the weeds.

One step at a time. See if you can power the board and get the Hardware Manager in Vivado to find and connect to it. Then try and build a demo and configure the FPGA.

Link to comment
Share on other sites

  • 2 weeks later...

May 15, 2022


                 Thanks. This is what I have found.

                 Playing with the jumpers, all of a sudden the board came alive.
                 That is, the Busy LED stays on, the BCDs LEDs circle, the switches can enable their
                 input LEDs and the RGB LEDs change color.         

                 My board has the Artix-7 100T CSG324 CPU.

                 JP1 "Mode": I noticed that in the QSPI position that the board comes alive. 
                 The USB/SD position does not work.
                 Is it possible that there is a mistake in the board "masking"?

                 JP3: The WALL position works for both an input converter via phone-style plug,
                 as well as a USB input from the computer. The other positions of JP3 do not work.

                 Please see attached diagram.           

Working Board Diary 5_13_2022.pdfYT, Joshua H. Sparber










Link to comment
Share on other sites

Read the Digilent User Manual for your board. The mode switches determine how your FPGA gets configured once it powers on. If set to configure from FLASH (QSPI), it will automatically get configured with the demo written to the FLASH PROM before being shipped ( or any bitstream that the user writes to FLASH ) and start doing whatever the demo is supposed to do. If the mode switches are set for JTAG configuration, then the FPGA will be un-configured until the user explicitly configures it using the Vivado HW Manager or some other application. Until they are configured, programmable logic devices have no functionality and don't drive any output pins. Make sure that you've read the basic Xilinx literature about your device. Then start reading all of the supporting reference manuals such as configuration, clocking, IO, memory, etc.

I believe that your problems so far are mostly due to wrong expectations for what you are working with.

Edited by zygot
Link to comment
Share on other sites

  • 3 weeks later...

Thanks Zygot.

I taking this step by step, like when you learn anything else.

I don't expect miracles out of this device, it probably does not approach anything 
the big dogs do. Just more of a 1 to 1 relation between cause and effect. 

But I am learning a lot of other things too, like how the user community is constructed
and how the industry itself conducts business. 

I thank you sincerely for your help and I am following your advice. 

YT,  Joshua H. Sparber


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...