Silicon Valley Code Camp : October 3rd and 4th, 2009

Bob Smith

unassigned
About Bob
Bob Smith is an engineer with several years of hardware and software design experience. His interests are in Robotics and Linux. He has written a book on Linux and is currently designing FPGA-based peripherals for use in robotics and other industrial control systems.
{speaker.firstName} {speaker.lastName}

Speaking Sessions

  • "Hello, World" in Verilog

    3:30 PM Sunday   Room: 3106
    <p>In this introduction to Verilog "hello, world" tutorial you will learn how to compile, install, and run Verilog programs using the Xilinx Verilog compiler and the Baseboard4 FPGA development board.</p> <p>The class is divided up into two one-hour sessions. The required equipment for the class is a laptop computer (Linux or Windows) with an Ethernet or WiFi interface and an available USB port. The FPGA board is the Baseboard4, which is available locally at Anchor Electronics in Santa Clara or at the vendor's web site, http://www.demandperipherals.com.</p> <p>In the first session you will visit the Xilinx web site in order to get a registration ID allowing you to download, install and then use their free Verilog compiler. </p> <p>The second session is a lab exercise in which you will be introduced to "user constraints files" or UCF and some Verilog code. The UCF relates the hardware pin names to their equivalent Verilog names. We will then look at the sample Verilog code where the relationship between the UCF and the Verilog code will become apparent. Next you will compile, download, and test the counter program which increments the LEDs on the Baseboard4. As a final test of your mastery of the build process and beginning understanding of Verilog code you'll be asked to convert the program to one which decrements (rather than increments) the LED count.</p> <p>These sessions won't teach you Verilog any more than the the original "Hello, World!" program taught you C, but you'll leave with a working tool set and an FPGA board that you know how to program.</p>