DIY цифровий синтезатор із вільною архітектурою, що створюється на базі FPGA-чипа ALTERA.

Ідея синтезатора в тому, щоб створити традиційні та альтернативні компоненти й модуляції на основі вентильних логічних елементів на поверхні чипа програмованої логіки. Окрім того, на базі тих же елементів збудоване віртуальне кастомне процесорне ядро зі специфічним набором периферійних елементів, яке працює паралельно генерації семплів хвиль та керує параметрами синтезу та командами із зовнішнього інтерфейсу MIDI через спільну магістраль даних та команд і використовуючи оперативну пам'ять. Всі елементи синтезатора будуються графічно у вигляді схеми або хардверної описової мови програмування Verilog в Quartus II, а фізична реалізація дозволяє перебудовувати синтезатор на одному кристалі багаторазово з фіксацією структури на flash-пам'яті. У поточному проєкті реалізовано:

  1. Осцилятор пилкоподібної хвилі з керуванням частоти та окремим цифровим входом для модуляції фази та 8-бітним виходом значення семпла хвилі.
  2. MIDI-модуль для приймання команд від зовнішньої стандартної MIDI-клавіатури на базі віртуального процесора NIOS2.
  3. Транслятор номера натиснутої ноти в значення керуючого параметра частоти осцилятора на базі віртуального процесора NIOS2.
  4. Модулятор 8-бітного цифрового sample-and-hold хаотичного значення з керуванням амплітуди та швидкості хаотичних коливань за секунду на базі демоплати Arduino.
  5. 8-бітний DAC із лінійним аудіовиходом.

Елементи 1, 2, 3 виконані на поверхні FPGA-матриці ALTERA CYCLONE 4.


K-SYNTH


Павло Граф

Павло Граф
DIY цифровий синтезатор із вільною архітектурою, що створюється на базі FPGA-чипа ALTERA.

Ідея синтезатора в тому, щоб створити традиційні та альтернативні компоненти й модуляції на основі вентильних логічних елементів на поверхні чипа програмованої логіки. Окрім того, на базі тих же елементів збудоване віртуальне кастомне процесорне ядро зі специфічним набором периферійних елементів, яке працює паралельно генерації семплів хвиль та керує параметрами синтезу та командами із зовнішнього інтерфейсу MIDI через спільну магістраль даних та команд і використовуючи оперативну пам'ять. Всі елементи синтезатора будуються графічно у вигляді схеми або хардверної описової мови програмування Verilog в Quartus II, а фізична реалізація дозволяє перебудовувати синтезатор на одному кристалі багаторазово з фіксацією структури на flash-пам'яті. У поточному проєкті реалізовано:

  1. Осцилятор пилкоподібної хвилі з керуванням частоти та окремим цифровим входом для модуляції фази та 8-бітним виходом значення семпла хвилі.
  2. MIDI-модуль для приймання команд від зовнішньої стандартної MIDI-клавіатури на базі віртуального процесора NIOS2.
  3. Транслятор номера натиснутої ноти в значення керуючого параметра частоти осцилятора на базі віртуального процесора NIOS2.
  4. Модулятор 8-бітного цифрового sample-and-hold хаотичного значення з керуванням амплітуди та швидкості хаотичних коливань за секунду на базі демоплати Arduino.
  5. 8-бітний DAC із лінійним аудіовиходом.

Елементи 1, 2, 3 виконані на поверхні FPGA-матриці ALTERA CYCLONE 4.


K-SYNTH
Left
Right