Re: [music-dsp] An example video: C to FPGA programming

2020-01-17 Thread Sound of L.A. Music and Audio

I am following this "C to VHDL" thing now for 15 years. Mentor had a
tool to do that already in 2005.

Up to now, the basic issue never changed:

C/C++ has not the options to define those things which are required to
generate an application specific hardware. But exactly this is the point
about FPGA programming: Defining an intelligent solution for a specific
problem. Then they become efficient. And they become very efficient if
you manage to think of an intelligent hardware structure. If MATLAB HDL
Coder oder Xilinx HLS should be able to find this from the C definition,
first the C definition had to contain the solution and MATWORKS or
XILINX must have taken this particular idea into account and must have
put in into the library.

Both ist not the case.

This way you can only get a standard hardware which performs your
function and shun some work in balancing the timing and simplfy vector
width handling and trimming of calculations.

The vast majority of the solution anyway is getting known and existing
cores instatiated automatically instead of instatiating them manually by
copy and paste.



Am 10.01.2020 um 11:25 schrieb Patric Schmitz:

Hi Theo,

I believe the link should be:

     https://www.youtube.com/watch?v=kfWNfjcIO2Q

Thanks for sharing,
Patric

On 1/10/20 11:18 AM, Theo Verelst wrote:

Hi all

Maybe it's not everybody's cup of tea, but I recall some here are
(like me) interested in
music applications of FPGA based signal processing. I made a video
showing a real time
"Silicon Compile" and test program run on a Zynq board using Xilinx's
Vivado HLS to create
an FPGA bit file that initializes a 64k short integer fixed point sine
lookup table
(-pi/2 .. pi/2) which can be used like a C function with argument
passing by a simple test
program running on ARM processors.

The main point is the power the C compilation can provide the FPGA
with, and to see the use of the latest 2019.2 tools at work with the
board, some may find that useful or
entertaining:

    https://youtu.be/Nel6QAvmGcs

Theo V
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp


___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp

___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp

Re: [music-dsp] An example video: C to FPGA programming

2020-01-12 Thread raito
Andrew,

I think that the information at http://www.clifford.at/icestorm/ would be
useful to you. It describes the icestorm toolchain and uses Lattice's
development boards. I've done some musical things using both the smaller
and larger boards.

It's a pretty inexpensive way to get started.

Neil Gilmore
ra...@raito.com

On Fri, January 10, 2020 5:48 am, Andrew Luke Nesbit wrote:
> On 10/01/2020 10:18, Theo Verelst wrote:
>
>> Hi all
>>
>
> Hi Theo,
>
>
>> Maybe it's not everybody's cup of tea, but I recall some here are
>> (like me) interested in music applications of FPGA based signal
>> processing.
> Lately I have been researching exactly this topic.  It's one of the
> primary areas of DSP research that I am considering directing my career
> towards and making a significant investment of resources in learning.site
>
>
> There is a lot of meaningful context in all of this.  I'm looking
> forward to deploying my new website that should explain it.
>
> I have a strong backgroumd in music and audio signal processing.  Not
> with FPGA however.
>
>> I made a video showing a real time "Silicon Compile" and test program
>> run on a Zynq board using Xilinx's Vivado HLS to create an FPGA bit file
> I am overwhelmed by where to start in FPGA.  This includes finding a
> hardware recommendation for a beginnerdevelopment kit.
>
> Nevertheless I have yet to look up a vendor of this FPGA development kit
> and toolchain and then to find out what prices.
>
>> that initializes a 64k short integer fixed point sine lookup table
>> (-pi/2 .. pi/2) which can be used like a C function with argument
>> passing by a simple test program running on ARM processors.
> This is great!  It's simple, useful, and can be visualized with known
> expected results.  It seems like a perfect starting project.
>
>> The main point is the power the C compilation can provide the FPGA
>> with, and to see the use of the latest 2019.2 tools at work with the
>> board,
> Might I rephrase this as the following?
>
>
> -   It's an exercise in selecting an appropriate FPGA development kit.
> This kit would be a good investment and sufficienly repurposeable for
> future DSP projects.
>
> -   Setting up the toolchain; learning a workflow; and acquainting
> oneself with the ecosystems of:
>
> -   FPGA-based DSP;
>
>
> -   the Xilinx and FPGA support communities;
>
>
> -   edge computing; and...
>
>
> circling back to the beginning...
>
> perhaps even providing a basic introduction to FPGA for somebody (like
> me?).
>
> In this last case what would be an appropriate "Step 1. Introduction to
> FPGA"?
>
>
> I guess that Xilinx's own documentation for new users of FPGA technology
> would be a good place to start.
>
> If anybody has recommendations for additional books, blogs, forums, etc,
> please let me know.  Thank you!!
>
> In summary: Is Xilinx a good company to invest time into learning its
> ecosystem?  This obviously includes spending money on dev kits with the aim
> of FPGA-basd DSP.  For examples, is Xilinx's support good?  Is the
> community ecosystem healthy?
>
> Kind regards,
>
>
> Andrew
> --
> OpenPGP key: EB28 0338 28B7 19DA DAB0  B193 D21D 996E 883B E5B9
> ___
> dupswapdrop: music-dsp mailing list
> music-dsp@music.columbia.edu
> https://lists.columbia.edu/mailman/listinfo/music-dsp
>
>
>

___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp



Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread music . maker


I had spent several years using FPGAs for DSP.  Several MIDI synthesizers 
written in Verilog came
out of that.  Xilinx was my preference.  Back in those days, I used what would 
be considered a
"small" FPGA (500,000 equivalent gates) and got a minimum of 8 voices of 
polyphony, so with
today's much larger and faster FPGAs, the sky is the limit.

An FPGA is a logic device.  That is, it's internal bits and pieces amount to a 
collection of
logic blocks that you can connect as you like.  Also included are fast 
multiplier blocks (the
more the better).  So it is good to have a complete understanding of how all of 
the basic logic
functions work from AND/OR/XOR/Invert to flipflops to adders and multipliers.  
I never had much
use for C to FPGA since it will only do what the compiler is "trained" to do.  
There are times
when an intimate knowledge of logic can provide a unique solution that the 
compiler might not.  A
good deal of what is in a synthesizer amounts to a state machine or several 
state machines which
can be written in C or an HDL.  To my way of thinking, if you want to use C, 
then a
microprocessor might serve better (realistically, less messing around) given 
the project can fit
within the memory and clock speed of the chosen device.

Ultimately, I eventually came back around to ARM chips (and yes, C).  This 
world is less
expensive and requires less support circuitry than an FPGA.  The ARM contains 
the program in
internal Flash while the FPGA needs an external Flash RAM and a CPLD that can 
shovel the data
into the FPGA at power on.  

My opinion here is that FPGAs are very powerful tools, but these days might be 
considered
overkill for a 32 voice polysynth unless you've coded up a large collection of 
some truly unique
features.  FPGAs also have a rather steep learning curve (and that is not meant 
to discourage
you).  If the project you plan is huge, an FPGA could easily be appropriate.  
But for what I was
doing (32 to 64 voice polysynths), they were just more work and expense than I 
felt was justified.

Given you already know the C language, have you looked at ARMs such as STM32H7 
series for doing
DSP work?  They do have FPU hardware inside that works on both float and double 
types as well as
having DSP instructions (such as multiply and accumulate).

Again, this post is not to dissuade you from learning FPGA, it is to encourage 
you to look at
your project's size and scope and make a good decision about the hardware to 
use.

-- ScottG

