Author Topic: First FPGA system  (Read 2052 times)

0 Members and 1 Guest are viewing this topic.

Offline cowasakiTopic starter

  • Frequent Contributor
  • **
  • Posts: 605
  • Country: gb
First FPGA system
« on: October 27, 2022, 02:25:21 pm »
OK so I have a programming and electronics background.  I've had a lot of fun messing with microprocessors and used them in commercial designs.

What I am looking for now is to add FPGAs to my tookbox.  Due to the entry cost being somewhat higher than microprocessors I do not want to go down the route of backing a loosing platform.  Recently I watched several videos and thought I had found a good system to start with only to find that it's now obsolete.

I am looking for something that I can learn FPGA programming and use with and that I can then use for my own devices and for building things for others.  I want something I can integrate with microprocessors or that I can simulate a microprocessor on.  I would rather a system where each FPGA isn't stupidly expensive but I don't want something that has little capability.

What do people suggest for a first FPGA?  Something where there are plenty of step-by-step instructions re installation etc.  Something that has decent IO possibilities.  Something maybe capable of simulating a microprocessor or easily connected to one.

Thanks
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 4292
  • Country: nl
Re: First FPGA system
« Reply #1 on: October 27, 2022, 03:50:00 pm »
I would suggest to first look into HDL like verilog or VHDL and what it looks like to create what is in a FPGA.

A FPGA can be seen as a blank slate filled with gates that can be connected in many different ways. To make up the connections and the meaning of the gates the HDL is used, but it was and maybe still is possible to start with just a schematic.

Simulating a processor is not the right term. You can make a processor with a FPGA. A processor basically is also a set of gates connected together.

Take a look at these sites:
https://www.fpga4fun.com/
https://nandland.com/
https://www.asic-world.com/verilog/verilog_one_day.html
https://www.chipverify.com/verilog/verilog-tutorial
https://www.tutorialspoint.com/digital_circuits/digital_circuits_logic_gates.htm

You can start with just simulation before choosing a tool set from a FPGA manufacturer, to get an idea of what is involved with FPGA's

Search for a free version of ModelSim. It used to come with Quartes from Altera/Intel, and it looks like Siemens acquired it.
https://www.plm.automation.siemens.com/global/en/products/simcenter/


Online ejeffrey

  • Super Contributor
  • ***
  • Posts: 3881
  • Country: us
Re: First FPGA system
« Reply #2 on: October 27, 2022, 03:58:47 pm »
I will add to the list: https://hdlbits.01xz.net/wiki/Main_Page

Verilog puzzles that are run in a simulator and allow you to see the results. 

In terms of backing a "losing' platform   there are only a handful of FPGA vendors at all Verilog and VHDL are supported by all of them and is transferable between them.  The tools do have a pretty steep learning curve so if you change platforms do expect to spend some time figuring out how to use them, but you mostly pick FPGAs based on the capabilities you need.
 
The following users thanked this post: cowasaki

Offline cowasakiTopic starter

  • Frequent Contributor
  • **
  • Posts: 605
  • Country: gb
Re: First FPGA system
« Reply #3 on: October 27, 2022, 04:47:30 pm »
Thanks. Some useful info. By “simulating” a processor I meant building it on the FPGA. I understand the idea round it all just never used it. The closest I’ve got is simulating gates using an eprom.

I will have a good read of the thread when I get home. The FPGA that I watched a whole load of videos about is showing as discontinued so that’s what I meant about backing a loosing system. I can’t remember what the FPGA was off the top of my head but the installation and setup seemed reasonably straightforward.

Hopefully and can find a system that does what I want with various IC options for simpler or more complex tasks.
 

Offline nvmR

  • Regular Contributor
  • *
  • Posts: 80
  • Country: il
Re: First FPGA system
« Reply #4 on: October 27, 2022, 05:24:15 pm »
I've had some fun with the nios II on altera fpgas. The basic version is free I believe, and has a lot of IP cores which you can add for stuff like GPIOs and I2C, SPI.
The other way to go is a RISC-V core, and some opencores.org peripherals. 

Look at some fpga boards from aliexpress, and have fun :)
 
The following users thanked this post: cowasaki

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 4292
  • Country: nl
Re: First FPGA system
« Reply #5 on: October 27, 2022, 06:12:10 pm »
There is a similar thread about this here: https://www.eevblog.com/forum/beginners/getting-started-with-fpga-from-scratch/msg4487761/#msg4487761

I referred to this thread in there.

Offline hamster_nz

  • Super Contributor
  • ***
  • Posts: 2812
  • Country: nz
Re: First FPGA system
« Reply #6 on: October 27, 2022, 10:44:05 pm »
How much do you value your time?

A well documented low-end board to get started on will save many hours of frustration, and if you as questions on the internet others will have the same board and can help you out with meaningful answers.

Because of this I would suggest starting out with a low end education focused FPGA dev board Terasic or Digilent - even if you decide to sell it on after a few month it will have paid for itself in time saved.

After a few months you should have climbed up the learning curve and can pick up any FPGA board and make it work (with a bit of cussing and swearing).

Lower end FPGA boards are still pretty powerful - with 10s of thousands of logic cells, and many DSP blocks. The only thing they are short of is on-chip memory, with usually a few hundred KBs of block RAM.

Gaze not into the abyss, lest you become recognized as an abyss domain expert, and they expect you keep gazing into the damn thing.
 
The following users thanked this post: SiliconWizard, cowasaki, DiTBho

Offline cowasakiTopic starter

  • Frequent Contributor
  • **
  • Posts: 605
  • Country: gb
