Exploring FPGA Graphics
projectf.io
Exploring FPGA Graphics
1–10 of 47 posts
Re: Exploring FPGA Graphics
#2I'd be happy to field any questions you have.
Re: Exploring FPGA Graphics
#3Hello, I'm the author of the Project F blog. I've almost finished a complete overhaul of this series: animation and double-buffering are coming in October. I'd be happy to field any questions you have.
The Ti chip you're using for DVI looks interesting too, not heard of that before.
It looks like you're going to use the FPGAs BRAM for double buffering? I started implementing double buffering for led strips in VHDL, but need to get back to finishing the SPI controller for it.
Re: Exploring FPGA Graphics
#4What happened to that guy?
Re: Exploring FPGA Graphics
#5Around 10-12 years ago someone with industry experience started a project to create a modern open source GPU from scratch. I believe he even had an sponsor for first round of ASIC production, but was targeting FPGA for the first demos. What happened to that guy?
Re: Exploring FPGA Graphics
#6Hello, I'm the author of the Project F blog. I've almost finished a complete overhaul of this series: animation and double-buffering are coming in October. I'd be happy to field any questions you have.
Nice work :) I think implementing a VGA controller controller seems a lot nicer in Verilog/VHDL than on an MCU. The Ti chip you're using for DVI looks interesting too, not heard of that before. It looks like you're going to use the FPGAs BRAM for double buffering? I started implementing double buffering for led strips in VHDL, but need to get back to finishing the SPI controller for it.
The TI TFP410 chip is on the 1BitSquared DVI Pmod board: https://docs.icebreaker-fpga.org/hardware/pmod/dvi/
I've also got designs that generate DVI on the FPGA with TMDS encoding (no external IC required). I've never polished or written them up, but you can see an example here:
* https://github.com/projf/projf-explore/blob/main/graphics/fp...
* https://github.com/projf/projf-explore/blob/main/lib/display...
I'm using BRAM for framebuffers as it allows me to focus on the graphics rather than memory controllers and access. BRAM gives you dual ports and true random I/O; DRAM is much more complex.
Re: Exploring FPGA Graphics
#7E.g. we could save power by only sending parts of the display image that change.
Re: Exploring FPGA Graphics
#8Why are we still generating video signals as if there is a CRT on the other end? E.g. we could save power by only sending parts of the display image that change.
VGA is a walk in the park that's sane and easy to understand for beginners. You just need to modulate the 3 primary colors between 0-255 for 8 bit color, and two clock signals, and the monitor will display a picture.
VGA is also very simple to debug since as long as there's some signal on the color and clock lines, the monitor will display something allowing you visually see what's wrong, while on digital, if some part of the handshake failed, you get no picture on the monitor so there's no way to figure out what's wrong without specialized knowledge and equipment.
A CRT is basically it's own oscilloscope of the signals on the VGA cable making development a joy.
Re: Exploring FPGA Graphics
#9Around 10-12 years ago someone with industry experience started a project to create a modern open source GPU from scratch. I believe he even had an sponsor for first round of ASIC production, but was targeting FPGA for the first demos. What happened to that guy?
Is https://hackaday.com/2013/10/11/an-open-source-gpu/ what you mean out of interest, there's a link to a kickstarter, which links to - https://github.com/asicguy/gplgpu
Any idea how far he got with this?
Re: Exploring FPGA Graphics
#10Why are we still generating video signals as if there is a CRT on the other end? E.g. we could save power by only sending parts of the display image that change.