Re: [LAU] zedboard fpga dev board and linux audio

From: Kelly Hirai <khirai@email-addr-hidden-geek.net>
Date: Fri Feb 01 2013 - 22:07:46 EET

On 02/01/13 16:41, Simon Wise wrote:
> On 01/02/13 06:22, Len Ovens wrote:
>>
>> On Thu, January 31, 2013 9:42 am, Kelly Hirai wrote:
>>> im wondering if anyone has played with these and what kind of
>>> performance they might expect.
>>>
>>> http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,1028&Prod=ZEDBOARD&CFID=412288&CFTOKEN=58875851
>>>
>>>
>>> assuming nothing breaks this year, it might be in the budget
>>
>> Looks interesting. What are you going to try to do with it? Should
>> make a
>> nifty portable audio recorder. Should be able to be used as an ether net
>> sound card. I don't know how well it would work as a guitar effects
>> box or
>> synth (hmm no midi in). It is meant to be a note pad. The thing you
>> can't
>> tell from the write up is if there is any hardware that would interfere
>> with low latency audio. My netbook has that problem with the wireless
>> chip. I can have low latency audio or wireless, but not both.
>
> It is certainly nothing like a note pad, it is an evaluation board
> with a chip with programmable logic, designed for embedded systems:
>
> http://en.wikipedia.org/wiki/Field-programmable_gate_array
>
> The chip also has an ARM CPU and various other sections as well, and
> it is mounted on an evaluation board that has the output pins wired up
> to some RAM, an SD card, a Gbit ethernet controller and various other
> useful things. The software required to program it is included (it has
> linux versions). If you want to explore FPGA logic programming it
> could be really interesting. For example seeing what you could do with
> a 5Mhz bitstream audio output into a very simple digital amp circuit,
> or for various DIY interfaces through the GPIO ports. For a few more
> $$ there is a pack of 15 cards that plug into those GPIO ports,
> including some ADC/DAC stuff. There seem to be some interesting high
> speed connection pins also. Being able to program the logic circuits
> and implement things on that level allows very different kinds of
> approaches. Perhaps many channels of audio output using bitstreams and
> fairly simple amplifier circuits which could then be used with the
> Gbit ethernet to provide an interesting sound output device. Just
> playing with ideas here.
>
> Their other FPGA models without the fixed CPU etc might be interesting
> as well, you can program a CPU in them if you want, though it won't be
> as fast as one with fixed logic it is certainly more flexible if you
> don't need much in the way of a CPU. This kit is half the price of the
> one above:
>
> http://www.xilinx.com/products/boards-and-kits/HW-SPAR3A-SK-UNI-G.htm
>
> There are open source hardware designs that can be put into these
> FPGAs as well ... look at:
>
> http://opencores.org/
>
> There is another hybrid approach to programmable logic plus a CPU that
> may be a much more natural fit with audio DSP programming ...
>
> http://www.stretchinc.com/products/s7000.php
>
> here the idea is that the programmable logic is integrated with the
> CPU via 32 128-bit registers so that the logic part can be programmed
> as custom instructions which are run in the CPUs instruction pipeline.
> This is quite different to the Zedboard approach which puts the
> programmable logic more as peripheral devices to the CPU. The Stretch
> seems reasonably mature, it is the third generation since the original
> version (in 2004, with PPC CPUs instead of ARM ones). FPGAs have been
> around for a very long time, but it seems only recently got more
> useful or at least sellable.
>
> The big selling point for Stretch on their website is that their
> compiler will compile functions written in C or C++ into their
> programmable logic that can then be run as single (big) instructions
> in the CPU. Also it seems the logic section has somewhat larger units
> of logic ... in the Zedboard you have a large array of 4-bit look up
> tables and sets of 4000-bit ram modules, connectible to very
> configurable GPIO pins while in the Stretch they seem to have adders
> and multipliers and so forth (probably much more useful in the context
> of compiling code written as a function in a procedural language). No
> need to learn one of the hardware logic languages, if the compiler is
> good enough to do that for you. From the site it seems they have done
> quite interesting things with video codecs, image recognition and such
> like. The logic part can be reset in 100 microseconds, so for audio
> use that is only about a 5 sample wait for a new set of CPU
> instructions to be loaded. Potentially very interesting.
>
> Simon
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user@email-addr-hidden
> http://lists.linuxaudio.org/listinfo/linux-audio-user
fpga seems a natural way to express in silicon, data flow languages like
pd, chuck, csound, ecasound. regarding the stretch, the idea that one
could code in c or c++ might streamline refactoring code, but i'm still
trying to wrap my head around designing graph topology for code that is
tied to the program counter register. nor do i see the right peripherals
for sound. perhaps the g.711 codec support is software implementation
and could be rewritten. need stats on the 8 bnc to dvi adapter audio port.

on the xlinx side, would you really have to hack it in vhdl? rewriting
opcodes / function blocks in vhdl could be rewarding but still, that
would be the end of my time.

k.
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Sat Feb 2 00:15:02 2013

This archive was generated by hypermail 2.1.8 : Sat Feb 02 2013 - 00:15:02 EET