Страница 1 из 3 123 Последняя
Показано с 1 по 20 из 45

Тема: Измерение sampling rate PCM/DSD

  1. #1
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Измерение sampling rate PCM/DSD

    Хочу сделать индикатор sampling rate (FS) для I2S, на которой может быть все что угодно: I2S / RJ / LJ PCM, DOP, DSD.

    LRCK как прямой сигнал для FS не хочу использовать, т.к. требуется определять частоту DSD.
    Поэтому хочу BCK через программируемый делитель частоты SN74LS292 (работает до 30-50 MHz) с фиксированным коэфф. деления (например 32768) подать на частотомер, измерить частоту, и отобразить "PCM FS kHz" или соответствующие им по частоте "DSDxxx", в зависимости от флага DSD/PCM.
    Формула: FS = Измеренная частота * Коэф.деления / 64
    "64" - это 2 канала по 32 такта BCK для каждого пакета DATA (2*32 бит), причем "64" не завиcит от битрейта (16 /20 /24 /32 bit) и формата данных (I2S / RJ / LJ). Так ведь?)

    В теории все красиво и должно работать до 49.152 MHz = PCM768 / DSD1024 , а на практике как будет для разных форматов сигналов?
    Или как все это правильно измеряется?

  2. #2
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    "64" - это 2 канала по 32 такта BCK
    это если заранее известно, что bck=64fs, например широко распространенный транспорт ЧиД Usb super prime с некоторыми версиями прошивок выдаёт 128fs
    _________________
    Евгений

  3. #3
    Старый знакомый Аватар для demon_rt
    Регистрация
    23.05.2014
    Сообщений
    678

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    Поэтому хочу BCK через программируемый делитель частоты SN74LS292
    Это удобнее на маленькой CPLD делать. Как-то делал SPDIF RX на ПЛИС, вычислял по LRCK

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

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от maxssau Посмотреть сообщение
    например широко распространенный транспорт ЧиД Usb super prime с некоторыми версиями прошивок выдаёт 128fs
    CM6631 тоже на 44/48 выдает 128, так что для РСМ неизвестного формата стоит смотреть все-же на частоту WCLK.
    У меня, поскольку везде 64fs, измеряется BCLK.

    P.S. А если измерять одновременно обе частоты, и WCLK и BCLK, то можно автоматически опраделять PCM/DSD.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  5. #5
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию

    Вот из-за коэффициента для BCK у меня и сомнение.
    Я бы с радостью использовал LRCK, но задача еще и измерить DSD, а переключаться между LRCK/BCK не хочется.
    Про автоматическое определение PCM/DSD не понятно: если например переключиться с PCM384 на DSD512, то BCK не изменится, а LRCK станет ШИМом. Это и будет индикатором PCM/DSD. Но что покажет измерение частоты ШИМа? Она переключится из 384kHz и станет 24Mhz?

    И можно подробнее объяснить, как приемная сторона (ЦАП) определяет тактирование 64/128FS, если мы используем только DATA, LRCK и BCK?

    Ведь стандарт вроде 64 бит DATA и 64 такта BCK на каждый такт LRCK (см. картинку).
    При 128Fs удваивается частота BCK, и на 2 такта BCK приходится 1 бит DATA?
    Тогда получается мы ждем одного такта LRCK, смотрим что влезло не 64, а 128 тактов BCK, и понимаем что у нас удвоенная частота BCK? Нафига это придумали

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

Название:	Timing2.jpg 
Просмотров:	186 
Размер:	103.4 Кб 
ID:	370367

  6. #6
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    3 пункт в принципе всё объясняет, просто холостые циклы bck на отсутствующие данные.

    а в чем проблема измерять сразу 2 сигнала?
    _________________
    Евгений

  7. #7
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Аааа, то есть при 128Fs у нас как бы получается 64-битный формат данных, допустим.

    Проблема в том что
    1) нужно в два раза больше сигналов и измерений ;)
    2) непонятно что покажет измерение на LRCK в режиме DSD (выше написали про авто-определение PCM/DSD)

  8. #8
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    LRCK в режиме DSD
    покажет кашу, для этого при активном DSD сигнале измерять bck, может просто сделать так: элемент MUX (не помню кто из 74 логики), на 1 вход LRCK, на второй BCK, на пин SEL повесить сигнал активности DSD. С выхода MUX подать на счетный вход МК с нужными предделителями, нужен будет всего 1 доп логический элемент на плате. схема будет работать при любом делителе bck/lrck

    profit.
    _________________
    Евгений

  9. #9
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Кажется разобрался. С мультиплексором идея норм.
    А вот изза таких "всего 1 доп логический элемент" скоро не то что на плате, а корпусе места не будет )

  10. #10
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    А вот изза таких "всего 1 доп логический элемент" скоро не то что на плате, а корпусе места не будет
    74 логика есть в корпусе 0.9х1.4 мм, так что можно "впихнуть"
    _________________
    Евгений

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

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    Про автоматическое определение PCM/DSD не понятно: если например переключиться с PCM384 на DSD512, то BCK не изменится, а LRCK станет ШИМом.
    Он станет одним из каналов DSD а не ШИМом.

    Это и будет индикатором PCM/DSD. Но что покажет измерение частоты ШИМа?
    Ничего, посколько ШИМа тут нигде нет.

    Она переключится из 384kHz и станет 24Mhz?
    Сколько бы она ни стала - она перестанет быть 384кгц, будет побольше и мгновенное значнеие ее будет меняться.
    Зная обе частоты, битклока и вордклока (хоть мгновенное, хоть усредненное), можно легко определить PCM/DSD и семплрейт обоих.


    Цитата Сообщение от Bigwolf Посмотреть сообщение
    И можно подробнее объяснить, как приемная сторона (ЦАП) определяет тактирование 64/128FS, если мы используем только DATA, LRCK и BCK?
    А не все микрос[емы ЦАПов это и определяют, и не все могут работать не с 64, или не всегда (вот РСМ5102А к примеру, может работать без MCLK, но только при 64 битах.
    Но если завести MCLK, то может и в 128 (я ее так с СМ6631 запускал когда-то).


    Цитата Сообщение от Bigwolf Посмотреть сообщение
    Тогда получается мы ждем одного такта LRCK,
    Все делается просто:

    Код:
     if (Fwclk < Fbclk){ 
         Type = PCM;
         Kbclk = Fbclk/Fwclk;  // 64 or 128 or ?
         SR = Fwclk;  // 44/48....
    } else {
         Type = DSD;
          SR   = Fbclk /44.1;
    }
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  12. #12
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Re: Измерение sampling rate PCM/DSD

    В условии "else" полагаю что частота WCLK может не превышать BCK. См. картинку.

    И "SR DSD" может быть BCK/44.1 или BCK/48.

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

Название:	TimingDSD.jpg 
Просмотров:	162 
Размер:	74.3 Кб 
ID:	370396

  13. #13
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Не совсем понимаю о чем здесь думать,если на счетчике килогерцы - pcm, если мегагерцы то dsd
    _________________
    Евгений

  14. #14
    energy audio Аватар для energetik
    Регистрация
    09.11.2009
    Адрес
    Россия, Тула
    Возраст
    46
    Сообщений
    1,585

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    Хочу сделать индикатор sampling rate (FS) для I2S, на которой может быть все что угодно: I2S / RJ / LJ PCM, DOP, DSD.

    LRCK как прямой сигнал для FS не хочу использовать, т.к. требуется определять частоту DSD.
    Поэтому хочу BCK через программируемый делитель частоты SN74LS292 (работает до 30-50 MHz) с фиксированным коэфф. деления (например 32768) подать на частотомер, измерить частоту, и отобразить "PCM FS kHz" или соответствующие им по частоте "DSDxxx", в зависимости от флага DSD/PCM.
    Формула: FS = Измеренная частота * Коэф.деления / 64
    "64" - это 2 канала по 32 такта BCK для каждого пакета DATA (2*32 бит), причем "64" не завиcит от битрейта (16 /20 /24 /32 bit) и формата данных (I2S / RJ / LJ). Так ведь?)

    В теории все красиво и должно работать до 49.152 MHz = PCM768 / DSD1024 , а на практике как будет для разных форматов сигналов?
    Или как все это правильно измеряется?
    Делать такое на "рассыпухе" сомнительное удовольствие. Освойте начальные CPLD.
    Сейчас это достаточно доступно. Например - https://aliexpress.ru/item/322387309...7104404975Onlv
    Софт альтеры для домашнего использования вообще бесплатный на оф сайте - https://fpgasoftware.intel.com/13.1/?edition=web
    Информации в сети - океаны. И видео уроки и статьи написанные доступнейшим языком - нужно только захотеть научиться.
    Кроме определения частоты, битности, вывода всего этого на простейшие индикаторы можно ещё добавить автоматическое конфигурирование чипа ЦАП по spi если нужно.
    HTPC -> Charleston V3 -> DACore V2.3 -> Beta22(clone) -> Audez`e LCD-2
    HTPC -> Charleston V3 -> DACore V2.3 -> пред свой -> мощник Lynx PA-21 -> ILLUMINATI SeHi
    ibasso hdp-r10 -> Sennheiser HD 650 | TRN V90

  15. #15
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от energetik Посмотреть сообщение
    Кроме определения частоты, битности, вывода всего этого на простейшие индикаторы можно ещё добавить автоматическое конфигурирование чипа ЦАП по spi если нужно.
    А мигать индикатором можно?

    Как я понял в режиме DSD на LRCK может быть нулевая частота, поэтому
    Цитата Сообщение от maxssau Посмотреть сообщение
    если на счетчике килогерцы - pcm, если мегагерцы то dsd
    в общем случае не прокатит.

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

    По умолчанию Re: Измерение sampling rate PCM/DSD

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

  17. #17
    energy audio Аватар для energetik
    Регистрация
    09.11.2009
    Адрес
    Россия, Тула
    Возраст
    46
    Сообщений
    1,585

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    А мигать индикатором можно?
    можно азбукой морзе передавать, если нравится (это не шутка если что)
    HTPC -> Charleston V3 -> DACore V2.3 -> Beta22(clone) -> Audez`e LCD-2
    HTPC -> Charleston V3 -> DACore V2.3 -> пред свой -> мощник Lynx PA-21 -> ILLUMINATI SeHi
    ibasso hdp-r10 -> Sennheiser HD 650 | TRN V90

  18. #18
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Bigwolf Посмотреть сообщение
    в общем случае не прокатит.
    с мультиплексором прокатит
    _________________
    Евгений

  19. #19
    Новичок
    Автор темы
    Аватар для Bigwolf
    Регистрация
    22.12.2017
    Сообщений
    19

    По умолчанию Re: Измерение sampling rate PCM/DSD

    Цитата Сообщение от Alex Посмотреть сообщение
    Не может.
    Вроде из теории следует, что если подать на дельта-сигма модулятор сигнал -Inf dBFS, т.е. равный или ниже нулевого уровня для дельта-сигма модулятора, то на выходе будет прямая логический 0. При Vin = 0 dBFS будет прямая логическая 1. Если их смешать с MCK, то соотв. при нулевом сигнале на выходе будет 0, а при максимальном - максимальная заполняемость импульсами, т.е. частота MCK. Получается, что нулевая частота возможна, например если есть клипирование синусоиды или если сигнал прямоугольный.

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

Название:	DeltaSigma ADC.png 
Просмотров:	153 
Размер:	189.7 Кб 
ID:	370493

  20. #20
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,601

    По умолчанию Re: Измерение sampling rate PCM/DSD

    в современных ЦАП/АЦП на выходе модулятора никогда не будет много нулей/единиц подряд

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

Название:	mod2.png 
Просмотров:	192 
Размер:	104.4 Кб 
ID:	370494

    так же и с DSD сигналом, достаточно ткнуться осликом, что бы увидеть что нет там длинных комбинаций нулей/единиц подряд. В любом случае, если неизвестно соотношение bck/lrck придется измерять частоту lrck в pcm режиме и bck в dsd.

    книгу по теории приложил, закрепить бы её в шапке раздела

    Сигма дельта модуляция в аудиотехнике.pdf
    Последний раз редактировалось maxssau; 25.04.2020 в 13:54.
    _________________
    Евгений

Страница 1 из 3 123 Последняя

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

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

Ваши права

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