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=…
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(a)lists.linuxaudio.org
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.