why not!
in partnership with karl petre and mas chano
fall 2004 - bruce maxwell
engin@swat:    physical systems analysis   .   digital systems   .   computer architecture   .   computer graphics   .   control theory   .   mobile robotics   .   VLSI Design   .   Electronics

Archaic design
For the first task, we built a parity checker which took as its inputs, a 4-bit binary number and one even parity bit. A circuit was designed in such a way that the number of 1's in the 4-bit binary number should be even when the parity bit is included. Another circuit was made to check whether or not a four-bit binary number was a prime number. For the second task, a digital circuit was designed and built to output the proper signaling sequence for a 4-way intersection.

E 15. Fundamentals of Digital Design
Digital systems are fundamentally different from continuous systems. This course will introduce students to digital system theory and design techniques, including Boolean logic, digital representations of data, and techniques for the design of combinational and sequential digital circuits. Because moving information between systems is critical to real-world applications, the course will include interfaces between digital systems and between digital and continuous systems. In addition, the course will cover selected topics in numerical analysis and applied mathematics that are relevant to modern engineering and computer science.

Modern Digital Design
In this lab we used ALTERA to simulate traffic lights and program a parity checker that also displays the values of digits in hexadecimal on the 7-segment display. We also devised VHDL code that takes two 8-bit 2's complement numbers and outputs their difference in the 7-segment displays as a hexadecimal number. Using ALTERA, we programmed the ALTERA boards to perform these tasks.
Sequential Circuit Design
In this lab, we implemented a reaction timer and a state machine that can vary the timing of the traffic light sequence based on a sensor input like a walk button or under-the-street pressure sensor. The reaction timer used a linear feedback shift register to generate a random number and then used this number to light up an LED; as soon as the LED was lit up, the counter started counting (in 10s of ms) until a user reacted by activating a sensor.
Talking State Machines
For this lab, we implemented an event timer that displays the time between two consecutive events (ie. a button being pressed). We also implemented two state machines that talk to each other. The transmitter transmits data to the receiver and the receiver displays the data on a seven-segment-display.
Sensor System
in this lab, we implemented an analog to digital converter circuit. the first part of our circuit took the output of a photocell and amplified it to a working range of 0 to 5 volts. this signal was then sent through a low pass filter to remove excess noise. we then converted the filtered analog signal it to a digital signal, which was relayed through parallel communication to 7-segment display.
Final Project - THE GAME! altera board communication and handshaking
For the final project we created a simple game (that might get pretty complex due to fierce competition among lab partners) that used three Altera® boards. The main board controlled the game and used parallel connection and handshaking to communicate with the other two boards which kept count of the score. (I beat Karl so badly...)