Jump to content
  • 0

How does a company-less hobbyist like me get access to the tools required to program this?


jeremy2002

Question

Hi. I am new to when it comes to FPGAs, but since I knew about all the interesting stuff you could do with one, I just had to get one.

Now that I have my Zynq-7000, I am completely clueless on how to start programming it.

Appearantelly, you have to have this software called Vivado, so I signed up for a account, and tried to download it. But...

Suddenly it's asking me for a Company Name?? I don't even have a company!

Is there any other software to program this thing without having to establish a company and then hope that it passes as valid? This is a huge turnoff for me.

 

Link to comment
Share on other sites

12 answers to this question

Recommended Posts

@jeremy2002,

While there are other synthesis tools you can use, I'm not aware of any other place and route tools --- which means you are pretty much stuck with Vivado as your only FPGA solution for the Zynq board for the time being.

As for "signing up" for Vivado, Relax ... your just filling in a data entry field that no one ever looks at.  I think the form is there for some legal/ITAR purpose.  You can either leave the item blank, or claim that you work for "Jeremy and Co."  Understand that there are many, *MANY* hobbyists using these boards--worldwide even.

Dan

Link to comment
Share on other sites

2 hours ago, D@n said:

@jeremy2002,

While there are other synthesis tools you can use, I'm not aware of any other place and route tools --- which means you are pretty much stuck with Vivado as your only FPGA solution for the Zynq board for the time being.

As for "signing up" for Vivado, Relax ... your just filling in a data entry field that no one ever looks at.  I think the form is there for some legal/ITAR purpose.  You can either leave the item blank, or claim that you work for "Jeremy and Co."  Understand that there are many, *MANY* hobbyists using these boards--worldwide even.

Dan

Ok, thanks for making me feel confident! :)

Link to comment
Share on other sites

@jeremy2002,

Yeah, I agree with D@n, don't sweat the process for getting a license to use Vivado or Quartus or whatever tools your FPGA vendor supplies. FPGA Companies supply tools to sell silicon. They collect information for their sales departments. No one knows if JeremyEnterprises will ever become a source of income or not. There are plenty of small companies doing one off FPGA products that will never make Xilinx a noticeable profit. All of the big electronics vendors know that their tools are used by people who might be consigned to the "hobbyist" category.

I'm really responding to this question because you refer to Vivado as software ( in a sense that is what it is) .... just curious as to whether you know what you are getting into, All I know is that you are a self-confessed beginner and "completely clueless" ( don't worry, there have been posts by people who think that they know what they're doing and are to my way of thinking clueless as well... at least you know.... Fortunately, you have an ARM processor with a bit of FPGA logic so you can start off concentrating on the ARM programming and ease into the FPGA stuff. Even if all you want to do is create and run C code applications the process is complex... compared to, say programming a PIC or Atmel part. The Vivado tools and flow are quite complex and the documentation is not wonderful so you will have a bit of work to get going. Fortunately, Xilinx has a pretty nice selection of application notes and reference manuals. I suggest that your start off with tutorials and ready to "compile" pre designed projects. Learn the development/debugging process for hard/soft processor based FPGA tools. There are a few threads about FPGA toolsets on the Digilent forums to get a glimpse of what's involved. I wish that I could say that Vivado makes using FPGAs easy... I can't. I can say that becoming knowledgeable about FPGA development, even if not proficient, is a worth while endeavour.

So, don't get discouraged. Learn how to get answers to your questions. If all of what I had to say seems to be irrelevant just ignore it. Good fortune.

Link to comment
Share on other sites

5 hours ago, zygot said:

@jeremy2002,

Yeah, I agree with D@n, don't sweat the process for getting a license to use Vivado or Quartus or whatever tools your FPGA vendor supplies. FPGA Companies supply tools to sell silicon. They collect information for their sales departments. No one knows if JeremyEnterprises will ever become a source of income or not. There are plenty of small companies doing one off FPGA products that will never make Xilinx a noticeable profit. All of the big electronics vendors know that their tools are used by people who might be consigned to the "hobbyist" category.

