Fast Conway's Life on an FPG
Written by Harry Fairhead   
Sunday, 25 December 2011

The next time your implementation of an algorithm runs a little slow why not use some custom hardware to compute it in parallel? That's what Cooper Bills did in a student project for the game of Life.

 

The game of Life, that's Conway's Life not the messy biological stuff, is fascinating because of the complexity that arises from just a few simple rules. One of the problem in seeing just how it behaves is that most Life simulations are slow. Now we have a dedicated computer built using an FPGA that can produce a generation at full frame rate and full VGA resolution, i.e. 60Hz at 640x480.

 

lifevga

In case you haven't done the arithmetic, that involves over 18 million updates per second. The solution is a massively parallel update using custom hardware implemented using a Field Programmable Gate Array  FPGA. The grid was split into columns eight cells wide and the hardware computes each row in turn just before the VGA scan requires the data, i.e. the output is created on the fly. The entire computation completes well before the scan needs the data and in principle it could work faster.

The result is very fast animations of Life in action as you can see in the video:

 

          

 

More Information

Project report

Further reading

SilverLife - Life in Silverlight

Life in Silverlight 4

Life in WPF

It's life but not ...

The Universe as a Computer

The Meaning of Life

 

To be informed about new articles on I Programmer, subscribe to the RSS feed, follow us on Google+, Twitter, Linkedin or Facebook or sign up for our weekly newsletter.


Banner


IBM Launches The Granite Code LLM Series
31/05/2024

IBM is introducing decoder-only code models for code generative tasks as part of its Granite collection. The models have been trained with code written in 116 programming languages and range in size f [ ... ]



Let PostgreSQL Pick An Index For You
20/05/2024

Supabase has launched Index Advisor, a Postgres extension for recommending indexes that improve query performance, easing the burden off the developer's shoulders.


More News

Last Updated ( Sunday, 25 December 2011 )