Author Topic: FPGA for beginner  (Read 3794 times)

0 Members and 1 Guest are viewing this topic.

Offline ataradov

  • Super Contributor
  • ***
  • Posts: 11720
  • Country: us
    • Personal site
Re: FPGA for beginner
« Reply #25 on: August 21, 2024, 02:37:27 pm »
Nobody fakes FPGAs, especially high-end ones. If you get something that seems to work, it would be a genuine FPGA.

None of the FPGAs are very usable without vendor tools. ice40 and OSS toolchain is cool, but if you want to do something serious, you are not avoiding proprietary tools.

You are also all over the place with requirements. ice40 will not run Linux, nor will it fit feature-rich cores with a lot of peripherals. So, you need to decide what you actually want and then pick a board accordingly.
« Last Edit: August 21, 2024, 02:41:22 pm by ataradov »
Alex
 
The following users thanked this post: pcprogrammer

Offline asmi

  • Super Contributor
  • ***
  • Posts: 2794
  • Country: ca
Re: FPGA for beginner
« Reply #26 on: August 21, 2024, 02:58:14 pm »
FPGA boards from aliexpress is a terrible idea for beginners, as they typically come with zero support, the best you can hope for is schematics (if it's accurate), but it's of not much use for beginners who don't know how to read it yet. This is why I keep insisting that first FPGA devboard should be from a reputable brand which stands behind their products by providing support. Digilent is a very good example of such brand, they provide many examples for their boards, and also have forums, where their employers answer any questions quite quickly, and they also have a decent choice of addon boards to extend the functionality of a baseboard when you need to.
« Last Edit: August 21, 2024, 02:59:56 pm by asmi »
 

Offline anvoiceTopic starter

  • Frequent Contributor
  • **
  • Posts: 257
  • Country: us
Re: FPGA for beginner
« Reply #27 on: August 21, 2024, 03:17:12 pm »
I bought a ton of stuff from Aliexpress. The general idea is: it's quite safe, but be ready to test what you get (for functionality and it not being a fake). The merchants cannot afford the shipping label to send merchandise back for a return, so they're not interested in sending you broken products (you'll just get a refund and keep the item likely), but I have gotten some bad parts over the years. When I took too long to test, I had no recourse in terms of getting money back.

Whether there is support or not depends on the vendor/product. In some cases you can get example code, etc., though you're clearly not beating Mouser/Digikey for that. What you get in return is (usually) a better price.

I'm not sure, but think that the Xilinx (AMD) software wants a dedicated programmer. Maybe others with more experience can chime in on this.

Reading more about the board's description on Aliexpress, it seems to have a built-in programmer circuit and only needs a usb C cable for the JTAG connection. If true, that's a nice bonus.

Unfortunately I can't find the exact board anymore. It's still in my cart but showing "not shipping to your address". Boards from other merchants are more expensive, so I might have to get a XC735T or I'm out of luck.
« Last Edit: August 21, 2024, 03:22:00 pm by anvoice »
 
The following users thanked this post: pcprogrammer

Offline asmi

  • Super Contributor
  • ***
  • Posts: 2794
  • Country: ca
Re: FPGA for beginner
« Reply #28 on: August 21, 2024, 03:43:54 pm »
What you get in return is (usually) a better price.
Unfortunately that's not the end of story with FPGA devboards. Alongside lack of support you also often get an underspecced PDS which can not handle FPGA at full load, which means at some point your designs will just start crashing in hardware for no apparent reason. Another typical defect of such board - though that one is at least theoretically fixable by the end user - is a lack of/insufficient cooling. The problem for beginners is that they are not really in a position to evaluate a board and check if PDS and cooling is adequate or not before ordering.

Yet another potential problem is with licensing. Many FPGA boards on aliexpress have FPGAs which you can only use if you have paid license. Such vendors typically provide some cracked old version of vendor tools.

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 4297
  • Country: nl
Re: FPGA for beginner
« Reply #29 on: August 21, 2024, 04:19:07 pm »
I bought a ton of stuff from Aliexpress. The general idea is: it's quite safe, but be ready to test what you get (for functionality and it not being a fake). The merchants cannot afford the shipping label to send merchandise back for a return, so they're not interested in sending you broken products (you'll just get a refund and keep the item likely), but I have gotten some bad parts over the years. When I took too long to test, I had no recourse in terms of getting money back.

My experience with Aliexpress is the same. Yes you need to test it when it arrives and file a dispute with some proof to get your money back.

When buying FPGA boards, you have to pay attention to the source, but there are some reputable ones out there. Maybe with a very elaborate design you might run in to problems like asmi described, but as a beginner the chance on that is not to high.

FPGA devboards prices make me sad, everything under 50£ is in "nano" category with only a few pins available. Something capable of running riscV (and especially linux) is 100£ and more.

There are also different versions of Tang/gowin boards everywhere, but I'm not sure how well they are supported and documented, I have an impression they are not very usable without proprietary gowin tools.

Like ataradov wrote, the board you linked to is very small and won't support the things you listed above.

And like he also stated the OSS does not provide much use for the more complex designs and you will need to use the FPGA manufacturers tools anyway, be it Xilinx (AMD), Altera (Intel), Gowin, Anlogic or which ever manufacturer out there.

Aliexpress FPGA boards are fine for beginners to have fun with, but like amsi wrote there are some drawbacks. If you don't want to deal with those, then you have to open up your wallet way further.  >:D

Another note, if it is Linux you want to run but also have some logic fabric to play with, you might want to look into Xilinx (AMD) zynq or Altera (Intel) cyclone V soc devices. These come with ARM cores on the chip and makes running Linux easier without taking a lot of the logic fabric.

Edit: fixed a typo.
« Last Edit: August 21, 2024, 04:32:37 pm by pcprogrammer »
 

Offline pcprogrammer

  • Super Contributor
  • ***
  • Posts: 4297
  • Country: nl
Re: FPGA for beginner
« Reply #30 on: August 21, 2024, 04:31:36 pm »
Reading more about the board's description on Aliexpress, it seems to have a built-in programmer circuit and only needs a usb C cable for the JTAG connection. If true, that's a nice bonus.

Yes you are right, the Microfase boards do have a USB-C port for the JTAG connection on it. Indeed a nice bonus.

Unfortunately I can't find the exact board anymore. It's still in my cart but showing "not shipping to your address". Boards from other merchants are more expensive, so I might have to get a XC735T or I'm out of luck.

That is also one of the downsides of Aliexpress. Prices can change rapidly when set as special offer. When I find something that is almost to cheap to believe, but still seems genuine, I buy it directly. Can always dispute and get my money back if it is crooked. (Or sometimes the seller just does not ship it and you get your money back automatically.)

It can also be that an item is no longer available in a warehouse near you and then it suddenly does not ship to your country anymore.

Shopping on Aliexpress can be frustrating.  :-DD

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9932
  • Country: us
Re: FPGA for beginner
« Reply #31 on: August 21, 2024, 05:01:20 pm »
I took a different path beginning with the Xilinx Spartan 2 about 20 years ago and today I have several boards but I really like the Nexys A7

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

It is expensive  but it has the gadgets I want on a board and I don't have to spend a lot of time wiring up displays and such.

A more affordable board is the Basys 3 and while I don't have this version, I do have the Basys 2 which is quite similar.  This is much more affordable.

https://digilent.com/shop/basys-3-artix-7-fpga-trainer-board-recommended-for-introductory-users/

I want gadgets on the board.  I'm not interested in chasing reflections on jumper wires.  Besides, I am not convinced that solderless breadboards are useful at 100 MHz.

Yes, there are MANY cheaper boards and if you don't price your time, they may be adequate.  I'm old, I don't have time to wire up displays, switches and buttons.

I do consider price.  Grad school tuition might be $50,000 per year, the cost of an FPGA board is insignificant when it is useful toward graduation.  That logic applies to the Analog Discovery 3 and Digital Discovery as well.  Undergrad may be similarly priced...

https://digilent.com/shop/test-and-measurement-devices/essential-instruments/analog-discovery-3/
https://digilent.com/shop/digital-discovery-portable-usb-logic-analyzer-and-digital-pattern-generator/
« Last Edit: August 21, 2024, 05:30:55 pm by rstofer »
 

Online dietert1

  • Super Contributor
  • ***
  • Posts: 2371
  • Country: br
    • CADT Homepage
Re: FPGA for beginner
« Reply #32 on: August 21, 2024, 05:30:46 pm »
I was lucky to start with a XILINX FPGA kit, so there was easy upscaling later on. I also did small projects using Altera and Lattice FPGAs. All these are well supported by free development systems and there are examples and open source units on the web.
For learning I'd recommend to get something small, like a Lattice LCMXO2-7000HE-B-EVN (still available from Digikey). Builtin supply, programming and communication via USB. Somebody wrote before: Any meaningful development happens on a simulator. Not everybody is born to make a large project with lots of external interfaces run on the chip.

Regards, Dieter
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15254
  • Country: fr
Re: FPGA for beginner
« Reply #33 on: August 21, 2024, 09:01:09 pm »
My very first FPGA dev board was a Digilent (with a Spartan 3, it was quite a while ago  ;D ). Not affiliated with them, but I think you can't go wrong with Digilent.

When you're more experienced, you can sure move on to Aliexpress stuff.
 

Online brucehoult

  • Super Contributor
  • ***
  • Posts: 4458
  • Country: nz
Re: FPGA for beginner
« Reply #34 on: August 21, 2024, 10:46:48 pm »
Another note, if it is Linux you want to run but also have some logic fabric to play with, you might want to look into Xilinx (AMD) zynq or Altera (Intel) cyclone V soc devices. These come with ARM cores on the chip and makes running Linux easier without taking a lot of the logic fabric.

Yes, and at much higher execution speeds of typically 600-800 MIPS vs maybe 100 MIPS for a softcore on a good FPGA (but very often 25-50 MIPS). I quote  MIPS rather than MHz here as many softcores take 3-4 CPI which can make MHz misleading.

Also don't forget the SoC FPGAs with RISC-V hard cores e.g. MicroSemi.

The BeagleV "Fire" for $150 has Microchip’s PolarFire MPFS025T-FCVG484E which runs its five 64 bit SiFive RISC-V cores (4 Linux, one real-time) at up to 667 MHz (3.125 CoreMarks/MHz, 1.714 DMIPS/MHz), 16GB eMMC, 2GB RAM.

And 23k FPGA logic elements, which is a lot if you're not building CPU cores from them!

BeagleBoard.org are I think pretty well known for supporting their products.

GOWIN also have FPGA SoCs with RISC-V cores.

 

Offline DiTBho

  • Super Contributor
  • ***
  • Posts: 4227
  • Country: gb
Re: FPGA for beginner
« Reply #35 on: August 23, 2024, 01:38:40 pm »
Digilent Spartan 3

my first and current boards are Digilent
- SP3-200 (tini, without any gadgets)
- SP3-500 (bigger, full of gadgets)

I think it's enough for simple projects
The opposite of courage is not cowardice, it is conformity. Even a dead fish can go with the flow
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6289
  • Country: 00
Re: FPGA for beginner
« Reply #36 on: August 24, 2024, 03:59:10 pm »
I was in a similar situation a few months ago, picked the UpDuino 3.1, and am very happy with that decision. Some of the reasons, in an arbitrary order are:

1. It plugs into a solderless breadboard which allows me to easily connect and experiment with any peripheral I want.
2. It has a simple and minimal circuit that allows me to cut my own custom boards down the road.
3. It is supported the open source tool chain (I am very happy with APIO which is similar to the user friendly platformio but for FPGAs)
4. Inexpensive. About $30.
5. Self contained, including the programmer.

https://tinyvision.ai/products/upduino-v3-1
 

Offline anvoiceTopic starter

  • Frequent Contributor
  • **
  • Posts: 257
  • Country: us
Re: FPGA for beginner
« Reply #37 on: August 24, 2024, 07:12:52 pm »
Well, the saga continues.

Firstly, I appreciate everyone's input. There's some great advice here, and I considered it carefully.

I did decide to go with the A7-lite (which I may or may not get) for one simple reason: there was a great deal on it (about $100 before tax) for the XC7A100T version on Aliexpress when al the discounts were factored in.

Unfortunately, since I bought it, the seller has increased the price for the 100T version and is taking their time shipping. Assuming it was a pricing mistake and they try to avoid shipping, I do have some recourse, and I will give an update on what happens (I assume this might be interesting to others who could potentially be dealing with similar things on hardware they buy).
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5130
  • Country: bt
Re: FPGA for beginner
« Reply #38 on: August 25, 2024, 07:45:45 am »
The basic issue with playing with FPGAs is following, imho - whatever FPGA you buy it will be always too small for something you want to try next day..  :D
My advice - buy the largest FPGA you can afford (also mind you will need the dev chain and programmer for it as well).
For an incremental approach from simplest up - you do not need any FPGA - you may simulate the stuff. But that is none fun..  >:(
Simply take the biggest one and try to build and run an existing design - like a CPU or an entire computer etc. (for example there are off the shelf designs like PDP-8, PDP11/70 etc).
What is important is to have a large external memory on the pcb as well (like a large sram or dram).
This would be a minimum today when I would start again  :D
https://www.aliexpress.com/item/4000170003461.html

Readers discretion is advised..
 

Offline DiTBho

  • Super Contributor
  • ***
  • Posts: 4227
  • Country: gb
Re: FPGA for beginner
« Reply #39 on: August 25, 2024, 01:08:45 pm »
The basic issue with playing with FPGAs is following, imho - whatever FPGA you buy it will be always too small for something you want to try next day..  :D

Spartan™ 3E 1600K Gates, for which Digilent has a kit(1), is so big that I haven't yet saturated it.
250K Gates is ok for the most of my projects
500K Gates is what I need to implement a RISC softcore and SoC-misc
1200K/1600K Gates is what I need to implement two RISC softcores and SoC-misc

BRAM is the problem for me.
RAM, ROM, VRAM ... consume a lot of BRAM.


(1) two kits available
1200K Gates
1600K Gates
same board, same gadgets(2) different fpga-chip
(2) ethernet-phy, two RS232, dram, sram, 2x16-LCD, 2xrot-digi-encoders, 4xswitches, 1xVGA, 1xexpansion-port, ...
The opposite of courage is not cowardice, it is conformity. Even a dead fish can go with the flow
 

Offline djsb

  • Frequent Contributor
  • **
  • Posts: 955
  • Country: gb
Re: FPGA for beginner
« Reply #40 on: September 22, 2024, 11:15:44 am »
I'm starting out with FPGAs, reading along with online lectures on Digital Design and Computer Architecture from Zurich University. They use a Basys 3 board for labs and eventually designing a MIPS processor. I was thinking of getting an FPGA board and trying some examples myself, but it would be nice to have the board be useful beyond the course, perhaps implementing other processors or working with computer vision/robotics.

Do you have a link to this online course? Thanks.


PS In the meantime I'm starting over with Shawns excellent series of Tutorials that use the iCEstick devboard

« Last Edit: September 22, 2024, 12:00:00 pm by djsb »
David
Hertfordshire, UK
University Electronics Technician, London, PIC16/18, CCS PCM C, Arduino UNO, NANO,ESP32, KiCad V8+, Altium Designer 21.4.1, Alibre Design Expert 28 & FreeCAD beginner. LPKF S103,S62 PCB router Operator, Electronics instructor. Credited KiCad French to English translator
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6289
  • Country: 00
Re: FPGA for beginner
« Reply #41 on: September 24, 2024, 05:32:30 am »
PS In the meantime I'm starting over with Shawns excellent series of Tutorials that use the iCEstick devboard

Apio is indeed a great choice, in the spirit of platformio but for FPGAs.
 

Offline glenenglish

  • Frequent Contributor
  • **
  • Posts: 451
  • Country: au
  • RF engineer. AI6UM / VK1XX . Aviation pilot. MTBr
Re: FPGA for beginner
« Reply #42 on: September 25, 2024, 12:20:45 am »
just buy a Digilent board
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf