I started this project a few weeks ago, so I already have a lot working. Let me catch you up...
It took me most of the time to make all of the components in VHDL and test them in the simulator. When I finally got to flash the board and see the VGA output, the video worked the first time, but there was no sign of the processor working. Which was particularly odd because it worked fine in the simulator...
My program (written in binary :P, so the code is not intelligible) essentially boiled down to this:
Load 0xFF002000 into every 32-bit block in 256 bytes somewhere in video RAM while(1);
That first line essentially told the ALUs to load that constant 0xFF002000 and store it into RAM 64 times. It didn't work because the processor basically told the ALU to cancel the operation before it started :(
After fixing it, some order can be seen in the sea of random pixels:
Now we can write in large blocks to video memory, we can *probably* do any math operation we want, but the design is not turing complete. Next time I want to make something more interesting happen.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.