Fractal viewer can zoom and enhance like on CSI

This fractal viewer is a great way to get your feet wet with Field-Programmable Gate Arrays. The project will give you some experience working with video output, user input, and a whole bunch of math and memory management. [Hamster] built it using the Papilio Plus board which hosts a Spartan 6 FPGA. This continues his odyssey into the realm of hardware design; part of which we looked at back in December.

The arcade Megawing for the dev board gives him easy access to the controls needed to scroll and zoom on the fractal design. Calculations to generate the shape are being run at 240 MHz, with the VGA output running at 80 MHz. The device has enough horse power and SRAM to show an 800×600 pixel output with a 60 Hz refresh rate.

We really liked the logic diagram that [Hamster] drew up when planning how the calculations would be handled. It’s not overly complex, but it took us a while to conceptualize how everything fits together. It’s certainly an improvement from his last attempt as we couldn’t make heads or tails out of that flow chart.

If you’re just interested in the pretty shapes and colors there’s a demo embedded after the break.

15 thoughts on “Fractal viewer can zoom and enhance like on CSI

  1. we we’re doing this on our 486 machines in the early nineties in borland turbo pascal and x86 assembler. It ran just a little slower than this.
    In indexed color mode adding a palette cycle was also trivial.

    I remade it a few years ago in C#, when Benoit passed away.

    1. “Papilio One” has Spartan3E devices (S3E250 or S3E500). “Papilio Plus”, the core of Papilio Arcade, includes a Spartan6 (S6LX4 or S6LX9).

      New boards for Papilio Arcade/Papilio Plus should be available soon.

      Álvaro

  2. I’m following the FPGA tutorials on Hamsterworks (is Mike the author?) and finding them really helpful. Hopefully I’ll be about to do this project soon.

    Thanks Mike!

    – Robot

  3. If any of you are interested in playing around with fractals at home, I highly recommend Fractint, which has been around for 25+ years!

    http://fractint.org/

    All source code is also available, for experimentation and modification!

  4. “enhancing enhancing using quantum string theroy to add pixels … using hizenburg’s uncertenty princable to focus … using electrical theroy to add color, running retnal match up on every citizen in the usa, colecting video DNA … his name is john Q public he lived at 123 fake drive and he is in the rest room”

    XXD i love CSI

  5. For crying out loud! Fix the article so it links to the guys page. I understand that mistakes get made but this guy made the effort to produce the type of content that keeps your site alive, the least you can do is put a direct link in the article!

  6. Wrote a Mandelbrot/Julia set generator in Turbo Pascal in’93
    for my Senior Seminar project (as well as a lot of other fractal forms). One could save and restart plots, screen print, zoom,select, change color,etc. Got an A+ for the course. Found the floppy last year, looked at code, and was impressed by my code, even 18 years later!
    Miss Turbo Pascal, and Pascal in general…:-(

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s