I'm really responding to this question because you refer to Vivado as software ( in a sense that is what it is) .... just curious as to whether you know what you are getting into, All I know is that you are a self-confessed beginner and "completely clueless" ( don't worry, there have been posts by people who think that they know what they're doing and are to my way of thinking clueless as well... at least you know.... Fortunately, you have an ARM processor with a bit of FPGA logic so you can start off concentrating on the ARM programming and ease into the FPGA stuff. Even if all you want to do is create and run C code applications the process is complex... compared to, say programming a PIC or Atmel part. The Vivado tools and flow are quite complex and the documentation is not wonderful so you will have a bit of work to get going. Fortunately, Xilinx has a pretty nice selection of application notes and reference manuals. I suggest that your start off with tutorials and ready to "compile" pre designed projects. Learn the development/debugging process for hard/soft processor based FPGA tools. There are a few threads about FPGA toolsets on the Digilent forums to get a glimpse of what's involved. I wish that I could say that Vivado makes using FPGAs easy... I can't. I can say that becoming knowledgeable about FPGA development, even if not proficient, is a worth while endeavour.

So, don't get discouraged. Learn how to get answers to your questions. If all of what I had to say seems to be irrelevant just ignore it. Good fortune.

I chose as my first "noob" project for my Zybo's PL to make a working VHDL C64 with CPU (6510), SSM2603 audio (SID) and VGA (VICII).  I started around August 2017 when I installed Vivado for the first time ever and as of now (2017.12.25) the Zybo C64 is mostly working https://github.com/gau-veldt/InsideTheBox (IEC/disk, sprites and SID filters and envelopes are on the TODO list) including keyboard which was a recent addition once I received the required PS/2-PMOD parts from Digilent.  It's been quite the learning process :)    Now the not-so-easy part: making some videos of various aspects of this design for my YT channel.

To say xilinx has a lot of reference manuals is understating it - they have a TON of manuals.  The hard part is finding which manual applies to the problem one is having.  Digilent also has some useful manuals, particularly for PMOD accessories.

