Just here to show a small project I’ve been working on. I’ve seen some talk about using lattice FPGA in an expansion module. But, for me, they are too small for anything simulation, AI or hardware acceleration related tasks. So I went and designed my own using a ColongeChip Gatemate A1 FPGA. I chose this chip because it has a great cost to performance ratio, an open source tool-chain and a 5Gbp/s SERDES(Routed to the usb3.0 TX and RX Line :P).
This is rather phenomenal work! I have a harder time wrapping my head around processors and computational circuits, but this would be targeted towards what kind of potential use case? AI rendering? Or is it useful enough to try a small LLM out? Simulations?
I guess i need to touch up on this sort of thing. Bookmarking for later as you test!
Very interesting question. I’ll start by saying that no you can’t run LLM because there is just not enough space to fit such large models in that specific FPGA. But for AI on the edge it can be done. On this board I’ve added a PDM microphone and a 6DoF inertial measurement unit to act as data sources for AI and Signal processing workload. I could see a workflow where you train and test your model in python, convert it to Verilog with Amaranth HDL and “compile” to a bitstream with the generic toolchain. Once done you could run that model on any computer regardless of its capability.
It seems this could be a compatible workflow as the gatemate is already supported by liteX. Maybe someone with a olimex_gatemate_a1_evb or colognechip_gatemate_evb could try it out?
Like many things in life, It depends. What’s the encoding, bandwidth, frequency, decoding speed you need for your application. Also, currently this board doesn’t have the required analog front end for an SDR. But we could add it in a form factor similar to the Ethernet module. If I quickly look at the cariboulite SDF they use an AT86RF215 which the gatemate could easily interface to. The bigger problem is the Software part of the Software Defined Radio. Since it would be a new platform, essentially all code would start from 0 which is well above my field of expertise.
If demand is there, the current board is working and there is support from developers, I would be really interested in producing an SDR for the framework laptop.
If you’re looking to learn FPGA, then this board is not what I would recommend for a beginner. The fun of learning FPGA is to connect a lot of things to it. This in contrast with this board that doesn’t have a lot of IO exposed. This board has the same chip than what I used and have way more IO exposed(just be careful IO are 2.5V only). Otherwise, all the digilent boards are a great starter even tough they are expensive.
As for the price building one unit all from Digikey parts would cost you a around 70$US in parts not counting Hardware, PCB, shipping and Assembly. Total i would aproximate 130$US still excluding shipping.
So, I had asked on Twitter/X, why not use TPSM828224 for the 3V3, as you’re using its variant for 2V5 anyway? And someone pointed me to ask that on this thread in the reply… so here it goes.
Short Answer: Board space. As you can see on the joined picture, the LDO (Bottom Right) has a ridiculously tiny board space (Decoupling cap is on the bottom :P) compared to the TPSM which are themselves super tiny. Furthermore, the power drawn (a few miliamp) on the 3.3V can easily be handled by a small LDO. If you have any other design question, related or not, feel free to ask them.
Pardon me if this sounds a bit naive, but as someone who works in tech and hasn’t personally dealt with FPGAs (at least not knowingly), I’m genuinely curious—what exactly would this offer or enable for Framework Laptop users?
I’ve seen a lot of excitement and praise in the comments, and I’m just trying to understand what kind of use cases or benefits this brings to the table. I know Framework Laptops are basically “the sky’s the limit” in terms of modding and customization, so any insight would be greatly appreciated!
At least now, what it bring to the general user is probably not that much. I’ve never designed it to be a product and more like a development platform that fit in your laptop.
With FPGA sky’s the limit as long as you can and know how build a plane.
As for use-case, it depends on what are you willing to develop. Here’s two:
For example, you could use it as a hardware DSP to accelerate your Python code as long as you don’t mind creating your own USB33.0 device from scratches. (Just an idea I don’t know if it’s even possible)
You can also use it for retro computing application.
For example, one project I had in mind was to port this awesome recreation of a commodore SID chip. Just how cool would that be to add a SID chip to you framework Framework laptop.
another example:
Once I get the board, I’ll keep you all informed about what I can do with it.