To the student:

Considerable effort has been spent in the creation of these new CMPUT 329 labs, and you are the guinea pigs who will find out how well everything works out. I have tried to expose you to as much of our new technology as possible, while keeping things interesting with a bearable workload. I just took CMPUT329 myself last year, and can appreciate the situation that you are in. Believe it or not, I had you in mind while creating the labs. This course will not be a breeze. However, I hope that I have kept these labs at a level where they won't burden you excessively.

I sincerely desire that you find the labs interesting. I have tried very hard to avoid mundane and irrelevant labs as much as possible. Lab 1 is just an introduction. At this point in the course, there really isn't very much we can do in the lab without going way beyond what has been taught in class. Lab 2 was very difficult to write. It is just at the point where you know almost enough to do something interesting, but there really isn't very much you can do with combinational logic and VHDL - all the really interesting stuff uses at least some sequential logic, as you will appreciate it by the end of the course. I do a little bit of hand-waving in lab 3 to get around the use of some sequential logic, but I think that you can handle that. As a side note, anyone interested in crypto will probably recognize that Treehouse is inspired by the S-boxes of DES, and the final step looks sort-of like an Enigma wheel...

In lab 4 we finally hit sequential logic, but we keep it simple in this first lab. Surely you'll appreciate that you use VHDL for the RAM address counter, and don't have to build a 16-bit counter from flip-flops! I hope you can read the messages - it takes a little imagination to make all the letters fit on a 7-seg LED without diagonals! Lab 5 uses the state machine editor. I expect that you will appreciate how powerful this tool is. You'll probably have done manual state assignment as homework, or at least seen how hard a problem it is in class. Here, you get to "just draw the picture" and Poof! You have a state machine! Just imagine doing manual state assignments for your final design! Finally, lab 6. You get to go through the entire design process yourself, from spec to implementation. Have fun with this one, but remember to do it incrementally, because it really is a large project.

I hope that the FAQs are useful and help prevent you from getting stuck in some of the frustrating problems I have experienced while designing your labs. Have fun with the lab component of c329, and remember to run GXSTEST!
 

- Paul Berube

[Return to CMPUT 329 Lab Home Page]

Created by Paul Berube, 2001