For things like the Zybo some external data sheets are also of import, such as those for the SSM2603 (Zybo's audio chip) and tinyvga.com is a good one for getting the needed settings to have various video modes at the VGA port.

 

Link to comment
Share on other sites

5 hours ago, zygot said:

@jeremy2002,

Yeah, I agree with D@n, don't sweat the process for getting a license to use Vivado or Quartus or whatever tools your FPGA vendor supplies. FPGA Companies supply tools to sell silicon. They collect information for their sales departments. No one knows if JeremyEnterprises will ever become a source of income or not. There are plenty of small companies doing one off FPGA products that will never make Xilinx a noticeable profit. All of the big electronics vendors know that their tools are used by people who might be consigned to the "hobbyist" category.

I'm really responding to this question because you refer to Vivado as software ( in a sense that is what it is) .... just curious as to whether you know what you are getting into, All I know is that you are a self-confessed beginner and "completely clueless" ( don't worry, there have been posts by people who think that they know what they're doing and are to my way of thinking clueless as well... at least you know.... Fortunately, you have an ARM processor with a bit of FPGA logic so you can start off concentrating on the ARM programming and ease into the FPGA stuff. Even if all you want to do is create and run C code applications the process is complex... compared to, say programming a PIC or Atmel part. The Vivado tools and flow are quite complex and the documentation is not wonderful so you will have a bit of work to get going. Fortunately, Xilinx has a pretty nice selection of application notes and reference manuals. I suggest that your start off with tutorials and ready to "compile" pre designed projects. Learn the development/debugging process for hard/soft processor based FPGA tools. There are a few threads about FPGA toolsets on the Digilent forums to get a glimpse of what's involved. I wish that I could say that Vivado makes using FPGAs easy... I can't. I can say that becoming knowledgeable about FPGA development, even if not proficient, is a worth while endeavour.

So, don't get discouraged. Learn how to get answers to your questions. If all of what I had to say seems to be irrelevant just ignore it. Good fortune.

My big beef with Vivado (2017) is its failure to create SDK import scripts when generating VHDL projects. (if you create a block-design-only project such as the hello world project this problem doesn't occur but currently I am more gravitated to VHDL and doing stuff mainly "under the hood" for my designs but some future designs projects may require PS interaction with the PL design to save results).  This problem pops up whenever I want to use my own PL design and the ARM PS's at the same time when I do the "export to SDK" step.  It can never find the "handoff" files.

Link to comment
Share on other sites

@Gau_Veldt,

The observations you offer in both of your last two posts are very good. There are a few threads around here discussing tool issues. The ARM based FPGA devices are great as they offer a well documented and supported core that is "easier" for those with embedded software (C, C++) experience a foot into the door of the FPGA world. They are not so good as they require more of a dependence on using the tools design flow for developing. Xilinx actually has excellent SDK support, especially for RTOS or Linux based software. That is not to say that it's wonderful or easy to use over generations of development. I generally prefer to create my own toplevel VHDL entity that instantiates the Xilinx created Zynq toplevel entity ( you have to instruct Vivado to let you do this ). If the FPGA vendors concentrated less on using the ARM hardware/software flow to lock customers into using their own devices and more on creating viable, trouble-free scripting to free development that didn't break with every new toolset release we could all be happy campers....  but I'm not holding my breath. Fortunately, today's 7 series FPGA devices, even the low end ones, are so powerful that you can ditch the whole board design flow and either just use an HDL or use you own soft core to implement most designs. No soft core will ever complete with even the slowest ARM hard core for complex compute intensive or cumbersome OS based tasks so this approach isn't helpful to anyone drawn to the Zynq world.

My comments earlier address what I believe might be concerns of a complete beginner to the world of ARM based FPGA development. I personally think that dealing with real issues is more helpful than giving the uninitiated a pat on the back and a "go have fun" send-off. Sometimes figuring out the scope of what you don't know is better than figuring out what you need to know to accomplish a particular result. Fortunately, this world is a big one and a person can do limited but fun things with restricted experience and knowledge. Rocketry is another hobby where clearly experimenting with one stage model rockets is a very different animal than building a vehicle from scratch that can take you to visit the international space station....  

Link to comment
Share on other sites

On 12/26/2017 at 6:35 AM, zygot said:

If the FPGA vendors concentrated less on using the ARM hardware/software flow to lock customers into using their own devices and more on creating viable, trouble-free scripting to free development that didn't break with every new toolset release we could all be happy campers....  but I'm not holding my breath

Bitstreams tend to use proprietary formats so seeing open toolsets is somewhat unlikely over the short term.

Link to comment
Share on other sites

1 hour ago, D@n said:

@Gau_Veldt,

Not quite.  There's a very active reverse engineering effort underway.  IIUC, they've alredy finished reverse engineering both the 7-series chips and bitstreams.   I wouldn't be surprised to see an open toolseet in the short term as a result.

Dan

I thought Xilinx used bitstream encryption "for security" and to prevent leaking IP's to intruders (read: open source reversing engineers).

Link to comment
Share on other sites

Bitstream encryption is optional for all FPGA vendor parts that I'm aware of. But configuring devices isn't what I'm talking about. Of course no vendor is going to spend money developing synthesis, place and route tools for any vendors' part. None of them do a great job of it for their own parts. I'm just saying that the whole embedded processor ( soft or hard ) and or block diagram flow from the major FPGA vendors could be a whole lot more customer friendly if the main goal wasn't entrapment. Fifteen years ago I would have said that a third party ( like a Synplicity who makes a better synthesis tool than the vendors; I remember when that company has just a hand full of employees some of whom were both salesmen and developers ) could make a space for making the processor/FPGA flow across vendor devices productive and maintainable. The world isn't what is was fifteen years ago....

I believe that we have ARM to thank for the goodness that does exist now.

 

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...