Shop OBEX P1 Docs P2 Docs Learn Events
So I bought an FPGA... - Page 2 — Parallax Forums

So I bought an FPGA...

2

Comments

  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-24 02:09
    Oh this all sounds very interesting. Can't wait to get started.

    As I understand it, I could essentially break the program down into a schematic of sorts. Using logic gates to define what happens when certain things are triggered. Like if I have two inputs, I could make an AND gate, than an OR gate for some other function with some other variables, and repeat until I get the result I want? Much in the same way if I had two 5V PSUs and had some 74 series Logic Gate chips. If I wanted to blink the LEDs I could wire up certain combinations of AND, OR, NOT, NAND etc to control different outputs. For example designing the AND gate to receive inputs at some clock freq and an or gate at some other freq to control which LED is on or off. And perhaps also control brightness, kind of like a PWM of sorts (I honestly am not sure). And together I could generate an IF statement or what have you and the list goes on.

    If my assessment is correct I think Verilog and FPGAs in general will be a much more fascinating way to explore electronics than previously thought. Not to mention it would make a heck of a lot more sense when it came to programming/configuring because it's like like when you switch the power on: everything boots up (nearly) instantaneously. So it's not so much sequential or parallel as it is just that when you flick the switch all the lights come on, just like in your home or garage or office, etc at the moment it gets voltage/current. So there's no bootup or loading or setting up parameters etc. it just turns the chip on and does its thing.

    So am I totally full of it, or am I somewhere maybe decently close to being correct?
  • Heater.Heater. Posts: 21,230
    edited 2013-10-24 02:41
    PoundSign2.

    No you are not full of it. Looks like you have the overall concept nailed down just fine.

    As we have seen above you could get a pen and paper or a schematics editor and draw an AND gate. Or you can just write "and" in your HDL. Of course you need some inputs and outputs, hence the "port" statement in VHDL and those std_logic things. That is the interface from your little circuit to the rest of the design. Then you need some way of wrapping this little circuit (could have many gates and such in it) into a building block you can drop into your bigger design, perhaps many times, hence the "entity" and "architecture" parts. "Entity" is the specification of the subcircuits interface to the world, it's I/O. "Architecture" is what it actually does inside.

    So you are right, those "entities" are like 74 series chips. And you can use entities within entities and build bigger and bigger designs.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-24 18:06
    Heater. wrote: »
    PoundSign2.

    No you are not full of it. Looks like you have the overall concept nailed down just fine.

    As we have seen above you could get a pen and paper or a schematics editor and draw an AND gate. Or you can just write "and" in your HDL. Of course you need some inputs and outputs, hence the "port" statement in VHDL and those std_logic things. That is the interface from your little circuit to the rest of the design. Then you need some way of wrapping this little circuit (could have many gates and such in it) into a building block you can drop into your bigger design, perhaps many times, hence the "entity" and "architecture" parts. "Entity" is the specification of the subcircuits interface to the world, it's I/O. "Architecture" is what it actually does inside.

    So you are right, those "entities" are like 74 series chips. And you can use entities within entities and build bigger and bigger designs.


    What makes a bunch more sense now is how I saw Quartus II programs done via schematics. Since essentially it's just a ton of IC Logic Gates on one chip, it would stand to reason that the FPGA could be configured via a schematic, since you do set the wires and gates, inputs etc. Much easier for me to understand than a microcontroller, that's for certain.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-26 18:19
    So I am having one heck of a time trying to install Quartus II. Is there any alternative IDEs or just alternative anything to Quartus II that would still allow me to program the FPGA? Can I use the Xilinx ISE or w/e to also program the FPGA (Cyclone IV)?
  • LeonLeon Posts: 7,620
    edited 2013-10-26 18:34
    You have to use the Altera Quartus II software.

    FWIW, I've never had any problems installing it.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-26 18:37
    Leon wrote: »
    You have to use the Altera Quartus II software.

    I knew this was going to be the case, but I still held out hope. My (11th) download attempt just failed after a 2 hour, 7.2GB file. This is absolutely the worst software I;ve ever used. Not exaggerating, I've had files fail all the time, but seriously 12 downloads and 9 unsuccessful installs. This is horrible software packaging at it's finest IMO.
  • Heater.Heater. Posts: 21,230
    edited 2013-10-26 21:57
    Your Quartus download and installation problems are not the fault of Quartus.

    It's a big download so I always check the MD5 sum as it is such a big download. Where did you get 7.2GB the web edition for Linux us only 4.5GB?

    Installation has always gone easily for me, which was a surprise as its basically a Windows program running under Wine on Linux. The installer works as smoothly as any other Windows software I have had to use.

    Having said that Quartus is a huge and complex suite that takes a bit of learning.
  • AribaAriba Posts: 2,690
    edited 2013-10-26 22:30
    PoundSign2 wrote: »
    I knew this was going to be the case, but I still held out hope. My (11th) download attempt just failed after a 2 hour, 7.2GB file. This is absolutely the worst software I;ve ever used. Not exaggerating, I've had files fail all the time, but seriously 12 downloads and 9 unsuccessful installs. This is horrible software packaging at it's finest IMO.

    Have you not received a DVD with Quartus II together with your DE0-Nano?
    The Quartus version that came with my Nano was a bit older, but should work well with the DE0 board

    (Only if you want to use the DE0-Nano for Prop2 emulation you will need a newer version of the programming tool, but this can be downloaded alone, without the whole Quartus IDE - see the sticky thread in the Prop2 forum).

    Andy
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-27 00:46
    Ariba wrote: »
    Have you not received a DVD with Quartus II together with your DE0-Nano?
    The Quartus version that came with my Nano was a bit older, but should work well with the DE0 board

    (Only if you want to use the DE0-Nano for Prop2 emulation you will need a newer version of the programming tool, but this can be downloaded alone, without the whole Quartus IDE - see the sticky thread in the Prop2 forum).

    Andy


    I finally got it to install correctly. The install is actually on a Windows 7 OS. Windows comes in handy for programming because everything for the most part is available and generally works on Windows. My main OS is Ubuntu though. In any case, I'm doing a lot of the Altera Training courses to help get me under way. The Control Panel and Quartus II software that came in the package with the DE0 Nano didn't work.

    In any case now it's just about learning how to use Quartus II to program and configure the DE0 Nano.
  • Heater.Heater. Posts: 21,230
    edited 2013-10-27 03:00
    PoundSign2,
    Windows comes in handy for programming because everything for the most part is available and generally works on Windows.
    Red rag to a bull.:)

    Anyway, well done, what was the installation issue?
  • AleAle Posts: 2,363
    edited 2013-10-27 12:59
    I downloaded the 13sp1 last night and it was only like 1.5 GB. You need an extra download for the programmer and another for the FPGA family. You may have downloaded the "the whole universe package". The installation took like forever, well it was on a net drive on a virtual machine.. ;-).
    For the same money I'll try to buy the bemicro CV. Plus taxes, duties, shipping :(.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-27 14:00
    Heater. wrote: »
    PoundSign2,

    Red rag to a bull.:)

    Anyway, well done, what was the installation issue?

    Everything. To be rather blunt about it.


    This is what I had downloaded and tried to get Quartus II to work, and how I finally got it to install correctly.

    What did not work....

    - Downloaded Web Edition ver. 13.0.1 (sp1) and this failed to install correctly. Hangs at 99% complete. If the installer was force closed the program would be there but unable to add any devices and the software is very faulty.
    - Downloaded Web Edition ver. 13.0.0 same issues.
    - Same for all versions to ver. 10. Same result, hangs at 99%.
    - Tried software from DE-0 package, did not work. Devices could not be added.
    - Total downloaded attempts: 13. Many download attempts failed. The Akami Web Installer had the same issues as downloading individual files. Two of my DVD .ISO attempts also failed although the download did complete and fetch all 7.5GB.

    What finally worked...

    - Download ISO for ver 13.0.1 and mount via DAEMON TOOLS LITE.
    - I don't know why or how, but it worked when everything else failed.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-29 16:13
    So I bought a book about Verilog, it is titled, oddly enough, "Introduction to Verilog," by Bob Zeidman. What I am finding rather frustrating is Quartus II. Because it is so unlike the Propeller Tool, PICAXE, Arduino IDE and PIC Microcontrollers (I forget what program you use to program it) that I have used in the past. There's a lot of work prior to just diving in and writing code. The Verilog Tutorials on Altera's Training department helps, but I feel it's too complex and focuses more on the people who are in the business and less for those looking to get into Verilog, FPGAs, or really anything. Is there a more practical beginners guide or whatever to help facilitate the gap between my knowledge and what I am trying to do? At this point I just want to get experienced with writing code, and code that I am see if it works or not. A lot of the examples are for counters or timers and I honestly don't know how to make an LED blink, the Hello World of electronics! Some help would be greatly appreciated!
  • Cluso99Cluso99 Posts: 18,069
    edited 2013-10-29 21:09
    PoundSign2:
    FPGA's are not anything like programming a computer or micro. They are a set of gates commonly called LUTs or LEs that you configure to make hardware blocks. Then you connect them together to make a circuit. So you can make a micro from them, but that is nothing to do with programming a micro. Did you realise this?
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2013-10-30 00:08
    and I honestly don't know how to make an LED blink, the Hello World of electronics! Some help would be greatly appreciated!


    Hang in there. I found similar issues - it is the steep part of the learning curve. Much head banging and then suddenly "ah-ha" moments. I was very pleased when I found all the 74xx gates hidden in a sub menu - on more familiar territory at last. I got my fpga to work as an "AND" gate and that was a great moment. Then I bypassed the "flashing led" stage and tried to jump straight to a Z80 in a fpga. That still has me stumped - I'm not sure which bit of verilog to put where nor how to change pin numbers of the virtual chip. Then again, I did the same thing with the propeller chip when I first saw it - got a led flashing, then jumped straight into heater's Z80 emulation.

    For me, biggest difference between the propeller and a fpga is the very helpful people on the propeller forum. Keep trying - lots to learn from your experience for us other newbies :)
  • Heater.Heater. Posts: 21,230
    edited 2013-10-30 01:51
    PoundSign2,
    I honestly don't know how to make an LED blink, the Hello World of electronics!
    One of the main uses of "Hello World" is to check that you can at least get a program to run ant all, that your system is actually workable.

    In a high level language like C that means you are verifying the compiler, linker, locater, loader etc and your target machine. To run it the target needs a CPU, memory, serial port etc.

    Down in the embedded MCU world "Hello World" has less resources. It might become a few lines of assembler or even binary instructions poked into memory that can flash a LED, as you said. To run it still needs a CPU and memory and an I/O pin and perhaps a timer and so on. Not that the CPU with
    it's program counter can be the timer here.

    Down in the FPGA world we don't have a CPU or timer. All we have is gates, AND, OR, NOT, etc and I/O pins. Perhaps there are ready made blocks of gates to make counters or perhaps there are memory blocks but that is "advanced stuff".

    So what is an FPGA "Hello World"?

    I suggest it is enough Verilog or VHDL and what ever other configuration set up is required to just get one pin set to output and driven up or down such that a LED comes on. That is it!

    Perhaps a better FPGA "Hello World" is a single logic gate. Better make it the simplest one, the NOT gate. Connect the input to an input pin connect the output to an output pin driving a LED. Press a button connected to the input and the LED comes on.

    Or perhaps that AND gate in VHDL we discussed earlier world do.

    A quick google turns up exactly what you want: http://www.jopdesign.com/cyclone/hello_world.pdf
    This is a "Hello World" tutorial for an Altera Cyclone and Quartus that does actually flash the LED! Might be a bit out of date but I'm sure the bulk of it is still true. I think I will be trying that on my nano board soon just so I can keep up with you:)
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2013-10-30 02:43
    This is a screen shot of my "hello world" - a logic gate, and just to show they exist, a 74xx part. I feel more comfortable working with "schematics" rather than verilog but that is just me. In any case, it is cool that the software lets you choose to draw the logic or work in a text based language.
    1024 x 819 - 154K
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-30 12:52
    Heater. wrote: »
    PoundSign2,

    One of the main uses of "Hello World" is to check that you can at least get a program to run ant all, that your system is actually workable.

    In a high level language like C that means you are verifying the compiler, linker, locater, loader etc and your target machine. To run it the target needs a CPU, memory, serial port etc.

    Down in the embedded MCU world "Hello World" has less resources. It might become a few lines of assembler or even binary instructions poked into memory that can flash a LED, as you said. To run it still needs a CPU and memory and an I/O pin and perhaps a timer and so on. Not that the CPU with
    it's program counter can be the timer here.

    Down in the FPGA world we don't have a CPU or timer. All we have is gates, AND, OR, NOT, etc and I/O pins. Perhaps there are ready made blocks of gates to make counters or perhaps there are memory blocks but that is "advanced stuff".

    So what is an FPGA "Hello World"?

    I suggest it is enough Verilog or VHDL and what ever other configuration set up is required to just get one pin set to output and driven up or down such that a LED comes on. That is it!

    Perhaps a better FPGA "Hello World" is a single logic gate. Better make it the simplest one, the NOT gate. Connect the input to an input pin connect the output to an output pin driving a LED. Press a button connected to the input and the LED comes on.

    Or perhaps that AND gate in VHDL we discussed earlier world do.

    A quick google turns up exactly what you want: http://www.jopdesign.com/cyclone/hello_world.pdf
    This is a "Hello World" tutorial for an Altera Cyclone and Quartus that does actually flash the LED! Might be a bit out of date but I'm sure the bulk of it is still true. I think I will be trying that on my nano board soon just so I can keep up with you:)



    It always baffles me when "Google Searches" turn up things on one end that don't solve squat, and on another end, the meaning of life...lol IN any case thank you for the link, much appreciated.


    Dr_Acula wrote: »
    This is a screen shot of my "hello world" - a logic gate, and just to show they exist, a 74xx part. I feel more comfortable working with "schematics" rather than verilog but that is just me. In any case, it is cool that the software lets you choose to draw the logic or work in a text based language.

    I'm still confused on how one configures them via schematic. I've read and seen explanations on HOW to do this but I don't get how it works and why. How does drawing a schematic translate to code? I'm assuming it's the compiler that translates everything, but still, a solid explanation would be beneficial.
  • kwinnkwinn Posts: 8,697
    edited 2013-10-30 16:25
    Download the paper from this link http://www.eecg.toronto.edu/~jayar/pubs/brown/survey.html. It provides a pretty good explanation of programmable logic arrays.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-10-30 19:41
    kwinn wrote: »
    Download the paper from this link http://www.eecg.toronto.edu/~jayar/pubs/brown/survey.html. It provides a pretty good explanation of programmable logic arrays.


    While I did not read every single paragraph, I did get the jist of it and I liked the article. Thank you for the link.


    Today while not doing much of anything I made a circuit in EveryCircuit which is a really nice app for Android devices. In any case, I think I am getting a better idea of how wire commands would work and how to assign each gate. I'm assuming, so I might be wrong, but the wire function/call/method is used to connect certain things together. So in my attached image, where would "wire" come in to play and where do you assign each Gate? For example, if I have a NOT and an AND do I just say, "IF NOT == 1, !AND" to turn one on and off etc.? Or do I still need to assign a wire call between them so they are "connected?" If I am not making any sense let me know and I will explain in better detail/clarity. Thanks again for all your help guys, much appreciated.

    P.S This is my design of a D-Type Fippity Floppity.


    D Latch Flip Flop_Detailed.jpg
    1024 x 512 - 58K
  • Heater.Heater. Posts: 21,230
    edited 2013-10-30 23:42
    PoundSign2,
    It always baffles me when "Google Searches" turn up things on one end that don't solve squat, and on another end, the meaning of life...lol
    Ha, yep. I know what you mean. Sometimes it helps to have someone around who is old enough to know the meaning of life when he sees it. Or bits of it anyway:)
    How does drawing a schematic translate to code?
    What we have in Quartus is a system that can translate source code, VHDL or Verilog, into some kind of configuration of FPGA logic. It also allows input via schematic which also ends up as some kind of configuration of FPGA cells.

    It is not clear that the schematic ever gets translated to VHDL/Verilog source code. May be it does, may be it does not. As far as using the system it does not matter.

    Personally I think that as we are in FPGA world we should forget the schematic entry and use VHDL/Verilog. That is much more interesting and will ultimately allow one to work on much moe complex logic designs. That is why Chip moved over to Verilog to design the Prop II.

    Also, your "D-Type Fippity Floppity" is already much to complicated for a "Hello World" on FPGA. You already have complex logic there to debug as well as just checking you can write and load the simplest piece of code.

    I suggest getting the design in that hello world PDF working first. Which is what I will be doing when I have some free time.

    P.S. I just down loaded and installed Quartus Web edition on my Debian Box. All proceeded with no problems.
  • rod1963rod1963 Posts: 752
    edited 2013-11-01 11:11
    PoundSign2

    Ideally you should have started with something simpler than a Cyclone - say like a Max3000 or Max II series CPLD. The goal at this point in the game is to become familiar with Quartus(which is a task in itself) and how to use either Schematic Entry or Verilog to create basic circuits and test them out in the CPLD. Say stuff like OR gating several inputs and outputting to a LED; address decoders or up counters, etc interfaced to simple I/O devices like buttons, LED's or even a seven segment display.

    Schematic entry makes it easy for beginners. It's just like drawing out a schematic and hooking up various components and is straight forward to understand.
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-11-01 16:29
    rod1963 wrote: »
    PoundSign2

    Ideally you should have started with something simpler than a Cyclone - say like a Max3000 or Max II series CPLD. The goal at this point in the game is to become familiar with Quartus(which is a task in itself) and how to use either Schematic Entry or Verilog to create basic circuits and test them out in the CPLD. Say stuff like OR gating several inputs and outputting to a LED; address decoders or up counters, etc interfaced to simple I/O devices like buttons, LED's or even a seven segment display.

    Schematic entry makes it easy for beginners. It's just like drawing out a schematic and hooking up various components and is straight forward to understand.


    I find learning how Quartus II works to be the most cumbersome part about everything. Although I still cannot get a file to download to the FPGA as it does not generate a "program" file, such as .sof, .jam etc. I have a .v file with good code provided via an example and I cannot get it to upload. Without a doubt the most difficult thing about FPGAs, is the software you use to program them. Quartus II imo is just a horrible piece of Smile. To many tools and options, to much information that bombards you, just too much of everything except simplicity. One piece of software that I found interesting was the Mojo ver3.0 that uses the Mojo IDE to integrate with ISE or Quartus (cannot recall off the top of my head). It was straightforward and simple in design. All the really technical Smile was pushed to the backburner and dealt in the background, leaving the user to just write up code in VHDL or Verilog and get at it right away. Why Quartus II does not do this I do not know... Take Eagle for example. A nice EDA tool that professionals can use, has the tools for the professionals but also isn't overly technical (to a point). When mentioning Eagle as a beginner I felt overwhelmed at first, but I was still able to get the jist of it and actually make or design something.

    Leaving feedback for Altera was also paramount. After all, what's the point of complaining if you don't offer or suggest a solution? Can't expect any changes if you don't voice your concerns. So hopefully in the not-so-distant future Altera could design or release something that caters to their low-end products and consumers. Obviously if I spend $1,000 on a dev board I know wtf I'm doing. If I purchased a $79 board, probably not. So one would assume that the tools you would use would also be very different. How does the crowd feel on this?

    In any case I downloaded the, "Verilog Golden Reference" ( http://www.fpga.com.cn/hdl/training/verilog%20reference%20guide.pdf ) and it seems to be something that suits my liking a lot. What is this syntax and what is that syntax, answered. That's a huge thing for me to understand is the syntax. Understanding how the FPGA works is grand and all, but what every article I've read lacks is simple definitions of terms and syntax. Sure, begin with 'module' but wtf is module to begin with? When do I use it? What can I add to it etc? These are key things and I think the reference guide/golden reference is helping solve some of those issues.

    So if anyone in the future reads these posts it would behoove them to go to the article I linked and look at the reference manual for verilog. I'm also trying to document what I watch/read so I can compile a beginner's sort of 'tool box' and link that in this thread at some point. For what it's worth I think there's a lot of great information in this thread that can help other's out in the future and I fully intend on adding more content to it as well, in addition to all of you fine fellow Parallax Members and the content you bring too. :)
  • PoundSign2PoundSign2 Posts: 129
    edited 2013-11-23 22:43
    It's been some time since I started this little FPGA journey, but now I'm at a point where I can really start to discuss it and understand it to a point where I can now get some work done! So I find it only befitting to post some details here in a thread that already contains a bunch of great comments and links that have great and meaningful content, why make another thread? So that is basically why I am posting in this thread, albeit a little old.

    In any case I gave up on Altera and the Terasic DE-0 Nano because, quite frankly, their software is ****. Eventually it got to a point where I spent more time trying to learn about how to program the device properly on my computer and getting it all to work, than I did actually programming, tinkering, and actually learning something. Mind you learning is really the whole point of why I bought the FPGA to begin with, I just wanted to learn more about logic and HDL. Quartus II had to go, and with it, so too did the Nano and all things Altera.

    After this I decided to take a step back and really take a hard look at digital logic. Although I felt my knowledge at the time would have sufficed, deciding to go back to the basics and build a better foundation of logic gates has probably helped me tremendously in my ability to get the FPGA doing what I wanted to do, avoiding some steps and jumping into things that mattered to me more. After all, it's all about you and why you do it. What helped me a lot was Sparkfun's Digital LogicBlocks. Now I didn't actually purchase these but what did help was their tutorials! Using an app called EveryCircuit I reconstructed what I saw in their tutorials and simulated their circuits. Then I learned how to build all the logic gates out of the universal gates NOR and NAND. I also did this by going to my local electronics warehouse and getting some discrete logic ICs. I built some oscillators from Inverters and some other flip flops from NAND Gates.

    Then came the big jump. After basically saying to hell with Altera I took the Xilinx route. Holy smokes what a payoff! Their software, first off, makes a heck of a lot more sense than Quartus II did to me. Everything from starting the project, synthesizing, generating files and programming your chip, it's cake. The board I went with was the Diligent Basys2 w/ 100k Gates for the academic price of $49.99. So money very well spent. I also got a copy of NI Multisim and Ultiboard for 10 bucks as a throw in item. More on this later. The board is great, fells solid and has enough stuff to keep you going for awhile.

    First what I started to do getting started with the board was take all those circuits from Sparkfun's tutorials and build a circuit based off of them in Multisim. What's cool with Multisim was I could build the schematic and export this to VHDL or Verilog for the Xilinx software. This was great because I was up and running and getting results pretty quick due to the schematic. It also made it a heck of a lot easier transitioning to Verilog because I knew how to construct the code and the modules made a lot more sense. Because certain things are made from other things, like a half-adder to a full adder to a counter. How to make it by using logic really made the programming a lot easier.

    The Verilog stuff is coming a long good so far however a good solid tutorial is lacking. There's plenty out there that can get you to blink LEDs pretty quick but I have yet to see one explaining how to even lay out the code, proper formatting like why do you start with module? What does module even mean anyways? (Not literally, I know them I'm just saying for example) A lot of trial and error and Google Searching. This is also why I am posting this is to see if anyone out there could help out in the coding department! I've learned a bunch by shear trial and error, but I would like some really solid explanation on syntax. And proper formatting for a Verilog program, like does it always have to begin with module? I haven't seen this explained tbh.

    Anyways, thanks for all your help, it's helped me make a lot of progress. Which I hope in turn helps others progress, but once again I'm asking for some help on this Verilog stuff. =P
  • Heater.Heater. Posts: 21,230
    edited 2013-11-24 05:52
    PondSign2,

    That's an interesting journey you are on there.

    When starting out programming normal computers it helps that one understands numbers and operations like add, subtract, multiply, divide.

    As I said earlier, when starting out with logic design, for FPGA or "real" logic chips, you need to be up to speed with bits, logic levels and the logical operators AND, OR, XOR etc.

    If you now understand how to make various flip-flops out of just AND or OR gates then you are off to a very good start when approaching VHDL or Verilog.

    It's interesting that you are finding the Xilinx tools easier the Altera. I have read many posts on various forums and blogs that recommend Altera is easier for beginners to get started with. I have never tried Xilinx and perhaps times have changed.

    Sorry I cannot advise about Verilog and it's modules, I have never looked into Verilog either. Some how it turns out that VHDL is more popular in Europe and Verilog more popular in the States.
  • Cluso99Cluso99 Posts: 18,069
    edited 2013-11-24 06:13
    Thanks for the info. I didn't find Xilinxs software that difficult. I bought a Spartan 3A Avnet board about 3 years ago for ~$50.
    In the late 80s and early 90s I used some Xilinx FPGAs in a commercial pproject. Back then I hand routed the whole array usung thexilinx software. Not sureif you can evev do this today. The FPGA did the major bus interface onto the backplane of an ICL minicomputer.
  • TorTor Posts: 2,010
    edited 2013-11-25 00:30
    Heater. wrote: »
    PondSign2,
    [..]
    It's interesting that you are finding the Xilinx tools easier the Altera. I have read many posts on various forums and blogs that recommend Altera is easier for beginners to get started with. I have never tried Xilinx and perhaps times have changed.
    I have never tried the Xilinx tools but I have tried to learn to program my Altera FPGA board with Quartus II. The design of the software makes absolutely no sense to me. Nothing, absolutely nothing is where I would expect it to be. I'm barely able to get things done by following step-by-step instructions (from posts in this forum among others) for how to get to the right menu. It would never have occured to me to look in those places for the features in question. So for now my Altera board remains a brick, and I suspect that it's permanent.
    On the other hand I have acquired a small Xilinx-powered board, it's pre-programmed so I can use it as-is (it's running a CPU emulator). At some point I'll want to start fiddling with it though. The author says he doesn't bother with the Xilinx GUI tools, he does it all with makefiles and stuff. Sounds good to me.

    -Tor
  • Heater.Heater. Posts: 21,230
    edited 2013-11-25 00:40
    Ah, makefiles. Sounds good to me too.
  • LeonLeon Posts: 7,620
    edited 2013-11-25 03:56
    I've used both Xilinx and Altera FPGAs and CPLDs, and find the Altera software much easier to use.
  • User NameUser Name Posts: 1,451
    edited 2013-11-25 06:36
    There is no question that Quartus II could have been more straightforward, and the documentation could have matched the current IDE better. Still, when I look back I wonder what all my grumbling was about.

    That pretty much describes my experience with every PIC IDE, every ARM IDE, and even the Propeller Manual. The PM seemed way too verbose and the Quick Reference too brief. I always wished that a one or two page explanation could have accompanied the QR...something like a condensed and summarized deSilva.

    But your success with Xilinx intrigues me. On that recommendation alone I'll likely pick up a board one of these days even though I'm a big fan of Altera.
Sign In or Register to comment.