music-dsp@music.columbia.edu wrote:
>P.S. On the topic of using FPGA's to implement lookup tables, I 
>discovered the following Hacakday article.  Fortunately it simply  in my 
>email inbox, about an hour or two, ago:
>
>https://hackaday.com/2020/01/10/using-lookup-tables-to-make-the-impossible-possible/
>
>If you thought Theo's message was interesting then I recommend doing a 
>deep dive into this article too.  For me it is (also) wonderfully 
>illuminating.
>
>
>On 10/01/2020 11:48, Andrew Luke Nesbit wrote:
>> On 10/01/2020 10:18, Theo Verelst wrote:
>>> Hi all
>> 
>> Hi Theo,
>> 
>>> Maybe it's not everybody's cup of tea, but I recall some here are
>>> (like me) interested in music applications of FPGA based signal
>>> processing.
>> Lately I have been researching exactly this topic.  It's one of the 
>> primary areas of DSP research that I am considering directing my career 
>> towards and making a significant investment of resources in learning.site
>> 
>> There is a lot of meaningful context in all of this.  I'm looking 
>> forward to deploying my new website that should explain it.
>> 
>> I have a strong backgroumd in music and audio signal processing.  Not 
>> with FPGA however.
>> 
>>> I made a video showing a real time "Silicon Compile" and test program
>>> run on a Zynq board using Xilinx's Vivado HLS to create an FPGA bit
>>> file
>> I am overwhelmed by where to start in FPGA.  This includes finding a 
>> hardware recommendation for a beginnerdevelopment kit.
>> 
>> Nevertheless I have yet to look up a vendor of this FPGA development kit 
>> and toolchain and then to find out what prices.
>> 
>>> that initializes a 64k short integer fixed point sine lookup table 
>>> (-pi/2 .. pi/2) which can be used like a C function with argument 
>>> passing by a simple test program running on ARM processors.
>> This is great!  It's simple, useful, and can be visualized with known 
>> expected results.  It seems like a perfect starting project.
>> 
>>> The main point is the power the C compilation can provide the FPGA
>>> with, and to see the use of the latest 2019.2 tools at work with the
>>> board,
>> Might I rephrase this as the following?
>> 
>> -   It's an exercise in selecting an appropriate FPGA development kit. 
>> This kit would be a good investment and sufficienly repurposeable for 
>> future DSP projects.
>> 
>> -   Setting up the toolchain; learning a workflow; and acquainting 
>> oneself with the ecosystems of:
>> 
>>      - 

Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread ćwiek
Try also googling for 'fpga synthesizer element14' lot's of good stuff

pt., 10 sty 2020, 21:37 użytkownik Andrew Luke Nesbit <
em...@andrewnesbit.org> napisał:

> P.S. On the topic of using FPGA's to implement lookup tables, I
> discovered the following Hacakday article.  Fortunately it simply  in my
> email inbox, about an hour or two, ago:
>
>
> https://hackaday.com/2020/01/10/using-lookup-tables-to-make-the-impossible-possible/
>
> If you thought Theo's message was interesting then I recommend doing a
> deep dive into this article too.  For me it is (also) wonderfully
> illuminating.
>
>
> On 10/01/2020 11:48, Andrew Luke Nesbit wrote:
> > On 10/01/2020 10:18, Theo Verelst wrote:
> >> Hi all
> >
> > Hi Theo,
> >
> >> Maybe it's not everybody's cup of tea, but I recall some here are
> >> (like me) interested in music applications of FPGA based signal
> >> processing.
> > Lately I have been researching exactly this topic.  It's one of the
> > primary areas of DSP research that I am considering directing my career
> > towards and making a significant investment of resources in learning.site
> >
> > There is a lot of meaningful context in all of this.  I'm looking
> > forward to deploying my new website that should explain it.
> >
> > I have a strong backgroumd in music and audio signal processing.  Not
> > with FPGA however.
> >
> >> I made a video showing a real time "Silicon Compile" and test program
> >> run on a Zynq board using Xilinx's Vivado HLS to create an FPGA bit
> >> file
> > I am overwhelmed by where to start in FPGA.  This includes finding a
> > hardware recommendation for a beginnerdevelopment kit.
> >
> > Nevertheless I have yet to look up a vendor of this FPGA development kit
> > and toolchain and then to find out what prices.
> >
> >> that initializes a 64k short integer fixed point sine lookup table
> >> (-pi/2 .. pi/2) which can be used like a C function with argument
> >> passing by a simple test program running on ARM processors.
> > This is great!  It's simple, useful, and can be visualized with known
> > expected results.  It seems like a perfect starting project.
> >
> >> The main point is the power the C compilation can provide the FPGA
> >> with, and to see the use of the latest 2019.2 tools at work with the
> >> board,
> > Might I rephrase this as the following?
> >
> > -   It's an exercise in selecting an appropriate FPGA development kit.
> > This kit would be a good investment and sufficienly repurposeable for
> > future DSP projects.
> >
> > -   Setting up the toolchain; learning a workflow; and acquainting
> > oneself with the ecosystems of:
> >
> >  -   FPGA-based DSP;
> >
> >  -   the Xilinx and FPGA support communities;
> >
> >  -   edge computing; and...
> >
> > circling back to the beginning...
> >
> > perhaps even providing a basic introduction to FPGA for somebody (like
> > me?).
> >
> > In this last case what would be an appropriate "Step 1. Introduction to
> > FPGA"?
> >
> > I guess that Xilinx's own documentation for new users of FPGA technology
> > would be a good place to start.
> >
> > If anybody has recommendations for additional books, blogs, forums, etc,
> > please let me know.  Thank you!!
> >
> > In summary: Is Xilinx a good company to invest time into learning its
> > ecosystem?  This obviously includes spending money on dev kits with the
> > aim of FPGA-basd DSP.  For examples, is Xilinx's support good?  Is the
> > community ecosystem healthy?
> >
> > Kind regards,
> >
> > Andrew
>
> --
> OpenPGP key: EB28 0338 28B7 19DA DAB0  B193 D21D 996E 883B E5B9
> ___
> dupswapdrop: music-dsp mailing list
> music-dsp@music.columbia.edu
> https://lists.columbia.edu/mailman/listinfo/music-dsp
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp

Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread Andrew Luke Nesbit
P.S. On the topic of using FPGA's to implement lookup tables, I 
discovered the following Hacakday article.  Fortunately it simply  in my 
email inbox, about an hour or two, ago:


https://hackaday.com/2020/01/10/using-lookup-tables-to-make-the-impossible-possible/

If you thought Theo's message was interesting then I recommend doing a 
deep dive into this article too.  For me it is (also) wonderfully 
illuminating.



On 10/01/2020 11:48, Andrew Luke Nesbit wrote:

On 10/01/2020 10:18, Theo Verelst wrote:

Hi all


Hi Theo,


Maybe it's not everybody's cup of tea, but I recall some here are
(like me) interested in music applications of FPGA based signal
processing.
Lately I have been researching exactly this topic.  It's one of the 
primary areas of DSP research that I am considering directing my career 
towards and making a significant investment of resources in learning.site


There is a lot of meaningful context in all of this.  I'm looking 
forward to deploying my new website that should explain it.


I have a strong backgroumd in music and audio signal processing.  Not 
with FPGA however.



I made a video showing a real time "Silicon Compile" and test program
run on a Zynq board using Xilinx's Vivado HLS to create an FPGA bit
file
I am overwhelmed by where to start in FPGA.  This includes finding a 
hardware recommendation for a beginnerdevelopment kit.


Nevertheless I have yet to look up a vendor of this FPGA development kit 
and toolchain and then to find out what prices.


that initializes a 64k short integer fixed point sine lookup table 
(-pi/2 .. pi/2) which can be used like a C function with argument 
passing by a simple test program running on ARM processors.
This is great!  It's simple, useful, and can be visualized with known 
expected results.  It seems like a perfect starting project.



The main point is the power the C compilation can provide the FPGA
with, and to see the use of the latest 2019.2 tools at work with the
board,

Might I rephrase this as the following?

-   It's an exercise in selecting an appropriate FPGA development kit. 
This kit would be a good investment and sufficienly repurposeable for 
future DSP projects.


-   Setting up the toolchain; learning a workflow; and acquainting 
oneself with the ecosystems of:


     -   FPGA-based DSP;

     -   the Xilinx and FPGA support communities;

     -   edge computing; and...

circling back to the beginning...

perhaps even providing a basic introduction to FPGA for somebody (like 
me?).


In this last case what would be an appropriate "Step 1. Introduction to 
FPGA"?


I guess that Xilinx's own documentation for new users of FPGA technology 
would be a good place to start.


If anybody has recommendations for additional books, blogs, forums, etc, 
please let me know.  Thank you!!


In summary: Is Xilinx a good company to invest time into learning its 
ecosystem?  This obviously includes spending money on dev kits with the 
aim of FPGA-basd DSP.  For examples, is Xilinx's support good?  Is the 
community ecosystem healthy?


Kind regards,

Andrew


