I am experienced with Electronics and programming but never had anything to do with FPGA. I want to start with an FPGA from Altera and have installed their Quartus II. Now my guess is I have to learn a language like VHDL or Verilog. What language is easiest/fastest to learn or what other programming-language can you recommend?
Having said that, there is almost as strong of case for Verilog. VHDL is somewhat harder to learn the basics of, and Verilog is harder to master. The area under the learning curves is similar. There have been religious wars over this in the past. At minimum, learning how to read both is good.
One hint, don't think of it as programming. You are specifying hardware. Try to work out what hardware will implement what you write as you write it.
--
Phil Hays to reply solve: phil_hays at not(coldmail) dot com
If not cold then hot
"The Verilog Hardware Description Language" by Thomas & Moorby is fair to good. It describes the language, it's written in a tutorial format, but unless you have a pointer to
I'm not saying you should - but you could use schematic capture in Quartus.
Using the MegaWizard (which hides some parameterized HDL behind schematic symbols), hierarchical schematics and a well thought out library you can get some complex designs in a reasonably concise (and beautifully self-documenting form)
I know there are a million and one reasons not do this - but you could.
I started with vhdl and then saw communication industry shift to verilog. Now I use verilog all the time. I find that there are more resources dealing with verilog than vhdl. You mentioned you are trying to start with altera devices, I notice that the newer design examples and documentation on altera's website also uses verilog.
that require verilog expertise than vhdl.
strides towards ease of use with their latest standards. but you'll have more fun with verilog once you master it.
Finally, to add to what others have said regarding thinking hardware - do not choose verilog because it will let you write software like code. For the best quality hardware it is imperative that you think hardware when you are writing code...
I started with vhdl and then saw communication industry shift to verilog. Now I use verilog all the time. I find that there are more resources dealing with verilog than vhdl. You mentioned you are trying to start with altera devices, I notice that the newer design examples and documentation on altera's website also uses verilog.
that require verilog expertise than vhdl.
strides towards ease of use with their latest standards. but you'll have more fun with verilog once you master it.
Finally, to add to what others have said regarding thinking hardware - do not choose verilog because it will let you write software like code. For the best quality hardware it is imperative that you think hardware when you are writing code... or should I say describing hardware.
For that matter if you're writing software for an embedded system you should be thinking about the assembly being generated _and_ the hardware consequences.
On a sunny day (Tue, 25 Oct 2005 11:15:57 -0700) it happened Phil Hays wrote in :
Google: 'fpga vhdl sucks' 2460 hits 'fpga verilog sucks' 1340 hits ;-) _________________________________________ Usenet Zone Free Binaries Usenet Server More than 140,000 groups Unlimited download
Noticing you're very probably Dutch, you could try Bert Molenkamp's VHDL book - it's a bit dated but will give you a very thorough understanding of the language and what which construct generates.
Section 2.6 lists some recommended books, though there is not much in the way of description for many of them.
I find Digital Systems Design with VHDL and Synthesis by Chang to have some good VHDL examples, while the Ashden book is also a staple on my bookshelf. If you want to look more at FPGA from a hardware point of view, then try The Design Warrior's Guide to FPGAs by Maxfield.
Im just beginning with FPGAs too, and just completed my first design. I used the schematic entry capability of Quartus, and didn't have any problems really. I did read somewhere that if possible you should use the lpm_megafunctions in lieu of some of the old TTL parts you might be tempted to use at first. That is a very well founded piece of advice! Some of the implementations of the older parts are not as optimized as the lpm equivs (I'm guessing) and got caught with some very intermittant and glitchy outputs until I remembered reading that, and taking it to heart. Then, everything got much much better!
I recommend "HDL Chip Design" by Douglas Smith (if I'm not mistaken). It shows both VHDL and Verilog in action. I think reading that book is a good start to know VHDL and Verilog concurrently.
Other book, I've read "Fundamentals of Digital Logic with VHDL Design" from Brown and Vranesic. it gives a smooth transition from board application design to ic design. but it's for beginner to intermediate reader I think.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.