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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Hi-Speed USB, скрестить с LPC2468
toweroff
сообщение Feb 4 2010, 13:43
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Пока остановился на интерфейсной микросхеме ISP1582 от NXP
Но есть одна загвоздка - проц _уже_ должен адресовать 64М (16Мх32) флешу
Получается, что эту интерфейсную микросхему придется адресовать как-то хитрее.
В плане формирований управляющих сигналов для флеши поставил CPLD, ячеек лишних там еще много, так что комбинаторику уписать туда можно практически любую.
Можно ли как-то задействовать интерфейс динамической памяти?
Хотелось бы, чтобы для программиста потом все было как можно "прозрачнее", просто флеш в одном диапазоне, интерфейс USB - в другом, без лишнего программного "ногодрыгания"
Go to the top of the page
 
+Quote Post
rezident
сообщение Feb 4 2010, 13:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



У LPC2468 уже есть собственный USB full-speed Device/Host/OTG Controller with 4kB of endpoint RAM. Вам еще один USB-device нужен что ли?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 14:04
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(rezident @ Feb 4 2010, 16:56) *
У LPC2468 уже есть собственный USB full-speed Device/Host/OTG Controller with 4kB of endpoint RAM. Вам еще один USB-device нужен что ли?

в том-то и дело - full speed
я ж в сабже написал - hi-speed надобно
Собственный контроллер в LPC работает замечательно... но медленно для заказчика. Поэтому и возникла необходимость во внешнем контроллере hi-speed USB
Go to the top of the page
 
+Quote Post
VslavX
сообщение Feb 4 2010, 15:12
Сообщение #4


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(toweroff @ Feb 4 2010, 16:04) *
в том-то и дело - full speed
я ж в сабже написал - hi-speed надобно

AT91SAM3 попробовать не хотите? Там USB HS встроенный. Параллельной внешней шины нет, но я сейчас на NAND-ы с SPI смотрю, может Вам тоже подойдут.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 15:51
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(VslavX @ Feb 4 2010, 18:12) *
AT91SAM3 попробовать не хотите? Там USB HS встроенный. Параллельной внешней шины нет, но я сейчас на NAND-ы с SPI смотрю, может Вам тоже подойдут.

нет, как раз требуется 32-разрядная шина, так бы проблем бы не было, и у LPC есть hi-speed решения
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 4 2010, 16:10
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Feb 4 2010, 16:43) *
Можно ли как-то задействовать интерфейс динамической памяти?

Едва ли.

Цитата(toweroff @ Feb 4 2010, 16:43) *
Но есть одна загвоздка - проц _уже_ должен адресовать 64М (16Мх32) флешу
Получается, что эту интерфейсную микросхему придется адресовать как-то хитрее.
В плане формирований управляющих сигналов для флеши поставил CPLD, ячеек лишних там еще много, так что комбинаторику уписать туда можно практически любую.

Ну, можно знатно извратиться, выделив некоторую область памяти, где 16-бит обращения идут у ISP, а 32 - к флеш. Или подключать ISP на один цикл шины после записи секретного слова по секретному адресу. В общем, есть варианты.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 16:27
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Feb 4 2010, 19:10) *
можно знатно извратиться, выделив некоторую область памяти, где 16-бит обращения идут у ISP, а 32 - к флеш

так все равно нужно что-то отключать от шины... то есть однозначно идентифицировать относительно какого-то сигнала

Цитата(aaarrr @ Feb 4 2010, 19:10) *
Или подключать ISP на один цикл шины после записи секретного слова по секретному адресу.

вроде бы выход, но.. запись во флеш подразумевает относительно хаотичные данные и не факт, что не совпадет с этим magic значением. В результате такое решение не подходит

а может все-таки "ногодрыг"? если аппаратных решений нет
да и выставить уровень на ножке порта дешевле по времени, чем одна операция с внешней шиной...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 4 2010, 17:16
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Feb 4 2010, 19:27) *
так все равно нужно что-то отключать от шины... то есть однозначно идентифицировать относительно какого-то сигнала

Вот по BLS и идентифицировать. Другое дело, что работать только 32-х битными словами с флеш может оказаться неудобно, но это надо смотреть по задаче.

Цитата(toweroff @ Feb 4 2010, 19:27) *
а может все-таки "ногодрыг"? если аппаратных решений нет
да и выставить уровень на ножке порта дешевле по времени, чем одна операция с внешней шиной...

Ну, если программист будет достаточно внимателен, то ничего страшного.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 18:22
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Feb 4 2010, 20:16) *
Вот по BLS и идентифицировать. Другое дело, что работать только 32-х битными словами с флеш может оказаться неудобно, но это надо смотреть по задаче.

как раз нормально. То есть, если адрес не выровнен до 4, /BLSx как раз и будет тем /CS, через который можно лезть НЕ во флеш?
Кстати - какой BLS? при 16-битном BLS2, при 8-битном любой, но не BLS0? Я так понимаю, BLS0 будет всегда генериться при 32-битной конфигурации EMC?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 4 2010, 19:12
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Фигню я сморозил: способ годится только для записи sad.gif Хотя такую запись можно использовать для временного переключения flash-ISP.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 19:24
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Feb 4 2010, 22:12) *
Хотя такую запись можно использовать для временного переключения flash-ISP.

ну с таким же успехом можно и ногой дрыгать

Цитата(aaarrr @ Feb 4 2010, 22:12) *
Фигню я сморозил: способ годится только для записи

ну не совсем, если в выражение впихнуть /OE, /WR, /CSx, /BLSx и A0 с A1
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 4 2010, 19:31
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Feb 4 2010, 22:24) *
ну не совсем, если в выражение впихнуть /OE, /WR, /CSx, /BLSx и A0 с A1

Совсем: при чтении BLS не используется, а A0 и A1 могут быть в нуле.
Нет, на LPC работа BLS конфигурируется (бит PB в EMCStaticConfig), так что все в порядке.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 4 2010, 20:02
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



итого итог - ногодрыг все-таки, скорее всего... проще по прерыванию от внешнего контроллера ставить пин в 1, вычерпнуть все и сбросить...
а в основной проге, где работа с флеш, просто на эту тему не заморачиваться
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 4 2010, 20:15
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



И так, пожалуй, правильно. Делить ресурс по ширине доступа можно, но это все-таки слишком большое извращение.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 8 2010, 12:50
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



не буду плодить новую тему...
для данного контроллера (LPC2468) скорость передачи по USB со встроенным full-speed в размере 6 Мбит/с нормально, или есть куда развиваться?
сам контроллер, фактически, занимается только тем, что ждет 32Кбайт данные, отсылает подтверждение и снова ждет. Весь блок отсылается во внешнюю flash (или читается оттуда такими же блоками)
имеет ли смысл в таком случае связываться с DMA? С ним дела пока не имел, разбор полетов может занять какое-то время, а пилот выпускать нужно. С hi-speed вопрос решается, но если есть куда "рости" с родным контроллером, то было бы очень неплохо
Go to the top of the page
 
+Quote Post

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

 


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


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