[linux-audio-dev] Attn : Hardware Jockeys : Solution to Midi problem

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: [linux-audio-dev] Attn : Hardware Jockeys : Solution to Midi problem
From: Erik de Castro Lopo (erikd-lad_AT_mega-nerd.com)
Date: Mon Mar 11 2002 - 06:08:39 EET


Hi People,

A couple of months ago we had a number of people on this list keen
on the idea of designing high quality audio I/O hardware. Having
designed this kind of stuff myself and knowing how hard this is
without the proper resources I did my best to disuade them.

We have also just recently had an interesting discussion of how hard
it is to do Midi correctly on modern multi-purpose OSes like Linux.

I have therefore come up with an idea to satisfy these two goups
simultaneously; a high quality Midi I/O interface which would
provide 8 or more Midi Ins and Outs and guarantee accurate Midi
timing.

High Quality Midi I/O Proposal
==============================
This Midi I/O interface uses an external processor to take care of
all Midi scheduling and routing. All Midi messages sent to and
receieved from the host are time stamped.

The interface itself is a PCI board containing a CPU with an
embedded PCI interface. A good example of this is the PLX iop480
(see link [1] below), a 32 bit PPC core which can connect directly
to the PCI bus. Connected to this processor are however many serial
UARTs are required for the Midi I/Os.

Once you have the hardware the software consists of two parts:

   - A linux device driver which talks the PPC chip via the PCI
     bus.
   - Software running on the PCC chip handling interrupts and
     communicating with the Linux host.

The software running on the PPC does not really need an OS. It could
just be an single monolithic application. This software should allow
the routing of Midi signals between arbitrary inputs and outputs
without any intervention from the host OS other than the initial
specification of how signals are routed. Another possibility would
be the addition of a plugin architecture allowing the programming
of Midi processing plugins.

[1] http://www.plxtech.com/products/iop480/

------------------------------------------------------------------

I wish I had the time to fiddle about with this myself but unfortunately
I don't.

However, if anyone one wants to attempt this project I would suggest
you start by getting hold of the Rapid Development Kit (ie a prebuilt
prototype board ready to be plugged into a PC) which costs about
US$995. The chip itself costs about US$50 each in low volumes.

Erik

-- 
+-----------------------------------------------------------+
  Erik de Castro Lopo  nospam_AT_mega-nerd.com (Yes it's valid)
+-----------------------------------------------------------+
A sufficiently advanced programming error is
indistinguishable from the Windows 95 Operating System.


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Mar 11 2002 - 05:59:21 EET