|
Cyclone 2
from
Gleichmann
Research
Cyclone
2
from
FPGA DEV |
Altera Cyclone 2 System
Music Box / MIDI Engine
The Music Engine produces MIDI-like
tone information, based on pre defined rhythm and tone patterns
which are kept in a memory. Generation is partly done with
algorithmic pattern generation using the
algo-rhythm module. 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. Frequency Shifting can be applied by dynamic
smoothed shifting.
Synth Engine
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.
The Synthesizer operates totally pipelined and with 100MHz clock
speed and processes 1024 MIDI channels, 1024 oscillators and has
full
1024 voices polyphony.
attached audio processor engine
The DSP Engine performs audio
processing compression, limiting and distortion like
guitar
effects and tube microphone amplifier. Also audio spectrum analysis
can be performed through FFT.
MIDI Routing Matrix
The different boards can are interlinked
with LVDS parallel bus as well as S/PDIF like LVDS-connection
using a virtual MIDI2S/PDIF-converter.
With the complementary S/PDIF2MIDI,
standard MIDI-interfaces can be linked. MIDI-send/MIDI-return
is used to plug additional arpeggio boards, as well as real
arpeggiators from hardware synthesizers. Also the audio dsp
part can be controlled with the
fire controller.
In this audio
workstation, I again use my 5Byte MIDI, containing additional time
code and channel information. Routing information may be attached
too. Also 10 Bit controller data can be sent instead of
coarse 7/8Bit.
The difference between the first and the last midi channel is
only 0,2ms, when all channels are active. Typically 200-300
channels send and receive midi packets of 9-12 bytes in size
per tone, so the latency is below 0,1ms. See a detailed
article here:
Enhanced
MIDI Transmission
Also MIDI echo
can be produced rather than audio echo with midi delay effects
on adjacent channels. Doing this at very high speed short reflections
can be produced similar to room reverb.
See my
special protocol for details. Also arpeggio is possible
with the channels. Unlike audio echo or normal arpeggio, the
additional channels can use different parameters and voices
and tunes. See
MIDIARPDEMO.WMA
The Synth may be
controlled channel wise by the serial MIDI controller:
DIY MIDI Controller
DIY AUDI MIDI Hardware
My modified Yamaha CS1X Synthesizer as MIDI-Controller
Direct Input Key Module / one octave
Extension boards with Cyclone
II FPGA
Graphical
Spectrum Analyzer
Large Scale Graphical Spectrum Analyzer with direct VGA
output of Gleichmann FPGA board
Click here
for a VA-Implementation with NIOS
Click here
for the former Version (Spartan 3E)
|
|