News for hackers. Stuff that matters.
Re:How Does an FPGA Work? by pjc50 on Wednesday May 03, 2023 @04:42PM (#35807503)
> RAM is usually addressable, so it has to be wired in a more direct manner to enable such a design

DRAM is necessarily a grid.

SRAM, in e.g. the standard 6-transistor cell form, you can kind of dump individual bits anywhere you need one.

> why don't we have more user-programmable FPGAs in our fancy desktop mainboards

They tend to be horrifyingly expensive and there are few use cases you can't outperform with a GPU or even just vector instructions. Most of the interesting use cases for FPGAs are when you have direct access to the pins and can wire them up to high-speed signalling, which really isn't home user friendly.

Also all the tooling is proprietary.

> is there a SoC board, ARM or RISC-V based, with an FPGA on board

Buy a medium sized FPGA and download a CPU of your choice.

(I have a downloadable-CPU-sized FPGA board on my desk for testing not yet shipped ASIC designs. It costs about six thousand dollars and has a 48-week lead time on Farnell)

Re:How Does an FPGA Work? by sph on Wednesday May 03, 2023 @05:16PM (#35807905)
> Buy a medium sized FPGA and download a CPU of your choice.

Damn, of course one would be able to download a CPU and "emulate it" in hardware.

I never imagined that would be possible. Now I'm thinking that I had infinite free time, I would buy an FPGA and design a modern Lisp CPU. A RISC-V based design with native Lisp support. Who needs hardware when you can just emulate it in an FPGA.

That's seriously cool technology.

Re:How Does an FPGA Work? by snvzz on Wednesday May 03, 2023 @10:20PM (#35810514)
>and "emulate it" in hardware.

>Who needs hardware when you can just emulate it in an FPGA.

I would go with something like "configure it into hardware" or "upload it into hardware".

It is important to be aware and spread awareness of FPGAs as configurable hardware. Once configured, it is the hardware you've configured into it, for all means and purposes. No emulation involved.

>Now I'm thinking that I had infinite free time, I would buy an FPGA and design a modern Lisp CPU. A RISC-V based design with native Lisp support.

There's even VRoom![0], a very high performance open microarchitecture effort. They were already at ~10.3 DMips/MHz a few weeks ago.

0. https://moonbaseotago.github.io/index.html

Re:How Does an FPGA Work? by kragen on Thursday May 04, 2023 @03:26AM (#35812368)
> Also all the tooling is proprietary.

yosys/nextpnr/apio/icestorm isn't

> Buy a medium sized FPGA and download a CPU of your choice.

even a small fpga like the ice40-hx8k can fit picorv32 or serv, and it costs 13 dollars on digi-key https://www.digikey.com/en/products/detail/lattice-semicondu...

but it sort of seems like a waste of perfectly good luts if your objective isn't to develop a cpu but to use the cpu to script whatever heavy-duty data crunching the fpga is doing