Страница 18 из 32 Первая ... 8161718192028 ... Последняя
Показано с 341 по 360 из 638

Тема: Дилетантский вопрос про sigma-delta

  1. #1 Показать/скрыть первое сообщение.
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    Вопрос Дилетантский вопрос про sigma-delta

    Нажмите на изображение для увеличения. 

Название:	sdm4-20bx256.gif 
Просмотров:	2573 
Размер:	12.4 Кб 
ID:	134944
    Вот наскоро сочинил примитивную модель однобитного сигма-дельта модулятора 4-го порядка,
    подал на вход синус 20-бит проапсэмпленный до 256*Fs.
    Смотрите что получилось ...
    Почему никто не использует столь простой подход ?
    Ищем грабли ..., учим теорию.
    Последний раз редактировалось tomtit; 29.05.2013 в 02:03.

  2. #341
    Завсегдатай Аватар для Михаил45
    Регистрация
    09.03.2007
    Адрес
    Санкт-Петербург
    Возраст
    62
    Сообщений
    2,124

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Так можно сделать на плис конвертер или есть готовые в аплеере, фубаре и тп.

  3. #342
    Частый гость Аватар для Masa1987
    Регистрация
    14.10.2011
    Адрес
    Odessa(UA), Utzenstorf(CH)
    Сообщений
    341

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    С компьютером проблем нет, но если надо подключать не только его, то тут без железного конвертера ни как. А что там есть на ПЛИС из уже готовых проектов?

  4. #343
    Частый гость Аватар для putin
    Регистрация
    08.10.2014
    Адрес
    Краснодар
    Сообщений
    156

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от Masa1987 Посмотреть сообщение
    С компьютером проблем нет, но если надо подключать не только его, то тут без железного конвертера ни как. А что там есть на ПЛИС из уже готовых проектов?
    смотрите #336

  5. #344
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,263

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от Masa1987 Посмотреть сообщение
    То есть, получается, что сейчас на рынке нет конвертера PCM to DSD?
    Может и есть, но я таких не помню. Если узнаешь - скажи
    (это-же касается и обратного преобразования).
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  6. #345
    Частый гость Аватар для Masa1987
    Регистрация
    14.10.2011
    Адрес
    Odessa(UA), Utzenstorf(CH)
    Сообщений
    341

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Вспомнил, был ресемплер подобный по функционалу 4137 от ComTrue, но в свободной продаже я его не видел. Может Иван IVX знает про состояние этой штуки.

  7. #346
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,263

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    У ComTrue есть CT7302, только связываться с этой левой конторой не очень есть желание.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  8. #347
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    https://forum.vegalab.ru/showthread....=1#post2996283 и дальше. Там все на блюдечке - берем ЦФ, конфигурим в 16х или 32х, и на выход к нему - сигмадельта модулятор. Тот, что там я привел - он уже на 64х обеспечивает более чем достаточный на практике динамический диапазон и не требует апсэмплинга вплоть до "битовой" частоты (есть запас устойчивости на "ступеньки"). В обратную сторону - из DSD в PCM - есть несколько готовых вариантов, самый доступный - ADAU7112.
    Последний раз редактировалось sia_2; 26.01.2022 в 19:26.

  9. #348
    Частый гость Аватар для Masa1987
    Регистрация
    14.10.2011
    Адрес
    Odessa(UA), Utzenstorf(CH)
    Сообщений
    341

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от Alex Посмотреть сообщение
    У ComTrue есть CT7302, только связываться с этой левой конторой не очень есть желание.
    Значит остаётся только народное творчество

  10. #349
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Воспользовался небольшим просветом между проектами на работе и сдвинул с мертвой точки разработку самоосциллирующего модулятора. Сделал всё по науке, создал аналоговую модель и перевёл ее в дискретную.
    И ура! Модель заработала. Пока это просто цифровая модель похожая на усилитель класса Д.
    Тактовая пока 50мгц, глубина ОС - 80дБ. Частота ШИМ на выходе 530кгц.
    Максимальный коэффициент модуляции около 85%, выше появляются искажения < 0.1%. Оказалось, что в большинстве случаев, для звеньев 1-го порядка можно обойтись без умножения, только сдвигами вправо-влево.
    Однако всего лишь один биквад, ответственный за комплексно-сопряженную пару полюсов потребовал 22битных коэффициентов и умножения. При меньшей точности всё сразу разваливается. Передаточная функция имеет 7-ой порядок. Осталось повысить глубину ОС и частоту осцилляции. Вижу приличный резерв.
    Последний раз редактировалось tomtit; 17.02.2022 в 20:57.

  11. #350
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от tomtit Посмотреть сообщение
    И ура! Модель заработала. Пока это просто цифровая модель похожая на усилитель класса Д.
    Тактовая пока 50мгц, глубина ОС - 80дБ. Частота ШИМ на выходе 530кгц.
    Максимальный коэффициент модуляции около 85%, выше появляются искажения < 0.1%. Оказалось, что в большинстве случаев, для звеньев 1-го порядка можно обойтись без умножения, только сдвигами вправо-влево.
    Однако всего лишь один биквад, ответственный за комплексно-сопряженную пару полюсов потребовал 22битных коэффициентов и умножения. При меньшей точности всё сразу разваливается. Передаточная функция имеет 7-ой порядок. Осталось повысить глубину ОС и частоту осцилляции. Вижу приличный резерв.
    Кстати, аналогичная грабля есть при реализации комплексно-сопряженных полюсов в цифровых сигма-дельтах, просто оно не так заметно. Вылезает аномалиями на автокорелляционной функции при малых уровнях сигнала - когда разрядность полезного сигнала мала, а после умножения на маленький коэффициент обратной связи вообще превращается в кракозябру.

  12. #351
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от sia_2 Посмотреть сообщение
    Кстати, аналогичная грабля есть при реализации комплексно-сопряженных полюсов в цифровых сигма-дельтах, просто оно не так заметно. Вылезает аномалиями на автокорелляционной функции при малых уровнях сигнала - когда разрядность полезного сигнала мала, а после умножения на маленький коэффициент обратной связи вообще превращается в кракозябру.
    Я с подобным сталкивался, когда делал фВЧ для удаления постоянной составляющей с частотой среза 0.01гц. Нашёл решение с локальным нойзшейпингом первого порядка.
    Можно ли применить такой финт для биквадов?

  13. #352
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от tomtit Посмотреть сообщение
    Я с подобным сталкивался, когда делал фВЧ для удаления постоянной составляющей с частотой среза 0.01гц. Нашёл решение с локальным нойзшейпингом первого порядка.
    Можно ли применить такой финт для биквадов?
    Ага, именно так, или RPDF+локальный нойзшейпинг, или просто RPDF, и сохранение всех бит после коэффициента перед дитерингом.

  14. #353
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от sia_2 Посмотреть сообщение
    Ага, именно так, или RPDF+локальный нойзшейпинг, или просто RPDF, и сохранение всех бит после коэффициента перед дитерингом.
    Проект получается сильно сложнее простого сигма-дельта, может надо вовремя остановиться. До этого никогда не занимался серьёзно переводом из S->Z^-1. Получилась сборная солянка из билинейного и «сырмяжного» (не знаю официального термина) преобразований. Для ответственных биквадов - билинейное, для остального - прямая замена интегратора 1/s на z/(1-z). Структура получилась замысловатая, с двумя петлями ОС и параллельным каналом, неочевидно, как произвести оптимальное масштабирование аккумуляторов. Но зато шум дискретизации кластеризуется около частоты осцилляции и несильно влияет на устойчивость при больших амплитудах.
    Поведение при клипе и перегрузке - просто блеск.

    ---------- Сообщение добавлено 14:44 ---------- Предыдущее сообщение было 08:32 ----------

    Цитата Сообщение от sia_2 Посмотреть сообщение
    Кстати, аналогичная грабля есть при реализации комплексно-сопряженных полюсов в цифровых сигма-дельтах, просто оно не так заметно. Вылезает аномалиями на автокорелляционной функции при малых уровнях сигнала - когда разрядность полезного сигнала мала, а после умножения на маленький коэффициент обратной связи вообще превращается в кракозябру.
    Для обычного однобитника я использую архитектуру LeapFrog или ещё её называют LDI. Там всё масштабируется гораздо лучше даже при чисто однобитных коэффициентах. По крайней нигде нет более 10 сдвигов вправо.
    Последний раз редактировалось tomtit; 19.02.2022 в 16:47.

  15. #354
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

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

  16. #355
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от sia_2 Посмотреть сообщение
    А как ни извращайся, резонатор с частотой в сотни раз меньше тактовой - так или иначе включает в себя ослабление в сотни раз. А теперь представим, что входной сигнал, скажем, с размахом 5 LSB - такой резонатор на нем без специальных мер корректно работать не будет.
    Я обращал на это внимание, но по наивности, считал, что все эти кракозябры просто утонут в усиленном шуме дискретизации, циркулирующем в петле обратной связи ДС. Ну и дизеринг в 0.5 от входного сигнала должен бы сделать своё дело. То есть, даже без сигнала, на входе имеется шум в половину шкалы, а это уже превышает разрядность коэффициентов, при условии одинаковой рабочей разрядности всех аккумуляторов. Ещё я применял известный трюк,
    запуская через модулятор только сигнал ошибки, который имеет шумовой характер, а полезный сигнал в обход, прямо на выход.
    Последний раз редактировалось tomtit; 20.02.2022 в 03:14.

  17. #356
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от tomtit Посмотреть сообщение
    Я обращал на это внимание, но по наивности, считал, что все эти кракозябры просто утонут в усиленном шуме дискретизации, циркулирующем в петле обратной связи ДС. Ну и дизеринг в 0.5 от входного сигнала должен бы сделать своё дело. То есть, даже без сигнала, на входе имеется шум в половину шкалы, а это уже превышает разрядность коэффициентов, при условии одинаковой рабочей разрядности всех аккумуляторов. Ещё я применял известный трюк,
    запуская через модулятор только сигнал ошибки, который имеет шумовой характер, а полезный сигнал в обход, прямо на выход.
    Да, эти все костыли более-менее спасают ситуацию, почему в промышленных цифровых модуляторах для ЦАП на все эти нюансы и забивают болт - на рекламные цифры не влияет, и обнаруживается только всякими извращенными тестами. Туда же использование минимального петлевого усиления в модуляторах ЦАП и АЦП, заметно меньше 60 дБ, чтобы тестовый сигнал -60 дБ приходился на область, где он напрямую до квантователя не доходит, и давал красивую картинку спектра, без травы и прочего.

    Вот еще об этом - https://forum.vegalab.ru/showthread....=1#post3009107
    Измерительный - AD7722, "аудио" - PCM1804/PCM4202
    Последний раз редактировалось sia_2; 21.02.2022 в 00:54.

  18. #357
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Да, 60дб усиления это уже криминал. Неужели это действительно так?
    Хотя, на работе я и сам такой. Как только выполнено ТУ с минимальным запасом - всё, шабаш, откинулся и смотрю, как другие пашут.
    Ещё свежие впечатления от перевода аналога в цифру - стараюсь использовать каноническую форму реализации ПФ с двумя линиями задержки. Получается лучше точность и больше гибкости.

  19. #358
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от tomtit Посмотреть сообщение
    Да, 60дб усиления это уже криминал. Неужели это действительно так?
    Хотя, на работе я и сам такой. Как только выполнено ТУ с минимальным запасом - всё, шабаш, откинулся и смотрю, как другие пашут.
    Ещё свежие впечатления от перевода аналога в цифру - стараюсь использовать каноническую форму реализации ПФ с двумя линиями задержки. Получается лучше точность и больше гибкости.
    Реально 40-55 в звуковой полосе, в многоуровневых бывает еще меньше. Дело в том, что этого достаточно для получения формальных цифр - сигма-дельта модулятор сохраняет работоспособность и когда сигнал по сути не доходит до номинального уровня квантователя, дитерингом служит предельный цикл, параметры которого продолжают зависеть от сигнала (явного дитеринга модулятора часто просто нет вообще - типа, шум во входном сигнале сделает все что надо сам). Как отражение этой ситуации, модуляторы все чаще используются не выше 3-4 порядка, да и те оптимизируются по дубовости и простоте, а не по параметрам. Поэтому если детально снять хотя бы реальную характеристику "SNR vs signal level", не говоря об анализе выхода дециматора в реальном времени, то можно увидеть много интересного. Темеш со Шрейером в одной из своих библий об этом довольно прозрачно намекнули, но в последующих изданиях скорее замяли эти вопросы, дабы не смущать неокрепшие умы излишними сложностями

    Самые "выдающиеся" примеры "кроилова с честным лицом", которые я разбирал детально - это PCM1717 и PCM4222. А самые честные - AD1879, CS5397 (хотя там своих загогулин хватает) и AK5394. На полноту списка не претендую.

    С другой стороны, из хорошо оптимизированного третьего порядка даже на одном бите можно выжать 96-97 дБ SNQR при OSR64, и 115-117 дБ при OSR128 - этого достаточно в более чем 90% случаев. А при многих уровнях - цифры SNR будут еще красивее.

  20. #359
    Старый знакомый
    Автор темы
    Аватар для tomtit
    Регистрация
    23.06.2009
    Адрес
    пгт.Торонтовка
    Возраст
    65
    Сообщений
    951

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Просмотрел критические места, чтобы практически исключить потери точности.
    Получилось, что нужны всего 2 очень длинных аккумулятора 45 и 56 бит, остальное мелочи с однобитными операциями. Частоту выборки можно снизить раза в 4, но это опять много муторной оптимизации по искоренению умножений, пусть живёт, как есть. 50мгц - частота, на которой можно ещё не заморачиваться с конвейерами, всё работает без мучений с time closure даже с длинными операндами.
    В биквадах введён локальный noise shaping 1-го порядка, оказалось очень просто - уменьшаешь на единицу
    один из коэффициентов знаменателя и заменяешь инициализацию на суммирование. Вроде бы даже можно сэкономить на дизеринге и округлении результата при такой высокой частоте выборки. Есть ещё возможность разделить модулятор на быструю и медленную части с разной частотой выборки. Сейчас намеренно наставлена куча неминимально фазовых задержек чтобы, если потребуется, облегчить конвейеризацию вычислений.
    Последний раз редактировалось tomtit; 23.02.2022 в 18:50.

  21. #360
    Завсегдатай Аватар для sia_2
    Регистрация
    18.07.2005
    Сообщений
    4,009

    По умолчанию Re: Дилетантский вопрос про sigma-delta

    Цитата Сообщение от tomtit Посмотреть сообщение
    Просмотрел критические места, чтобы практически исключить потери точности.
    Получилось, что нужны всего 2 очень длинных аккумулятора 45 и 56 бит, остальное мелочи с однобитными операциями. Частоту выборки можно снизить раза в 4, но это опять много муторной оптимизации по искоренению умножений, пусть живёт, как есть. 50мгц - частота, на которой можно ещё не заморачиваться с конвейерами, всё работает без мучений с time closure даже с длинными операндами.
    В биквадах введён локальный noise shaping 1-го порядка, оказалось очень просто - уменьшаешь на единицу
    один из коэффициентов знаменателя и заменяешь инициализацию на суммирование. Вроде бы даже можно сэкономить на дизеринге и округлении результата при такой высокой частоте выборки. Есть ещё возможность разделить модулятор на быструю и медленную части с разной частотой выборки. Сейчас наставлена куча неминимально фазовых задержек, специально чтобы облегчить
    конвейеризацию вычислений, если потребуется.
    А вот кстати, интересно, зачем, кроме чистого искусства, вообще потребовалось делать цифровой аналог самоосциллирующего PWM? Как ЦАП в нем мало смысла из-за близости мощной несущей, причем с плавающей частотой, как open-loop класс D с цифровым входом - нет смысла гнаться за сверхнизкими искажениями, ключи и дроссель все резко ухудшат, соответственно, в этом применении достаточно гораздо более простых решений.

Страница 18 из 32 Первая ... 8161718192028 ... Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •