Author Topic: [SOLVED]Programming the DE0-Nano  (Read 14611 times)

0 Members and 2 Guests are viewing this topic.

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
[SOLVED]Programming the DE0-Nano
« on: July 25, 2013, 11:25:35 pm »
Hi guys, so I am getting my de0-nano in tomorrow, and right now, I'm trying to get all the software set up. I have seen on multiple websites that I should use Quartus II... and when I went to the site, I saw that its not free. So... 1. do I NEED to have this software? 2. are there free versions that work about as well... Because I really don't want to have to pay more money for now... I know there is a 30 day trial, but I wont just stop programming my fpga after 30 days...
« Last Edit: July 27, 2013, 03:08:01 am by sci4me »
 

Offline olsenn

  • Frequent Contributor
  • **
  • Posts: 993
Re: Programming the DE0-Nano
« Reply #1 on: July 25, 2013, 11:29:17 pm »
Altera has what they call the "Web Edition" of Quartus which is free software. It comes on CD with the DEO Nano as well as example software for you to play with.
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #2 on: July 25, 2013, 11:36:48 pm »
How bad are its limitations?
 

Offline olsenn

  • Frequent Contributor
  • **
  • Posts: 993
Re: Programming the DE0-Nano
« Reply #3 on: July 25, 2013, 11:44:47 pm »
There won't be any for you. The free version of Quartus doesn't work with the larger, more expensive FPGA chips, but the Cyclone IV in the DE0 Nano is obviously one of the ones it can program. Also with the paid software you can get some pre-written IP if you needed some commonly used piece of (soft) hardware, like audio codecs, HDMI controllers, etc. These things can be found online for free anyways in most cases (check out OpenCores). Lastly, I believe the Web Edition of the software has some limitations to use of Nios, the soft core microprocessor made for Altera FPGA's, but I'm not too sure about that one.

If Dave's video was the only introduction you've had to FPGAs, then I would STRONGLY suggest you pick up the book "Digital Design Using Digilent FPGA Boards" from the site below. Verilog is closer to C then VHDL, so you may want to go with that version.

http://www.lbebooks.com/booksandkits-HWDesignVerilog.htm#verilogDigilent
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #4 on: July 25, 2013, 11:49:03 pm »
I've had a bit more introduction to FPGA's than Dave's video, but I still am basically an absolute beginner as far as programming and using them goes. As far as the book goes, Ill check it out. Also, I have been thinking to use verilog over vhdl because of the examples I've seen. It does look easier to use to me.
 

Offline marshallh

  • Supporter
  • ****
  • Posts: 1462
  • Country: us
    • retroactive
Re: Programming the DE0-Nano
« Reply #5 on: July 25, 2013, 11:54:43 pm »
My advice: don't learn verilog or vhdl, learn _digital design_
Verilog is just how you punch it in to the computer. If you want to see what happens when software-only guys take a crack at digital design, look no further than Opencores
Verilog tips
BGA soldering intro

11:37 <@ktemkin> c4757p: marshall has transcended communications media
11:37 <@ktemkin> He speaks protocols directly.
 

Offline JorgeCarbajal

  • Contributor
  • Posts: 15
  • Country: mx
Re: Programming the DE0-Nano
« Reply #6 on: July 26, 2013, 12:58:30 am »
You should be fine with the web edition, even with it you can try some IP included, you can program the device but it has to be connected to the pc all the time if you choose to use them. You can find from memory controllers to DSP functions like FFT cores and such.
I'm pretty sure you will receive a CD ROM containing the software you need, but if you need like downloading it right away you can get the web edition for free (after signing up with altera).
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: Programming the DE0-Nano
« Reply #7 on: July 26, 2013, 01:42:09 am »
My advice: don't learn verilog or vhdl, learn _digital design_
Verilog is just how you punch it in to the computer. If you want to see what happens when software-only guys take a crack at digital design, look no further than Opencores
opensores...

@Ts : quartus web edition is free. the difference :
-  web edition tops out at about 25 million gates . so you won;t be able to program the devices that cost more than 1000$...
- doesn't do all families. the families it cannot do are all 1000$ +
- no incremental compilation . irellevant unless you do million gate designs as it shortens synthesis time
- cores (like nios et al) work for 1 hour , then stop. you need to powercycle the pcb to get another hour. if you don't use those cores there is no problem.
« Last Edit: July 26, 2013, 01:44:53 am by free_electron »
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Online Berni

  • Super Contributor
  • ***
  • Posts: 4953
  • Country: si
Re: Programming the DE0-Nano
« Reply #8 on: July 26, 2013, 06:11:05 am »
I have used it for some time now and it has no serious show stopper disadvantages. You also get quite a bit of IP with it for free like memory controllers and misc simple stuff. But the more advanced IP you can evaluate for 1 hour from board power up or for an infinite amount of time if you keep your board connected trough JTAG.

The full version also can use up to I think 8 CPU cores for compilation and incremental compilation to reduce your compile time as it gets really anoint to have to wait 10 minutes for your design to compile just because you had to change 1 line of code somewhere. You need a sizable design to make it compile that long but even simple hello world things take 30 seconds to 1 minute to compile on large chips. It's just a bit of an annoyance when you are used to a few second incremental compiles in your huge C programs.
 

Offline ChrisW

  • Contributor
  • Posts: 43
Re: Programming the DE0-Nano
« Reply #9 on: July 26, 2013, 02:09:23 pm »
My advice: don't learn verilog or vhdl, learn _digital design_
Verilog is just how you punch it in to the computer. If you want to see what happens when software-only guys take a crack at digital design, look no further than Opencores

What books (if any) did you find helpful in learning about digital design? I'm currently reading Digital Design by M. Morris Mano.

