|
Проектирование USB аудиокарты, Высокоточный АЦП |
|
|
|
Jan 16 2008, 21:26
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Народ, помогите идеями и конструктивной критикой. У кого есть опыт разработки подобного, может поделитесь инфой. Извините за длинный пост. Итак, Задача - построение USB аудиокарты с максимально возможным качеством оцифровки за цену доступную для простых смертных.  (допустим до 5000р.) Желательно без излишних извращений (читай усложнений схемы в цифровой части). Изначально планировалась только запись, но в перспективе хотелось бы и воспроизведение. ===================================================================== Почему? Готовые изделия нет желания использовать потому, что даже в дорогих устройствах используются далеко не самые лучшие АЦП и ЦАПы. Хорошие, но не лучшие. Экономят буржуи! А если где и используют the best, то цены совершенно заоблачные. Можно говорить что это идиотизм, но те кто работал со звуком меня поймут. ===================================================================== Идея от части моя, от части друга-радиолюбителя. Я сам лично довольно зелен еще, поэтому не удивляйтесь возможным несуразицам  Было предложено использовать АЦП PCM4222 Кратко о нем... смотрим даташит: Supports Linear PCM, 1-Bit Direct Stream Digital (DSD), and Multi-Bit Modulator Output Data – Supports PCM Output Sampling Rates from 8kHz to 216kHz – Select from Classic or Low Group Delay – Choose from 64x or 128x Oversampled Output Rates for DSD Linear Phase Digital Decimation Filtering Digital High-Pass Filtering Removes DC Offset PCM Audio Serial Port Interface Supports Left-Justified, I2S™, and TDM Data Formats Разрешение 16-24 бита. 2 канала. Как видно штука довольно продвинутая и стоит около 800р. (со слов друга) Планировалось юзать до 24b/192kHz x 2канала ===================================================================== Вопрос 1. Ваше мнение об этом АЦП. Какие возможны альтернативы (лучше/дешевле). ===================================================================== Пока только запись. Первые прикидки: Analog part -> ADC -> AVR -> USB-FIFO АЦП подключаю к spi МП Скорость потока: 192кГц*24Б*2 =~ 9.22Мбит/с что уже довольно не мало Соответственно USB FT245 и PDIUSBD12 c 1МБайт/с (8.4МБит) уже не подходят Смотрел ML60851E на 12Мбит/с но у него FIFO буфер какой-то маленький. Еще смотрел ISP1582 на 480МБит (в расчете и на воспроизведение 192 кГц), но больно уж он навороченный, видимо дорогой, и труднонаходимый. Воспроизведение: USB-FIFO -> AVR -> DAC -> Аналог ===================================================================== Вопрос 2. Какой USB конвертер посоветуете? ===================================================================== Вопросы 3 итд. Насколько вообще идиотично такое решение? Как сделать по-другому? ===================================================================== Мои прикидки про по-другому: 1. Использование ПЛИС для организации аудио потока вобход МП, а МП для управления. К сожалению в ПЛИС я пока 0 =( 2. Взять готовый USB-Audio Кодек/Конвертер с цифровыми входом/выходом. НО дело в том, что я пока видел только со встроенными АЦП и ЦАП (посредственного качества), которые не нужны. Иногда еще встроенный МП. Соответственно Вопрос №Очередной Посоветуйте USB-Audio Кодек/Конвертер без лишних наворотов и цифровыми вх/вых ===================================================================== Всем спасибо за посильную помощь!
|
|
|
|
10 страниц
1 2 3 > »
|
 |
Ответов
(1 - 99)
|
Jan 17 2008, 07:00
|

Частый гость
 
Группа: Свой
Сообщений: 115
Регистрация: 6-06-05
Из: Ukraine
Пользователь №: 5 764

|
Цитата(MAXvaLL @ Jan 17 2008, 01:26)  Народ, помогите идеями и конструктивной критикой. У кого есть опыт разработки подобного, может поделитесь инфой. Извините за длинный пост. Итак, Задача - построение USB аудиокарты с максимально возможным качеством оцифровки за цену доступную для простых смертных.  (допустим до 5000р.) Желательно без излишних извращений (читай усложнений схемы в цифровой части). Изначально планировалась только запись, но в перспективе хотелось бы и воспроизведение. ===================================================================== Почему? Готовые изделия нет желания использовать потому, что даже в дорогих устройствах используются далеко не самые лучшие АЦП и ЦАПы. Хорошие, но не лучшие. Экономят буржуи! А если где и используют the best, то цены совершенно заоблачные. Можно говорить что это идиотизм, но те кто работал со звуком меня поймут. ===================================================================== Идея от части моя, от части друга-радиолюбителя. Я сам лично довольно зелен еще, поэтому не удивляйтесь возможным несуразицам  Было предложено использовать АЦП PCM4222 Кратко о нем... смотрим даташит: Supports Linear PCM, 1-Bit Direct Stream Digital (DSD), and Multi-Bit Modulator Output Data – Supports PCM Output Sampling Rates from 8kHz to 216kHz – Select from Classic or Low Group Delay – Choose from 64x or 128x Oversampled Output Rates for DSD Linear Phase Digital Decimation Filtering Digital High-Pass Filtering Removes DC Offset PCM Audio Serial Port Interface Supports Left-Justified, I2S™, and TDM Data Formats Разрешение 16-24 бита. 2 канала. Как видно штука довольно продвинутая и стоит около 800р. (со слов друга) Планировалось юзать до 24b/192kHz x 2канала ===================================================================== Вопрос 1. Ваше мнение об этом АЦП. Какие возможны альтернативы (лучше/дешевле). ===================================================================== Пока только запись. Первые прикидки: Analog part -> ADC -> AVR -> USB-FIFO АЦП подключаю к spi МП Скорость потока: 192кГц*24Б*2 =~ 9.22Мбит/с что уже довольно не мало Соответственно USB FT245 и PDIUSBD12 c 1МБайт/с (8.4МБит) уже не подходят Смотрел ML60851E на 12Мбит/с но у него FIFO буфер какой-то маленький. Еще смотрел ISP1582 на 480МБит (в расчете и на воспроизведение 192 кГц), но больно уж он навороченный, видимо дорогой, и труднонаходимый. Воспроизведение: USB-FIFO -> AVR -> DAC -> Аналог ===================================================================== Вопрос 2. Какой USB конвертер посоветуете? ===================================================================== Вопросы 3 итд. Насколько вообще идиотично такое решение? Как сделать по-другому? ===================================================================== Мои прикидки про по-другому: 1. Использование ПЛИС для организации аудио потока вобход МП, а МП для управления. К сожалению в ПЛИС я пока 0 =( 2. Взять готовый USB-Audio Кодек/Конвертер с цифровыми входом/выходом. НО дело в том, что я пока видел только со встроенными АЦП и ЦАП (посредственного качества), которые не нужны. Иногда еще встроенный МП. Соответственно Вопрос №Очередной Посоветуйте USB-Audio Кодек/Конвертер без лишних наворотов и цифровыми вх/вых ===================================================================== Всем спасибо за посильную помощь!  Если есть непреодолимое желание самостоятельной реализации USB-аудио устройства, то рекомендую посмотреть на TAS1020 или TUSB3200 (обе Texas Instruments). В паре с ними можете использовать любой аудио-кодек с IIS или AC97 интерфейсом. Щас уже не помню, но по моему реальный драйвер USB-аудио под Win не поддерживает разрядность более 16 (возможно я ошибаюсь, если да - напишите). Есть еще вариант драйвера USB ASIO ( http://www.usb-audio.com ). Ну и кстати, даже выбор самой продвинутой элементной базы не гарантирует высокого качества звука без правильной разводки и правильного питания.
|
|
|
|
|
Jan 17 2008, 14:10
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Спасибо за совет! Буду смотреть... Цитата(Ozelot @ Jan 17 2008, 10:00)  Ну и кстати, даже выбор самой продвинутой элементной базы не гарантирует высокого качества звука без правильной разводки и правильного питания. Оно и понятно, когда будет готова схема - обязательно выложу для критики.
|
|
|
|
|
Jan 18 2008, 09:17
|
Участник

Группа: Новичок
Сообщений: 30
Регистрация: 27-05-06
Пользователь №: 17 496

|
Качественные аудиокарты не зря стоят таких больших денег. Чтобы выжать из АЦП или ЦАП все его скажем 24 разряда должен быть очень низкий уровень джиттера, порядка 0.5 пс (RMS, при оцифровки малых частот), а чтобы этого добиться придется очень сильно попотеть. Плюс еще я так чувствую, что плата получиться не двухслойная, а это тоже не копейки будет стоить. Плюс еще ПО нужно будет писать, драйвера какие-нибудь.
|
|
|
|
|
Jan 18 2008, 11:49
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Цитата(khach @ Jan 18 2008, 14:35)  К сожалению у первой ревизии LPC2368 не работал DMA с I2S, поэтому программирование этой штуки в условиях дефицита пропускной способности USB становилось не очень удобным. А вы проверяли неработоспособность DMA с I2S, или это данные из даташита? Один мой коллега утверждает, что его LPC2368 первой ревизии работает с I2S через DMA просто замечательно.
|
|
|
|
|
Jan 18 2008, 16:14
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Посмотрел TAS1020 и TUSB3200 Я так понял - они под кодеки заточены, а кодеки, как я понимаю восновном потребительского качества (довольно посредственные) обычно. Или я не прав? Цитата(Pole @ Jan 18 2008, 12:17)  Качественные аудиокарты не зря стоят таких больших денег. Чтобы выжать из АЦП или ЦАП все его скажем 24 разряда должен быть очень низкий уровень джиттера, порядка 0.5 пс (RMS, при оцифровки малых частот), а чтобы этого добиться придется очень сильно попотеть. Плюс еще я так чувствую, что плата получиться не двухслойная, а это тоже не копейки будет стоить. Плюс еще ПО нужно будет писать, драйвера какие-нибудь. Почему, вместо того чтобы помочь, меня каждый второй пытается убедить что ничего не выйдет? Цитирую самого себя: "Гальваническая развязка, правильная аналоговая часть, правильное питание, правильная разводка и прочие извращения (даже в цифровоц части - тактирование например итд) - само сабой разумеется - я не вчера родился. Все прекрасно понимаю. Это дело схемотехника (друг мой). Будьте уверены, у него есть опыт работы со звуком! Мое дело - цифровая часть. И именно с ней я прошу помощи." Насчет джиттера абсолютно согласен! Но дело в том, что пока не будет выбрана архитектура цифровой части, нет смысла говорить об аналоге. Помилуйте, какое ПО? Зачем драйвера?! Стандартные дрова USBAudio (ASIO накрайняк) вас не устраивают? Цитата(khach @ Jan 18 2008, 13:35)  Если хотите именно 192к, то выбор не особо велик. АЦП надо проверять все доступные, т.к их шумность очень зависит от разводки, питания итд. Поэтому ИМХО строить надо отдельно USB контроллер АЦП и несколько модулей собственно АЦП ( с гальваническими развязками по цифровой шине, фильтрами шумов питания и прочими примочками). А контроллер имеет смысл выбирать из типов. Первый, классический USB2 на CY7C68013 и десериалайзер I2S на какой-либо небольшой плисине. Второй, более современный - на арме LPC2368 (246x) итд, у которых есть встроенный аппаратный I2S. К сожалению у первой ревизии LPC2368 не работал DMA с I2S, поэтому программирование этой штуки в условиях дефицита пропускной способности USB становилось не очень удобным. Блочная структура платы и прочие навороты - это да! Микрухи буду смотреть. ВСЕМ СПАСИБО!
|
|
|
|
|
Jan 18 2008, 18:49
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(khach @ Jan 18 2008, 20:00)  А на чем он его гонял? В какую сторону шла передача? Моно-стерео? Разрядность данных? Можно пример кода? У меня 2366 работет нестабильно. Пока проверял только на чтение с аудиодаков 16 бит. Автору темы. Если решитесь на АРМ, обратите внимание на http://www.standardics.nxp.com/support/doc....audio.demo.zipили искать по сайту NXP "i2s usb audio demo LPC2368" Спасибо огромное! Буду глядеть. PS А в какой среде под ARMы пишут? Я так понимаю IAR может, а есть что удобнее?
|
|
|
|
|
Jan 19 2008, 00:43
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
LPC2880; LPC2888; 16/32-bit ARM microcontrollers; 8 kB cache, up to 1MB flash, Hi-Speed USB 2.0 device, and SDRAM memory interface + аппаратный I2S I\O Вот то что мне надо! Вот только одна проблема у меня: для всех LPC начинвя с 2364 и заканчивая 2470 (все что с USB) в даташите написано про I2S подробно: Цитата The interface has separate input/output channels each of which can operate in master or slave mode. Capable of handling 8-bit, 16-bit, and 32-bit word sizes. The sampling frequency can range from 16 kHz to 48kHz (16, 22.05, 32, 44.1, 48 ) kHz. Т.е. 16/32 Бита нас устраивают Slave режим - отлично! А вот 48кГц МАЛО!!! А для LPC288* ХРЕН! Там даже раздела такого нет! Вот только это: Цитата 6.16 Analog I/O The analog I/O system includes an I2S input channel, an I2S output channel, a dual A/D converter, and a dual D/A converter. Each channel includes a separate 4 sample FIFO.
6.16.1 Features • I2S-bus input channel with a 4 sample FIFO for stereo Digital Analog Input (DAI). • I2S-bus output channel with a 4 sample FIFO for stereo Digital Analog Output (DAO).
6.20.4 PLLs The LPC2880/LPC2888 includes two PLLs: a low power PLL that may be used to provide clocks to most chip functions; a high-speed PLL that may be used to generate faster clocks for selected chip functions, if needed. Each PLL can be driven from several clock sources. These include the main oscillator (1 MHz to 20 MHz), the RTC oscillator (32 kHz), the bit clock or word select inputs of the I2S input channel, the clock input from the SD/MMC Card interface, or the output clock from the other PLL. Кто знает, какую скорость держат LPC2880/LPC2888 для I2S?
Сообщение отредактировал MAXvaLL - Jan 19 2008, 01:06
|
|
|
|
|
Jan 19 2008, 11:38
|
Гуру
     
Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741

|
Цитата PS А в какой среде под ARMы пишут То что у NXP- под Keil. Хотя где-то встречал аудио аппликуху под IAR для AT91. Но там I2S делался извращенным методом на базе SSP Цитата(MAXvaLL @ Jan 19 2008, 03:43)  А вот 48кГц МАЛО!!! Скорее всего там просто писатели даташита не вьехали- просто перечислили стандартные скорости. Тем более, что они получаются делением системного клока на цело, что бесполезно для аудио применений. Зато есть режим внешней синхронизации, который и использован в апппликации. А ограничения по скорости если и появляются, то обычно при битовых скоростях больших чем 1/8 системного клока ( стейт-машины начинают чудить). Это ИМХО, поскольку на I2S этого не проверял, зато нечто подобное вылазило с SPI. На 288х забете- с их BGA корпусами с мелким шагом и чувствительноти к разводке обязательна четырехслойная плата (а вернее 6) . Это уже притча во языцах- как Олимекс делал целый год девборду под этот проц и получилось нечто работоспособное только с 6 раза. Если купите модуль- то да, можно использовать, но самому разводить- nightmare/
|
|
|
|
|
Jan 19 2008, 12:10
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(khach @ Jan 19 2008, 14:38)  Скорее всего там просто писатели даташита не вьехали- просто перечислили стандартные скорости. Тем более, что они получаются делением системного клока на цело, что бесполезно для аудио применений. Зато есть режим внешней синхронизации, который и использован в апппликации. А ограничения по скорости если и появляются, то обычно при битовых скоростях больших чем 1/8 системного клока ( стейт-машины начинают чудить). Это ИМХО, поскольку на I2S этого не проверял, зато нечто подобное вылазило с SPI. Ну хорошо. Пусть 1/8 даже от 72МГц = 9МГц На выходе с АЦП имеем 192КГц*24Б*2канала = 9.2МГц Привет глюки? А есть еще тема, что возможно АЦП плюется не по 24 а по 32 (1 байт пуст) Тогда будет 12.2 - что вообще ни в какие ворота! Так что? Сожрет или нет? Жаль что на BGA придется забить
|
|
|
|
|
Jan 19 2008, 13:12
|
Гуру
     
Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741

|
Цитата(MAXvaLL @ Jan 19 2008, 15:10)  На выходе с АЦП имеем 192КГц*24Б*2канала = 9.2МГц Привет глюки? Да ктож его знает? При производстве чипов такого типа перефирия делается методом прицепливания к проекту стороннего IP core. Кто его производитель- ХЗ. Для самого процессора и перефирии удавалось отслеживать корреляцию глюков с ерратами на соответствующие IP core от АРМа. Только эти ерраты добыть трудно и неизвестно, какая ревизия IP core сидит в данном конкретном чипе. А кто производитель I2S IP core - я вообще без руля. В общем проверять надо. И глюк может быть не фатальным - ну например у SSP при тактовых в 30 Мгц фронт первого импульса полз на несколько наносекунд. Просто надо быть готовым к таким приключения. В общем проверять надо на реальном железе. Я для таких проверок хочу сейчас сделать симулятор ADC - ПЛИС с внешней памятью, который проигрывает WAV файл в I2S. А потом проверять, что записала винда уже внутри себя, после всех интерфейсов и драйверов. Был ли ресамплинг, была ли потеря байтов, интерполяция при несовпадении битовых скоростей итд. Загнать в память симулятора чистую цифровую синусоиду или двухтоналку и проверять весь тракт. Сам я сейчас вожусь именно с 236х в режиме оцифровки, но мне нужна еще и легкая предобработка сигнала в процессоре. так что АРМ используется еще и в качестве "легкого" DSP. А в сторону аудиокарты я смотрю с целью проверять качество своего аналогово тракта, используя аудиофильские (в хорошем смысле слова) программы типа RMAA или OscilloMeter- у них фурье весьма правильное и длина выборки неограничена почти ничем (у OscilloMeter кажется до 2^24).
|
|
|
|
|
Jan 19 2008, 17:45
|

Частый гость
 
Группа: Свой
Сообщений: 115
Регистрация: 6-06-05
Из: Ukraine
Пользователь №: 5 764

|
Цитата(MAXvaLL @ Jan 19 2008, 17:36)  А может вообще забить на I2S в МК? Как по другому? Есть еще AC'97. Множество достойных кодеков. Работать с ними мне было проще. А если честно, мне не ясен бюджет вашего проекта. По началу казалось, что вы хотели иметь компромисс качество-цена, а теперь пришли к ARM в BGA корпусах Возьмите TAS1020B стоит копейки, подключить и испытать сможете и I2S, и AC'97. Микросхема имеет встроенный 51-й микроконтроллер, заточена именно для создания USB-аудио устройств. Исходники на сайте у TI можете скачать бесплатно. Имеет возможность загрузки программы по USB (никаких программаторов и эмуляторов не надо). И если уж Terratec использует эти контроллеры (если точнее - TUSB3200) в своих устройствах, то это чего-то да стоит. С Уважением!
|
|
|
|
|
Jan 19 2008, 20:58
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(Ozelot @ Jan 19 2008, 20:45)  Есть еще AC'97. Множество достойных кодеков. Работать с ними мне было проще. А если честно, мне не ясен бюджет вашего проекта. По началу казалось, что вы хотели иметь компромисс качество-цена, а теперь пришли к ARM в BGA корпусах Возьмите TAS1020B стоит копейки, подключить и испытать сможете и I2S, и AC'97. Микросхема имеет встроенный 51-й микроконтроллер, заточена именно для создания USB-аудио устройств. Исходники на сайте у TI можете скачать бесплатно. Имеет возможность загрузки программы по USB (никаких программаторов и эмуляторов не надо). И если уж Terratec использует эти контроллеры (если точнее - TUSB3200) в своих устройствах, то это чего-то да стоит. С Уважением! Качество превалирует =) Хотелось дуплекс на 192КГц и 12МБит не хватает - отсюда и взялись ARMы в BGA (USB HiSpeed там) TAS1020B смотрели, и правда интересно, но ограничения по скорости не радуют... Это как со стороны USB, так и со стороны I2S. Даже 96КГц дуплекс не пролезет, если в формате будет выравнивание до 32 бит! 96*32*2*2=12.3МБит Если можно замутить в комп 24Б, то пролазит по USB, но сказываются ограничения по I2S. Еще ОЧЕНЬ плохо для качества оцифровки что I2S не умеет быть slave! (у TAS1020) Правда есть внешнее тактирование, но это немного не то.
|
|
|
|
|
Jan 19 2008, 22:18
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(MAXvaLL @ Jan 19 2008, 23:58)  Качество превалирует =) Хотелось дуплекс на 192КГц и 12МБит не хватает - отсюда и взялись ARMы в BGA (USB HiSpeed там)... Для такой большой скорости данных ARM7 я Вам категорически не рекомендую - падёт он от пересылок по многим каналам, как загнанная лошадь. Если делать на ПЛИС напрягает, лучше подыскать более подходящий процессор. На мой взгляд, лучче брать DSP - от AD или TI. Мне, например, BlackFin нравится - он как раз для такой задачи. Есть и с HS USB контроллером - ADSP-BF524 или BF525, например (правда, пока только в инженерных сэмплах, но в этом году уже выпустить в продажу обещают). В противном случАе, придётся ставить внешний. ISP1582 не советую - сексу с ним много. От Cypress контроллеры надёжнее, и документация к ним не в пример NXP.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 19 2008, 22:49
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(Stanislav @ Jan 20 2008, 01:18)  Для такой большой скорости данных ARM7 я Вам категорически не рекомендую - падёт он от пересылок по многим каналам, как загнанная лошадь. Если делать на ПЛИС напрягает, лучше подыскать более подходящий процессор. На мой взгляд, лучче брать DSP - от AD или TI. Мне, например, BlackFin нравится - он как раз для такой задачи. Есть и с HS USB контроллером - ADSP-BF524 или BF525, например (правда, пока только в инженерных сэмплах, но в этом году уже выпустить в продажу обещают). В противном случАе, придётся ставить внешний. ISP1582 не советую - сексу с ним много. От Cypress контроллеры надёжнее, и документация к ним не в пример NXP. Спасибо за отзыв. А почему ARM7 не покатит? Банально скорости не хватит, или что? Если так дело оборачивается... То можно и на ПЛИС, только КАК? ЧТО на нем можно/нужно реализовать? Для поставленной задачи максимум USB HiSpeed необходим... Разработка - хорошо, а черес сколько лет она в россии появится? Внешний контроллер - плохо. Но что делать...
Сообщение отредактировал MAXvaLL - Jan 19 2008, 23:41
|
|
|
|
|
Jan 19 2008, 23:02
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(MAXvaLL @ Jan 20 2008, 01:49)  А почему ARM7 не покатит? Банально скорости не хватит, или что? Ну, типа того. Кто сказал, что у Вас будет только 2 канала? Хорошая аудиокарта имеет 2-4 канала входных и 4-6 выходных. Всё это работает на 192 квыб/с одновременно. АРМ7-му с такими объёмами пересылок справиться трудно; у выпускаемых чипов с этой архитектурой нормального DMA пока что не встречал. ARM9 ещё посмотрите, там всё не так грустно. Цитата(MAXvaLL @ Jan 20 2008, 01:49)  Если так дело оборачивается... То можно и на ПЛИС, только КАК? ЧТО на нем можно/нужно реализовать? В принципе, всё, кроме А/Ц тракта и USB PHY. Цитата(MAXvaLL @ Jan 20 2008, 01:49)  ...Разработка - хорошо, а черес сколько лет она в россии появится? У меня лежат сэмплы, уже более полугода. Никак руки не дойдут... Пришлют и Вам, если закажете. Цитата(MAXvaLL @ Jan 20 2008, 01:49)  ...Внешний контроллер - плохо. Но что делать... Это - не самое трудное, дорогое и неприятное. Сделать качественный А/Ц и Ц/А тракты - вот что самое сложное.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 19 2008, 23:40
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(Stanislav @ Jan 20 2008, 02:02)  Кто сказал, что у Вас будет только 2 канала? Хорошая аудиокарта имеет 2-4 канала входных и 4-6 выходных. Всё это работает на 192 квыб/с одновременно. Да вот я говорил... Наша карта задумывалась восновном для качественной стерео записи и одновременного прослушивания. Коечно в далеееекой перспективе видятся эти 10 каналов, но только в далекой. И потом, в каком же это формате все пойдет на комп? Кстати, немаловажный вопрос - скажите, а что с ценами? Как расставить по цене ARM7/9, ПЛИС и DSP? А по сложности? Спасибо! ЗЫ Самое смешное - мы начинали с ATmega162+PDIUSB12! А вы говорите ARM7 слабоват (Там было 44.1*16 стерео симплексн.)
|
|
|
|
|
Jan 19 2008, 23:57
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(MAXvaLL @ Jan 20 2008, 02:40)  Наша карта задумывалась восновном для качественной стерео записи и одновременного прослушивания. Коечно в далеееекой перспективе видятся эти 10 каналов, но только в далекой. Лучше сразу заложиться, чтобы потом не переделывать. Цитата(MAXvaLL @ Jan 20 2008, 02:40)  ...Кстати, немаловажный вопрос - скажите, а что с ценами? Как расставить по цене ARM7/9, ПЛИС и DSP? ARM-ы несколько дешевле, ПЛИС и DSP сравнимы по цене. Для хорошего аудио нужны качественные АЦП и ЦАП, а также другие компоненты, которые стоят весьма дорого. Например, даже конденсаторы и резисторы нужно выбирать очень тщательно. В 5000 рублей по комплектующим, тем не менее, уложиться можно. Цитата(MAXvaLL @ Jan 20 2008, 02:40)  А по сложности? Стоимость разработки для ARM и DSP примерно одинакова (лицензированные средства разработки, правда, для DSP дороже). Для ПЛИС стоимость разработки во много раз выше. ЗЫ. В качестве курьёза: http://www.ixbt.com/proaudio/lynx-two.shtmlПрисмотревшись к фото, не обнаружил там ничего, что могло бы потянуть на 1500$. Кондёры - керамика и самые отстойнейшие электролиты, чипы - стандартные, за исключением, пожалуй, заказного процессора. Фуфло, короче...
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 20 2008, 01:00
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(Stanislav @ Jan 20 2008, 04:57)  Присмотревшись к фото, не обнаружил там ничего, что могло бы потянуть на 1500$. Кондёры - керамика и самые отстойнейшие электролиты, чипы - стандартные, за исключением, пожалуй, заказного процессора. Фуфло, короче... ИМХО норму прибыли определяет еще и объем продаж. Пример (весьма грубый и аллегоричный конечно же). Можно легко продать миллион кодеков AC97 по $1.5 и иметь прибыль $500 тыс. А попробуйте продать хотя бы 1000 этих вот специфичных звуковых карт, чтобы получить такую же прибыль.
|
|
|
|
|
Jan 20 2008, 01:15
|
Гуру
     
Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741

|
Четыре канала на ввод и 10 на вывод никакого USB не хватит. А тем более виндовые драйвера завалятся. Я даже в полудуплексе 192/24 немного сомневаюсь, скорее всего придется какой- то сервиспак на винду ставить. И полного дуплекса никто и не обещал. Хотя прослушать себя можно- поток с АЦП отправляется в комп по USB и на DAC для самоконтроля. А вот смикшировать в винде по цифре и обратно выпихнуть по USB- уже неполучится. Хотя можно смотреть в сторону Эзернета. НАрод на аудиофорумах говорит про новые веяния скоростного пропихивания аудио через Эзернет на уровне МАК адресов карты, без всякого TCP и UDP. Но это все пока только тесты. Хотя LPC2368 и для этого годиться. По поводу High speed USB. А виндовые драйвер поймут такое аудиоустройство? По поводу DMA у LPC2368. Вроде оно работает, только там чудес много. Например оно работает только с RAMом USB. Даташит вообще читать почти бесполезно, лучше следить за конфой на http://groups.yahoo.com/group/lpc2000/ Зато это решение почти самое дешевое для 192/24. Cypress c FPGA выходят гораздо дороже. А про связку ATmega162+PDIUSB12 можно подробнее? PDIUSB12 не в DMA работала? Нечто подобное тоже рисовал, но Атмега8 только конфигурила PDIUSB12 и следила за ошибками протокола. Сам трансфер был по DMA в сериалайзер на XC9572 (карта была только на выход).
|
|
|
|
|
Jan 20 2008, 10:26
|
Гуру
     
Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965

|
Полный дуплекс 192/24 стерео в виндюках все-таки работает. У меня такое устройство уже второй год серийно выпускается (правда, в виде блока, а не карты). Проблемы с драйверами есть, но преодолимые. Требуется только, чтобы протокол USB был полностью в руках. Мы использовали поэтому ISP1581 (можно и 1582). Возни с ними много, но, в основном, потому что описание - дерьмо. Кристаллы очень приличные. Проблемы с драйверами в том, что в Win XP (младше не работает вообще) в изохроне у мелкомягкого работает только режим, когда в фрейме задействован один микрофрейм, в котором можно передать до 3 пакетов данных, а обычно периферийные чипы при увеличении загрузки стремятся использовать несколько микрофреймов во фрейме и один пакет в микрофрейме. При воспроизведении в этом месте проще, но зато есть засада с синхронизацией. Либо надо делать очень большие буфера в периферийном устройстве, либо старательно обманывать дядю Билли, т.к. при попытке слегка увеличить или уменьшить поток виндюки делают это через неделю. Что касается действительно хорошего АЦП, то я знаю только один - EK5394A, который и был использован в этом устройстве. От него действительно можно получить 120 дБ сигнал/шум (если Вам нужно столько).
|
|
|
|
|
Jan 20 2008, 10:50
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(khach @ Jan 20 2008, 04:15)  Четыре канала на ввод и 10 на вывод никакого USB не хватит. А тем более виндовые драйвера завалятся. Я даже в полудуплексе 192/24 немного сомневаюсь, скорее всего придется какой- то сервиспак на винду ставить. И полного дуплекса никто и не обещал. Хотя прослушать себя можно- поток с АЦП отправляется в комп по USB и на DAC для самоконтроля. А вот смикшировать в винде по цифре и обратно выпихнуть по USB- уже неполучится. Простите, но мне кажется, что Вы обрисовали вопрос не совсем правильно. 1. Пропускной способности HS USB для передачи 10 каналов в произвольных направлениях хватит. 192к*24*10=46 080к, в то время, как реальная пропускная способность USB - около 400 000к, что почти в 10 раз больше (при отсутствии ошибок в канале, ессно). 2. Драйвера для такого чюда, скорее всего, придётся писать самому. Не уверен, что со "стандартными" вообще получится что-то путное. 3. А никто и не заставляет под виндой делать какое-либо микширование, равно как и вообще какую-либо реал-тайм обработку. Именно для этого на аудиокартах ставится DSP, который делает всё "на месте": поддерживает ввод-вывод, буферизацию данных по каналам, микширование, спецэффекты и т.д. Без данного устройства современную, даже недорогую, компьютерную аудиосистему представить себе уже трудно... Цитата(khach @ Jan 20 2008, 04:15)  ...По поводу High speed USB. А виндовые драйвер поймут такое аудиоустройство? Тут дело не в HS, а в том, чтобы "прикинуться" стандартным USB устройством. Тогда поймёт. Хотя, эта затея более, чем сомнительна (не в смысле сложности реализации - протоколы обмена неплохо документированы)...
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 20 2008, 11:08
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(rezident @ Jan 20 2008, 04:00)  ИМХО норму прибыли определяет еще и объем продаж. Эта карта относится к разряду "профессиональных", и, по результатам тестирования на ixbt (весьма поверхностного, кстати) действительно показывает неплохие характеристаки, во всяком случае, по сравнению с другими. Но 1300-1500$ - это явный перебор... Цитата(Alex11 @ Jan 20 2008, 13:26)  ...Мы использовали поэтому ISP1581 (можно и 1582). Возни с ними много, но, в основном, потому что описание - дерьмо. Кристаллы очень приличные. Плюс - довольно большой объём буферного ОЗУ. Минус - параллельная шина ВВ имеет меньшую пропускную способность, чем HS USB канал, что может стать очень существеннным при организации дуплекса. Документация NXP давно уже стала притчей во языцех... Цитата(Alex11 @ Jan 20 2008, 13:26)  ...Проблемы с драйверами в том, что в Win XP (младше не работает вообще) в изохроне у мелкомягкого работает только режим, когда в фрейме задействован один микрофрейм, в котором можно передать до 3 пакетов данных, а обычно периферийные чипы при увеличении загрузки стремятся использовать несколько микрофреймов во фрейме и один пакет в микрофрейме... Простите, не понял. 1. Зачем вообще нужен изохрон? 2. Что значит "стремятся"?
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 20 2008, 11:15
|
Гуру
     
Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741

|
Цитата(Stanislav @ Jan 20 2008, 13:50)  Простите, но мне кажется, что Вы обрисовали вопрос не совсем правильно. 192к*24*10=46 080к, в то время, как реальная пропускная способность USB - около 400 000к, что почти в 10 раз больше (при отсутствии ошибок в канале, ессно). Извините, чего пропускная способность?  Во первых, у АРМа (2368) USB2.0 FULL speed (а не HIGH) что дает нам на шине 12 Мб "грязными", реальных мегаБАЙТА 1.5-1.8 если спользовать фичи типа ДМА и мультиплекстрованны буферов. А 400Мб это только в страшном сне приснится (или имеется ввиду USB3?). На специально заточенных виндах, только при определенных контроллерах USB2 high speed на материнках народ выжимал из Cypress 45МБАЙТ в одну сторону, а обычно получалось 28-35 МБ. А ошибок в потоковых приложениях никто не исправляет- некогда, действуют по принципу "Померла так померла" (с)
|
|
|
|
|
Jan 20 2008, 12:58
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(khach @ Jan 20 2008, 14:15)  Извините, чего пропускная способность? Канала. HS USB. Цитата(khach @ Jan 20 2008, 14:15)  ...Во первых, у АРМа (2368) USB2.0 FULL speed (а не HIGH) что дает нам на шине 12 Мб "грязными", реальных мегаБАЙТА 1.5-1.8 если спользовать фичи типа ДМА и мультиплекстрованны буферов. А кто говорит о фулл-спиде? Автор темы уже в первом посте недвусмысленно дал понять, что ему нужен хай-спид. Кроме того, ARM я настоятельно не рекомендую использовать для таких применений. "Реальных мегаБАЙТА 1,5-1,8" при фулл-спиде не получится. Потому, что получится в лучшем случае 1 мегаБАЙТ. Цитата(khach @ Jan 20 2008, 14:15)  А 400Мб это только в страшном сне приснится (или имеется ввиду USB3?). Простите, а в чём Вы считаете? Я - в битах в секунду, что совершенно понятно из подсчёта. Вы - вроде тоже, когда писали о фулл-спиде... Не понимаю тогда, что Вас смутило? ЗЫ. А-а, кажется, понял. Вы, видимо, перепутали теоретическую скорость фулл-спид УСБ в мегабитах и мегабайтах. Цитата(khach @ Jan 20 2008, 14:15)  ...На специально заточенных виндах, только при определенных контроллерах USB2 high speed на материнках народ выжимал из Cypress 45МБАЙТ в одну сторону, а обычно получалось 28-35 МБ. Ну, вот и посчитайте. Этого за глаза хватит.  Цитата(VDG @ Jan 20 2008, 15:37)  Бюджет проекта 5000р. Товарищу ещё на Казусе каждый второй внятно объяснил что ни денег ни имеющихся скудных знаний ни разумного времени ему с товарищем не хватит на решение поставленной задачи. Здесь, вроде, шла речь о (себе)стоимости готового изделия, без учёта затрат на разработку. Естественно, они будут более, чем на два порядка выше.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 20 2008, 13:57
|

Знающий
   
Группа: Участник
Сообщений: 845
Регистрация: 10-02-06
Пользователь №: 14 193

|
Цитата(Stanislav @ Jan 20 2008, 16:58)  Здесь, вроде, шла речь о (себе)стоимости готового изделия, без учёта затрат на разработку. Естественно, они будут более, чем на два порядка выше. Да что Вы... нет конечно же. Два студента не могут скинуться на профессиональную карту аудиозахвата. Денег есть 5000р. Вот на них нужно и разработать и изготовить _одну_единственную_штуку_ чисто для себя.  Начало темы на казусе в разделе микроконтроллеров. Я указал автору на одни только затраты изготовления на _один_ порядок больше всего их бюджета, так это было принято им на смех. Цитата Автор темы уже в первом посте недвусмысленно дал понять, что ему нужен хай-спид. Хайспид, фуллспид.... Автор темы такие слова впервые узнал пару дней назад.  Как и то, что существует такой контроллер как ARM. Видели бы вы первоначальную постановку задачи на переходнике FTDI
Сообщение отредактировал VDG - Jan 20 2008, 13:58
--------------------
|
|
|
|
|
Jan 20 2008, 21:42
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Ого народу привалило! Выходной, сразу видно =) А я вот только с экзамена. Сессия закрыта - приступим вплотную к проекту. Цитата(Stanislav @ Jan 20 2008, 02:57)  Лучше сразу заложиться, чтобы потом не переделывать. ARM-ы несколько дешевле, ПЛИС и DSP сравнимы по цене. Стоимость разработки для ARM и DSP примерно одинакова. Для ПЛИС стоимость разработки во много раз выше. ЗЫ. В качестве курьёза: http://www.ixbt.com/proaudio/lynx-two.shtmlФуфло, короче... Согласен, заложится есть смысл, если это не архинакладно выйдет. Пожалуй буду смотреть DSP. Если кто может подсказать подходящие (кроме тех что указал Stanislav), буду премного благодарен! Именнно из-за таких серийных карт и начата разработка. Цитата(khach @ Jan 20 2008, 04:15)  Четыре канала на ввод и 10 на вывод никакого USB не хватит.
Хотя прослушать себя можно- поток с АЦП отправляется в комп по USB и на DAC для самоконтроля.
А вот смикшировать в винде по цифре и обратно выпихнуть по USB- уже неполучится.
Хотя можно смотреть в сторону Эзернета.
По поводу DMA у LPC2368.
А про связку ATmega162+PDIUSB12 можно подробнее? PDIUSB12 не в DMA работала? Нечто подобное тоже рисовал, но Атмега8 только конфигурила PDIUSB12 и следила за ошибками протокола. Сам трансфер был по DMA в сериалайзер на XC9572 (карта была только на выход). Имелось ввиду всего 10 каналов 5.1 выход + 2 стерео входа Ну если уж на то пошло, то можно сразу слушать себя через аналог, зачем перецифровывать? =) Дело в том, что на ПК может еще риалтайм происходить обработка. (Ну, на мощном ПК) Выпихнути при USB 2.0 хайспид получится. Езернет - изврат. И главное зачем? LPC2368 не потянет. Про АТмегу+... посмотрите тут: http://www.circuitcellar.com/AVR2004/HA3553.htmlТам поток все же через мегу. Если можно, поделитесь пожалуйста информацией по ваш вариант. Будет интересно посмотреть. Цитата(Alex11 @ Jan 20 2008, 13:26)  Полный дуплекс 192/24 стерео в виндюках все-таки работает. У меня такое устройство уже второй год серийно выпускается (правда, в виде блока, а не карты). Проблемы с драйверами есть, но преодолимые.
Проблемы с драйверами в том, что в Win XP (младше не работает вообще) в изохроне у мелкомягкого работает только режим, когда в фрейме задействован один микрофрейм, в котором можно передать до 3 пакетов данных, а обычно периферийные чипы при увеличении загрузки стремятся использовать несколько микрофреймов во фрейме и один пакет в микрофрейме. При воспроизведении в этом месте проще, но зато есть засада с синхронизацией. Либо надо делать очень большие буфера в периферийном устройстве, либо старательно обманывать дядю Билли, т.к. при попытке слегка увеличить или уменьшить поток виндюки делают это через неделю.
Что касается действительно хорошего АЦП, то я знаю только один - EK5394A, который и был использован в этом устройстве. От него действительно можно получить 120 дБ сигнал/шум (если Вам нужно столько). То что работает - это радует. А как ВЫ обходили грабли? AK5394A надо глянуть.... Цитата(Stanislav @ Jan 20 2008, 13:50)  Простите, но мне кажется, что Вы обрисовали вопрос не совсем правильно.
2. Драйвера для такого чюда, скорее всего, придётся писать самому. Не уверен, что со "стандартными" вообще получится что-то путное.
3. А никто и не заставляет под виндой делать какое-либо микширование, равно как и вообще какую-либо реал-тайм обработку. Именно для этого на аудиокартах ставится DSP, который делает всё "на месте": поддерживает ввод-вывод, буферизацию данных по каналам, микширование, спецэффекты и т.д. Без данного устройства современную, даже недорогую, компьютерную аудиосистему представить себе уже трудно...
Тут дело не в HS, а в том, чтобы "прикинуться" стандартным USB устройством. Тогда поймёт. Хотя, эта затея более, чем сомнительна (не в смысле сложности реализации - протоколы обмена неплохо документированы)... Реалтайм на ПК очень даже желателен. Все же хочется "прикинутся". Хотя бы на первое время. Потом всегда можно дописать. Цитата(Stanislav @ Jan 20 2008, 15:58)  А кто говорит о фулл-спиде? Автор темы уже в первом посте недвусмысленно дал понять, что ему нужен хай-спид. Ну, вот и посчитайте. Этого за глаза хватит.  Здесь, вроде, шла речь о (себе)стоимости готового изделия, без учёта затрат на разработку. Естественно, они будут более, чем на два порядка выше. Вот именно! Я же указывал не просто так тех. задание. Из него очевидно что нухен хайспид! Вот и я говорю что хватит! Вот именно! Без учета затрат на разработку! Зачем бы я пост создавал, если бы хотел заказать разработку? =) Цитата(VDG @ Jan 20 2008, 16:57)  Да что Вы... нет конечно же. Два студента не могут скинуться на профессиональную карту аудиозахвата. Денег есть 5000р. Вот на них нужно и разработать и изготовить _одну_единственную_штуку_ чисто для себя.  Начало темы на казусе в разделе микроконтроллеров. Я указал автору на одни только затраты изготовления на _один_ порядок больше всего их бюджета, так это было принято им на смех. Хайспид, фуллспид.... Автор темы такие слова впервые узнал пару дней назад.  Как и то, что существует такой контроллер как ARM. Видели бы вы первоначальную постановку задачи на переходнике FTDI  Извиняюсь за оффтоп - несдержался... устал уже что мне все время пытаются доказать что я верблюд. Уважаемый VDG, не стоит настолько свысока смотреть на людей, о которых вы ничего не знаете! Все когда-то были студентами, и вы тоже. Между прочим умный студент лучше плохого препода. (с) Народная мудрость. Причем не просто 2 студента, а схемотехник и программист с опытом работы. Про ARM и USB HiSpeed я узнал не вчера и даже не позавчера. Просто идея постоянно развивалась и дошли до этого. И правда, начиналось с AVR, но были другие задачи (96КГц симплекс) Теперь видим что и ARMа нам мало. Вы хоть сходили по ссылке которую я давал про PDIUSB12? ( http://www.circuitcellar.com/AVR2004/HA3553.html ) Вы вот не знали (как я понял) что это реализуемо. А оно работает! Про FTDI спорить не буду т.к. точно не разобрался. По существу:Все не так как вы мыслите. Делается не потому, что нет денег на покупной девайс, а потому, что есть желание сделать лучше за тоже бабло. (цена/качество) Да и вообще, глянем выше и видми пример фуфла за 1,5 косаря зелени. Кроме того интерес. ВОТ причина! Денег у нас не 5т. 5т. - это примерная стоимость ГОТОВОГО девайса: детали + сборка. Без обид. (с) VDG Цитата(Stanislav @ Jan 20 2008, 17:01)  Ну, надеюсь, польза от обсуждения вопроса всё же будет, и не только для автора темы.  Это было бы просто здорово! =)) ЗЫ Большая благодарность 2 Stanislav за человеческое отношение и ответы по теме. ЗЗЫ Уффф... Упарился писать
Сообщение отредактировал MAXvaLL - Jan 20 2008, 22:03
|
|
|
|
|
Jan 21 2008, 04:10
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
 Значт коротко и по существу. склепал я девайс тоже подобного назначения. Обошлось все примерно в 60$. Имеем: 1.Cypress CY7C68013A (High Speed) 2.Altera EPM3064A-TC44 - плисина 3.Analog devices AD1871 - 96khz 24bit АЦП 4.Analog devices AD1854 - 96khz 24bit ЦАП 5.Генератор на 74НС00 5.EEPROM и рассыпуха. Плату делал фотоспособом, использовал покупной текстолит с фоторезистом. ЦАП и АЦП не супер-пупер,но взял из того,что было. CY7C68013A - отличный чип  Все это дело после отлова многочисленных глюков(ну ее в жопу тот MAX3000, надо MAX2 юзать), учитывая,что это мой первый проект на ПЛИС-е, заработало на ура. С софта юзал SDCC(8051 компіллер), Altera Quartus 7.2(задолбался качать через мобилу), текстовые редакторы тип. Устройство работает в дуплексе. С железом все, теперь надо попарится с дровами под винду(а там черт все на свете себе переломает, очень тяжело дается человеку, работающему под Unix-ом,да и документации и примерв,что кот наплакал),тк народ хочет винду. А девайс делался и отлаживаля в FreeBSD.под виндой только Alter-у мучал в квартусе. Плата 2слойная,рисовал в Eagle. По поводу стандартного USB аудио драйвера в винде - не связывайтесь. в win2000 оно глючит жестоко. BSOD не с того не с сего. usbasio еще не пробовал. В FreeBSD такой драйвер хоть как-то работает, хотя даже там написано, что если оно заработало - вы везунчик  И забудьте про всякие АРМ и ДСП. нах оно надо? вы звук собираетесь писать или херней маятся?(всякими там спецэффектами)  Вот еще ложу разводку платы..для критикования
|
|
|
|
|
Jan 21 2008, 20:47
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Здравствуйте уважаемый brag!
BSOD просто так не бывает =) (обычно) Может ошибка на стороне МК в обработке сервисных пакетов?
А что есть такое MAX3000 и MAX2?
Не могли бы вы поделится исходниками и схемами? (игл есть) Если не сложно, то еще описание, в 2х словах. Буду оч. признателен! Мой mail: shvetsov@kivinet.ru
И еще, подскажите, где лучше читать про плис, если еще не работал с ними?
По поводу критики платы: 1. Надо бы сделать гальваничискую развязку аналога и цифры. 2. В даташите к Cypress написанно, что следует особое внимание уделить разводке.
чтём: 12.0 PCB Layout Recommendations
ставлю +/-/? : выполнено ИМХО требование или нет. (? сам не знаю)
- At least a four-layer impedance controlled boards are required to maintain signal quality. ? Specify impedance targets (ask your board vendor what they can achieve). To control impedance, maintain trace widths and trace spacing. ? Minimize stubs to minimize reflected signals. + Connections between the USB connector shell and signal ground must be done near the USB connector. + Bypass/flyback caps on VBus, near connector, are recommended. - DPLUS and DMINUS trace lengths should be kept to within two mm of each other in length, with preferred length of 20-30 mm. - Maintain a solid ground plane under the DPLUS and DMINUS traces. Do not allow the plane to be split under these traces. - It is preferred is to have no vias placed on the DPLUS or DMINUS trace routing. - Isolate the DPLUS and DMINUS traces from all other signal traces by no less than 10 mm.
Возможно где-то неверно оценил (хреновый англицкий у меня, да и масштаб платы на глаз сложно оценить), но в любом случае несколько минусов наберется полюбому! Конечно ясно, что самому 4 слоя не сделать, но с разводкой DP/DM надо повнимательнее ИМХО.
Может глюки из-за этого? 500МГц, это не шутки вам!
PS Извените, если излишне придираюсь.
Сообщение отредактировал MAXvaLL - Jan 21 2008, 21:26
|
|
|
|
|
Jan 22 2008, 06:14
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Пока не мерял по шумам. на 10мм изолировать - далековато  Зазор 2мм - можно сделать...хотя надо ли.данные гонятся 30мбайт/сек.по моему нормально. Без переходных не подключить - разьем со стороны компонентов  "At least a four-layer" - да пошли они.сделать можно,но геморно.я делал. "Maintain a solid ground" - ну можно сделать.вобще я е читал это все.так плату делл,как привык.и ниче,работает. Гальваническая развязка - бред наверное.не тут ей место... хотя надо потестить еще. спасибо
|
|
|
|
|
Jan 22 2008, 11:21
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 22 2008, 09:14)  Зазор 2мм - можно сделать...хотя надо ли.данные гонятся 30мбайт/сек.по моему нормально.
так плату делл,как привык.и ниче,работает. спасибо Ну и что что 30мбайт, частота всеравно около 500МГц, вне зависимости от скорости. Или я не прав? Конечно работает, но вы же сами на глюки жаловались... Или там глюки другого рода? Цитата(Ozelot @ Jan 22 2008, 09:59)  Только что в новостях увидел ссылку: http://www.bridgeco.com/index.php?option=c...6&Itemid=44Похоже там есть все, о чем здесь говорили. По крайней мере для общего развития думаю есть на что поглядеть. Может даже облизнуться  Дааа, наворочено-то. Для общего развития если тока =) Цитата(Alex11 @ Jan 22 2008, 13:17)  По поводу обхода граблей - это относится собственно к кристаллам ISP158x. Идеологически - я сказал в прошлом посте. Если Вы на этот кристалл упадете - пишите в личку, расскажу подробно. А так лень - долго писать. Понял. Спасибо! Выше предлагали использовать неизохронный режим USB. Какая макс. скорость возможна? Из за чего могут быть потери в изохронном режиме? (если используем хороший экранированный USB кабель, и нормально разведена плата)
Сообщение отредактировал MAXvaLL - Jan 22 2008, 12:10
|
|
|
|
|
Jan 23 2008, 16:47
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Цитата Ну и что что 30мбайт, частота всеравно около 500МГц, вне зависимости от скорости. Или я не прав? Конечно работает, но вы же сами на глюки жаловались... Или там глюки другого рода? Я писал в чем были глюки. С самой плисиной.. Там сльно большие задержки. На дорожке клок уже пришел.пока долез до стейт-машин в плисе,пока изменилось состояние машины и пока оно вылезло наружу(на дорожку), так клок уже упал,или даже собрался подыматься. Вобщем переделывал машины... В железе глюк был только один - генератор для аналогового тракта был на 5в,я их переводил в 3в полевиком. полевикаа чет колбасило,я резанул дорогу,подал на генер 3в и пустил клок на прямую.а аналоговая часть и 3вольтовый клок прохавывает без проблем. Частота то 480мгц,но там ей и место  Цитата Выше предлагали использовать неизохронный режим USB. Какая макс. скорость возможна? Из за чего могут быть потери в изохронном режиме? (если используем хороший экранированный USB кабель, и нормально разведена плата) Изохрон имиет высокий приоритет, но не имеет коррекции ошибок. Он гарантирует, кажись 80%(не помню) пропускной способности шины. Но он не гарантирует доставку информации в ее исходном виде,те могут быть ошибки. Дорога вам на usb.org Цитата Кстати вы не ответели что есть такое MAX3000 и MAX2? Это семейства плисов. Как было написано выше, altera.com все скажет  Цитата Уважаемый brag,а не могли бы вы выложить проект здесь, либо на почту cbv22@mail.ru К сожалению, пока нет. Проект имеет возможность принести денег, почему бы ею не воспользоватся. Ведь это все таки должен быть мой хлеб. Да и зачем он вам? вы же свое делаете. Тем более инфы много в инете,а ее особо там и не надо много. Даташитов достаточно. По драйверам сам помочь не могу,тк сам еще баран в них. На вопросы отвечу  Цитата Каков протокол аудиоданных на компьютере? Как их софт понимает? А то без этих знаний и схему не нарисовать! НА каком компютере?  на моем? Почему не нарисовать? вам надо доставить даные на комп,а что дальше с ними делать - проблеммы вашего драйвера. Вобще я гоню, как есть. 8bit dummy+24bit Signed big endian msb first. те всего у нас 8 байт. первые 4-левый,вторые-правый.первый байт ис каждого канала лишний,остальные идут в порядке от старшего к младшему. вот и все. Цитата Мне Cypress тоже очень понравился, тока вот времени небыло разобратся со связью Cypress с АЦП . Только через плисочку,если ацп с последовательным интерфейсом
Сообщение отредактировал brag - Jan 23 2008, 16:58
|
|
|
|
|
Jan 23 2008, 20:14
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 23 2008, 19:47)  Изохрон имиет высокий приоритет, но не имеет коррекции ошибок. Он гарантирует, кажись 80%(не помню) пропускной способности шины. Но он не гарантирует доставку информации в ее исходном виде,те могут быть ошибки. Дорога вам на usb.org Только через плисочку,если ацп с последовательным интерфейсом  С изохрлоном ясно. А ошибки-то вот откуда возьмутся, если используем хороший экранированный USB кабель, и нормально разведена плата? Вы изохрон пользуете? А через регистр сдвига + триггер почему нет?
|
|
|
|
|
Jan 23 2008, 21:27
|
Гуру
     
Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965

