And among the other goals of the fivemack
Appears to be to write Mandelbrot-set generators on as wide a range of platforms as possible.
This one is running only on the ARM in the Gameboy Advance; I've written verilog which I _think_ should do the iterations on the FPGA (write X and Y into two memory-mapped registers, write a magic location to start it iterating, read a different location until its value changes to 1, read out the number of iterations from yet a fifth location), but the synthesis tool appears to have two modes: one generates unclear syntax errors, and one decides that everything must be constant and elides away all the hardware.
The FPGA is large enough to hold two sets of three medium-sized fixed-precision multipliers, which ought to make it noticeably faster than the GBA if only I can work out how to get the handshaking right. It may be the right answer is to use little state machines and blockram in the FPGA, and process a fair number of pixels on-FPGA at a time; if it's a row or a square, then the FPGA logic could generate the coordinates.
If you come to
hsaneg's party in Oxford you can play with it yourself :)
![]() |
![]() |
This one is running only on the ARM in the Gameboy Advance; I've written verilog which I _think_ should do the iterations on the FPGA (write X and Y into two memory-mapped registers, write a magic location to start it iterating, read a different location until its value changes to 1, read out the number of iterations from yet a fifth location), but the synthesis tool appears to have two modes: one generates unclear syntax errors, and one decides that everything must be constant and elides away all the hardware.
The FPGA is large enough to hold two sets of three medium-sized fixed-precision multipliers, which ought to make it noticeably faster than the GBA if only I can work out how to get the handshaking right. It may be the right answer is to use little state machines and blockram in the FPGA, and process a fair number of pixels on-FPGA at a time; if it's a row or a square, then the FPGA logic could generate the coordinates.
If you come to
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
no subject
no subject