Author Topic: FPGA ?  (Read 9704 times)

0 Members and 1 Guest are viewing this topic.

Offline JanJansenTopic starter

  • Frequent Contributor
  • **
  • Posts: 380
  • Country: nl
FPGA ?
« on: April 10, 2018, 03:22:45 pm »
Hi, so i discovered FPGA does really stand for something.
How can i use it to make a synthesizer ?

Normally i have some MCU, only for polyphonic synths it dont has power enough,
now i found out that it is possible to make a synthesizer with FPGA, i seen this movie on youtube :


Where do i start ?, any chance i can buy it in DIP package ?
thanks
aliexpress parachute
 

Offline Berni

  • Super Contributor
  • ***
  • Posts: 4946
  • Country: si
Re: FPGA ?
« Reply #1 on: April 10, 2018, 03:56:08 pm »
FPGAs are not available in DIP. Best bet is to buy a cheap development board that brings out a lot of the pins on easy to access 0.1 inch headers.

Programing FPGAs is also a whole different manner. They do not execute code but are instead internally rewired to implement a logic function out of digital building blocks (Like logic gates but more advanced). As a result they are programed in special HDL languages that are basically text based representations of logic functions and flipflops and as such bares no similarities to usual programing languages like C, Basic, Python etc.
 

Offline JanJansenTopic starter

  • Frequent Contributor
  • **
  • Posts: 380
  • Country: nl
Re: FPGA ?
« Reply #2 on: April 10, 2018, 04:24:53 pm »
I dont understand how can you make a sinewave with gates ?
aliexpress parachute
 

Offline kony

  • Regular Contributor
  • *
  • Posts: 242
  • Country: cz
Re: FPGA ?
« Reply #3 on: April 10, 2018, 04:27:54 pm »
NCO + LUT or CORDIC. Not all that different from how you would do it on MCU executing code really.
 

Online NorthGuy

  • Super Contributor
  • ***
  • Posts: 3140
  • Country: ca
Re: FPGA ?
« Reply #4 on: April 10, 2018, 04:36:05 pm »
FPGA is a little bit of overkill, but it'll surely work rather easily, especially if you want to generate and mix gazillions of channels.

FPGAs do not have DACs. Logic is pure digital. Thus you'll need to use external DACs. On the other hand, FPGAs are very fast, so you may be able to generate fast PWM and pass it through a low-pass filter to get a decent sound signal.

Also, FPGAs are more expensive, they require multiple voltages, they don't have flash. So making an FPGA board is more difficult than MCU, but you can buy a ready-made one to start from.

 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: FPGA ?
« Reply #5 on: April 10, 2018, 04:38:39 pm »
It's possible to implement most of the DAC in an FPGA, I routinely use a delta-sigma DAC which requires only an external low pass filter, just a resistor and capacitor.
 

Offline Berni

  • Super Contributor
  • ***
  • Posts: 4946
  • Country: si
Re: FPGA ?
« Reply #6 on: April 10, 2018, 04:42:38 pm »
Yep as kony said an algorithm is used to generate the values for each sample in the sine wave. You can execute the algorithm in a MCU or you can build digital logic that calculates the same mathematical expressions using dedicated logic.

The difference is that a MCU normally has only one ALU(Arithmetic Logic Unit). This is the pile of logic inside the CPU that actually does your mathematical calculations so the software in the MCU has to feed the algorithms calculations trough that ALU one operation at a time. On the other hand inside a FPGA one can build simpler versions of this same ALU that can only do one type of operation (Add, Subtract, Multiply etc) but then copy paste them so that multiple math operations in the algorithm can be calculated at the same time, each mini ALU working on its own part of the altogether in parallel. This essentially creates a so called "single purpose computer" with logic that is hardwired to run this specific algorythem.

Because you can just keep copy pasting these and FPGAs can generally hold a lot of copies of these "single purpose computers" in one chip means that even a small FPGA could be doing 100x more math operations per second than a typical MCU and as such can run the algorithm that much faster.

In the end the the MCU or FPGA send the data out to a DAC anyway and thats where the digital numbers finally become a analog sine wave.
 

Offline JPortici

  • Super Contributor
  • ***
  • Posts: 3461
  • Country: it
Re: FPGA ?
« Reply #7 on: April 10, 2018, 06:04:11 pm »
FPGA is a little bit of overkill, but it'll surely work rather easily, especially if you want to generate and mix gazillions of channels.

FPGAs do not have DACs. Logic is pure digital. Thus you'll need to use external DACs. On the other hand, FPGAs are very fast, so you may be able to generate fast PWM and pass it through a low-pass filter to get a decent sound signal.

Also, FPGAs are more expensive, they require multiple voltages, they don't have flash. So making an FPGA board is more difficult than MCU, but you can buy a ready-made one to start from.


Aaaah the HOAX :)

https://github.com/heise/HOAX

it was my understanding that he used a FPGA to model all 91 tonewheels in an hammond, vibrato scanner, plus some other logic to implement a leslie emulation
but i admit i never had a close look at the project
« Last Edit: April 10, 2018, 06:06:10 pm by JPortici »
 

Offline rhb

  • Super Contributor
  • ***
  • Posts: 3481
  • Country: us
Re: FPGA ?
« Reply #8 on: April 10, 2018, 11:52:12 pm »
I'm just getting started with FPGAs.   It's a *lot* more complex than programming an MCU or writing DSP code for a workstation or supercomputer.

As noted, the FPGA is overkill for audio, unless you want to synthesize a few dozen Leslies at once along with several Moogs.  I suspect a BeagleBoard X15 would meet your needs with far less effort.

However, if you want to play with FPGAs, I strongly recommend getting a MicroZed board.  There is a staggering range of tutorials for it.  There are cheaper boards, but the documentation is skimpy.  Also the Zynq has a fast dual core ARM with NEON FPUs, so you can prototype on the ARM and then move the execution of CPU intensive portions to the FPGA.

There is a *lot* more to it.  So read about the Zynq for a few days.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: FPGA ?
« Reply #9 on: April 11, 2018, 12:36:56 am »
I wouldn't necessarily say FPGA development is a lot more complex than writing software, rather it's a lot *different* and if you enter it with the attitude that you are writing software you are likely to have difficulty. FPGA "programming" is hardware development, learning to describe the hardware is actually relatively easy, but learning to design complex digital hardware is quite challenging, thus FPGA development is challenging. Stick with it though, as tricky as it is, it's also incredibly cool.
 
The following users thanked this post: NiHaoMike

Offline rhb

  • Super Contributor
  • ***
  • Posts: 3481
  • Country: us
Re: FPGA ?
« Reply #10 on: April 11, 2018, 01:50:06 am »
A fair statement.  It certainly *not* more complex than the seismic processing codes I've written or worked on.  But it's more complex in that there are all sorts of  constraints that you don't face in pure software.  And there are a *huge* number of new acronyms to learn.

But it *is* very cool.   I spent enough time in grad school that I expect to do most  new things 3-4 times before I am done.  My sole complaint is having to do chores.

The only real obstacle is a an HP 8560A which came yesterday and an 8569A which will arrive in a month or two. Well, plus some LM399s and an HP 3478A.  Oh, and some other toys ;-)
 

Offline BrianHG

  • Super Contributor
  • ***
  • Posts: 7725
  • Country: ca
Re: FPGA ?
« Reply #11 on: April 11, 2018, 02:59:10 am »

Where do i start ?, any chance i can buy it in DIP package ?
thanks
Only use an FPGA if you wish to spend 6 months to a year learning how to work with one.

You wont find a DIP FPGA, but, you will find development boards, with standard dual row 0.1" headers to all the IO pins.  Some dev boards already have DACs and ADCs of different grades, some even designed for audio.  Save you from wiring the bootprom, the crystal oscillator, voltage regulator, decoupling caps, and solves a bunch of beginner hardware aspects to ease your life.

 

Offline lawrence11

  • Frequent Contributor
  • **
  • Posts: 321
  • Country: ca
Re: FPGA ?
« Reply #12 on: April 11, 2018, 03:58:05 am »
DIP FPGA, now that is a good one.

And people think my 2 layer BGA board is silly.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: FPGA ?
« Reply #13 on: April 11, 2018, 05:02:57 am »
Well I guess there are PALs and GALs, they're an early relative of the FPGA and can occasionally be found in DIP packages.
 

Offline JanJansenTopic starter

  • Frequent Contributor
  • **
  • Posts: 380
  • Country: nl
Re: FPGA ?
« Reply #14 on: April 11, 2018, 04:23:23 pm »
Thanks for the reply`s all.
I like to make my own dev board better then buying one, i will try with a DIP converter maybe if that is possible.

I am looking at mouser, there are FPGAs from €1,24 to €30.098,92, very funny.
If i buy some cheap chip is the software that is needed free to use and fully optimized ?
aliexpress parachute
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: FPGA ?
« Reply #15 on: April 11, 2018, 04:40:11 pm »
The cheapest way to get started with FPGAs that I know of is with the EP2C5T144C8 "mini board" dev boards that you can buy for about US$14 from many Chinese sellers on ebay and other sites. These boards are cheaper than buying a bare FPGA and they are all ready to go. You will not be able to do anything with a DIP layout, they do not have enough pins.

The software you use depends on the FPGA manufacture, Altera (Intel) Quartus II and Xilinx ISE are the two I'm familiar with and both have free versions with some minor limitations.
 

Offline NivagSwerdna

  • Super Contributor
  • ***
  • Posts: 2495
  • Country: gb
Re: FPGA ?
« Reply #16 on: April 11, 2018, 05:14:38 pm »
If you find a 5V DIP FPGA let me know.  ;)
 

Online NorthGuy

  • Super Contributor
  • ***
  • Posts: 3140
  • Country: ca
Re: FPGA ?
« Reply #17 on: April 11, 2018, 06:22:04 pm »
I like to make my own dev board better then buying one, i will try with a DIP converter maybe if that is possible.

This is, sort of, a DIP converter:

https://store.digilentinc.com/cmod-a7-breadboardable-artix-7-fpga-module/

The dev tool, called Vivado, has free support for most reasonably small FPGAs.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: FPGA ?
« Reply #18 on: April 11, 2018, 06:33:37 pm »
If you find a 5V DIP FPGA let me know.  ;)

there are SOM modules with Xilinx chip on it, plus level shifter. All of this in DIP a BIG 48pin package.
But it's a chip, it's a SOM, and it's a bit priced.

 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: FPGA ?
« Reply #19 on: April 11, 2018, 06:38:13 pm »
do you know, guys, any low-cost (<200Euro) fpga (Xilinx is my choice) with usb3343 onboard?  :popcorn:
 

Offline NiHaoMike

  • Super Contributor
  • ***
  • Posts: 9007
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: FPGA ?
« Reply #20 on: April 12, 2018, 12:37:05 am »
do you know, guys, any low-cost (<200Euro) fpga (Xilinx is my choice) with usb3343 onboard?  :popcorn:
There's a $100 Artix 7 35T board with FX3 USB 3.0 option on Ebay.
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 

Offline BrianHG

  • Super Contributor
  • ***
  • Posts: 7725
  • Country: ca
Re: FPGA ?
« Reply #21 on: April 12, 2018, 03:42:39 am »
Why are you guys going for such overpriced FPGA boards.  Here is a cheap one, and since it is overkill, if the OP ever decides to make his own board, he can use the smaller 12$ or 7$ Max 10 chip after prototyping with this dev board.  No bootprom, only requires 1 single 3.3v supply and it's a simple QFP.

https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=218&No=708
« Last Edit: April 12, 2018, 03:45:45 am by BrianHG »
 

Online SiliconWizard

  • Super Contributor
  • ***
  • Posts: 14445
  • Country: fr
Re: FPGA ?
« Reply #22 on: April 12, 2018, 11:43:55 am »
There are also the Lattice breakout boards - approx $25 - MachXO2 and MachXO3.
 

Offline mac.6

  • Regular Contributor
  • *
  • Posts: 225
  • Country: fr
Re: FPGA ?
« Reply #23 on: April 12, 2018, 03:01:11 pm »
Do not rush on fpga dev board!

First learn some HDL (verilog/vhdl, pick your poison), then simulate and test your design.  All this is 0$.
Once you have something that behave correctly on your testbench, select your fpga and synthesize.
 

Offline JanJansenTopic starter

  • Frequent Contributor
  • **
  • Posts: 380
  • Country: nl
Re: FPGA ?
« Reply #24 on: April 12, 2018, 04:32:51 pm »
Normally with flash MCUs they guarantee 40 years, after that the flash might be corrupted.
How does this count for FPGA ?, are they staying good longer or do they also use flash for the programming ?
Can you also reprogram FPGA 100.000 times like a flash MCU ?

Can i pick any FPGA ?, they all do the same ?
thanks
aliexpress parachute
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf