Автор Тема: Цифровая эмуляция лампового преампа  (Прочитано 3123 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Брат Пилот

  • Сообщений: 157
  • GTLab - forever!
    • Просмотр профиля
Re: Цифровая эмуляция лампового преампа
« Ответ #20 : Декабря 07, 2009, 09:53:21 pm »
для тех кто не понял.... мне делать проэкт по любому, тематику проэкта выбираю сам. единственное условие на базе альтеры семейство циклон2


понятно что DSP и быстрее и как то более для этого предназначены.
впрочем "вычислительные мощности" необходимы при условии сложных мат моделей. о сложности таковых тут пока что не заикнулся никто.

ЗЫ: в следущем семестре буду брать курс DSP тогда сделаю что нить на них.

KMG

  • Сообщений: 3776
    • ICQ клиент - 412221711
    • AOL клиент - Mike
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #21 : Декабря 07, 2009, 10:05:06 pm »
Лампа, это степенная функция с показателем 1,5.
И это самое простое из известного (весьма приблизительные модели исподьзуемые в симуляторах)
Вот почитай насчет сеточного тока (то что ни один симулятор правильно не делает)
http://forum.gtlab.net/cgi-bin/yabb2/YaBB.pl?num=1253301550

PS Я бы например для фпга нашел более разумное применение - хороший цифровой ревер, что нибудь вроде этого
http://www.wavefrontsemi.com/index.php?id=11,14,0,0,1,0

ofsilence

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #22 : Декабря 08, 2009, 05:59:55 am »
Еще раз повторюсь - создание именно цифровой системы - дело принципа. Можно много говорить о дороговизне цифры, но согласитесь, если бы процы звучали 1:1 как ламповые головы, то все бы играли на них, потому что это компактно, удобно и, как не странно, дешево (самый дорого под стоит дешевле 30000, точную цифру не знаю), сравните с ректифаером за около 3 килобаксов.

Про FPGA я в самом начале написал. Просто собирать DSР на ПЛИС я и сам считаю не нужным. FPGA позволяет реализовывать мат операции методом сборки из логики различных мат блоков, например перемножителей. Между прочим, данная FPGA уже содержит 26! аппаратных 18-разрядных перемножителей, и я могу собрать еще столько, сколько позволит логика (28К логических элементов это очень дофига!). Таким образом можно будет собрать все мат функции, необходимые для обсчета проекта.
Либо вариант 2 - собрать DSP. но не простой, я уже об этом писал. А с внедренными custom - функциями. Я пока сам до конца не выяснил все подробности этого метода, но примерно это выглядит так: в некоторые регистры проц заносит данные. Эти данные забирает собранная на дикретных элементах схема, которая их умножает, пропускает через экспоненты-параболы и все что захочешь, причем вообще не загружая процессор. После чего результат вычисления забирается в другом регистре. С учетом того, что процессор занимает всего менее 2000 логических элементов, то оставшиеся более 26000 элементов (сравните насколько это больше, чем 32-разрядный процессор по вычислительно мощности) можно использовать этих фукнций.
Главное в ПЛИС - это возможность параллельных вычислений в разных частях кристалла. В отличие от DSP, в котором все операции делаются одним вычислительным блоком - АЛУ.

Вообще о платформе можно много говорить, но самое главное - ЧТО реализовывать, а про то, на какой платформе - дело каждого.

Для начала я вывел передаточную функцию (ПФ) стандартного темброблока. То, что получилось, мне не очень нравится - в виду взаимовлияния положения ручек на АЧХ, ПФ зависит от положения ручек очень сложным образом. Реализовать это все конечно можно, только не очень хочется - мат операций много.
Поэтому у меня вопрос к людям, которые занимались модификациями ТБ/придумывали альтернативные ТБ (видел несколько веток на форуме). Является ли взаимозависимость ручек ТБ желаемым свойством, без которого гитаристу не обойтись? (для меня оно является привычным, а как будет ощущаться другая зависимость АЧХ от положения я не могу представить). И соответственно что я хочу выяснить - следует ли копировать зависимость АЧХ от положения ручек 1:1, или оно такое получилось в виду желания производителей максимально упростить ТБ, и соответственно можно реализовать некую более желаемую зависимость АЧХ от угла?

ofsilence

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #23 : Декабря 08, 2009, 06:15:44 am »
Большое спасибо за данные по сеточным токам - воспользуюсь характеристикой от КМГ.
Цитировать
о сложности таковых тут пока что не заикнулся никто
Сложность вычислений будет весьма высока, это очевидно! Симуляция проходной характеристики лампы, сеточного тока, перезаряда разделительного конденсатора, да и вообще уплывание рабочей точки при изменении формы входного сигнала, все эти вещи потребуют очень большого количества операций с сигналом. А ведь кроме ВАХ каскадов, в преампе очень много частотых звеньев - количество нулей/полюсов просто огромно, причем все одной цифровой передаточной функцией не реализовать - все они в разных частях схемы находятся.

thorium

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #24 : Декабря 08, 2009, 08:31:39 am »
Цитировать
Плис, способная выполнять возложенные задачи(cyclone тут явно не справиться, если только IIIй, элементарно быстродействия не хватит) будет стоить 2-3к (типа Stratix)
http://www.altera.ru/cgi-bin/price/price
нормальный АЦП-ЦАП хотя бы 16 битный стоит от 300р и это всё без обвязки(вы посмотрите например цены преобразователей apogee, mytek и т.п., даже наш отечественный дигилаб дешевле 20к за канала не получается, это если мы хотим качественного звука. а не SBlive). Платы(ЛУТ здесь вряд ли проканает) и установку ПЛИС дома не сделаешь номрально, поэтому это ещё деньги, плюс ко всему этому нужна хорошая обвязка, грамотная экранировка аналоговго и цифрового тракта, качественная разводка плат, нормальные источники питания...
Цифровая техника выходит дешевле ламповой тольо при серии устройства в пару сотен экз.

Кароче, лучше уж написать VST плаг-ин, а потом думать куда его запихнуть
...а так же аппаратные и программные средства отладки и программирования которые тоже стоит весьма неплохо. не припомните сколько стоит лицензионный( :D ;D), например, Keil?

DIMEbag

  • Сообщений: 996
  • GTLab
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #25 : Декабря 09, 2009, 04:42:13 am »
Ага, qurtus в самой просто лицензии стоит 2к у.е. например =)

Зависимость ручек темброблока неотъемлемое свойство гитарного премпа, более того, основная частотная коррекция происходит там, так что надо полностью описывать EQ. Т.е. записывать дифф.ур., решать его и т.д. и т.п.
Иначе всё опять будет очень упрощено
Хорошего человека легко узнать по тому, как неуклюже он делает подлости

Антон

  • Сообщений: 590
  • GTLab - forever!
    • ICQ клиент - 485140718
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #26 : Декабря 09, 2009, 05:49:49 am »
Всё зависит от самого преампа который хочешь синтезировать. Например, в ADA MP-1, Marshall JMP-1 ручки тебров не влияют на общую АЧХ, те они независимы. Наверное, нужно и то и другое иметь, раз это будет цифрой обрабатываться... для начала вполне сойдёт эквалайзер с Marshall JMP-1, лучше больше времени потрптить на тонкости модели ламп.

ofsilence

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #27 : Декабря 09, 2009, 07:03:59 pm »
А как же квартус веб эдишн? абсолютно бесплатен.
Зачем дифуры? все легко делается (и я уже сделал) в операторном виде. Про то, что АЧХ весьма не плоская при ручках в 12 часах я в курсе.
...Раз в некоторых ампах не учитывают взаимовлияние ручек, то и я не буду пока что.

DIMEbag

  • Сообщений: 996
  • GTLab
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #28 : Декабря 09, 2009, 07:50:17 pm »
Вэб едишн не позволит программировать ПЛИСину, т.е. он компилит, но компиляционный файл не будет работать(я проверял) =) они же там не дураки, чтоб продавать что-то за 2к и его же бесплатно выкладывать.
Бесплатный у них MAX PLUS.
Ну операторный вид это по сути преобразованные дифуры, собственно для этого и был придуман, чтоб не интегрировать и дифф., а умножать и делить. Но обратное-то преобразование лапласа всё равно делать надо =) так что всё равно не всё так просто)
Пока можно и не делать взаимовлияние EQ, но для полноценной модели классических предов надо будет делать.
Хорошего человека легко узнать по тому, как неуклюже он делает подлости

ofsilence

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #29 : Декабря 11, 2009, 03:59:10 am »
Обратное преобразование делать не надо. Потому что как только у меня есть передаточная функция в операторном виде, я ее записываю в Z-форме, и таким образом сразу получаю описание того, что мне необходимо вычислить чтобы получить такую АЧХ. Погугли Z-преобразование, если интересно.

Gunpowder

  • Сообщений: 976
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #30 : Декабря 11, 2009, 12:10:16 pm »
Имхо, рещение системы нелин. диф. уравнений тут более к месту. Потому как повторение ачх далеко не главное.

Надеюсь не нужно напоминать, что тот же EQ в маршаллоидной схеме из-за комплексного сопротивления серьезно влияет на работу предыущего каскада.
Я собрал Маршалл из телевизора Весна, а он звучит не как Маршалл, а как Весна. В чем может быть проблема?

Куплю недорого эликсир молодо

KMG

  • Сообщений: 3776
    • ICQ клиент - 412221711
    • AOL клиент - Mike
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #31 : Декабря 11, 2009, 12:22:01 pm »
+1, насчет КП перед ТБ можещь посмотреть здесь.
http://gtlab.net/gtlab4/2009/01/14/%d0%bd%d0%b5%d0%ba%d0%be%d1%82%d0%be%d1%80%d1%8b%d0%b5-%d0%bd%d1%8e%d0%b0%d0%bd%d1%81%d1%8b-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d1%8f-%d0%bc%d0%be%d1%81%d1%84/
Картинки снимались при среднем положении регуляторов.
При изменении положения регуляторов картинка меняется очень сильно, то есть регуляторы ТБ меняют ачх только без перегруза, а когда начинается ограничение они начинают влиять также на структуру перегруза.
« Последнее редактирование: Декабря 11, 2009, 12:22:41 pm от mike »

ofsilence

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #32 : Декабря 11, 2009, 05:11:19 pm »
Спасибо большое за информацию касательно КП. Тем не менее обращаю внимание, что срез низа полуволны - просто разряд эквивалентной емкости ТБ на катодный резистор КП, никаких нелинейностей тут нет - чистая экспонента как результат переходного процесса в апериодическом звене (лампа запирается быстро, поэтому ВАХ КП не оказывает на мой вкус существенного влияния на форму выходного сигнала). Нелинейные уравнения решать не нужно, а эквивалентную емкость можно считать один раз для текущего положения ручек, поэтому это можно хоть одну секунду делать.

Кстати разностные нелинейные уравнения решаются достаточно легко. Правда решить ламповый каскад гуманными с точки зрения объема реал-тайм вычислений методами, с учетом сеточных токов-перезаряда разделительного конденсатора, частотной коррекции в катоде и выходного сопротивления предыдущего каскада, у меня пока не получается - система выходит с тремя вложенными контурами обратных связей, причем нелинейность внутри торчит. Может быть стоит отделить сеточный ток от выражения для выходного напряжения и решать задачи отдельно - пока еще думаю.

Брат Пилот

  • Сообщений: 157
  • GTLab - forever!
    • Просмотр профиля
Re: Цифровая эмуляция лампового преампа
« Ответ #33 : Мая 10, 2010, 01:40:13 am »
хелп!!!! кто нить где нить встречал описание математических моделей эффектов?!

ну с цифровым управлением громкостью я разобрался.. не проблема. хотя потребовалось еще вдуплить как именно звук записывается в цифре.

эффект тремоло я думаю проблем не вызовет. (та же громкость, ток модулируемая )

