lecture 141 lecture 14: final project kickoff ece 412: microcomputer laboratory

17
Lecture 14 1 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Upload: horace-wells

Post on 26-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 1

Lecture 14: Final Project Kickoff

ECE 412: Microcomputer Laboratory

Page 2: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 2

Outline• Get you thinking about the final project• Overview the process, due dates, etc.

Page 3: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 3

Final Project• Opportunity for you to build a system of your choice

from the components in the lab– Great chance for you to incorporate some of your other

interests into the class– Somewhat-rare opportunity to start a design with a

completely blank sheet of paper– 2 person team project

• Think about design project in terms of building an interesting device– “Hardware fractal rendering engine” good– “Learn how the USB protocol works” bad

Page 4: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 4

Project Timeline/Grading• Initial proposal + report: together 20% of Project

Grade– Proposal

• 4/6 & 4/8 in class

• 20-25 minutes presentation for each team in class

• 10% grade

– Report• Due 4/18

• Three-pages (four at most)

• May contain: introduction, background, motivation, impact, block diagram, and workload partition among team members

• Goal: give us enough information that we can provide feedbacks about project complexity and suggestions

• 10% grade

Page 5: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 5

Project Timeline/Grading (II)• Project Presentation: Due 5/12 (no extensions or bonus days), 20% of

Project Grade– Present what you’ve built– Each team will be given 30 minutes for presentation

• Project Report/Demo: Due 5/14, 30% of Project Grade– Expanded version of initial report (6 pages, 8 at most)

• Introduction, background, motivation, impact, final design, and workload partition among team members

• Detailed description of the implementation and functionality of the design• Block diagram of the system• Testing• More like a technical paper than earlier MP reports• Among other things, highlight how your design changed during implementation• Attach design documentation (for example, major simulation trace)

– Scheduling demo time with the TA• Impact of the project: 30%

– Usefulness – Novelty – Complexity– Give students motivation for good and useful designs

Page 6: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 6

Examples of Past Projects• FPGA synthesizer• Streaming audio over Ethernet• Pac-Man™, Tetris™, and other video games• Shape recognition in hardware• Video processing• Handwriting recognition via mouse input• Motion detection in images• CFD Simulation Acceleration Using FPGAs• Duck hunt• Night vision: http://www.youtube.com/watch?v

=U3jT0ZOIylY• …

Page 7: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 7

Using Hardware We Don’t Have in the Lab• Feel free to design projects around peripherals you

have– Ex: student several semesters ago who brought in his

synthesizer for a MIDI project

• Caveat is that you’re using any outside equipment at your own risk, and we won’t be able to replace/fix it if something goes wrong– Never been a problem…

Page 8: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 8

Using Resources from Publications/Web/Etc.• Basing your project off of something you’ve seen

elsewhere is completely ok.– Example: based on a technical paper a friend brought back

from an internship

• Using a published algorithm/technique that you implement is also ok– Need to cite source in your reports

• Rule of thumb is that you need to implement the central portions of your project yourself

• The parts of the project you implement are what we’re going to judge in terms of project scope/complexity

Page 9: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 9

• Some ideas

Page 10: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 10

Network Applications

• Network sniffer– Output information about network traffic to VGA in

real time– Statistics may include packet types, source,

destination, etc

• Network pong– Convert mouse movements into up-down vectors– Send vectors over network to opponent’s host– Opponent may be a standalone application or

another XUP board

Page 11: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 11

Music Synthesizer

• Associate certain keys on the PC keyboard with piano notes

• Synthesize waves corresponding to appropriate frequencies, duration, etc

• Send waves serially to ADC to generate audio signal

Page 12: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 12

Analog video transformer

- Input a video signal from analog input- Perform various operations on the signal

- Hue/saturation adjustment- Shrink/stretch the video window- Invert the video

- Use the keyboard to control the operations performed on the input video signal

- Output manipulated stream to VGA

Page 13: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 13

Video Games

• Tetris– Blocks of different shapes scroll down the screen.– User can shift them left/right and change their orientation– Keep score for each laid block and game over when heap

crosses a certain height

• Flying Shuttle– An airship flies within a tunnel– The walls of the tunnel follow different curves– The user has to guide the airship, so that it does not hit the

walls– Keep score for crash-less time, increase airship speed

Page 14: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 14

Paint – like applications

• Paint– Provide different pen style, shape, color and eraser tools– Accept mouse input and display lines and shapes drawn by

user– Optionally save drawing into file

• Panoramic Image viewer– Use “panoramic” image and provide “pan” tool – Manual mode: accept user input for controlling the panning– Auto mode: smoothly pan image from far left to far right and

back again

Page 15: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 15

MP3 Player

• Use a free MP3 audio decoding software package and port it to PPC and the Xilinx board

• Pre-store MP3 file to board memory or download user-provided file

• Decode MP3 data and send it to the board audio codec chip for playing

Page 16: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 16

Own-interest ideas

• Feel free to propose other projects that may be of interest to you

• An interesting scheme would be accelerating computation hungry applications– Design and use custom accelerating cores that can be

called by PPC to execute compute intensive tasks– Measure performance gain (vs using PPC on its own)– Experiment with different alternatives

Page 17: Lecture 141 Lecture 14: Final Project Kickoff ECE 412: Microcomputer Laboratory

Lecture 14 17

Next lecture

• Design Abstractions and Design Flow