реклама на сайте
подробности

 
 
> CY7C68013A + ADSP-2181, Приделать USB к IDMA
Aluminium
сообщение Jan 29 2007, 20:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 26-01-07
Из: Саратов
Пользователь №: 24 791



Раньше была плата: к IDMA ADSP-2181 через ISA был подключен компьютер, или, наоборот, к компьютеру по ISA был подключен через IDMA ADSP-2181. Во загнул... wub.gif Короче, теперь требуется повесить IDMA на USB.

Вроде бы CY7C68013A терпит по I/O 5,25 В. Руки чешутся подсоединить напрямую. Хотя я так никогда не делал. А может быть, есть 5В аналоги CYPRESS? Да, плата питаться будет от USB. Можно?

Потом, хотел бы все сделать на флагах (I/O), но тогда могут быть конфликты на шине вследствие ошибок в программе. Это технически неверно, сам знаю. Но последнее время все чаще так делаю. Что думаете, господа разработчики?

И последний вопрос, так USB не занимался до этого. Везде рекомендуют на D+ и D- , бусины, а можно поставить просто дроссели? И какие лучше? Спасибо. a14.gif

Сообщение отредактировал Aluminium - Jan 29 2007, 20:58
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
jur
сообщение Jan 30 2007, 21:27
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 205
Регистрация: 16-10-05
Пользователь №: 9 704



Цитата(Aluminium @ Jan 29 2007, 19:56) *
Раньше была плата: к IDMA ADSP-2181 через ISA был подключен компьютер, или, наоборот, к компьютеру по ISA был подключен через IDMA ADSP-2181. Во загнул... wub.gif Короче, теперь требуется повесить IDMA на USB.
Да, хорошо загнул! :-) Думаю, что гораздо лучше коллеги смогут тебе посоветовать, если станет понятно, что логически нужно сделать. Нужно-ли считывать из устройства какой-то диапазон адресуемых данных, или можно ограничиться считыванием одного порта? Каков объем этих данных? Как нужно организовать квитирование (по готовности?) и каким образом? В общем, представь, что ты пишешь техзадание... :-)
Цитата(Aluminium @ Jan 29 2007, 19:56) *
Вроде бы CY7C68013A терпит по I/O 5,25 В. Руки чешутся подсоединить напрямую. Хотя я так никогда не делал. А может быть, есть 5В аналоги CYPRESS? Да, плата питаться будет от USB. Можно?
Навскидку не скажу, но ты лучше не спрашивай, а даташит посмотри. Ведь авторы микросхемы по-любому это лучше знают...
Цитата(Aluminium @ Jan 29 2007, 19:56) *
Потом, хотел бы все сделать на флагах (I/O), но тогда могут быть конфликты на шине вследствие ошибок в программе. Это технически неверно, сам знаю. Но последнее время все чаще так делаю. Что думаете, господа разработчики?
Совсем не понял...
Цитата(Aluminium @ Jan 29 2007, 19:56) *
И последний вопрос, так USB не занимался до этого. Везде рекомендуют на D+ и D- , бусины, а можно поставить просто дроссели? И какие лучше? Спасибо. a14.gif
Лучше всего делать так, как рекомендуют авторы микросхемы - фирма Cypress. Т.е. линии USB присоединяешь прямо к разъему без ничего. Нужно только соблюсти требование, чтобы проводники были максимально короткими. Я делал порядка 30-40 мм - все хорошо.
Цитата(Aluminium @ Jan 30 2007, 19:15) *
Нужно напрямую через FIFO работать. Как такой вариант: 56-ножная микросхема, CTLx на IAL, #IRD и #IWR, IACK на один из RDY, #IS и #RESET процессора взять со свободного порта?
Думаю, что это вполне нормальный вариант.
Цитата(Aluminium @ Jan 30 2007, 19:15) *
Вроде бы должно получиться, но в голове картина не складывается. Как, например, различать данные и адреса для IDMA порта? Протокол придумать, чтобы в начале шел адрес, потом данные? Или для адреса можно сделать отдельный endpoint?
К сожалению, я не знаю твоей микросхемы, но ты рассуждай так. С помощью микроконтроллера в CY7C68013A ты можешь выставлять на свободном порту признак ADDR/DATA или еще как-то задавать начальный адрес блока, который требуется передать. А дальше с помощью потоковой передачи через FIFO качать данные. Т.е. к примеру, по одной ендпойнте (управления) ты задаешь режим передачи, начальный адрес, направление и т.п., а с помощью другой уже непосредственно передаешь данные. (Я так грубо, прикидочно говорю, т.к. не знаю твоей задачи.)
Цитата(Aluminium @ Jan 30 2007, 19:15) *
Вроде бы должно получиться, но в голове картина не складывается. Как, например, различать данные и адреса для IDMA порта? Протокол придумать, чтобы в начале шел адрес, потом данные? Или для адреса можно сделать отдельный endpoint?
Лучше всего отдельный ендпойнт: ендпойнт управления, для которого ты можешь выработать необходимую систему команд. Нужно рассматривать каждую ендпойнту, как отдельный, независимый канал данных. Тогда сразу в голове проясняется :-)
Цитата(Aluminium @ Jan 30 2007, 19:15) *
Я первый раз работаю с USB, поэтому задачка еще та, тем более я не прогаммист совершенно. Поэтому прошу прощения за свой поток мыслей - не с кем поделиться.
С нами делись :-) Если удастся помочь - обязательно поможем :-) Мы же все коллеги!


--------------------
MPEG-4 - в массы!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Aluminium   CY7C68013A + ADSP-2181   Jan 29 2007, 20:56
- - Aluminium   Подумал я немножко и понял, что не следует делать ...   Jan 30 2007, 20:15
- - Aluminium   Задача вот какая. Есть 16-разрядный мультиплексир...   Jan 30 2007, 22:50
|- - jur   Цитата(Aluminium @ Jan 30 2007, 21:50) Ес...   Jan 31 2007, 10:57
- - Aluminium   Спасибо большое. Радует, что я был прав. Пока рису...   Jan 31 2007, 21:33
|- - jur   Цитата(Aluminium @ Jan 31 2007, 20:33) Сп...   Jan 31 2007, 22:46
- - Aluminium   Сделали две платы. Хорошо получилось. Но запрогра...   Dec 14 2007, 08:36
- - Aluminium   Неужели никто не может помочь?   Dec 19 2007, 14:31
|- - Aluminium   Все получилось, программист несколько раз напортач...   Apr 10 2008, 07:42
- - Aluminium   Вроде бы все сделали, но одну проблему решить не м...   Aug 12 2008, 00:11
|- - Konst_777   Цитата(Aluminium @ Aug 12 2008, 03:11) Вр...   Aug 12 2008, 18:13
- - Aluminium   Понятно, наверно, для тех, кто работал с микросхем...   Aug 13 2008, 11:48
|- - Konst_777   Цитата(Aluminium @ Aug 13 2008, 14:48) По...   Aug 13 2008, 16:39
- - Aluminium   Спасибо. Все заработало. Дело было именно в этом.   Aug 14 2008, 14:12


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 21:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016