а вот попытавшись сделать октаву вверх получилась полная фигня  :-|
я считал, что инвертируя одну полуфазу я получу необходимый мне эффект. фига там... в общем кто что знает про реал-тайм эффекты? мож кто где че в сети встречал?!

может ссылки на математическое описание хоть каких нить драйвов.

ЗЫ: как уже писал выше пишу диплом на FPGA Altera  кит DE-2 c циклоном2  на борту.(чуть более старшая модель чем у топикстартера) в качестве процессора использован Ниос2, и кстати если не ошибаюсь я их несколько могу разместить на матрице. бо как полностью с конфигурированный проц + написанный на VHDL аудио - интерфейс заняли всего 7% от общего обьема ячеек. нет никакой проблемы поставить 2-3-4 в ряд и каждому дать свои задачи. все они будут работать параллельно.
или я ошибаюсь?  :-?

просьба воздержаться от вопросов и комментариев в стиле "а нафига это в принципе? а при помощи..... это можно сделать быстрее и круче"

KMG

  • Сообщений: 3776
    • ICQ клиент - 412221711
    • AOL клиент - Mike
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #34 : Мая 10, 2010, 09:20:24 am »
Я уже кидал ссылку, там есть алгоритмы и исходники питчшифтв
http://www.wavefrontsemi.com/index.php?id=11,14,0,0,1,0

Kaban

  • Гость
Re: Цифровая эмуляция лампового преампа
« Ответ #35 : Мая 16, 2010, 02:22:18 pm »
Здраствуйте, тема интересная, тоже хочу принять участие!!!
Конкретных мыслей пока не имею, поэтому я пока "собираюсь с мыслями" )))
Посему просьба к г-ну [aXu]: выкладывайте, пожалуйста, всю уже посчитанную информацию (особенно мат. часть) сюда - хочу ознакомится и с удовольствием поучаствовать.
Предлагаю совершить некоторое "разделение труда" (для начала между мной и Вами хотя-бы).
Как только я переварю все свои раздумья - поделюсь)))

П.С. to [aXu] А можно к Вам в асю постучать?)
« Последнее редактирование: Мая 16, 2010, 02:24:05 pm от Kaban »

Medved

  • Сообщений: 4534
  • Ле... Лети!
    • ICQ клиент - 467329541
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #36 : Мая 16, 2010, 06:05:55 pm »
Моделирование аналога - тупиковый путь для цифры. Нужно "перпендикулярное" мышление и такие же алгоритмы. Аналог кроме ограничения в питание простыми способами обеспечить синтез новых частот не может, цифра - может. Очевидно, что используя хитрые алгоритмы синтеза в цифре можно получить недостижимый для аналога сигнал/шум (близкий к С/Ш самой гитары), динамику любого требуемого уровня и прочие плюшки. Вопрос только как это сделать? ::)
« Последнее редактирование: Мая 16, 2010, 06:07:43 pm от Medved »

Peratron

  • Сообщений: 13579
  • GTLab - forever!
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #37 : Мая 16, 2010, 06:40:05 pm »
Цитировать
Аналог кроме ограничения в питание простыми способами обеспечить синтез новых частот не может
Абсолютно неверное утверждение - может, и легко. Вся классическая психоакустика - начиная с эксайтера, это аналог.
Вся классическая гитарная обработка - аналог.
Куча схем с переносом спектра, спецмодуляциями и т.п. - аналог.

Ну, и понятие "простых" методов - тоже очень нечёткое.

Цитировать
Очевидно, что используя хитрые алгоритмы синтеза в цифре можно получить недостижимый для аналога сигнал/шум (близкий к С/Ш самой гитары), динамику любого требуемого уровня и прочие плюшки. Вопрос только как это сделать?
Отношение с/ш для цифры - при аналоговом источнике, к коим относится и гитара - определяется в первую очередь именно аналоговой схемой, обеспечивающей усиление и согласование с АЦП. Тотчно так же с\ш аналоговой обработки определит такой же нормирующий усилитель.

К достоинствам цифры следует отнести стабильность и предсказуемость параметров - здесь она безусловно превосходит аналог. А всё остальное - от лукавого...

UPD: вот пример программирования спектра аналоговой схемы - достигнутый благодаря использованию современных способов проектирования

Это спектр микрофонного усилителя:



А вот спектр гитарного канала:
http://pics.livejournal.com/fan_d_or/pic/0001b8z2

Они сделаны такими намеренно - и звучание вполне соответствует этому характеру. Я впервые улышал твердотельный прибор, звучащий с ламповым мкрофоном детальней, чем ламповый пред.
Надо только добавить, что детальность достигается только при использовании однокаскадного усилителя без общей ООС.  Вот когда удалось в одном каскаде получить усиление под 60 дБ при искажениях меньше 0.01% и, главное, при резко спадающем спектре - вот только тогда оно и зазвучало...

В общем, скажу в очередной раз: в мире нет ни "цифры", ни "аналога" - они придуманы человеком и бездумное употребление этих понятий только уводит от понимания истинной сущности происходящих явлений.

Схемотехническая мантра: титцешенкохоровицехилл. Повторять до просветления...

Medved

  • Сообщений: 4534
  • Ле... Лети!
    • ICQ клиент - 467329541
    • Просмотр профиля
    • E-mail
Re: Цифровая эмуляция лампового преампа
« Ответ #38 : Мая 16, 2010, 06:50:29 pm »
@ Peratron
Отношение сигнал/шум хамбакера примерно 130дб. После лампового аналогового ограничителя от них остается 40. В цифре достижимый С/Ш при соответствующих алгоритмах может быть на уровне С/Ш связки АЦП+ЦАП - на сегодняшний день около 120дб.

Цитировать
Абсолютно неверное утверждение - может, и легко. Вся классическая психоакустика - начиная с эксайтера, это аналог.
Вся классическая гитарная обработка - аналог.
Куча схем с переносом спектра, спецмодуляциями и т.п. - аналог.

Ну, и понятие "простых" методов - тоже очень нечёткое.
Ага, а в Африке зимой +20. Каким боком это все относится к гитаре и названию топика? ;D
« Последнее редактирование: Мая 16, 2010, 06:56:22 pm от Medved »

Брат Пилот

  • Сообщений: 157
  • GTLab - forever!
    • Просмотр профиля
Re: Цифровая эмуляция лампового преампа
« Ответ #39 : Мая 17, 2010, 12:04:35 am »
а можно свои пять копеек вставить?

@ Medved

толку что хамбакеры мало шумные и показатели современных АЦП по шуму весьма высоки? разве кто-то в здравом уме пошлет сразу на АЦП сигнал с хамбакера?
в любом случае нужен преамп, который данный показатель "испортит"

а в общем... ограничение делать... ну вывел я некую формулу для реал-тайм ограничения, ну понятное дело получил на выходе "какашку"
полез читать что из себя представляет по спектру ламповый и транзисторный перегруз.
в общем нужно добавлять гармоники , встал вопрос как это делать.
в проекте фигурирует много разных модулей, среди них есть и октавер. было принято решение писать октавер на базе алгоритма пич-шифтера (пич-шифтинг с цельным значением), пишется он на основе FFT.

а теперь вопрос есть более простые способы получить гармоники высшего порядка?

@ KMG
спасибо за ссылку, к сожалению такого ассемблера я не знаю , разбираться я пока оставил на потом.
а пока я нашел другой источник алгоритмов
http://www.codase.com/search/display?file=L2dlbnRvbzIvdmFyL3RtcC9yZXBvcy9jb2Rhc2UuYy9nbGFtZS0xLjAuMi93b3JrL2dsYW1lLTEuMC4yL3NyYy9wbHVnaW5zL25vaXNlZ2F0ZS5j&lang=c

ЗЫ: а есть у кого какие идеи КАК сделать синтез? ничего в голову не приходит кроме как банального разложения на ряд Фурье и определение максимальной по амплитуде гармоники с последующим синтезом вайвформ из памяти с частотой этой гармоники.