|
В нормальных условиях взяться им неоткуда. Мы много разных деталей делаем на USB - нет там ошибок, пока не работаешь на электроподстанции. Там - есть, когда земля импульсно на десяток наносекунд киловольта на 2 подскакивает. Но в этом случае все кончается, как правило, переподключением устройства, чтобы подвисшие драйвера освободить. Но это экзотика. Средней пропускной способности хватит как в изохроне, так и в балке, но в последнем никто не гарантирует равномерность потока. Если буфер в устройстве большой - без проблем магабайт 25-30 в секунду качается. Есть еще одна проблема. Если падать на микрософтовские драйвера, а не делать свои, то по спецификации USB-audio они требуют изохрона. Еще одна проблема с драйверами - Vista. У мелкомягкого как всегда семь пятниц на неделе. Вместо того, чтобы вылизать имеющееся - сделали новую спецификацию на драйвера. По мне, так лучше немного помучиться с железом, но лечь в стандарт, а дальше пусть микрософт разбирается, что он там нагородил.
|
|
|
|
|
Jan 24 2008, 04:30
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Цитата Если можно немного подробнее. Через какой ендпоинт гонится поток? Поток изохронный? Можете ли поделится дескриптором устройства? Формат и скорость жестко забиты или ими можно управлять с компа? Частота кварца? Очень большое пожалуста ответить. Какая разница, через какой. через какой захотел,через такой и погнал. сейчас 2-OUT,4-IN. Сейчас Bulk. Причем сдесь скорость? или вы о частоте дискретизации? - тогда жестко. мне надо макс. разрешение. Одного 24.000мгц. второго 24.576мгц. Тоже из серии - почитай даташит... дескриптор: Код // Device Descriptor { 0x12, // bLength USB_DESCRIPTOR_DEVICE, // bDescriptorType USBW(0x0200), // USB 2.0 0xFF, // bDeviceClass 0x00, // bDeviceSubclass 0x00, // bDeviceProtocol 0x40, // bMaxPacketSize0 USBW(USB_VENDOR_BRAG), // idVendor USBW(USB_PRODUCT_BRAG_DD2), // idProduct USBW(0x0001), // bcdDevice :Device Release Number 0x01, // iManufacturer 0x02, // iProduct 0x00, // iSerialNumber 0x01 // bNumConfigurations },
// Configuration Descriptor { // std configuration descriptor 0x09, // bLength USB_DESCRIPTOR_CONFIG, // bDescriptorType USBW(USB_CFGDESCSIZE), // wTotalLength 0x01, // bNumInterfaces 0x01, // bConfigurationValue 0x00, // iConfiguration 0xC0, // bmAttributes 0x00, // bMaxPower
// Interface descriptor 0x09, // bLength USB_DESCRIPTOR_IFACE, // bDescriptorType 0x00, // bInterfaceNumber 0x00, // bAlternateSetting 0x03, // bNumEndpoints 0xFF, // bInterfaceClass 0x00, // bInterfaceSubClass 0x00, // bInterfaceProtocol 0x00, // iInterface
// Endpoint descriptor (OUT EP2) 0x07, // bLength USB_DESCRIPTOR_ENDPOINT, // bDescriptorType 0x02, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint 0x02, // bmAttributes USBW(0x200), // wMaxPacketSize 0x01, // bInterval
// Endpoint descriptor (IN EP4) 0x07, // bLength USB_DESCRIPTOR_ENDPOINT, // bDescriptorType 0x84, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint 0x02, // bmAttributes USBW(0x200), // wMaxPacketSize 0x01, // bInterval
// Endpoint descriptor (IN EP1) 0x07, // bLength USB_DESCRIPTOR_ENDPOINT, // bDescriptorType 0x81, // bEndpointAddress : D0..D3 - ep num; D7 - IN endpoint 0x02, // bmAttributes USBW(0x40), // wMaxPacketSize 0x80 // bInterval }, #if USB_CFGDESCSIZE & 1 0, #endif
// LangID {USB_DESCRIPTOR_STRING_SIZE(1),USB_DESCRIPTOR_STRING,USB_LANG_EN_US}, // Manufacturer { USB_DESCRIPTOR_STRING_SIZE(4),USB_DESCRIPTOR_STRING, 'B',0,'r',0,'a',0,'g',0 }, // Product { USB_DESCRIPTOR_STRING_SIZE(12),USB_DESCRIPTOR_STRING, 'D',0,'i',0,'g',0,'i',0,'D',0,'e',0,'g',0,'a',0,'n',0,' ',0,'I',0,'I',0 } Толку вам от него? Дескрипторов никогда не видели?  Где-то видел страницу - сборник дескрипторов популярных усб-устройств, типа для коллекции :D Код С изохрлоном ясно. А ошибки-то вот откуда возьмутся, если используем хороший экранированный USB кабель, и нормально разведена плата? Вы изохрон пользуете? Ошибки дажа на шинах ATA,SATA,DDR,... есть, не даром есть такие вещи,как ECC, CRC итп..а вы тут о usb.. Читайте доку с usb.org Ошибки - это не подвисание драйвера. Это просто ошибки и они всегда могут встретится. usb_20.pdf say: Цитата isochronous transfers have the general implication of constant-rate, errortolerant transfers. In the USB environment, requesting an isochronous transfer type provides the requester with the following: • Guaranteed access to USB bandwidth with bounded latency • Guaranteed constant data rate through the pipe as long as data is provided to the pipe • In the case of a delivery failure due to error, no retrying of the attempt to deliver the data и еще Цитата USB Communication Flow Transfer |Bandwidth |Error Detection |Retrying
Control |Not guaranteed |Yes |Automatic Isochronous |Guaranteed |Yes |No Interrupt |Not guaranteed |Yes |Yes Bulk |Not guaranteed |Yes |Yes USB-audio мягкий не по карману.глючный он сильно,особенно в win2000 В FreeBSD он и то более-менее работает
Сообщение отредактировал brag - Jan 24 2008, 04:49
|
|
|
|
|
Jan 24 2008, 07:44
|
Частый гость
 
Группа: Участник
Сообщений: 174
Регистрация: 23-01-08
Из: Нижний Новгород
Пользователь №: 34 339

|
На счет аудиоданных я имел ввиду чтобы стандартный драйвер все понимал. Да хоть чтоб Winamp  играл! Как определить левый правый канал?
Сообщение отредактировал MegaElektronik - Jan 24 2008, 07:50
|
|
|
|
|
Jan 24 2008, 15:15
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Фильтр еще будем думать. О гальв.развязке..ее где-то ставят на более-менее крутых картах? сомневаюсь,что она нужна. тогда уж надо делать гальваническую развязку по 3.3в на питание цыфровой части  ) Да.даное устройство никаким боком к usb-audio class не относится. Вот дескриптор для аудио класса.только ацп. Код const struct usbDevDesc UsbDevDesc={ sizeof(struct usbDevDesc), USB_DESCRIPTOR_DEVICE, 0x0200, // USB 2.0 0xEF, // bDeviceClass 0x02, // bDeviceSubclass 0x01, // bDeviceProtocol USB_EP0_MAXSIZE, USB_VENDOR_BRAG, USB_BRAG_PRODUCT_DD, 0x0001, // Serial 0x01, // iManufacturer 0x02, // iProduct 0x00, // iSerialNumber 0x01 //bNumConfigurations };
const struct usbAuCfgDesc UsbCfgDesc={ { sizeof(struct usbStdCfgDesc), USB_DESCRIPTOR_CONFIG, sizeof(struct usbAuCfgDesc), 1, //interfaces 1, //bConfigurationValue 0, //iConfiguration 0xC0, //SelfPowered 0 //bMaxPower }, /* Audio Control Interface */ { sizeof(struct usbStdIfDesc), USB_DESCRIPTOR_IFACE, 0, //bInterfaceNumber 0, //bAlternateSetting 0, //bNumEndpoints 0x01, //AUDIO 0x01, //AUDIOCONTROL 0, 0 //iInterface }, { sizeof(struct usbCsAcDesc), 0x24, //CS_INTERFACE 0x01, //HEADER 0x0100, //bcdADC sizeof(struct usbCsAcDesc)+sizeof(struct usbCsItDesc)+ sizeof(struct usbCsOtDesc), //wTotalLength USB_AUDIO_IFS, 1 //baInterfaceNr }, { sizeof(struct usbCsItDesc), 0x24, //CS_INTERFACE 0x02, //INPUT_TERMINAL 0x01, //bTerminalID 0x0200, //Input Undefined term type 0x00, //bAssocTerminal 2, //bNrChannels 0x00000003, //wChannelConfig 0, //iChannelNames 0 //iTerminal }, { sizeof(struct usbCsOtDesc), 0x24, //CS_INTERFACE 0x03, //OUTPUT_TERMINAL 0x02, //bTerminalID 0x0101, //Usb Streaming 0x00, //bAssocTerminal 0x01, //bSourceID (from input terminal) 0 //iTerminal }, /* Zero Bandwidth (alt setting 0) */ { sizeof(struct usbStdIfDesc), USB_DESCRIPTOR_IFACE, 1, //bInterfaceNumber 0, //bAlternateSetting 0, //bNumEndpoints 0x01, //AUDIO 0x02, //AUDIOSTREAMING 0, 0 //iInterface }, /* Audio Streaming descriptor (alt setting 1) */ { sizeof(struct usbStdIfDesc), USB_DESCRIPTOR_IFACE, 1, //bInterfaceNumber 1, //bAlternateSetting 1, //bNumEndpoints 0x01, //AUDIO 0x02, //AUDIOSTREAMING 0, 0 //iInterface }, { sizeof(struct usbAuCsAsDesc), 0x24, //CS_INTERFACE 0x01, //AS_GENERAL 0x02, //bTerminalLink (Out Terminal) 0x01, //bDelay 0x0001 //wFormatTag (PCM format) }, { sizeof(struct usbAuCsFmt1Desc), 0x24, //CS_INTERFACE 0x02, //FORMAT_TYPE 0x01, //FORMAT_TYPE1 0x02, //bNrChannels 0x03, //3 bytes/frame 24, //24 bits/sample 0x01, //bSamFreqType - One frequency supported {B3VAL(96000)} //tSamFreq }, /* IN ISO Endpoint 1 */ { {sizeof(struct usbAuStdAsIsoEpDesc), USB_DESCRIPTOR_ENDPOINT, 0x81, //IN endpoint 1 0x01, //Isochronous, No synchronous, Data endpoint 64, //wMaxPacketSize 9}, //packets per frame 0,0 //bRefresh, bSynchAddress }, { sizeof(struct usbAuCsAsIsoEpDesc), 0x25, //CS_ENDPOINT 0x01, //EP_GENERAL 0x00, //bmAttributes 0x00, //bLockDelayUnits 0x0000 //wLockDelay } }; Также есть пару примеров в тех ссылках,что я давал. именно аудио. Джиттер нечем мерять...
Сообщение отредактировал brag - Jan 24 2008, 15:21
|
|
|
|
|
Jan 24 2008, 21:15
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
brag и Alex 11, благодарю за помощь! Цитата(brag @ Jan 24 2008, 22:45)  Вот теперь такая платка  Вижу, вы все же прислушались к моему совету доработать разводку USB  Эти изменения что-то дали? Еще, как я вижу вы убрали X2. Я так понимаю вы через него программировали ЕЕПРОМ. А теперь как? Цитата(khach @ Jan 24 2008, 14:57)  По поводу платы. Я незря спрашивал про то, что дал Rightmark Audioanalyzer. Без него понять что и как шумит - невозможно. Я бы обязательно поставил между Альтерой и АЦП_ЦАП RC цепи по цифровым линиям. А возможно и предусмотрел место под гальваноразвязку. Запаять вместо нее перемычки никогда не поздно, а вот наоборот... Фильтр по питанию преобразователей как организован? Джиттер вы не меряли? Полгостью согласен! Я уже давно про это говорил... Но это если вы особо заботитесь о качестве. Помехи и джиттер могут испоганить результат самых лучших преобразователей. Возможно выложу нашу разработку, когда заработает  Цитата(khach @ Jan 24 2008, 14:57)  За ссылки и дескриптор спасибо. Кому оно очевидно, а кое-кто и первый раз видит. К сожалению, как я понял, ваше устройство к аудиоклассу никаким боком не относится. Меня интересовали рабочие примеры дескриптора канала записи для устройств, совместимых с виндой. Доки конечно читал, но как-то криво оно работает. По поводу платы. Я незря спрашивал про то, что дал Rightmark Audioanalyzer. Без него понять что и как шумит - невозможно. Я бы обязательно поставил между Альтерой и АЦП_ЦАП RC цепи по цифровым линиям. А возможно и предусмотрел место под гальваноразвязку. Запаять вместо нее перемычки никогда не поздно, а вот наоборот... Фильтр по питанию преобразователей как организован? Джиттер вы не меряли? А вы умеете мерять джиттер?
Сообщение отредактировал MAXvaLL - Jan 24 2008, 21:13
|
|
|
|
|
Jan 24 2008, 22:28
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Цитата Вижу, вы все же прислушались к моему совету доработать разводку USB Эти изменения что-то дали? Да,немного разсунул,хотя там далеко нету тех параметров.зазор 0.7мм, расстояние до других макс 7мм. Хз дало,не дало.плату еще не делал новую. пока дрова пишу.как все будет готово,в том числе и ламповая часть(вход,выход), тогда уже буду делать вторую плату, со всеми доработками... Цитата Еще, как я вижу вы убрали X2. Я так понимаю вы через него программировали ЕЕПРОМ. А теперь как? Та не,я его просто так воткнул  EEPROM самим же cypressom и шьется. Гробик бы с удовольствием всунул,только нету таких гробиков. надо именно 24.576мгц
|
|
|
|
|
Jan 24 2008, 22:52
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 25 2008, 01:28)  ...в том числе и ламповая часть(вход,выход)... Та не,я его просто так воткнул  EEPROM самим же cypressom и шьется. Ну, ты зверь!  Круто!!!  Мы вот предвариловку на крутых опер.ах делаем Через USB? Кстати, возник вопрос: а зачем serial<->parallel преобразователь надо было на ПЛИСине делать? Есть ведь готовенькие... PS А за дескрипторы спасибо большое! Темный мы народ...
Сообщение отредактировал MAXvaLL - Jan 24 2008, 22:56
|
|
|
|
|
Jan 24 2008, 23:26
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Цитата Через USB?
Кстати, возник вопрос: а зачем serial<->parallel преобразователь надо было на ПЛИСине делать? Есть ведь готовенькие...
PS А за дескрипторы спасибо большое! Темный мы народ... Ну типа того. загоняем в контроллер прошивку.а она сама себя всунет в ееп,если надо. Он не просто сер/пар преобразователь. он еще и знает, что такое LRCK, еще и умеет их генерить,вместе с BCLK, еще и знает, что в нас там с буфферами USB. вдруг мы уже закончили принимать/и/или/передавать даные...если вам удастся пристроить готовый - хорошо  Ага.и еще надо адрес эндпоинта выбирать. мы же одновременны пишем и воспроизводим звук, а шина то одна 8битная. Даные идут через однобайтовый буффер в шину/с шины. Далее, может еще старший лишний байт будет откидать, зачем его бестолку в шину гнать..пока гонится,а там,мож откину. Кароче это все дело заняло 81% площади кристалла плиса. не за что,пол года на зад делал усб-аудио устройство стандартное, только ацп. работало,как и все - глючно в виндах.
Сообщение отредактировал brag - Jan 24 2008, 23:34
|
|
|
|
|
Jan 25 2008, 00:32
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 25 2008, 02:26)  Ну типа того. загоняем в контроллер прошивку.а она сама себя всунет в ееп,если надо. ... Ага.и еще надо адрес эндпоинта выбирать. мы же одновременны пишем и воспроизводим звук, а шина то одна 8битная. Даные идут через однобайтовый буффер в шину/с шины. Понятно... Это у вас 8бит в обе стороны?! Или все же 8бит в каждую?
|
|
|
|
|
Jan 25 2008, 17:14
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 25 2008, 09:58)  Читайте даташит на сайперс. шина даных 8бит, шина адресса 2 бит,шина флагов(подключено 3 флага,юзаю 2). ну и 3 провода RD,WR,OE Вроде ничего не забыл ё) Понял, ПЛИС у вас представляется как внешняя память? Верно? Поток идет через внутренний FIFO 4kB, или на шину а потом в RAM? До USB всеравно программно прокидывать надо?
Сообщение отредактировал MAXvaLL - Jan 25 2008, 17:21
|
|
|
|
|
Jan 25 2008, 18:36
|
Местный
  
Группа: Свой
Сообщений: 462
Регистрация: 26-06-07
Пользователь №: 28 723

|
Цитата(khach @ Jan 25 2008, 16:23)  Неправильно. Добротность от моды колебаний зависит. Для изгибных балочных с подвеской в узлах волны как раз несколько миллионов и получалось- звенел минуты после выключения питания. Только надо учитывать, что измерительная схема сильно нагружает кварц и садит добротность. Поэтому для измерения амплитуды на "выбеге" мы к кварцу раз в 10 секунд подключались релюхой, меряли амплитуду и снова выключались. Мощность накачки надо смотреть экспериментально по спектру- как начал пик ползти по частоте или уширяться- стоп, хватит. Про паразиты - это не критерий, о них и отстроится можно LC цепью. По поводу супердобротных кварцев- полусферические кварцевые "чашки" от твердотельных гироскопов имеют добротность от 10 до 50 миллионов, а из лейкосапфира- говорят и еще больше.
Кстати, я самодельной звуковой картой заинтересовался именно для целей спектрометрии- оказалось что профессиональное измерительное оборудование уступает по параметрам аудиофильским примочкам типа RMAA и совреманным звуковухам. Если бы они еще были калиброванными по амплитуде... Ну а писать аудиодрайвер для карты сбора данных чтобы подключит ее к RMAA - это извините бред.
Сорри за оффтоп, может откроем новую ветку по НЧ кварцам где-нибудь и низкошумным генераторам для них? Вы говорите об экзотике, которая редко выходит за стены организаций типа РИРВ, НИИРТИ или ВНИИФТРИ. Я же говорю о том, что более-менее доступно для приобретения и реального применения "обычным человеком". Большинство низкочастотных резонаторов - камертонные, их добротность не очень велика. Крупноформатный балочный кварц с относительно высокой добротностью более-менее распространен только на 8 кГц (на них работали задатчики для систем частотного уплотнения каналов связи). Размер у него немаленький (больше нарисованной тут платки) и явно не для данного применения. По поводу того, что SNR/THD у хороших звуковух выше, чем у средних (серийных) приборов для анализа сигналов - факт. Разработчики приборов, которым нужно не "слепить плату", а освоить конструкцию в целом и сертифицировать ее, неизбежно отстают в применении современной элементной базы лет на 8-10. Промежуточное положение занимают платы для ПК (например, у ЗАО "Руднев-Шиляев" есть 8-канальная 24-разрядная плата 102.4 кГц/204.8 с автокалибровкой по постоянному току и нормальными дифференциальными входами, SNR и SFDR реально более 100 дБ). Вопрос по мощности - тут Вы полностью правы, "формальные" критерии (столько-то мквт без учета размеров) здесь не работают, нужно либо общаться с разработчиком кварцевого резонатора, либо экспериментировать. Превысить лимит механической прочности кварца при разумных напряжениях и "толстом" кристалле невозможно, паразитные эффекты начнутся гораздо раньше (камертонные и крутильные критичнее балочных!). p.s. У меня самого есть несколько экземпляров Морионовских балочников на частоты от 8 кГц, естественно, я их обмерял. Добротность балочного резонатора сильно зависит от качества подвеса и имеет разброс от 40E3 до 3E5 (8 кГц). Типовое значение - 1Е5, его я и привел. Способ измерения - по виду Z-кривой (точнее, по ФЧХ), снимаемой при помощи DDS генератора, тактовый сигнал которого имеет джиттер в субпикосекундном диапазоне (используется тактовый генератор, обеспечивший SNR 38 дБ при оцифровке сигнала с частотой 1,63 ГГц). Способ измерения по выбегу "звона" не использовался, т.к. результаты при двух скоростях изменения частоты (~0.02 и ~0.005 Гц/сек) практически не отличались.
|
|
|
|
|
Jan 26 2008, 00:38
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Цитата Дык в 56 пиновой версии же нет RD,WR,OE Я вижу, вам впадло даже на пинаут посмотреть. с такими темпами какая там разработка может получится.... Использую синхронную.
|
|
|
|
|
Jan 26 2008, 10:52
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 26 2008, 03:38)  Я вижу, вам впадло даже на пинаут посмотреть. с такими темпами какая там разработка может получится....
Использую синхронную. Мне вовсе не впадлу посмотреть пинаут! Иначе как бы я узнал, что в SSOP56 НЕТ RD,WR,OE! Но есть ноги SLRD, SLWR и SLOE. Поэтому и возник вопрос
|
|
|
|
|
Jan 30 2008, 17:53
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(Uree @ Jan 30 2008, 18:06)  Безумно любопытно - а какой будет конструкция девайса(тупо двуслойка, без применения экранов и т.д. ни разу не позволит получить более-менее приличные параметры аналоговой части), ну и какими приборами будут измеряться параметры, когда оно заработает? Или наши главные приборы тестер и абсолютный слух?  100 раз уже обсуждалось. Это будет не тупая двухслойка, а умная. А если все ок будет. Закажем завоццкую 4х слойку А RMA на что? Цитата(MegaElektronik @ Jan 30 2008, 14:47)  Пока разбираюсь в Quartuse для ПЛИС, в схемотехнике и USB контроллере с протоколом.
Ели кто может, то предложите не сложную схему генератора на кварце с низким джиттером. Буду оч. признателен. Если разберешся - поделись пожалуйста. Я пока с кипрусом вожусь... Вот наш генератор (на данный момент). Там 2 кварца, для частот кратных 44.1 и 48. Может он и не простой, но вдруг поможет И, да не убьет меня схемотехник...
Эскизы прикрепленных изображений
|
|
|
|
|
Jan 30 2008, 21:57
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(SIA @ Jan 30 2008, 23:41)  Причем работает без установки дополнительных драйверов. Этого добиться было непросто! Вы пишите так, как будто этого вы добились Или так и есть И что в этом особенного? В чем отличие от всех остальных USB карт? Кстати, раздельно - неудобно может быть...
|
|
|
|
|
Jan 31 2008, 05:29
|
Частый гость
 
Группа: Участник
Сообщений: 174
Регистрация: 23-01-08
Из: Нижний Новгород
Пользователь №: 34 339

|
Цитата(alex840 @ Jan 30 2008, 23:29)  Было сказано что высококачественное устройство, а это...... THD 0,01% т.е. -80дБ - фуфло! надо -100 минимум, а то и -108! Насчет схемы генератора мне кажется что очень сложно (в основном чем больше элементов, тем хуже работает). Платы и двухслойки хватит вполне, главное грамотно сделать. А с четырех-слойкой еще научится надо. Экранировки должно хватить и используя перегородки между Аналог-цифра и ЦАП-АЦП. Насчет приборов беспокоится нечево. На компутере звуковуху можно спектроанализатором саму-себя проверить. Также есть и другие приборы (всетаки в конструкторском бюро работаю!). Питание от 220 через трансформатор (с 1 преобразуется на 4 обмотки), кучу стабилизаторов, фильтров..... Корпус предполагается железный. А частоты дискритизации предполагаются 48, 96, 192 kHz. 44,1 пользовать путем передискритизации на компьютере.
Сообщение отредактировал MegaElektronik - Jan 31 2008, 05:45
|
|
|
|
|
Jan 31 2008, 08:35
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(MegaElektronik @ Jan 31 2008, 08:29)  Было сказано что высококачественное устройство, а это...... THD 0,01% т.е. -80дБ - фуфло! надо -100 минимум, а то и -108!
А частоты дискритизации предполагаются 48, 96, 192 kHz. 44,1 пользовать путем передискритизации на компьютере. Эти 2 ваших утверждения не совместимы ИМХО Передескрктизация - это ЗЛО. Она весь звук убьет!Глупо тогда уже заботится о джиттере, и прочем... ИМХО Цитата Насчет схемы генератора мне кажется что очень сложно (в основном чем больше элементов, тем хуже работает). Ну да, выкиньте из вашего компутера половину деталей, может лучше заработает  Хотя если вам так уж не нравится - дело ваше. Но что точно могу сказать - это то, что генератор с малым джиттером надо делать на быстром компараторе. Схем, я думаю не мало в инете.
Сообщение отредактировал MAXvaLL - Jan 31 2008, 08:50
|
|
|
|
|
Jan 31 2008, 09:03
|

Частый гость
 
Группа: Свой
Сообщений: 115
Регистрация: 6-06-05
Из: Ukraine
Пользователь №: 5 764

|
Цитата(MAXvaLL @ Jan 31 2008, 12:52)  С АЦП 24 разряда  Я серьезно. Мне не совсем ясно зачем ребята затеяли этот проект. Скорее всего чтобы делать высококачественную запись, но если это делается для студии, то я не поверю чтобы кто-то повелся на использование такого "самопала".
|
|
|
|
|
Jan 31 2008, 09:17
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(Ozelot @ Jan 31 2008, 12:03)  Я серьезно. Мне не совсем ясно зачем ребята затеяли этот проект. Скорее всего чтобы делать высококачественную запись, но если это делается для студии, то я не поверю чтобы кто-то повелся на использование такого "самопала". Может я путаю, но DVD-A 192/24 А даже если и не так, то в ближайшее время наверняка кто-то из производителей извратиться  HD-DVD, BlueRay всякие... Ну, в первую очередь для себя. Тем более все зависит от того, какие показатели будут у самопала Факты (показатели) - весчщщщ упрямая.
Сообщение отредактировал MAXvaLL - Jan 31 2008, 09:21
|
|
|
|
|
Jan 31 2008, 12:48
|
Частый гость
 
Группа: Validating
Сообщений: 75
Регистрация: 8-06-05
Пользователь №: 5 849

|
Цитата(SIA @ Jan 31 2008, 02:58)  Стандартные средства Win не особенно-то поддерживают 24/96. Попробуете сделать, особенно без установки своего драйвера, посмотрите API, поймете. Я был немного в курсе этого проекта - он делался в РФ  хм. я тоже немного в курсе. наверное мы знакомы...
|
|
|
|
|
Jan 31 2008, 13:13
|
Частый гость
 
Группа: Validating
Сообщений: 75
Регистрация: 8-06-05
Пользователь №: 5 849

|
Цитата(SIA @ Jan 31 2008, 16:58)  Леха Курнаев ? ответил в РМ
|
|
|
|
|
Jan 31 2008, 21:30
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(brag @ Jan 31 2008, 13:43)  я сделал фикс. битрейт, уже дописываю дрова. а эта сцука(винда) все равно свой SRC в цепочку сует. В аудио поток? Цитата(khach @ Jan 31 2008, 13:46)  Помните анекодот про аудиофила- технаря и аудиофила- нефтяного магната? Вот второй хочет себе аудиосистему с ЧЕСТНЫМИ 24/192. Первый предлагает систему с АЦП-ЦАП на SQUID. Технически вопрос за такие бабки вполне решаем. Но у технаря нехватает знаний слепить нормальный цифровой интерфейс (считаем, что заний про технологию сенсоров SQUID, криогенику, вакуумную технику итд достаточно). Вот в качестве проекта "на поучиться" и выбран проект обсуждаемого в этой теме аудиоустройства.
Ксатит, по поводу драйверов. Расковырял USBASIO. Список поодерживаемых аудиоустройств впечаталяет. Цепляю инф файл от драйвера. Кстати, убогая поделка Билли usbaudio.sys там вообще не используется. Обратите внимание на список VID/PID поддерживаемых устройств ( и на их цены). Хммм, ну лампы-то понятно. Но SQUID, это же супер магнитные сенсоры. Как их применять в аудио? А чтобы плата работала под ASIO, что надо? Заделаться под что-то что она поддерживает? Или есть что-то универсальное? (типа как win, но без лагов)
Сообщение отредактировал MAXvaLL - Jan 31 2008, 21:57
|
|
|
|
|
Feb 1 2008, 05:47
|
Частый гость
 
Группа: Участник
Сообщений: 174
Регистрация: 23-01-08
Из: Нижний Новгород
Пользователь №: 34 339

|
Цитата(MAXvaLL @ Jan 31 2008, 11:35)  Эти 2 ваших утверждения не совместимы ИМХО Передескрктизация - это ЗЛО. Она весь звук убьет!Глупо тогда уже заботится о джиттере, и прочем... ИМХО Ну да, выкиньте из вашего компутера половину деталей, может лучше заработает  Хотя если вам так уж не нравится - дело ваше. Но что точно могу сказать - это то, что генератор с малым джиттером надо делать на быстром компараторе. Схем, я думаю не мало в инете. Если почитать тему про дескретизацию на iXBT-е, то она очень хорошо справляется! Джиттер при програмной дескритизации??? Откуда! Может насчет "много деталей" это я сгоряча, извините!  Просто есть схемы где мало деталей и где много, а функция и параметры одинаковы, то вы выберите какую? А с генератором не хотельсь бы парится (есть множество других вопросов!), а взять готовый и проверенный кем-то.
|
|
|
|
|
Feb 1 2008, 11:49
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(MegaElektronik @ Feb 1 2008, 08:47)  Если почитать тему про дескретизацию на iXBT-е, то она очень хорошо справляется! Джиттер при програмной дескритизации??? Откуда! Может насчет "много деталей" это я сгоряча, извините!  Просто есть схемы где мало деталей и где много, а функция и параметры одинаковы, то вы выберите какую? А с генератором не хотельсь бы парится (есть множество других вопросов!), а взять готовый и проверенный кем-то. Я не говорю что джиттер появится! Я говорю, что нет смысла ТАК заботится о качестве аналога, если всеравно потом передескретизация. Может я и не прав. Но ИМХО так... А че парится? Кварц и компаратор + по мелочи.... Или готовый посмотрите.
|
|
|
|
|
Feb 1 2008, 14:39
|
Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 26-12-07
Пользователь №: 33 639

|
Цитата(MegaElektronik @ Feb 1 2008, 16:49)  Сейчас 44.1k не предпологается, т.к. вызывает трудности и в семотехническом и программном плане, возможно в дальнейшем будет. Согласен! и у меня вызывает Но эташ CDDA. Нехорошо как-то биз него
|
|
|
|
|
Feb 1 2008, 18:27
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Так описано в моем драйвере [attachment=17650:attachment] А так оно уже после прохода через ...сами знаете что  [attachment=17651:attachment] Я еще не вкурсе, вносит ли оно в поток свои изменения или нет, драйвер пока полностью не готов, еще осталось SRB_OPEN_STREAM,SRB_CLOSE_STREAM реализовать. тогда и проверим Но в ддк пишут, что вроде как бы, если запрошенный битрейт поддерживается девайсом, то он что-то типа "Bypass SRC"... оно приклеило мне свой миди софтовый и всякие SRC,supermix,3d,surround,volume и при чем не в разрыв(видно на картинках) а параллельно :D
Сообщение отредактировал brag - Feb 1 2008, 18:33
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|