I am a graduate student pursuing an MS degree in the Department of
Electrical and Computer Engineering at Brigham Young University.
I received my BS in Computer Engineering in December 2009 from BYU.
My master's thesis is focused on FPGA reliability - specifically radiation testing
of FPGA Multi-Gigabit Transceivers (MGTs) for improving reliability of MGT systems in space environments.
Other technical interests include Computer Architecture and Embedded Systems. I am also
an active member of the
Global Engineering Outreach (GEO) Club on campus and have served as the
Vice President and Webmaster of that club. GEO is focused on improving the quality of life
in developing communities through engineering.
I am married and have a wonderful son. I enjoy running, speak Mandarin and Cantonese, and
am interested in everything to do with China. I also have
a passion for photography and own and operate a small
photography business.
Research
Current Research:
Radiation Testing of FPGA Multi-Gigabit Transceivers (MGTs) with the Aurora Protocol
The goal of this project is to provide insight on the reliability of FPGA MGTs in a radiation environment.
We hope to provide suggestions for protocol designers/users to provide reliability and availability for MGTs
in radiation environments, particulary for space-based FPGA applications. As of July 2011 we have completed
two radiation tests at Texas A&M University's Cyclotron.
The design for these tests has been complex both in terms of software and hardware.
Development of the system was done on FPGAs, Embedded PowerPCs, and a PC using VHDL, C, and Python.
The hardware involves two independent board stacks connected by 2 CX4 connections, each with 4 PCB boards and
3 FPGAs containing a total of 7 clock regions. Each board stack has an RS232 connection to the PC as well as
3 40 pin cable connections to another control board and laptop.
Past Projects:
Robotic Vision
I worked on a variety of projects related to robotic vision for a graduate level course.
Most notably, as a team we worked on a tennis ball catcher that used stereo vision to
catch a tennis ball launched at 55 mph. We also worked on a sign language recognition program.
You can see more about these projects under the video tab on this page.
Robot Racers - Autonomous, Visually Controlled Vehicles
This project used a custom FPGA based platform mounted on a Remote Controlled car to allow the car to
drive autonomously. Navigation was based primarily on input from a camera mounted on the car.
This project involved
vision algorithms, embedded programming, navigation algorithms, and wireless communication.
You can see more about this project in the "What do Electrical and Computer Engineers Do?"
video on the video tab on this page.
Minivan - Autonomous Vehicle Design
For this project we used a minivan which had been modified to allow computer controlled steering, acceleration,
etc. We used a LabView interface to program the control algorithms.
You can see more about this project in the "What do Electrical and Computer Engineers Do?"
video on the video tab on this page.
Publications
“Dual Channel Architecture for Reliable FPGA High Speed Serial Links”,
in
Proceedings of the IEEE Aerospace Conference, March 2011.
“Radiation Testing of Aurora Protocol with FPGA MGT”,
Respace / MAPLD Conference 2011, August 2011.
Experiences
Internships:
ImSAR LLC, Spanish Fork, UT
I worked as an Embedded Engineering Intern for ImSAR LLC during the summer of 2009. ImSAR focuses on the development
of technologies related to digital signal processing, radar, manufacturing, and inertial measuremnt systems.
I had several
responsibilities in this small company, but my primary task was to optimize a C program algorithm
for an embedded DSP chip in order to meet the specific time constraints of the system.
International Experiences:
Global Engineering Outreach - Windmill Design
The Global Engineering Outreach club at BYU seeks to provide engineering solutions to aid in
improving the lives of those in developing communities. My particular project was to work with
an interdisciplinary team to engineer
a design for a windmill that could be implemented by the people in a small community living on
floating islands on Lake Titicaca, Peru. We had to make the design inexpensive, culturally
appropriate and simple
enough for the people there to reproduce on their own. We relied on regular
interaction with the people we were serving in order to ensure our design met these criteria.
Our team was able to deliver the design to the villagers in Peru and help them put up the first windmill.
Engineering-Globablization Study Abroad - China
BYU's Engineering college sponsors a globablization study abroad program to China each year.
I had the opportunity to attend during the summer of 2007. The focus of this program was to discuss
the topic of globalization with respect to the engineering industry. In addition to classes
we had the opportunity to meet with many different company executives in various companies and
locations throughout China
and discuss with them how globablization is affecting their company and the industry as a whole.
International Internship - China Regal Cruises
This was an extremely unique opportunity I had in 2006 to work for 7 months in China as a tour guide on a
Yangtze River cruise ship. In addition to improving my Mandarin language skills and understanding of Chinese
culture, this experience helped to
further develop my communication and presentation skills and my ability to work through difficult situations.
You can see some of the pictures I have taken from my China experiences in the "China" video on the video tab.
Skills
Confident:
VHDL
C
Python
Java
Latex
Linux
Windows
Eclipse
Xilinx - ISE, EDK
Modelsim
MS Office
Adobe Photoshop
Experience:
Verilog
C++
x86 Assembly
MS Visual Studio
Some Exposure:
OpenCV
Matlab
HTML/CSS
BlueSpec Verilog
C#
Learning:
SystemVerilog
Videos
What do Electrical and Computer Engineers Do?
I made this video for our department primarily as a promotional video for incoming students.
It represents some of the projects I worked on as an undergraduate, as well as some mentoring
I did to help elementary school students learn about robotics and programming (Lego Mindstorm).
Tennis Ball Catcher
This video is of a robotic vision project I worked on to program a tennis ball catcher.
The setup has two cameras mounted above the catcher. We used this stereo vision input to
move the catcher to the right position to catch a tennis ball moving at 55 mph.
The movie is fairly long, but the first minute or so should give you a good idea of how
it works without having to watch the whole thing.
Sign Language Recognition
This video is of another robotic vision project focused on the recognition of sign language characters.
Basically you have a password stored in the program and then use sign language input to unlock it.
The view shown in the video is for demonstration purposes, and thus would not be the final view the user
would see.
China
This video is simply a montage of various pictures I have taken in my trips to China.
I have been grateful for the experiences I have had in China and all that I have been
able to learn about this interesting country. I hoped to show in this video some of the
diversity that exists in this large country.