Страница 5 из 18 Первая ... 3456715 ... Последняя
Показано с 81 по 100 из 360

Тема: Asynchronous USB

  1. #1 Показать/скрыть первое сообщение.
    Новичок
    Автор темы
    Аватар для dimitre
    Регистрация
    28.10.2007
    Адрес
    Королев
    Сообщений
    25

    По умолчанию Asynchronous USB

    А можно ли вообще вывести звук из компа на внешний DAC по SPDIF или USB, чтобы слушать без слёз

    Я вообще теоретик, ничего сложнее чем перевести аппарат с 110 на 220 своими руками не делал.
    Пытался понять, есть ли решение проблемы.

    Понял, что вариантов вообще немного: USB, Firewire, SPDIF и Ethernet/Wi-Fi.
    Долгое время не мог понять, откуда вообще проблемы с выводом цифры, ведь все 0 и 1 доходят до места назначения без вопросов. Все беды от того, что сигнал, который передается из компьютера в DAC состоит из двух компонентов — данные (0 и 1) и clock.

    Подробно тут — http://en.wikipedia.org/wiki/Biphase_mark_code
    Плохие clock в компьютере неизбежны, качество блоков питания в компе посредственное.

    SPDIF
    Ровно поэтому качество SPDIF Toslink фиговенькое:
    streamed output from Mac Book Toslink 1607ps S/PDIF
    streamed output from Apple Airport express Toslink 2418ps
    Более-менее хорошее — это ~200ps и меньше.

    USB
    В USB-аудио используется изохронный режим передачи из шину USD. Изохронный - это значит что компьютер полностью контролирует передачу данных. При этом есть три режима синхронизации (передачи clock):

    Synchronous: in this mode the readout clock is directly derrived from the 1KHz frame rate. There is a PLL that takes in the start of frame signal and genrates a clock. Using this scheme its rather difficult to generate 44.1, but very easy to generate 48KHz. This is a primary reason why many early USB audio devices only supports 48KHz, they used this mode. As you can guess this mode is very susceptible to jitter on the bus, pretty much anything that causes the output from the host to be jittered (PS noise, vibrations, interference etc) AND things that can cause jitter on the interconnect (interference, reflections, ground noise etc) will wind up with jitter on the readout clock.

    Adaptive: in this mode the clock comes from a separate clock generator (usually implemented as a PLL referenced by a crystal oscillator) that can have its frequency adjusted in small increments over a wide range.

    Значит clock тоже в руках USB-чипсета, не стоит ждать выдающихся результатов.
    А если посмотреть результаты замеров джитера для разных USB-чипсетов, то вообще хочется купить себе CD-транспорт.

    Asynchronous: in this mode an external clock is used to clock the data out of the buffer and a feedback stream is setup to tell the host how fast to send the data. A control circuit monitors the status of the buffer and tells the host to speed up if the buffer is getting too empty or slow daown if its getting too full. Note this is still isochronous, the host is continuousley sending samples, there is no "per packet handshake" going on. Since the readout clock is not dependant on anything going on with the bus, it can be fed directly from a low jitter oscillator, no PLL need apply.



    Асинхронный режим выглядит как решение всех проблем. Трудность в том, что почти не USB-чипсетов, которые бы без затрат реализовывали это решения.
    Gordon Rankin из Wavelength написал firmware для USB-чипсета TAS1020B.
    Измеренный им уровень джитера Async USB module TAS1020 — 78.2ps. Поразительно.

    Код firmware для USB-чипсета TAS1020B лицензировала Ayre и выпустила свой DAC — Ayre QB-9 (очень понятный whitepaper http://www.ayre.com/pdf/Ayre_USB_DAC_White_Paper.pdf)


    Можно ли у нас такое сделать? Я бы точно купил асинхронный USB-конвертор с хорошим питанием клока и выходом SPDIF RCA.

    Ссылки:
    USB audio spec and jitter
    http://www.audioasylum.com/forums/pc...ages/7719.html

    Async mode breakthrough for USB DACs!
    http://www.head-fi.org/forums/f46/async-mo...sb-dacs-271356/

    Wavelength Audio Brick
    http://www.6moons.com/audioreviews/w...4/brick_2.html
    http://www.6moons.com/audioreviews/w...2/brick_2.html

    The D/A diaries: A personal memoir of engineering heartache and triumph
    http://www.planetanalog.com/showArticle.jh...icleID=12801995

    Ayre USB DAC
    http://www.head-fi.org/forums/f46/ayre-usb...787/index2.html
    http://www.ayre.com/pdf/Ayre_USB_DAC_White_Paper.pdf

    24/96 async USB 2.0 solution with Pace-Car 2
    http://www.audiocircle.com/circles/i...?topic=64017.0

    Дмитрий

  2. #81
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    Нет, это USB2COM.
    Да нет не только в COM , а практически во что угодно...
    И скорости большие...

    ---------- Добавлено в 20:16 ---------- Предыдущее сообщение в 20:13 ----------

    Вот ещё такое обнаружил : http://www.arstech.com/item-USB-2-0-...b2pcmciar.html
    Может можно треморовский чип как нить к USB подключить через оную...

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Да нет не только в COM ,
    Это основное, где его на 80% используют

    а практически во что угодно...
    Далеко не во все. FIFO кстати, в нем достаточно горбатое, (впрочем, как во всей продукции FTDI-Chip, особенно VNC1)
    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    И скорости большие...
    Да не очень и большие, 1мбит в 232-режиме работает отменно, обещанные 3мбита в 485/422 - через пень колоду, пришлось спуститься на 1мб.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  4. #83
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Может можно треморовский чип как нить к USB подключить через оную...
    Вот ещё : http://www.quatech.com/pdf/u142-e.pdf
    CardBus это практически полноценный PCI ...

    ---------- Добавлено в 00:49 ---------- Предыдущее сообщение в 00:47 ----------

    Цитата Сообщение от Alex Посмотреть сообщение
    Да не очень и большие,
    Неужели так всё плохо? Себя не уважают?
    А в режиме параллельного порта?

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Неужели так всё плохо? Себя не уважают?
    Ну почему-же, я ведь не сказал "совсем не работает"

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    А в режиме параллельного порта?
    В смысле FIFO? Он у всех FTDI кривой, работать работает, но...
    В общем, быстрее чем 64 кбайта/с мне надежно его использовать не удавалось, а вообще "работает" и быстрее.
    Может в свежих версиях кристаллов уже исправили, но год назад было именно так. Мы долго протрахались

    И я не очень понимаю, к чему этот геморрой к данному обсуждению? Сделать железо на USB с нормальным, FIFO, (глубоким а не как у FTDI) с квитированием и выходом I2S можно хотя бы на том проце, на котором оба обсуждаемых на форуме твердотельных плеера с USB-накопителей работают - на тексасовском ARM Cortex M3.
    Тут больше проблема в совершенно оригинальных драйверах под писюк, кто их писать будет?
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  6. #85
    Завсегдатай Аватар для yan
    Регистрация
    21.12.2004
    Адрес
    Чебоксары
    Возраст
    46
    Сообщений
    1,267

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    на том проце, на котором оба обсуждаемых на форуме твердотельных плеера с USB-накопителей работают - на тексасовском ARM Cortex M3
    Вы точно уверены? У техасских проблем с 176,4/192 нет.

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от yan Посмотреть сообщение
    Вы точно уверены?
    В чем, что они используют Cortex M3 или что тексасовский? В первом - на 100%, во втором - нет, это предположение.
    Но в плане конкретного Сашиного вопроса - пофиг какой там, ТИ, СТ или Филипс.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  8. #87
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    Может в свежих версиях кристаллов уже исправили, но год назад было именно так. Мы долго протрахались
    Наверное исправили. Заявлено много чего http://www.ftdichip.com/Products/ICs/FT2232H.htm .Давно бы уже помидорами закидали...
    Цитата Сообщение от Alex Посмотреть сообщение
    Тут больше проблема в совершенно оригинальных драйверах под писюк, кто их писать будет?
    А у FTDI вроде нет проблемм с драйверами...

    ---------- Добавлено в 18:58 ---------- Предыдущее сообщение в 18:50 ----------

    ...Можно пойти ещё по другому пути. Взять какой нить стандартный картридер и контроллером с ОЗУшкой эмулировать какую нить флешкарточку с простейшим интерфейсом и ФАТом. Тогда писюк будет видеть внешний ЦАП как обычный внешний диск. Проге-плееру остаётся только дробить звуковые файлы на маленькие PCM файлики и кидать на "виртуальную флешку". Контроллер файлики забирает и обнуляет. Писюк как только диск обнулился снова кидает очередной файлик...

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Наверное исправили. Заявлено много чего http://www.ftdichip.com/Products/ICs/FT2232H.htm .Давно бы уже помидорами закидали...
    Саша ты просто не в курсе - FTDI не "закидывал помидорами" разве что ленивые, или кто всерьез с их поделками не сталкивался

    Впрочем, в 2232H с этим в самом деле получше, фифо по прежнему кривовато, но хоть со скоростями проблем нет. Выше что касается скорости - это я говорил про 2232D а не 2232H.

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    А у FTDI вроде нет проблемм с драйверами...
    И эти драйвера умеют посылать туда аудиофайл с квитированием?
    Хотя, D2 драйвера и можно использовать без переделки, но софт придется свой писать, а не медиаплеер использовать.

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Можно пойти ещё по другому пути. Взять какой нить стандартный картридер и контроллером с ОЗУшкой эмулировать какую нить флешкарточку с простейшим интерфейсом и ФАТом.
    Можно и так. Только зачем на мелкие файлы дробить? можно точно также квитирование сделать, выставлять "неготовность", лишь бы писюк по таймауту не отвалил (что скорее всего можно скорректировать).

    А если влазить в писюк, то можно "карточку" не на ЮСБ а на IDE прицепить, т.е. "карточка" должна эмулировать ATAPI-устройство, что может быть еще проще.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  10. #89
    Частый гость Аватар для Alex5888
    Регистрация
    10.12.2009
    Адрес
    Moscow
    Возраст
    42
    Сообщений
    141

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение

    ...Можно пойти ещё по другому пути. Взять какой нить стандартный картридер и контроллером... Проге-плееру остаётся только дробить звуковые файлы на маленькие PCM файлики и кидать на "виртуальную флешку"..

    Offтопик:
    как всегда гениально.

  11. #90
    Старый знакомый Аватар для SergVKS
    Регистрация
    26.03.2005
    Адрес
    Воронеж
    Сообщений
    924

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от yan Посмотреть сообщение
    Вы точно уверены? У техасских проблем с 176,4/192 нет.
    Для 176,4/192 нужен HighSpeed USB, такие камни на Cortex-M3 есть только у Атмела, но там только девайс, так что флешку туда не вставишь.

  12. #91
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    Можно и так. Только зачем на мелкие файлы дробить? можно точно также квитирование сделать, выставлять "неготовность", лишь бы писюк по таймауту не отвалил (что скорее всего можно скорректировать).
    Это чтоб больших ОЗУшек не применять. Можно поочереди коммутировать на картридер две ОЗУшки. Пока контроллер из одной семплы передаёт в ЦАП в другую ПиСюк очередной файлик скидывает...

    ---------- Добавлено в 20:17 ---------- Предыдущее сообщение в 20:15 ----------

    Цитата Сообщение от Alex Посмотреть сообщение
    А если влазить в писюк, то можно "карточку" не на ЮСБ а на IDE прицепить, т.е. "карточка" должна эмулировать ATAPI-устройство, что может быть еще проще.
    В писюк уже тремор есть... Реч о том что б нетбуки использовать...

    ---------- Добавлено в 20:21 ---------- Предыдущее сообщение в 20:17 ----------

    Цитата Сообщение от Alex Посмотреть сообщение
    Впрочем, в 2232H с этим в самом деле получше, фифо по прежнему кривовато, но хоть со скоростями проблем нет. Выше что касается скорости - это я говорил про 2232D а не 2232H.
    Если скорости 2232H как преобразователя в КОМпорт хватает, то потоком можно управлять через сигнал готовности\неготовности принять очередные данные...

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Это чтоб больших ОЗУшек не применять.
    Не вижу связи с ОЗУшками.
    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    Если скорости 2232H как преобразователя в КОМпорт хватает,
    то остается только написать соответствуюющий софт для винды
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  14. #93
    Частый гость Аватар для awtoap
    Регистрация
    24.02.2006
    Возраст
    46
    Сообщений
    286

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    В общем, быстрее чем 64 кбайта/с мне надежно его использовать не удавалось, а вообще "работает" и быстрее.
    Может в свежих версиях кристаллов уже исправили, но год назад было именно так. Мы долго протрахались
    Я экспериментировал с FT245RL и мегой M8515 в режиме послал блок данных в МК и тут же принял блок. Так вот существенную роль играло количество инфы передаваемой за раз. При посылке за раз 10-30кб скорость обмена у меня состовляла порядка 54к/сек. Если брать блок размером в 64кб или меньше 10кб(больше дрова FTDI не позволяют), то скорость падала где-то до 30кб/сек. Если 4кб и меньше, то скорость существенно падала. Конечно тест тупо комп-МК без возврата данных я не проводил, но думаю скорость должна быть выше.

    Цитата Сообщение от Alex Посмотреть сообщение
    Сделать железо на USB с нормальным, FIFO, (глубоким а не как у FTDI) с квитированием и выходом I2S можно хотя бы на том проце, на котором оба обсуждаемых на форуме твердотельных плеера с USB-накопителей работают - на тексасовском ARM Cortex M3
    Тут согласен с автором. Можно конечно и плисину впендюрить.

    А вот с дровами будет хуже. Конечно можно попробовать взять SDK мелкомягких и что-то наваять. Где-то видел прогу которая уже делает обертку дров, только нужно написать нужные функции.

    А так с FTDI без головняка придется писать свой проигрыватель, что в принципе не трудно. Взять готовую библу типа BASS (un4seen.com) c её кучей халявных плагинов и вперед.

  15. #94
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    Не вижу связи с ОЗУшками.
    ОЗУшки я предлагал при использовании картридера . Который будет писать не во флешкарту , а в ОЗУ. У некоторых флешкарт интерфейс практически схож с ОЗУ. Можно попробовать подключить через какую нить согласующую логику, отформатировать и посмотреть что в ОЗУшку записалось. Если ОЗУ пуста, то один и тот же файл наверняка в одни и те же адреса будет попадать...
    Как я уже писал если коммутировать две ОЗУшки к картридеру поочереди, то можно без всякого квитирования обойтись. Писюк как увидел, что "виртуальная флешка" пустая так и кинул туда файл с одним и тем же названием и размером. Только содержимое обновляет каждый раз и всё. За то время как предыдущая в ЦАП пересчитывается та что к ридеру подключена за счёт большой скорости USB новым файлом уже заполнится. Обнулением "флешки" контроллер управляет...

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от SashaNetrusov Посмотреть сообщение
    У некоторых флешкарт интерфейс практически схож с ОЗУ.
    У СF - интерфейс практически IDE, у остальных различные варианты одно и много битных последовательных интерфейсов, включая SPI.
    ОЗУ с SPI мне известны, но вот чтобы в ОЗУ еще файловая система была.....

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

  17. #96
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от Alex Посмотреть сообщение
    ОЗУ с SPI мне известны, но вот чтобы в ОЗУ еще файловая система была.....
    Подключить ОЗУ к картридеру и отформатировать. Файловая система в ней и появится. Или просто списать файловую систему с флешкарточки обращаясь к ней как к ОЗУшки по всем адресам последовательно. А потом её при включении однокристалкой и записывать в ОЗУшки...
    Или если такой трюк не получится оставить флешкарточку и сделать так , чтоб по каким то адресам отвечала флешкарточка, а по каким то (тем что содержат информацию) информация записывалась в ОЗУ (ну и считывалась из ОЗУ соответственно). Некий перехватчик обращений придумать...
    Последний раз редактировалось SashaNetrusov; 21.08.2010 в 23:03.

  18. #97
    Частый гость Аватар для awtoap
    Регистрация
    24.02.2006
    Возраст
    46
    Сообщений
    286

    По умолчанию Re: Asynchronous USB

    Да не городите ерунды с картами! Это явный гимор. Проще (как выше писалось) взять ARM с I2S и USB на борту и запустить I2S в Slave режиме (это кстати более желательно). Пишем драйвер асио (это проще чем дрова винды ибо выглядит как обычный виндозный файл DLL) и выводим в ARM. Организовываем 2 буфера и поочередно выплевываем по мере опустошения. Таким образом получим легко 24 бит 96кГц. Если нужно 192кГц, то придется искать проц с USB HS, а это ARM9(так на вскидку) или та же любимая FT2232H (High Speed) и присандаливаем к ARM.

    Можно попробовать и на TUSB3200A что-то сгородить, правда только 24/96.

  19. #98
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от awtoap Посмотреть сообщение
    Да не городите ерунды с картами! Это явный гимор.
    А в чём гимор? Подозреваю ,что есть карточки алгоритм работы которой ничем не отличается от ОЗУ. Запись в ячейки и чтение из ячеек и всё. А значит эмулируется ОЗУшкой. Остаётся подключить две ОЗУшки через мультиплексоры то к ридеру то к однокристалке попеременке и всё. И никакие драйвера вообще не нужны...

  20. #99
    Забанен (навсегда) Аватар для SashaNetrusov
    Регистрация
    25.01.2006
    Адрес
    Екатеринбург
    Возраст
    62
    Сообщений
    3,063

    По умолчанию Re: Asynchronous USB

    Вот http://galc.ru/articles/?id=32 , например xD карточки не содержат в себе контроллера и скорость записи вполне приличная...

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

    По умолчанию Re: Asynchronous USB

    Цитата Сообщение от awtoap Посмотреть сообщение
    Да не городите ерунды с картами! Это явный гимор. Проще (как выше писалось) взять ARM с I2S и USB на борту и запустить I2S в Slave режиме (это кстати более желательно). Пишем драйвер асио (это проще чем дрова винды ибо выглядит как обычный виндозный файл DLL) и выводим в ARM. Организовываем 2 буфера и поочередно выплевываем по мере опустошения. Таким образом получим легко 24 бит 96кГц. Если нужно 192кГц, то придется искать проц с USB HS, а это ARM9(так на вскидку) или та же любимая FT2232H (High Speed) и присандаливаем к ARM.

    Можно попробовать и на TUSB3200A что-то сгородить, правда только 24/96.
    Очень верный ход мыслей.

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

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

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

Ваши права

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