Sergei Skorobogatov's student project suggestions for 2007/2008 academic year
Here are some ideas towards Part II and Diploma projects in
Computer Science. The descriptions provided are only vague ideas, not
ready-to-use proposals for a particular type of project.
I will take care after all of the hardware designs necessary for
the projects, so unless explicitly requested most of the projects will
involve only writing software (either for a PC or for an FPGA).
Laser scanning with a motorised stage
Resources:
- Optical microscope with laser pointer (less than 5mW, classII)
- Motorised stage controlled via TCP/IP
- Digital oscilloscope with TCP/IP interface or digital multimeter with GPIB interface
- PC with Ethernet and GPIB card or USB-GPIB adapter
- Visual C++ and/or MatLab
Details:
Laser scanning is used in semiconductor failure analysis for various
applications from detecting p-n junctions to reading the transistors'
state. The project is aimed on buiding a laser scanning system that
moves the sample using a motorised stage so that the laser hit all the
points on the surface. The response should be acquired with either an
oscilloscope or a digital multimeter. Then the acquired data should be
downloaded and analysed in software. Finally, the result should be
presented in a suitable graphical form.
Current challenges:
- Learn the documentation for motion controller and implement
communication using provided drivers
- Learn the documentation for digital oscilloscope or digital
multimeter and implement data acquisition in software
- Build a control system which moves the stage and acquires the data
- Write user interface to display the result graphically either in
Visual C++ or in MatLab
Merging digital images
Resources:
- Mosaic images taken with a digital camera using a microscope
- Visual C++ and/or MatLab
Details:
High-resolution pictures of semiconductor chip surfaces are used in
semiconductor failure analysis for postproduction analysis and to locate
any failures. Once the surface of a semiconductor chip is photographed it
is necessary to combine all the images together into a single database.
Two approaches can be used: one is to cobine all the images into a single
graphic file which then can be navigated using a standard graphic editor,
for example GIMP; another is to build a user-friendly shell to navigate
over the database with many images and possibility to zoom in and out,
measuring distances between any objects and retracting relative coordinates
for any point.
Current challenges:
- The images are taken with overlapping to prevent any possible loss
of information
- Combining the images taken with high magnification (>1000x) will result
in thousands of images to be merged into a single file. Such file will be
very difficult to manage
- When merging images, some image processing techniques should be used
to make the overlapping edges smooth
High-resolution data acquisition system
Resources:
- FPGA development kit with on-board ADC
- PC with Quartus II software
- Visual C++ and/or MatLab
Details:
Digital oscilloscopes normally have 8-bit resolution, but very fast
acquisition speed - gigasamples per second. For many aplications, for
example power analysis, higher resolution is essential while the
acquisition speed can be reduced to hundreds of megasamples per second.
Such systems can be implemented with a standard FPGA boards.
Current challenges:
- Knowledge of the FPGA development and Quartus II software and
Verilog programming is beneficial
- Learn the FPGA development kit
- Write a program in Verilog to acquire the data at specified speed
and required event
- Write user interface on a PC to transfer the acquired data from the
FPGA board to PC and display the data trace using Visual C++ or MatLab
Video signal enhancement
This project can be split into 2 projects - one for imaging static objects
and another - dynamic objects
Resources:
- Camera with video output
- FPGA development board DE2 used in ECAD Labs
- PC with Quartus II software
Details:
When digital cameras are used in dark environment, the video signal become
noisy. This poses even a bigger problem to infrared microscopy imaging. To
reduce the noise level and enhance the image, some digital signal processing
techniques can be used. The simple one is signal averaging which can be
effectively used if the picture is stationary. Another techniques involve
various digital filtering methods which are also suitable for dynamic pictures.
Current challenges:
- Digital signal processing of the video signal in real time
- Knowledge of the FPGA development with Quartus II software and Verilog
programming is beneficial
- Learn the FPGA development kit and examples for video signal processing
- Knowledge of digital signal processing is beneficial
Sergei Skorobogatov
<Sergei.Skorobogatov (at) cl.cam.ac.uk>
created 28-09-2007 -- last modified 28-09-2007 -- http://www.cl.cam.ac.uk/~sps32/