News for hackers. Stuff that matters.
Re:How Does an FPGA Work? by roadbuster on Wednesday May 03, 2023 @03:10PM (#35806437)
> You implement an arbitrary blob of logic by having the inputs form the address > then the RAM gives the result of the logical function.

This is incorrect. Modern FPGAs are composed of small, configurable blocks which contain all sorts of logic. The idea is that the configurable blocks can be (internally) wired-up to implement your logic of choice. The wiring configuration is "loaded" at power-on and retained in memories within each, configurable block.

Re:How Does an FPGA Work? by gchadwick on Wednesday May 03, 2023 @03:18PM (#35806511)
Well indeed modern FPGA fabric along with the various fixed function blocks can be very complex, but this is a beginners 'How Does an FPGA Work?' for which a bunch of LUTs connected by programmable interconnect is a useful approximation.
Re:How Does an FPGA Work? by dreamcompiler on Wednesday May 03, 2023 @08:15PM (#35809645)
You may be right; I don't know. It may be the case that a modern LUT is implemented as a bunch of logic plus a switch matrix. If so, this is for real estate, power, or speed reasons but not for functional reasons.

The fact remains that you can implement any logic function with static RAM LUTs, and the early Xilinx chips (like from 30 years ago) were implemented with static RAM.

Re:How Does an FPGA Work? by rcxdude on Wednesday May 03, 2023 @09:44PM (#35810279)
The LUTs are still the core of these general-purpose blocks, however (as opposed to the more fixed-function blocks like DSP blocks). There's only a little extra logic, mostly focused on muxing and flip-flops (I would argue the flip-flops are the main thing to realise is dedicated hardware). The only thing that's really a different kind of logic is dedicated carry-chain circuitry.
Re:How Does an FPGA Work? by adwn on Thursday May 04, 2023 @04:49AM (#35812805)
> I would argue the flip-flops are the main thing to realise is dedicated hardware

Fun fact: The Microchip [1] ProASIC3 logic area is mostly composed of core cells, each of which can be configured to be either one 3-input LUT or one D-flip-flop, so not even the flip-flops are dedicated hardware.

[1] Formerly Microsemi [2].

[2] Formerly Actel.