audio &
music workstation with C3/C2 and 1024 polyphonic voices |
|
Cyclone III +
C2 boards |
Base Hardware UNIT
Altera Cyclone III

The new Altera Nios Embedded
Development Kit III from Terasic is used to implement and
test the parts of the AUDIO DSP. It performs IO
communications and is the master of the sub modules.
Currently there is one music module driving one synthesizer
module and one audio dsp module directly. This gives the
option to generate and process all music and audio data with
low latency. The board is attached to both a stereo audio
codec chip and high speed ADCs + DACs which are used for
signal observation during development process. Also it
contains a Video interface to VGA to directly monitor spectral audio
responses as used in a graphical equalizer and
multiband compressor.
Daughter boards
can be linked by audio wire or virtual midi, also offering virtual
MIDI over S/PDIF. This both ensures high MIDI bandwidth much
beyond the current MIDI standard.
For example with common studio music
setups, the transmission of SYSEX-data and tone data for e.g.
32 MIDI channels will typically require a period of nearly 70ms
which makes it impossible to generate musically synchronous
data in real time. Remember that already 2ms delay between two
channels might be discovered as echo. With the FPGA based digital
audio workstation, 1024 MIDI channels could be transmitted in
less than one sample of 96kHz! This makes it first possible
to define echos and reverbs in the MIDI filed and install arpeggiator
modules which generate reflections and who's repeated notes perfectly
fit to the music data stream.
Music Box / MIDI Engine
8 x 16 primary MIDI channels, 1024 secondary channels

The Music Engine produces MIDI-like
tone information, based on pre defined rhythm and tone patterns
which are kept in a memory. The tone notes are copied/doubled
according to the ARP pattern, compressed in loudness and modified
by the ADSR-module end then sent to the synth module synchronously.
255 Tone Levels = quarter Notes covering 127 MIDI Notes are
available.
Midi Routing to internal and external
devices with virtual MIDI over S/PDIF

The different boards are interlinked
with LVDS parallel bus as well as
S/PDIF
like LVDS-connection using a virtual MIDI2S/PDIF-converter.
With S/PDIF2MIDI,
standard MIDI-interface can be linked. MIDI-send/MIDI-return
is used to plug additional arpeggio boards, as well as real
arpeggiators from hardware synthesizers.
In this audio
workstation, I use a 5 Byte MIDI, containing additional time
code and channel information. Routing information may be attached
too. Also 10 Bit controller data can be sent instead of 7/8Bit.
The difference between the first and the last MIDI channel is
only 0,2ms in maximum, even when all 1024 channels are active
and sending. Typically 200-300 channels send and receive
MIDI packets of 9-12 bytes in size per tone, so the latency is below
0,1ms leading to inaudible jitter of simultaneously
occurring
tones.
Music Synthesizer Engine with 1024 voices
polyphony

The Synthesizer takes the MIDI
notes and produces audio signals for each midi channel from
generic functions, tone banks, or DDS-based. Wave table is planned.
Using 100MHz and 96kHz sample rate,
the synthesis module produces 1024 oscillators
simultaneously.
With full 192 MHz operation speed (possible for Spartan 6 and
Cyclone IV) and reduced sample frequency of "only" 48kHz (common
for most synthesizers in the market) 4096 polyphonic voices
can be produced. Estimating a synthesizer with 4 oscillators,
this compares to 1024 voices polyphony.
Music DSP Engine
configurable DSP functions

The DSP Engine performs audio
processing link compression, limiting and distortion like guitar
effects and tube microphone amplifier.

The platform can be configured
with any number of DSP and Synthesizer Modules. Here the output
of the guitar distortion is shown.
Also audio spectrum analysis
can be performed through FFT.
Graphical Spectrum Analyzer

Large scale graphical Spectrum
Analyzer with 192 Tap Görzel FFT compressed to 48taps with direct
DVI output to 1920x1080 TFT monitor (Samsung TFT TV) by Altera
C4 FPGA. Resolution 0,1 dB and better. Sound patch (still image)
created with E-mu Orbit 2 + Access Virus B. Live recorded with
1024 oversampling (96MHz Sigma-Delta ADC at 16 Bits) with 21
Bits effectively.
Extension Boards Cyclone II

with up to 8 external boards can
be configured and controlled from within the main module.

MIDI Controller to run digital filters
Former Version
of the Workstation (C2, 96kHz only)
|
|
Full Stereo
Digital IO Bus
No typical MIDI Delay because of high
bandwidth
8192 oscillators
1024 voices
1024 midi channels
Sound Demos
demo 1
demo 2
Attention: Because of many downloads,
the number of demos have been reduced
|
96 kHz
192 kHz
384 kHz
Audio DSP
|
|
|