525.442.31/33: VHDL/FPGA Design
Announcements:
Questions regarding class material and assignments should be directed to the mailing list through vhdlforum@echelonembedded.com. This forum will be monitored by the instructors. Use of this forum allows you to be assured an answer even if one instructor is currently unavailable. Note that you must join the forum to be allowed to post to the group. This is by invitation only, so email one of us with your email address and we will add you to the membership list.
Class 6 notes updated, 3/23/09 (11:00 a.m.)
Lecture Notes:
Lectures provided in PDF format.
- Class1: Intro to VHDL, Lab Equipment Intro, Basic combinatorial Logic
- Class2: Intro to Sequential VHDL, Processes, Synchronous Design
- Class3: Intro to Testbeds, Types and Resolution Functions
- Class4: Operators and Standard Numeric Packages
- Class5: State Machines: VHDL Basics, and XST Synthesis
- Class6: Picoblaze Processor Introduction – Hardware/Software.
- Class7: Special Structures >Aux Slides
- Class8: Mini-Lecture: Intellectual Property
- Class9: Mini-Lecture: Simulator Operation and Testbench FILE I/O
- Class10: Mini-Lecture: Timing Analysis
- Class11: Mini-Lecture: FPGA Power
Homework:
When the laboratory assignment asks for an electronic submission – please do so with the link below. Name your lab files as instructed to make sure that things end up in the right place (for example, lab1_yourlastname.zip orlab1_yourlastname.doc).
Laboratory assignments and associated links:
- Lab1 (Due 2/2/09): Simple 7-Segment Encoder, Tutorial, Another Tutorial
- Lab2 (Due 2/9/09): 7-Segment Encoder and Character Shifter, ModelSim Quick Reference
- Lab3 Slides, Lab3 (Due 2/16/09): Simple SRAM Memory Interface, Very Simple Testbench Example
- Lab4: VGA Demonstration (Due 3/02/09), vga_controller_640_60.vhd, vga_example.bit
- Lab5: FSM Exercise (Due 3/23/09)
- Lab6: Picoblaze Design (Due 3/30/09)
- Lab7: Lab 7, Creating a Multi-Cycle Complex Multiplier with a DSP48 Block
- Lab8: Lab 8 (Due 4/20/09), DAC Codec (dac.vhd), (XAPP154)
- Final Project
Links
Varous links of interest:
Files
Files available to help with labs:
- Bray’s Terminal: A Terminal Program that will print in hex and do lots of nice things for easy debugging
- NCH Tone Generator : A Simple Tone Generator for audio based labs. Source: http://www.nch.com.au
Tutorials
A list of basic tutorials:
- A simple tutorial for using the NEXYS2: NEXYS2 Tutorial
- A simple tutorial for Programming Flash on the Spartan 3 Starter Kit: S3 PROM Tutorial
- A picoblaze processor tutorial and sample project for the class trainer (NEXYS2) is available on the FPGA Resources page.