--
OpenPGP key: EB28 0338 28B7 19DA DAB0  B193 D21D 996E 883B E5B9
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp

Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread Andrew Luke Nesbit

On 10/01/2020 10:18, Theo Verelst wrote:

Hi all


Hi Theo,


Maybe it's not everybody's cup of tea, but I recall some here are
(like me) interested in music applications of FPGA based signal
processing.
Lately I have been researching exactly this topic.  It's one of the 
primary areas of DSP research that I am considering directing my career 
towards and making a significant investment of resources in learning.site


There is a lot of meaningful context in all of this.  I'm looking 
forward to deploying my new website that should explain it.


I have a strong backgroumd in music and audio signal processing.  Not 
with FPGA however.



I made a video showing a real time "Silicon Compile" and test program
run on a Zynq board using Xilinx's Vivado HLS to create an FPGA bit
file
I am overwhelmed by where to start in FPGA.  This includes finding a 
hardware recommendation for a beginnerdevelopment kit.


Nevertheless I have yet to look up a vendor of this FPGA development kit 
and toolchain and then to find out what prices.


that initializes a 64k short integer fixed point sine lookup table 
(-pi/2 .. pi/2) which can be used like a C function with argument 
passing by a simple test program running on ARM processors.
This is great!  It's simple, useful, and can be visualized with known 
expected results.  It seems like a perfect starting project.



The main point is the power the C compilation can provide the FPGA
with, and to see the use of the latest 2019.2 tools at work with the
board,

Might I rephrase this as the following?

-   It's an exercise in selecting an appropriate FPGA development kit. 
This kit would be a good investment and sufficienly repurposeable for 
future DSP projects.


-   Setting up the toolchain; learning a workflow; and acquainting 
oneself with the ecosystems of:


-   FPGA-based DSP;

-   the Xilinx and FPGA support communities;

-   edge computing; and...

circling back to the beginning...

perhaps even providing a basic introduction to FPGA for somebody (like me?).

In this last case what would be an appropriate "Step 1. Introduction to 
FPGA"?


I guess that Xilinx's own documentation for new users of FPGA technology 
would be a good place to start.


If anybody has recommendations for additional books, blogs, forums, etc, 
please let me know.  Thank you!!


In summary: Is Xilinx a good company to invest time into learning its 
ecosystem?  This obviously includes spending money on dev kits with the 
aim of FPGA-basd DSP.  For examples, is Xilinx's support good?  Is the 
community ecosystem healthy?


Kind regards,

Andrew
--
OpenPGP key: EB28 0338 28B7 19DA DAB0  B193 D21D 996E 883B E5B9
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp



Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread Felix Homann
Am Fr., 10. Jan. 2020 um 11:20 Uhr schrieb Theo Verelst :
>
> > The main point is the power the C compilation can provide the FPGA with, 
> > and to see the
> use of the latest 2019.2 tools at work with the board, some may find that 
> useful or
> entertaining:
>
> https://youtu.be/Nel6QAvmGcs

Great, thanks for sharing, Theo!

I guess, this is the correct link, though:
https://www.youtube.com/watch?v=kfWNfjcIO2Q

Kind regards,
Felix
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp



Re: [music-dsp] An example video: C to FPGA programming

2020-01-10 Thread Patric Schmitz

Hi Theo,

I believe the link should be:

https://www.youtube.com/watch?v=kfWNfjcIO2Q

Thanks for sharing,
Patric

On 1/10/20 11:18 AM, Theo Verelst wrote:

Hi all

Maybe it's not everybody's cup of tea, but I recall some here are (like 
me) interested in
music applications of FPGA based signal processing. I made a video 
showing a real time
"Silicon Compile" and test program run on a Zynq board using Xilinx's 
Vivado HLS to create
an FPGA bit file that initializes a 64k short integer fixed point sine 
lookup table
(-pi/2 .. pi/2) which can be used like a C function with argument 
passing by a simple test

program running on ARM processors.

The main point is the power the C compilation can provide the FPGA with, 
and to see the use of the latest 2019.2 tools at work with the board, 
some may find that useful or

entertaining:

    https://youtu.be/Nel6QAvmGcs

Theo V
___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp


___
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp