Jump to content
  • 0

Nikhil Singh

Question

Can anyone suggest me some good beginner level projects which i can implement on spartan 3 fpga kit using VHDL. I have some projects in mind like the implementation of 8-bit microcontroller in fpga. But is the project too complex is think.It would be great if anyone can suggest me how to begin.Thanks in advance.

 

 

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

In many ways that depends upon you.  What are you interested in doing?

I would personally start by examining my board.  I would envision it as a board of peripherals, and ask the question: which peripheral would I like to conquer next?  Then build a controller to learn and demonstrate mastery of that peripheral.  You can find some fun tutorials regarding various peripherals and peripheral types at fpga4fun.com. 

In my world, all controllers are bus driven, so usually my first project is to learn to control a bus from the serial port.  From there, my first exercises include reading a hard-coded version number from the device, then a counter, then a GPIO device that lights LED's, creates interrupts from buttons, reads switch states, etc.  From there you can move on to building a flash controller, or perhaps even a controller for whatever RAM you have access to.  The neat thing about such a project is that if you eventually want to build a CPU, you'll have already done most of the grunt work.

Along the way, I would recommend that you get very familiar with your "pre-hardware" tools.  For me, this is formal verification and Verilator based simulation--two sets of very powerful and open source tools that (sadly for VHDL designers) only have Verilog implementations.  Still, I know of ghdl--an open source simulator for VHDL.  Eventually, you'll discover you spend more time working with these "pre-hardware" tools then you do with the actual hardware.  Something to think about.

The next big thing to learn is your hardware debugging tools.  Xilinx sells an internal logic analyzer, which used to be called a chipscope.  I use what I call a wishbone scope (wbscope).  You might wish to learn to build your own.

Some time ago I put together what I thought was a good outline for FPGA development.  I split it into three separate but related learning thrusts: Simulation and formal verification, hardware debugging, and hardware interfaces.  My recommendation was to learn all three at the same time.  The hardware interfaces would be your goal, the hardware debugging your initial way of getting there, and then gradually the simulation and formal verification would become the norm.  See the attached picture expressing these thoughts.  That said, I'm not building any such FPGA development courseware, although I have built a formal verification course that I teach, and I am known for blogging at zipcpu.com.

course-outline.thumb.png.b54a7698ec243593236325a08d477aba.png

Hope this gets you started!

Dan

Link to comment
Share on other sites

Blinking a LED and UARTs is an excellent plan to start. You can spend months with those and learn efficiently.

And yes, spend the time with simulation, use hardware mainly as reality check and for motivation.

I'd go for iverilog & gtkWave first. If both are power tools, iverilog comes "batteries included", Verilator requires a 3-phase outlet ?
Edit OP asked for VHDL. Never mind... maybe the built-in simulator is sufficient.

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...