Open Source Hardware (Re: [linux-audio-user] Re: [linux-audio-dev] RME is no more)
markknecht at gmail.com
Wed Dec 15 14:24:17 EST 2004
On 15 Dec 2004 10:29:38 -0800, Fernando Lopez-Lezcano
<nando at ccrma.stanford.edu> wrote:
> On Tue, 2004-12-14 at 09:46, Mark Knecht wrote:
> > On 14 Dec 2004 10:03:31 +0100, Andreas Kuckartz <A.Kuckartz at ping.de> wrote:
> > > Lee Revell wrote:
> > >
> > > > Christ, what the fuck country do you live in? Don't you understand the
> > > > concept of people having bills to pay? Or do you just assume the RME
> > > > guys are independenly wealthy and just design sound cards for fun?
> > >
> > > Interestingly some people seem to be existing who are working on Linux for fun.
> > > Also there is a concept known as "Open Source Hardware" which was mentioned here
> > > before.
> > Actually, it was Lee and I (I think) who were the main proponents of
> > the Open Source Sound Card idea. Funny how that works out at times.
> > My current thought is that there aren't enough people interested in
> > doing it. Maybe I'm wrong?
> Maybe, maybe not. One quick question I have been meaning to ask. Would
> it be possible to completely drive the card with firmware? What I mean,
> can all the packet processing be handled by an onboard processor in the
> soundcard? No gate arrays? What I picture is of-the-shelf components
> only... [*]
> -- Fernando
> [*] in a former life I used to design digital hardware and code firmware
> for small (up to 8x64) analog telephone exchanges, up to around 1989,
> technology has changed a bit in the meantime :-)
I believe this is (more or less) completely possible. Let's use two
of the recently maligned RME's products as an example - the HDSP 9652
and the Hammerfall Light. (Hey - imagine that?! I chose the two cards
I own!) ;-)
Both of these cards use Xilinx FPGAs. Both require firmware be
loaded at boot time to turn the general purpose Xilinx chip into a
sound card, but once the firmware is loaded the chip, for all intents
and purposes, becomes just like a hard wired gate array.
On both of these cards there is no analog at all. It's just the
Xilinx chip acting as the PCI interface and all of the sound card
logic. The other side of the Xilinx chip goes to some off the shelf
line drivers to create the ADAT and s/pdif interfaces.
Personally I don't think it would be very expensive to do a card
like this, but it does require the user to have external D/A and A/D
units that meet their needs. I like this idea since it means people
can buy what they want - from M-Audio to Apogee and higher - and get
the quality they pay for. It's not the lowest cost solution, but it
covers the widest range of qualities.
Using digital interfaces also allows these cards to serve as data
transport between machine. Again, using my home studio as an example,
I have the HDSP 9652 in the center as a hub on a machine that now runs
Ardour. Ardour and other apps get all the internal HDSP 9652 outputs.
The 3 ADAT interfaces go to:
1) A Windows box running Reaktor/GigaStudio/Battery/Acid Pro
2) A Windows box running Pro Tools
3) An external 8-port D/A/A/D to hook up other sources
I get 8 channels between each of these boxes, all digital, all synced
together over ADAT. It works nicely. I currently don't use s/pdif for
much, but I'd probably get a really good D/A and place my main output
there in the future. (I currently use the 002 Rack's D/A when running
Ardour. Cool, 'eh?) ;-)
With the price of Xilinx chips coming down all the time, and with
functionality going up, I see a small card with one large FPGA, a
small eeprom to enable a PCI enterface in the chip, and some
transceivers for ADAT and/or s/pdif. I am just guessing that even in
small volumes this can probably be built for under $300/card. (That's
a total guess.)
The nice thing about this, in my mind, is that when Xilinx comes
out with each new generation you can imagine putting a bigger Xilinx
chip on the same card and programming more interesting things, like
hardware mixers. This is rally all RME did between the Hammerfall and
HDSP line. (I'm being purposely simplistic here.)
There are certainly HUGE challenges for a group of folks like us
doing this. Verilog (or VHDL) design, which I don't do, compiling that
code into something that programs the Xilinx chips (Symplicity?)
assembly, testing, etc., but none of it is unsurmountable. It just
takes some vision and, unfortunately, some money unless we can get
access to some Open Source tools or, possibly, commercial tools
through some friendly company.
Doing this as a 1394-based external unit is really interesting, but
is more complicated. Maybe PCI is the best for now.
If you have a Hammerfall around somewhere, take a look at the card.
There is almost nothing on it and it's all stuff that's available
through Avnet or most any large distributor. Probably I should price
those chips but my card is in use right now.
Let me know if I've answered your basic questions.
More information about the Linux-audio-user