Re: First FPGA system
« Reply #7 on: October 28, 2022, 07:48:53 am »
Many thanks everyone.

I will pick up an entry level FPGA first to get started. My next item is an audio engineering device, a sort of Swiss Army knife for valve amplifier repairs or building

So the device will have a pair of 50 to 450-500v rectified DC power supply with over current shut off.
5, 6 & 12v AC supplies plus 5V DC linked to above so they cut off if either of the above do.

8 x DC volt meters
4 bias meters which make use of valve heads so they actually measure 5-50v and 0-200mV with the first being 50-500 v via a 10x divider in the head and the 0-200mV is current across a 1 ohm resistor for bias current. The device will calculate the wattage and have a library of values.
4 way tube balancing using above
Valve tester using one socket of above
2x sine wave output for input to test device

Then I would like to add an audio test for the output which calculates amplification, power output, phase shift, hopefully THD, maybe FFT and simple waveform viewer.


So a lot of the above is microcontroller stuff or just circuit design. Some of the last lot is more FPGA I’m thinking. I’m going to use a DUE or ESP32 as the microcontroller as I want to make this all open source. So was looking to design the PCB with the headers to attach the microcontroller board to it. This would be cheaper than making that board. The FPGA part would be the IC on the new board with the control circuitry attached and the ability to program it in situ. Then they could order the board from my chosen PCB manufacturer with that circuitry and optionally the other SMD stuff already attached and then add all the rest of the through hole stuff themselves. 

If I chose an FPGA that can be bought like arduinos on a separate board I could just have headers for that too.
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 4278
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: First FPGA system
« Reply #8 on: October 28, 2022, 07:53:58 am »
Start by looking at which FPGAs you can actually buy, off the shelf, today.

I've spent most of my career designing with Altera (now Intel) Cyclone parts. The EP4CE6E22 was a pretty good candidate for my favourite chip of all time, it's enabled me to produce a great many products that simply wouldn't have been possible without it.

They're now "on allocation", which is IC industry doublespeak for "you can't have any more". Probably not ever.

Online SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15250
  • Country: fr
Re: First FPGA system
« Reply #9 on: October 28, 2022, 06:56:07 pm »
Apparently that is just for learning. The OP can pick whatever dev board is available regardless of availability of the FPGAs themselves. It's none of their concern at this point IMO.

As has been suggested above, Digilent is a reasonable choice for a beginner. The boards are good, documentation and support is too, and the FPGAs are nothing exotic.
The Artix-7 boards are currently available in enough quantity for any learning/hobby use. Eg: https://digilent.com/shop/arty-a7-artix-7-fpga-development-board/

Have fun.
 

Offline betocool

  • Regular Contributor
  • *
  • Posts: 119
  • Country: au
Re: First FPGA system
« Reply #10 on: October 29, 2022, 04:13:05 am »
I will throw my 2c's in, in line with what people have said above.

For starter kits, Terasic (Intel FPGAs) and Digilent (Xilinx FPGAs) have a range of excellent boards, from starter to all-included.

If you want to start with a processor, you can do with the NeoRV32, not because it's the best, but the documentation helps you get started in minutes and details the complete processor. I put a NeoRV32 into a Cyclone IV Terasic board in no time at all, and had a blinky running also minutes after. Same with the Digilent boards. https://www.neorv32.org/

Worth mentioning, Intel Quartus Software and Xilinx Vivado Software use about 20+ GB hard disk space. Make sure you have that. The more FPGA models you experiment with, the more space you will need.

My suggestion, start with a simple FPGA blinky, get familiar with the Constraint Files (setting pins, voltages, clock frequencies, etc) and the development environment. Remember, FPGA logic is not sequential... all statements happen at the same time, which requires a bit of getting used to. Just talking about my first experience with FPGAs 20 odd years ago.

All in all, a very worthwhile experiment, there's TONS of flexibility in FPGAs with a lot of complexity.

Cheers,

Alberto
 

Online rstofer

  • Super Contributor
  • ***
  • Posts: 9932
  • Country: us
Re: First FPGA system
« Reply #11 on: October 29, 2022, 06:41:17 pm »
I have played with inexpensive boards like the Lattice iCEstick and it works very well but...

https://www.latticesemi.com/icestick

It doesn't have any gadgets and I end up forced to put switches, knobs and dials on an external breadboard.  That works ok but I don't prefer it.

I'm not especially price sensitive when I am only going to buy one board so I prefer the Digilent Nexus A7 which has a bunch of IO on the board.  Switches, buttons, LEDs, 7 segment displays, VGA, Ethernet, USB and more.  I don't use all of the features but they're there if I ever need them:

https://digilent.com/shop/nexys-a7-fpga-trainer-board-recommended-for-ece-curriculum/

It's just about perfect for building CPU projects.

I'm not looking for the cheapest chip on the market, I want a board that is universally useful.  However, I have done the two 'for pay' courses at VHDLwhiz.com using the iCEstick and they worked fine.  It is limited in IO but most of that can be handled with IO Expanders on an SPI or I2C bus.  Hint:  The SPI bus is a LOT easier to use.

I am not going to drift too far from mainline manufacturers - I'm not unhappy with my choice to stay with Xilinx.  Yes, Vivado has a learning curve.  So did the older version, ISE.  With Lattice you need to learn 3 different, but simpler, tools.  Still a learning curve.

BTW, I am a huge fan of the NANDLAND GO Board.  It is based on the same Lattice chip as the iCEstick and uses the same tools.  It's reasonably priced and there are a number of tutorials.  I have one...

https://nandland.com/

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf