[chbot] Kickstart in FPGA course...

Mike Field hamster at snap.net.nz
Tue Feb 15 04:38:41 GMT 2011


Hi Charles,

It doesn't matter which board, as long as we all use the same tool stack.

If anybody wants to get a bespoke board because it has just the features 
you want and the tools you want then you won't be able to leverage of 
off the shared experience and resources of the group when it comes to 
getting your hardware and tools working. You will most probably learn a 
lot more doing it though!

That is why I am most happy if people are using any  Digilent board that 
works with Webpack. The options are:

- Basys2-100k board - AU$97
No offchip Flash/Ram,
equivalent to 100,000 logic gates
some onchip RAM/ROM

- Basys2-250k board - AU$110
No offchip Flash/Ram
equivalent to 250,000 logic gates,
more onchip RAM/ROM

- Nexys2-500k board - AU$172
16MB Flash, 16MB RAM
Equivalent to 500,000 logic gates
even more onchip RAM/ROM

- Nexys2-1200k board - AU$215
16MB Flash, 16MB RAM
equivalent to 1,200,000 logic gates
even more of onchip RAM/ROM

I do have one board to lend if price was a real pain point but they were 
keen to give it ago, but even the cheapest baord one will do a lot of 
stuff (eg drive a PS/2 mouse, Serial port , and VGA, and other stuff at 
the same time)

Anything more than that is getting into really serious money. Likewise 
if everybody else says that Altiris is "da bomb". or is used in the 
local Uni, then I want in on that stuff and will get one for myself.

Another option would be for a tiny CPLD, at AU$30, but if you then pay 
AU$49 for a JTAG cable, it is only $19 less than a board with power 
supply, switches, connectors, clocks and lights on it, and you don't 
have to play around with a breadboard and jumpers. In my book CPLD are 
not really a starter for 10 for a first introduction to programmable logic.

I guess that my aim is to  help people with the "This stuff is looks to 
be really cool - why haven't I heard more about these? How do I start" 
sort of problems. Gosh darn it is hard to get started by yourself.

STOP READING NOW UNLESS YOU HAVE NOTHING BETTER TO DO :-)

Here is my experience:
"Hey, I would love to play with one of those, I can almost afford to get 
one!" Then the problems start...

- WTF is JTAG?
- Do I need a JTAG programmer?
- Which programmer for what board?
- Will this work with that no-cost software?
- This board has extra RAM, this one has a DIMM socket, this has none! 
What do I want?

Oh, bugger it I'll take a punt on Board X. It's the best I can get in my 
budget. "Holly heck! Check out that postage!" I'll have to wait for my 
pocket money (being a married man and all...)

< Contact distributor, ask a few questions, wait a week or two for the 
board to arrive>

I've got the board.
- Oh, what drivers to I need?
- Install drivers and board vendor's tools.
- But where is the design tools? They are not in the box!
- How do I get them?
<Download the tools from the site>
- Bugger - didn't work with windows 7 (at that time).
- Install an XP virtual machine.
- Bugger! I've downloaded the wrong version - I wanted the free one!
<Download another bunch of files>

Phew! Now have toolkit Installed, but...
- What's all this licensing crap about?
<Obtain license and work out how to apply it>

Yay! ready to build something
- Oh, what settings do I need for the FPGA type on my board?
- What model/packaging/speed grade is it? Where are the parts datasheet?
- How do I get the reference projects to compile and download?
- Hey they compile and download but they don't work! What's up?
- Where do I get an accurate constraints file? The net names one I have 
doesn't match the I/O connectors in the reference projects!

Gosh, that was to hard, how about I just play with the lights and 
switches.. success!
- How come  doesn't the system clock work?
- Oh! It's on a different pin than the tool expects by default!
Wow. A binary counter. That was bloody epic.

And from then on it was lots of shagging around... but still a lot of 
hard questions!
- What datasheet do I need for the memory?
- How can I stuff some test data into flash?
- Can I make it talk to my PC over USB?
- Which pin is that USB-to-EPP bridge WRITE  signal on? It's not 
mentioned anywhere in the documentation!
- Bugger! "Memutil" doesn't seem to work with this flash chip!
- How do I use this using the C API on the PC!
- All I want to do is write some data flash from my PC. How hard can it be!?
...
...





More information about the Chchrobotics mailing list