See if this place suits you:
https://www.fpga4fun.com/FPGAinfo1.htmlKeep in mind that:
- FPGA is not software. You do not write "programs" for FPGA, you write schematic, with flip-flops and logic gates and so on, except you'll use text to describe the schematic, instead of drawing lines like you do with other electronic schematics.
- you'll need to know/learn digital design, meaning logic gates, flip-flops, multiplexers, counters, state machines, Mealy Moore state machines, synchronous design techniques (e.g. clock domain crossing, metastability, etc.) and so on. It's not software, it's hardware. It's all digital schematics written in text, and called HDL (
Hardware Design Language). For example, Quartus still retains a graphic editor, where you draw flip-flops, and logic gates, and circuits from the 400 TTL family to design your schematic instead of describing your schematic wit VHDL or Verilog "code".
- the two main HDL languages are VHDL and Verilog. Verilog is easier to beginners, but some companies are using VHDL only.
- again, these are not programming languages, and they are not "executed" in order, line by line, like the code is usually executed in other programming language. In HDL, the language is for drawing digital schematics.
- there are some tools called High Level Syntheses that can convert, for example, a C program into a HDL schematic, but not every C program can be converted, and this way will usually waste too much FPGA area. Anything serious will usually need to be written in VHDL or Verilog.
- FPGA's are much, much more complicated than any Arduino, both when learning about them, and when using them in practice.
- main two FPGA manufacturers are the former Xilinx and Altera. Both of them have a free version of IDE+tools. For Xilinx it's called Vivado, for Altera is called Quartus. Both are running in Linux
- in FPGA, IDE+tools are proprietary, and very expensive. There is something free for ICE40, but that's it. Nothing that I know of for more recent FPGAs
- you can write HDL, synthesize it, then instead of downloading the bitstream (a bitstream is the equivalent of a binary in microcontrollers, but it's not a program, it's more like a map/table of on/off switches), you can simulate your design any hardware. It's as easy as downloading Quartus for example (
https://www.intel.com/content/www/us/en/products/details/fpga/development-tools/quartus-prime.html ), then trying to use it.
To prepare against disappointments, keep in mind that learning FPGA will take many weeks or months, if not years. It's not something that can be learned in a weekend.