Abstracts of Past Projects
A Student Application Note by Marc Dowdell, Amir Faiz, Mark
Mielke, Kreshka Niehaus & Travis Robinson : the AVC group
Fall 1999
Driver's Ed
Raymond Sung
Patrick Chan
Jason Mah
Andrew Sung
This project involved the design, implementation and test of a digital telemetry system. The completed system successfully gathers data from various sensors mounted on a remote controlled vehicle using a field programmable gate array. The FPGA packetized the data for synchronous transmission over radio frequency to a remote base station. The base station, which was implemented using a combination of two field programmable gate arrays, correctly recovered the transmitted data, did the necessary calculations and displayed the results in real-time on a VGA monitor. The RF transmission scheme was able to disregard invalid data and functioned correctly even when in close proximity to another system operating at an identical radio frequency. The collected telemetry data included relatively accurate measurements of the car's instantaneous velocity, instantaneous acceleration, heading and total distance traveled. Furthermore, the car's proximity to other objects could be detected at s!
hort distances and the results displayed on the VGA screen. The base station was able to interface to a 4x4 keypad and display user keypresses on the monitor. The keypad interface allows future expansion of the system for direction and heading control.
HIRRA
Paul Bartosek
Shauna Rae
Marta Bindas
The final result of our project is a four wheeled vehicle with front wheel steering and rear wheel drive, which we named Hardware Implemented Reactionary Robotic Algorithm (HIRRA). It is equipped with a variety of sensors such as whiskers, sonar and photocells. These sensors help the vehicle avoid any obstacles on its path towards the brightest light in its environment, it's final destination. Once an object is detected via the whisker sensors, the car begins maneuvering around it. If the sonar detects an object the car will immediately veer away in order to avoid the object entirely. Finally if no object is in the vehicles path it will go towards the strongest light source as detected by the photocells. Once the vehicle reaches its final destination under the light, it comes to a stop.
Porta-AMP Project
Kevin Mlazgar
Edmund Fung
John Koob
Dan Leder
Our project entails the design and implementation of an FPGA-based MP3-Audio Player that can have individual MP3-encoded songs downloaded on to ram via a parallel port. Our Porta-AM???(Portable
Advanced MP3 Player) player design would have the ability to play MP3 files from memory. At present all of the primary components are functionally tested. The final integration of our project is not complete due to an inoperative MP3 DSP.
SafeTalk : 8-bit Secure Signal Processing
Jodie Au
Josh Chong
Tam Paredes
Jeff Sieben
Amelia Yeoh
The SafeTalk prototype has been very successful in design, simulation, and implementation. The experimentation is promising and the outlook for future versions of SafeTalk is positive. The speech signal has been successfully converted to a digital signal and back into an analog signal. This milestone set the tone for successes during the remainder of the project. The transmission and receiving modules of SafeTalk were the cornerstones in the final result. A universal asynchronous receive transmitter (UART) simulated properly, and because it was asynchronous it transmitted and received encrypted data automatically. As well, the simulations correctly indicate that the framing and parity error checking mechanism was in place. Finally, the encryption module is designed to allow for a stronger algorithm to secure speech data. The most exciting part of the encryption module is that the data is not audibly recognizable if converted to analog. Even though the cipher that was used is n!
ot secure by some standards, your roommate could not tell what you were saying to your friends on the other line.
Voice Controlled Remote Control
Scott Medynski
Gabriel Ricardo
Michael Vandegriend
Within the pages of this document, we explore the design and the results of a successful attempt to implement a voice-controlled television remote control with the aid of an Altera FLEX10K70 field programmable gate array and some interfacing circuitry. All of the internal workings of the device are synchronous and operate on a 5 MHz clock. Voice input is sampled into the FPGA at a rate of approximately 8kHz and with 8-bit resolution. The operation of the device makes use of four spoken commands, "power" "up", "down", and "surf". These commands correspond to turning the television on and off, changing the channel up and down, and an automatic surfing function that allows for a preview of three seconds on each channel before incrementing. Word boundary, zero crossings, and a modified energy analysis are techniques that the speech algorithm makes use of. The recognition algorithm is based upon isolated word utterances and speaker dependent with training required. In the active mo!
de, the device is constantly listening so no physical contact with the device is necessary. The device also operates as a programmable remote in that it can accept various codes during the IR training in order to operate almost any single device at one time. Although designed with a Sony brand coding scheme in mind, the algorithm can be easily modified to suit almost any coding scheme in use today. In our controlled environment testing, we were able to achieve approximately 75% recognition of commands.
Vox-o-Tron
Charlena Fong
Marc-Julien Objois
Mariya Shterngartz
Catherine Single
The Vox-o-Tron is a vocoder-like device. Vocoders are widely used in electronic genres.
This report covers the design of a digital implementation of a vocoder using a single FLEX10K20 FPGA, a digital to analogue converter, and an analogue to digital converter. Also, the external support circuitry for the converters is covered.
RF Telemetry
Henry Young
Alex Tong
Ahmed Allam
Radio telemetry is an efficient and sometimes necessary means of data logging in remote environments. This project outlines the design of an RF telemetry system where temperature, vibration, and compass data are sent from a transmitter unit to a receiver unit and displayed.
External hardware used in our project includes a 10k thermister, a Dinsmore 1490 compass, a piezo film vibration sensor, and two BIM-433-F transceiver modules each with a standard antenna. The design of the data latching and transmission / reception blocks was implemented with the use of Maxplus2 over two Altera EPF10K20RC240-4 FPGAs. A static interface to a VGA monitor was also implemented as an aid to introduce our project.
Winter 1999
Blackjack Strategy Master
Rishi Kapoor
Matthew Remington
Denise Garvey
The following report documents the development of the blackjack card
counting system. The card counting system is a digital device created for an
EE 552 project. The system is capable of informing the user of the
appropriate play and the amount to wager on each hand played. The goal of
the blackjack card counter is to increase the player's odds to that greater
than the house.
The design of the blackjack card counter is implemented with the use of
Maxplus2 and is implemented with the Altera EPF10K20RC240-4 FPGA.
External hardware used in our design included a 4x4 keypad and a Liquid
Crystal Display (LCD), the Emerging Display EC16220YLYU.
Digital Motion Tracking System
Andrew Dunmore
Anthony Eshpeter
The completed project is a digital motion tracking system. It is capable of
tracking the
position of up to 31 sensors. It is queried for data through a parallel-port
connection to
some sort of device (most likely a PC). The querying device is capable of asking
the
system to:
1.Initialize. The system will initialize, and pass back the number of
attached sensors.
2.Obtain Sensor Information. The querying device asks for information on
a specific sensor attached to the system. The system will then return
the position information of that sensor. If the system is unable to
retrieve the information, it will return an error code.
Radio Frequency PSK
Transmitter/Receiver
Norman Bo
Kelvin Leung
David Ritter
The goal of this project was to implement a digital RF transmitter and
receiver. Binary data is transmitted using PSK (Phase Shift Keying)
modulation, currently at a carrier frequency of 800 kHz. A receiver, with
knowledge of the frequency but not the phase of the carrier, can receive this
signal and demodulate it to recover the original signal. Optional
enhancements to the project that are not at this time fully tested include a
microprocessor interface to both the transmitter and receiver, variable
carrier frequencies and data rates, and carrier frequency recovery at the
receiver.
Tetris
Feng Gui
Tao Zhi Peng
Khern Yang Twang
Our project is to design and implement a Tetris game by using FPGA. Tetris
is a puzzle game that uses 4 square blocks joining edge to edge to form
various combinations of shapes. There are 7 unique shapes. The shapes are
controlled with the arrow keys from keypad or joystick. Both keypad and
joystick are used to control the rotation of the shape. The reason we use both
keypad and joystick as controller tool is that the players can have two options
to control the game conveniently. However, we may use either keypad or
joystick in our presentation to make the best effect.
Data Compression Co-processor
Tim Bensler
Eric Chan
The following report outlines the
development of a data compression
coprocessor implemented in hardware
using an Altera EPF10K20RC240-4 chip
interfacing with a personal computer via
the RS-232 Serial Port. In this report
is a description of how we built the
RS-232 interface, how we interfaced with
SRAM external to the FPGA, and a
description of the compression algorithm
that we employed.
Logic Analyzer
Nelson Epp
Arun Parmar
Sean Verret
This report details the present state of
the Logic Analyzer project. A Logic
Analyzer has been designed, constructed,
and tested to meet certain
specifications.
The Logic Analyzer uses Altera's UP1
Education board, specifically the
EPF10K20RC240-4, along with minimal
external hardware components in order to
function correctly.
The project implements both data and
control paths in order to successfully
complete the project.
The functionality of the design contains
three major components. The first is the
pattern detector that detects a certain
pattern and displays the corresponding
waveform after it. Secondly, the IC
tester is used to test certain 74HCxx
series. Finally, the main menu is used
(utilizing the VGA monitor) in order to
scroll and choose between the two parts
of the Logic Analyzer.
The uCMK Microprocessor
Michael Rivest
Kelly Lawson
Charlene Eriksen
This document discusses the design of the uCMK, a load/store RISC
microprocessor with five pipeline stages as in the DLX architecture, and a
set of 11 instructions. To create the uCMK, we needed to determine how to
transform our theoretical knowledge of the DLX architecture into a digital
circuit realizable using VHDL and FPGAs. Many important design features
were implemented, including the use of forwarding and stalling to control data
and instruction flow through the pipeline stages. Our design also included the
use of separate ROM and RAM memory blocks and the implementation of a
general-purpose register file.
Voice-Activated RC Car
Andrew Stanley-Jones
Kevin Grant
Darren Gould
This project implements a voice recognition system capable of issuing
four different commands to a radio-controlled (RC) car. The voice
data is acquired using an external microphone and circuitry, which
amplifies and digitizes the voice at 11,000 samples per second. The
digitized voice is then fed into a field-programmable gate array
(FPGA), the Altera EPF10K20RC240-4. The system has two main
operating modes, training and recognition. Training mode is used to
initialize and train the system for each command and/or speaker. Each
of the four commands is recorded four times; thus, sixteen recordings
are required to completely train the system. In recognition mode, the
FPGA performs voice recognition and issues commands to the RC
car. After pressing the "recognize" button, the command is spoken. If
a valid command was found then that command is issued to the RC
car. The RC car controller can issue the commands: forward,
backward, turn left or turn right. The car is normally stopped and the
controller issues each command to the RC car for one second,
allowing the relatively slow voice commands to control the fast
moving RC car. To control the RC car we use the original commercial
handheld controller with the mechanical switches replaced with
relays. Overall, the system performance was relatively good at 90%
recognition for a consistent speaker and audibly different words.
A Student Application Note by Marc Dowdell, Amir Faiz, Mark
Mielke, Kreshka Niehaus & Travis Robinson : the AVC group