CSE 477 – Hardware Design Capstone
Spring 2003
Carl Ebeling

Project Ideas

Many of you already have ideas for what you want to do.  Here are a few concrete project ideas, plus some general ideas that can be used as a basis for a project.

  1. Cell Chemistry Simulator: Biologists are starting to simulation the chemistry in parts of the cell at a very low level.  These simulations are very time-consuming and would benefit from hardware implementations.  Researchers at CSI (Cell Systems Institute) are very interested in working with students on such a hardware simulator.  This could lead to something really big.
  2. Daughter Board for the Virtex1000 Prototype Card: The Xilinx prototyping board for the Virtex 1000 is a bare card.  Projects using this card have to add discrete parts to make a complete system.  Examples include memory, serial interface, USB interface, RAMDAC, video codec, NTSC codec, Ethernet PHY, etc.  This project would determine what this daughter board should have, design and build the PCB, and implement a simple design that shows it works.
  3. Noise Canceling:  Noise canceling is done by somehow recording the noise that you want to cancel and playing it back out of phase.  Easier than it sounds!  There are many cool applications that each presents its own challenges.  Perhaps the most interesting is noise canceling in a car.
  4. Go Machine: Now that computer chess has been "solved", it's interesting to note that Go programs are still pretty weak.  Go relies much more on pattern recognition than computation in the form of search, and thus presents a harder and potentially much more interesting problem.  Designing hardware to solve part of this problem would be a fascinating project.
  5. Ethernet Interface: The XSV boards have an Ethernet PHY interface, and we also have code for a TCP/IP stack, but noone here has done a project that uses the Ethernet interface.  Just bringing up this interface would be an interesting project.
  6. Embedded Processor:  We currently have an 8051 core that we use for projects.  A better core called the MicroBlaze is available from Xilinx.  This project would use the MicroBlaze as part of a larger project, e.g. an Ethernet interface.
  7. Measuring Body Motion: Use accelerometers to measure the motion of different parts of the body.  This can be used in many different ways.  For example, measure hand motion could allow gesture interfaces.  Measuring foot motion can be used to make a smart pedometer that is much more accurate than the usual ones.
  8. Communications Front End:  More and more computation is being pushed from the analog to the digital.  This project would be collaboration with EE students and professors to implement a complete communications front end, from the antenna to the received signal.
  9. Laser Mouse:  An idea that has been around for a while is to use a laser pointer to replace a mouse for large displays.  A camera is used to track the beam and determine when the beam is interrupted, which corresponds to a mouse click.  The problem is that cheap cameras don't have very good resolution and they only scan at 30-60 Hz.  We can solve both problems by using an array of cameras operating asynchronously to get better time and spatial resolution.

This list is by no means complete-- feel free to come up with another. Also, you may use any and all of the hardware-lab resources for your project.