Digital oscilloscope on a FPGA project

An oscilloscope is a “must have” tool for everyone who is involved in electronics. Digital Storage Oscilloscope (DSO) would be best choice for hobbyists as they are pretty cheap and has many handy features for wide range use like various digital filters, customizable triggering, huge memories for storing scope history and other features that can fit in to FPGA. Here is a DSO project developed by Cornell University students. Their goal was to construct FPGA based oscilloscope that could work at 20MSps and has small count of external components. As input they used a delta-sigma ADC chip AD7401, while other part was simulated in FPGA.

Signal output was generated as VGA signal with 640×480 resolution. So simple PC monitor could be used. Additionally they developed an interface to Nintendo DS so the trace could be seen on dual TFT 256×192 with capture capability. Perhaps this scope wouldn’t be much useful, unless using example for further developments, but still this is great resource to study FPGA capabilities. Another great DSO project that was used as a reference can be found here.

Read

The Simple Light Source Motion Tracking

In the past, it’s very hard for us, especially the ordinary civilians to track light source, as we didn’t have the chance to buy or build our own facilities to perform this task. However, time passes by and everything is constantly changing.

Today, we’ll have the opportunity to develop our own simple yet powerful light source motion tracking system.

The main objective of the project is to accurately detect motion and report the speed of moving light sources in the view of camera. Basically, you can use this light source motion tracking system for many purposes. Let’s take an example. A night vision goggle that sees certain light spectrums is able to detect enemy motion, even in the darkest places!

Light Source Motion Tracking

Honestly, the project is built on an Altera DE2 development board with a Nios II CPU instantiated in hardware. In addition, it equipped with Terasic TRDB_DC2 1.3 Megapixel camera, speakers and a VGA monitor. The development can be done, by using the Quartus II IDE and the NIOS II IDE. In other hand, the image capturing and filtering are implementing in hardware, while the position and vector calculations are all done in the Nios II CPU.

Developing the light source motion tracking system would be a great experience for you. That’s why, you shouldn’t miss it!

Read

3D Wire Mesh Generator – The High End 3D Font Rasterization System

Nowadays, there are many things have been converted into 3D system. Even though the 3D technology is quite common, but not every person has the chance to get in touch with it!

Honestly, you’re very lucky today, as we’re about to develop an ultimate 3D Wire Mesh Generator. For your information, the main purpose of the project is to build a hardware transformation unit and a 3D font rasterization system on the Cyclone II FPGA.

Rasterization sample

Isn’t the 3D font rasterization system sounds strange for you? Well, it’s actually the process of converting text from a vector description, such as from the TrueType fonts to a raster/bitmap description. Normally, it always involved the anti-aliasing on screen text, as it makes it smoother and easier to be read by the reader. Sometimes, it may involve hinting, which is the use of information precomputed for a particular font size!

Amongst the rasterization forms, the simple line drawing with no anti aliasing is regarded as the simplest and fastest method of all. In the meantime, the 3D Wire Mesh Generator is being used to proportionally control the camera position and orientation with a 3-degree freedom of movement.

Read

Running pac-man game in a single FPGA

FPGA projects can be interesting and fun. For instance this FPGA PAC-MAN arcade game runs on Xilink Spartan3e starter kit. It actually runs on emulated Z80 CPU core.

fpga_pac_man_game.gif

There are 8 game available where you can switch between Pacman, Pacplus, Pong, MrTNT, MsPac, Crush Roller, Eyes and Lizard Wizard. The game is displayed on VGA screen while controlled with a joystick.

Read

Interfacing HD44780 to FPGA using Finite State Machine

In this project LCD interfacing is based on using delay elements with Finite State Machine (FSM). Programming logic devices are different from microprocessors, because of its different structure. To achieve step-by-step program execution there is a FSM used which allows implementing series of commands (actually waveforms) with desired delays that can be sent to LCD.

FPGA_to_LCD_interface.JPG

As Edvin NC Mui says – generating signals would require huge amount of logic elements on FPGA, so it is better to construct a Finite State Machine that would act as microcontroller and send necessary signals to communicate HD44780 LCD. His experiment was based on Spartan-II XCS200-5 FPGA and FSM layout was synthesized by using Xilink ISE 8.1i VHDL Compiler. He achieved that device occupies 87 FPGA slices out of 2352 and his FSM can operate at speed of 108.98MHz. Full document to read And Xilink FPGA project files.

Read

Next Page »