-Chris
 

Offline olsenn

  • Frequent Contributor
  • **
  • Posts: 993
Re: Programming the DE0-Nano
« Reply #10 on: July 26, 2013, 02:52:52 pm »
Quote
What books (if any) did you find helpful in learning about digital design?

As I mentioned before: "Digital Design Using Digilent FPGA Boards"

This book covers all the basics of digital design from truth tables and Karnaugh maps, shows how to create more complex components (like binary counters, shift registers, flip-flops, etc) from the basic gates, and the shows how to implement said design in your choice of Verilog 2001 of VHDL.
 

Offline MacAttak

  • Supporter
  • ****
  • Posts: 683
  • Country: us
Re: Programming the DE0-Nano
« Reply #11 on: July 26, 2013, 07:15:44 pm »
The Xilinx ISE "WebPack edition" (the product from Xilinx that most closely approximates Quartus Web Edition) also has some annoying limits in the simulation engine that throttles it down severely once you cross a certain line of "user code" usage. It's a pretty low limit really, and while the simulator doesn't stop working entirely, it becomes immensely painful to use.

Are there any limitations like that in Quartus Web Edition?
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #12 on: July 26, 2013, 08:12:25 pm »
Okay, well I am currently attempting my first hello world program, fallowing the manual of course. I am getting an error when trying to use a pll. Here it is:
Code: [Select]
Error (176554): Can't place  PLL "pll:inst4|altpll:altpll_component|pll_altpll:auto_generated|pll1" -- I/O pin CLOCK_50 (port type INCLK of the PLL) is assigned to a location which is not connected to port type INCLK of any PLL on the device
Error (171000): Can't fit design in device
Error: Quartus II 64-Bit Fitter was unsuccessful. 2 errors, 3 warnings
Error: Peak virtual memory: 595 megabytes
Error: Processing ended: Fri Jul 26 15:08:19 2013
Error: Elapsed time: 00:00:04
Error: Total CPU time (on all processors): 00:00:04
Error (293001): Quartus II Full Compilation was unsuccessful. 4 errors, 4 warnings
Im fallowing the guide in the manual as closely as I can ... so, any ideas? I cant seem to figure it out.
 

Offline jahonen

  • Super Contributor
  • ***
  • Posts: 1054
  • Country: fi
Re: Programming the DE0-Nano
« Reply #13 on: July 26, 2013, 08:17:50 pm »
Okay, well I am currently attempting my first hello world program, fallowing the manual of course. I am getting an error when trying to use a pll. Here it is:
Code: [Select]
Error (176554): Can't place  PLL "pll:inst4|altpll:altpll_component|pll_altpll:auto_generated|pll1" -- I/O pin CLOCK_50 (port type INCLK of the PLL) is assigned to a location which is not connected to port type INCLK of any PLL on the device
Error (171000): Can't fit design in device
Error: Quartus II 64-Bit Fitter was unsuccessful. 2 errors, 3 warnings
Error: Peak virtual memory: 595 megabytes
Error: Processing ended: Fri Jul 26 15:08:19 2013
Error: Elapsed time: 00:00:04
Error: Total CPU time (on all processors): 00:00:04
Error (293001): Quartus II Full Compilation was unsuccessful. 4 errors, 4 warnings
Im fallowing the guide in the manual as closely as I can ... so, any ideas? I cant seem to figure it out.

Check the pin assignment of your clock input pin, it should be assigned to pin R8 (at least according to the schematic I found).

Regards,
Janne
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #14 on: July 26, 2013, 08:19:30 pm »
Its R8...
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #15 on: July 26, 2013, 09:06:49 pm »
Okay, turns out I had the wrong device selected. DERP! Now, I am trying to actually program my .sof onto my device and when I hit start, the progress bar immediately says failed... and nothing else happens... ideas?

Edit: Okay, I have been told to convert my sof to a jic and program with that. So, I converted it and tried programming with it, but nothing. It does the same thing.

Edit2: So, this error code 89... why isnt it documented? and if it is, why havent i found it yet? I found a single forum post on it but it was pretty useless. It told me to check the firewall settings for the jtag server... not sure what the hell thats supposed to mean on a linux computer (yes, i admit being a linux nub) so..
« Last Edit: July 26, 2013, 10:31:20 pm by sci4me »
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: Programming the DE0-Nano
« Reply #16 on: July 27, 2013, 01:40:26 am »
I have made a post on the altera forum aswell, but so far, no luck. Im not really sure what to do... I mean I have made multiple designs I want to test out, but since I cant program the FPGA, they're just sitting there doing nothing... Somebody? I really want to get this working soon...
 

Offline marshallh

  • Supporter
  • ****
  • Posts: 1462
  • Country: us
    • retroactive
Re: [SOLVED]Programming the DE0-Nano
« Reply #17 on: July 27, 2013, 04:23:59 am »
It it says failed, it will always print status messages in the main window.
Go to the log and turn on the ALL filter to s how process messages. You should see something from Quartus II Programmer.

You just need a SOF to load the silicon. a JIC is basically what you would write to the NV config rom, along with a short loader stub that's run through jtag. You don't need it yet.
Verilog tips
BGA soldering intro

11:37 <@ktemkin> c4757p: marshall has transcended communications media
11:37 <@ktemkin> He speaks protocols directly.
 

Offline sci4meTopic starter

  • Regular Contributor
  • *
  • Posts: 139
  • Country: us
    • sci4me.com
Re: [SOLVED]Programming the DE0-Nano
« Reply #18 on: July 27, 2013, 04:30:20 am »
Yeah, ive gotten this issue figured out. Now I need to figure out the pll thing.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf