|
Цифровой HDD-проигрыватель с выходом I2S slave mode |
|
|
|
Sep 26 2011, 11:24
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Здравствуйте! Я новичок на этом форуме, равно как и в цифровой электронике вообще. До сих пор мой опыт "общения" с цифровыми схемами ограничивался сборкой готовых устройств по готовым схемам. Теперь интересно сделать нечто самому с нуля. Интересует не устройства на МК вообще, а для начала - совершенно конкретное, описанное в заголовке темы. Я люблю слушать музыку и имею хорошую аппаратуру для воспроизведения, в том числе и ЦАП. Теперь я решил сделать для этого ЦАП'а второй цифровой источник - проигрыватель на жёстком диске (первый - проигрыватель компакт-дисков, у которого обустроен I2S-выход в уровнях RS485). Жёсткие диски привлекают невысокой ценой, удобством эксплуатации и замены и огромными доступными объёмами, чего нельзя сказать о флеш-памяти. Мне требуется цифровой источник с выходом в формате I2S, работающий в подчиненном режиме - то есть сигнал Master clock приходит на источник с ЦАП'а, а он может иметь частоту, кратную 44.1 или 48 кГц (в зависимости от установок в ЦАП'е включается тот или иной генератор частоты). Соответственно контроллер должен "уметь" работать с этими частотными сетками, и в то же самое время - связываться с HDD. Поначалу я хотел разработать "устройство на одной плате" - грубо говоря, с одной стороны втыкается шлейф SATA, с другой стороны выходят витые пары RS485. Мне указали на то, что SATA может работать строго с пропускной способностью 1.5Тб/с и никак не меньше, и что такое устройство мне не по зубам, поэтому нужно использовать переходник SATA->USB. С USB, насколько я знаю, могут работать контроллеры ARM, у них же есть и выход I2S. Поэтому тему я создал в этом разделе.
Меня интересует - может ли ARM работать одновременно с USB-устройством (работающим на частоте 12МГц) и при этом - с I2S-приёмником, задающим мастерклок, причём с частотой, совершенно некратной USB'шным двенадцати мегагерцам (16,9344МГц или 18,432МГц)?
Какую именно модель МК следует выбрать? Может, я плохо искал, и есть уже совершенно готовые устройства, полностью отвечающие моим потребностям? Какие могут быть подводные камни у подобного устройства?
Сразу скажу - сложность изготовления ПП меня не пугает, т.к. заказывать в любом случае буду на заводе, так что доступны и 4-слойки, и плотная компоновка.
|
|
|
|
|
 |
Ответов
(30 - 44)
|
Sep 26 2011, 19:10
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Цитата максимальная тактовая частота - 66 МГц Для Вашего случая - с избытком. Ага. А когда чел поймет, делал-делал и наконец, доделал, то захочет чего-то еще. А "чего-то еще" в области обработки звука требует вычислительных ресурсов. Да еще на частоте не 48, а 192, к примеру. И что любопытно. Отладочная плата для AT32UC3 стоит 7200 рублей, а плата на G45, который покруче будет на порядок - 4000. Да и сама платка на G45 симпатичная, без лишних компонентов. И вчетверо меньше по размерам...
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Sep 26 2011, 21:47
|
Местный
  
Группа: Участник
Сообщений: 256
Регистрация: 5-04-09
Из: Москва
Пользователь №: 47 180

|
Цитата(DpInRock @ Sep 26 2011, 23:10)  Ага. А когда чел поймет, делал-делал и наконец, доделал, то захочет чего-то еще. А "чего-то еще" в области обработки звука требует вычислительных ресурсов... Я обычно подбираю МК под задачу. Кто-то делает по другому?  Если бы ТС озвучил "чего-то еще", возможно, МК был бы другим. Цитата(DpInRock @ Sep 26 2011, 23:10)  ...Да еще на частоте не 48, а 192, к примеру. Далеко не всякий DAC поддерживает 192 Цитата(DpInRock @ Sep 26 2011, 23:10)  ...Отладочная плата для AT32UC3 стоит 7200 рублей... Для задачи ТС отладочная плата - макетка с TQFP-144, три разьема, один или два кварца, и кучка керамики по питанию
|
|
|
|
|
Sep 27 2011, 05:43
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(forever_student @ Sep 27 2011, 01:47)  Я обычно подбираю МК под задачу. Кто-то делает по другому?  Если бы ТС озвучил "чего-то еще", возможно, МК был бы другим. ТС - это я? А что значит эта аббревиатура - топик-стартер? Собственно, выбор контроллера и явился одной из причин создания треда. Цитата Далеко не всякий DAC поддерживает 192 Мой - поддерживает, но обработкой звука я вряд ли буду заниматься. Малое бы сделать.
Сообщение отредактировал Звёздочка - Sep 27 2011, 08:03
|
|
|
|
|
Sep 27 2011, 06:46
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Цитата Мой - поддерживает, но обработкой звука я вряд ли буду заниматься. Малое бы сделать. Типа замечу. "Малое" - это как раз очень большое. А вот обработка звука - это как раз развлечение, малое. ТС НЕ СОБИРАЕТСЯ делать устройство. Он просто на примере устройства хочет что-то изучить. Ему так легше морально. Не светодиодом моргать, а вот эдакое залудить. И посему лучше изучать нормальный АРМ, 926-й. А не AVR32 (изучив которой, получишь только опыт АВР32, не более). А изучив G45 получишь именно опыт ARM. А что самое крутое, G45 стартует с SD карты. Вообще никаких отдадочных средств не требуется. Т.е. программу пишешь, закачиваешь на SD и вперед.
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Sep 27 2011, 07:57
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(DpInRock @ Sep 27 2011, 10:46)  Типа замечу. "Малое" - это как раз очень большое. А вот обработка звука - это как раз развлечение, малое. Мда. У меня представление об устройстве с ног на голову перевернулось в этой теме. Цитата ТС НЕ СОБИРАЕТСЯ делать устройство. Он просто на примере устройства хочет что-то изучить. Ему так легше морально. Не светодиодом моргать, а вот эдакое залудить. В принципе - так оно и есть. Цитата И посему лучше изучать нормальный АРМ, 926-й. А не AVR32 (изучив которой, получишь только опыт АВР32, не более). А изучив G45 получишь именно опыт ARM.
А что самое крутое, G45 стартует с SD карты. Вообще никаких отдадочных средств не требуется. Т.е. программу пишешь, закачиваешь на SD и вперед. Я наверное пару разных возьму, G45 + модуль с цветным экранчиком и http://www.starterkit.ru/html/index.php?na...p=view&id=9 - про LPC2368 выше говорили. Или это бессмысленно, и все армы не различаются в плане программирования?
|
|
|
|
|
Sep 27 2011, 08:16
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
QUOTE (Звёздочка @ Sep 27 2011, 08:43)  Мой - поддерживает, но обработкой звука я вряд ли буду заниматься. Малое бы сделать. А каким образом происходит выбор частот 32 - 192 ? Какая нибудь шина управления, тумблер или что то еще?
|
|
|
|
|
Sep 27 2011, 08:40
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(ig_z @ Sep 27 2011, 12:16)  А каким образом происходит выбор частот 32 - 192 ? Какая нибудь шина управления, тумблер или что то еще? Шина управления, данные о файле считываются из заголовка PCM-файла, и в зависимости от этих данных должна происходить конфигурация цифрового фильтра ЦАП'а подачей напряжения на определённые его выводы - определяется длина входного слова (16 бит или 24) и коэффициент деления опорной частоты. Аналогичным образом конфигурируются генераторы - в зависимости от данных в заголовке проигрываемого файла должно подаваться напряжение на разрешающий вход того или иного генератора. Ещё возможные регулировки - mute и deemphasis. На последние в ПКД у меня сейчас выделено 2 проводка, думаю, как лучше реализовать оставшиеся установки - отдельными проводками или в начале проигрывания каждого трека передавать битовую последовательность по одному-единственному. На плате ЦАП есть колодка, с которой можно произвести все эти настройки. Сейчас конфигурация этих режимов произведена джамперами, но с тем же успехом можно подавать на соответствующие её ножки логические уровни с ключей, или замыкать их релюшками.
Сообщение отредактировал Звёздочка - Sep 27 2011, 08:53
|
|
|
|
|
Sep 27 2011, 09:40
|
Местный
  
Группа: Участник
Сообщений: 256
Регистрация: 5-04-09
Из: Москва
Пользователь №: 47 180

|
Цитата(Звёздочка @ Sep 27 2011, 11:57)  ...Я наверное пару разных возьму... Только учтите, что чем мощнее (выше частоты) МК - тем больше шумит. DDR2, я думаю, шум тоже не уменьшит. Цитата(DpInRock @ Sep 27 2011, 10:46)  ...А что самое крутое, G45 стартует с SD карты. Вообще никаких отдадочных средств не требуется. Т.е. программу пишешь, закачиваешь на SD и вперед... Для начинающих - самое оно. После первого дня активного перетыкания SD карты энтузиазму будет - выше крыши
|
|
|
|
|
Sep 27 2011, 09:49
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(forever_student @ Sep 27 2011, 13:40)  Только учтите, что чем мощнее (выше частоты) МК - тем больше шумит. DDR2, я думаю, шум тоже не уменьшит. Я в курсе. Но "потренироваться" можно и на демо-плате, а если будет получаться - готовое устройство попробую сделать на "медленных" МК уже сам. 100-150 долларов за платку 100*120 и десять-двадцать евро за сам контроллер - деньги не такие уж и большие, на фоне корпуса, БП и индикации разница между тем более размажется. Не думаю, что старые грейды микросхем полностью исчезнут из продажи даже через 2-3 года. Цитата Для начинающих - самое оно. После первого дня активного перетыкания SD карты энтузиазму будет - выше крыши  Меня тоже вдохновила такая возможность. Один вопрос - есть ли смысл брать обе упомянутых мною демоплаты для самообучения кодингу, или достаточно только G45? Они ведь обе на контроллерах серии ARM.
Сообщение отредактировал Звёздочка - Sep 27 2011, 09:54
|
|
|
|
|
Sep 27 2011, 10:02
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Да ничего там не шумит. Я в КВ радиостанции использую G45. Вернее шумит, с точки зрения радио, но борьба достаточно проста и эффективна. (На все, что длинным проводом идет из платы - вешаем кондюк. И все.) В цифровом звуке это не имеет значения. Ваш мобильник в кармане дает гораздо большие наводки на оконечный тракт... Насчет парочки, это надо гением быть. Реально. Два литра крови и двести литров кофе - цена вопроса по разбиранию с одним контроллером. Чем хорош таки атмел - никаких внутренних флэшей, никаких программаторов. Но - сложно все равно. Причем, вот надысь работал с более простым LPC2478 - два литра крови. G45 - те же два литра. В общем, трудно один черт. Что одно, что другое. И если один черт - жизнь гробить, то уж ради чего-то быстрого... Если уж сдуру человек взялся за это дело, вместо того, чтобы построить избушку на Валааме, к примеру. Это все строгое ИМХО, основанное на личном опыте. Цитата После первого дня активного перетыкания SD карты энтузиазму будет - выше крыши Во первых это не так страшно. У меня есть личный опыт, в отличие от вас. Посему говорю - фигня перетыкать. Во-вторых, есть SAM-BA. По 232 и USB. (ПРосто на моей плате самба почему-то не заработала. И я за несколько дней написал тот самый БИОС, который щас грузит внешние программы из любого источника ). Но перетыкать - это нормально. Если удобный картридер, конечно. Но зато - имеем 100% гарантию, что делаем именно то, что нужно. БЕЗ ВСЯКИХ ПРОБЛЕМ. Если считаете, что JTAG - это форева - посчитайте чисто статистику тем - "не работает отладчик..., проблемы с JTAG" Да и денег стоит это все. Чисто по опыту. У меня нет ни одного отладочного средства ни для одного контроллера. А ведь как-то работаю. По крайней мере три типа АРМов окучил, и несчетное число всяких мелких контроллеров. Чисто девиз RS232 - рулит.
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Sep 27 2011, 10:04
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(DpInRock @ Sep 27 2011, 13:53)  Насчет парочки, это надо гением быть. Реально. Два литра крови и двести литров кофе - цена вопроса по разбиранию с одним контроллером. То есть каждая модель МК принципиально отличается от любых других, и научившись что-то делать на, скажем, ARM9 я не смогу даже помигать лампочкой на ARM7 или STM32? Цитата Если уж сдуру человек взялся за это дело, вместо того, чтобы построить избушку на Валааме, к примеру. Это все строгое ИМХО, основанное на личном опыте. Домик построить... это ведь одна из целей, к которой я иду, но оно сложно и главное - дорого, а работать даже за зарплату иногда приходится по 20 часов в сутки, на зарабатывание сверх этого - иногда даже не хватает часов в сутках и дней в неделе. Хочется развеяться и сменить обстановку, а турпоходы и поездки за границу я ненавижу. Остаётся только электроника и охота, от этого удовольствие и получаю. Сорри за оффтоп.
Сообщение отредактировал Звёздочка - Sep 27 2011, 10:07
|
|
|
|
|
Sep 27 2011, 10:23
|
Местный
  
Группа: Участник
Сообщений: 256
Регистрация: 5-04-09
Из: Москва
Пользователь №: 47 180

|
Цитата(DpInRock @ Sep 27 2011, 14:02)  Да ничего там не шумит. Я в КВ радиостанции использую G45. Вернее шумит, с точки зрения радио, но борьба достаточно проста и эффективна. (На все, что длинным проводом идет из платы - вешаем кондюк. И все.) В цифровом звуке это не имеет значения... КВ радиостанция и цифровой звук (а особенно HiRes) - немного разные вещи Цитата(DpInRock @ Sep 27 2011, 14:02)  ...Посему говорю - фигня перетыкать... Это Вам фигня. А начинающему, у которого LED неизвестно когда замигает - вряд ли. Цитата(DpInRock @ Sep 27 2011, 14:02)  Во-вторых, есть SAM-BA. По 232 и USB. (ПРосто на моей плате самба почему-то не заработала. И я за несколько дней написал тот самый БИОС, который щас грузит внешние программы из любого источника ). И Вы предлагаете ему тоже БИОС написать (за несколько дней)? Цитата(DpInRock @ Sep 27 2011, 14:02)  ...По крайней мере три типа АРМов окучил... А как же: Цитата(DpInRock @ Sep 27 2011, 10:46)  ... А изучив G45 получишь именно опыт ARM...
|
|
|
|
|
Sep 27 2011, 12:08
|

Участник

Группа: Участник
Сообщений: 19
Регистрация: 26-09-11
Из: Казань
Пользователь №: 67 386

|
Цитата(muravei @ Sep 27 2011, 15:39)  ПКД тоже самодельный? TEAC VRDS 25, выведена шина I2S и сделан модуль I2S TTL->RS485. Родной осциллятор выпаян, при подключенном цапе проигрыватель тактируется от него, при отключении цапа - от генератора на модуле (чтоб функционал не терять). Какие есть годные эмуляторы ARM? Можно ли в них эмулировать USB или SATA устройство, подключенное к МК?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|