Перейти к содержанию
    

приостановка изохронных данных в USB

Всем доброго дня!

 

Может кто сталкивался с подобной проблемой?

 

имеется ли возможность приостановить на стороне хоста OCHI данные от изохронной конечной точки?

(с возможностью их дальнейшего продолжения)

 

В применении: к получению данных с USB камеры. памяти LPC1768 не хватает для единовременного захвата кадра большого разрешения,

а записать на FLASH нужно время.

 

Камера имеет только изохронную конечную точку. Bulk нет.

 

 

Спасибо за любые мысли.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а как вы себе это сами представляете?...

для изохронной передачи единственная возможность - просто сброс приёмных буферов на хосте - но тогда будут потери кадров..

 

ИМХО, изначально существовал просчёт в архитектуре всей системы..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я представляю себе это как какой-то обходной манёвр :rolleyes:

 

например перевод всей шины в SUSPEND - но это не помогает пробовал (камера потом продолжает видимо с нового кадра)

 

или например подстановка одного и того же номера фрейма в usb фреймы - не пробовал думаю это не прокатит.

 

 

конечно понятно что всё это будет сделано мягко говоря криво и наверное так делать нельзя.

 

 

 

замерил скорость записи на SD получилось 360 КБ/сек

 

видео может идти примерно 780 кб/сек (размер кадров 800 байт каждую мс)

 

 

придётся видимо всё же пробовать играть в догонялки с камерой.

 

 

кто что может сказать про скорость записи на карточку памяти по SPI ???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кто что может сказать про скорость записи на карточку памяти по SPI ???

Скорость SPI какая? Если не используется write multiple blocks, то о приличной скорости можно забыть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скорость SPI какая? Если не используется write multiple blocks, то о приличной скорости можно забыть.

 

 

 

40 МГЦ

 

насчёт write multiple blocks не просвятите?

какое кол-во блоков должно отправляться для эффективной записи?

или это не имеет значения?

 

 

используется fatfs - там есть многоблочная запись.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

насчёт write multiple blocks не просвятите?

какое кол-во блоков должно отправляться для эффективной записи?

или это не имеет значения?

Практика показывает, что чем больше, тем лучше.

 

используется fatfs - там есть многоблочная запись.

Увы, никаких комментариев дать не могу, т.к. не использую. В своих системах применяю кэширование (Write Through, размер строки - 8 секторов) и отдельный буфер записи (16кБайт или больше). Перед записью на карту сектора в буфере сортируются, затем отправляются несколькими получившимися непрерывными блоками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Практика показывает, что чем больше, тем лучше.

 

 

Увы, никаких комментариев дать не могу, т.к. не использую. В своих системах применяю кэширование (Write Through, размер строки - 8 секторов) и отдельный буфер записи (16кБайт или больше). Перед записью на карту сектора в буфере сортируются, затем отправляются несколькими получившимися непрерывными блоками.

 

 

 

Сделал отправку по 8 кб вместо 512 байт - отличий в скорости не заметил.

 

ещё заметил что MMC пишет намного быстрее SD (SD 2 ГБ очень медленно)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделал отправку по 8 кб вместо 512 байт - отличий в скорости не заметил.

А должны были. Ищите источник торможения, 360Кбайт/с - это неприлично мало для приведенных условий.

 

ещё заметил что MMC пишет намного быстрее SD (SD 2 ГБ очень медленно)

Проверьте, как эти карты пишутся на PC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А должны были. Ищите источник торможения, 360Кбайт/с - это неприлично мало для приведенных условий.

 

 

Проверьте, как эти карты пишутся на PC.

 

 

А сколько должно быть? примерно.

 

на компе:

SD 1.3 MB/sec

MMC 2.8 MB/sec

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А сколько должно быть? примерно.

Примерно столько же, сколько и на компе в данном случае - порядка 1МБайт/с. Хотя карта исключительно тормозная, суда по цифрам. Да и MMC не блещет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а какие примерно скорости должны быть для MMC и SD для современных карточек до 2Гб?

 

А должны были. Ищите источник торможения, 360Кбайт/с - это неприлично мало для приведенных условий.

 

 

Проверьте, как эти карты пишутся на PC.

 

 

А сколько должно быть? примерно.

 

на компе:

SD 1.3 MB/sec

MMC 2.8 MB/sec

 

 

 

А должны были. Ищите источник торможения, 360Кбайт/с - это неприлично мало для приведенных условий.

 

 

Проверьте, как эти карты пишутся на PC.

 

 

А сколько должно быть? примерно.

 

на компе:

SD 1.3 MB/sec

MMC 2.8 MB/sec

Изменено пользователем Пришелец

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а какие примерно скорости должны быть для MMC и SD для современных карточек до 2Гб?

Ну, лежащая у меня на столе не самая новая microSD 1G показывает скорость записи 4.2МБайт/с.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...