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

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> microSD SDIO, Помогите начать
aaarrr
сообщение Jan 31 2018, 20:11
Сообщение #31


Гуру
******

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



Цитата(Мур @ Jan 31 2018, 22:45) *
Проще гонять в сдвиговом регистре полином сразу по 4м линиям, чем 4мя по каждой из линий...

Что может быть проще, чем иметь четыре сдвиговых регистра на выходе сериализатора? Минимум манипуляций с данными, минимум логики.
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 1 2018, 07:46
Сообщение #32


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(aaarrr @ Jan 31 2018, 23:11) *
Что может быть проще, чем иметь четыре сдвиговых регистра на выходе сериализатора? Минимум манипуляций с данными, минимум логики.

Смеётесь?....
В 4 раза больше логики в вашем случае! (16 триггеров против 64х).
Есть только одно объяснение этому "безобразию",- вариант применения одной линии данных вместо четырех. Тогда берется для этого один регистр из четырех.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 1 2018, 10:25
Сообщение #33


Гуру
******

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



Цитата(Мур @ Feb 1 2018, 10:46) *
Смеётесь?....
В 4 раза больше логики в вашем случае! (16 триггеров против 64х).

16? Т.е. тактировать свой вычислитель с 4x частотой интерфейса - это не безобразие? А логику, которая
будет перекладывать полученное значение CRC в сериализатор, решили и не считать?
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 1 2018, 11:45
Сообщение #34


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Мур @ Feb 1 2018, 10:46) *
Смеётесь?....

А смысл обсуждать это? Есть стандарт - нужно ему следовать.
Если 4 вычислителя не охота делать принципиально, то можно с картой общаться в SPI-режиме, и вообще без какой-либо проверки.
Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 1 2018, 11:55
Сообщение #35


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(adnega @ Feb 1 2018, 14:45) *
А смысл обсуждать это? Есть стандарт - нужно ему следовать.
Если 4 вычислителя не охота делать принципиально, то можно с картой общаться в SPI-режиме, и вообще без какой-либо проверки.


Если только скорость вообще не важна biggrin.gif
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 1 2018, 12:46
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(mantech @ Feb 1 2018, 13:55) *
Если только скорость вообще не важна biggrin.gif

А какой реальный выигрыш от использования SDIO вместо SPI не на коне в вакууме, а на типичном Cortex-M? Загруженном кроме гоняния байтов с SD ещё и другими задачами.
В Мб/сек или в %.
Есть-ли вообще смысл тратить гораздо больше ног МК, которые, как правило, всегда в дефиците?
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 1 2018, 13:03
Сообщение #37


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(jcxz @ Feb 1 2018, 15:46) *
А какой реальный выигрыш от использования SDIO вместо SPI не на коне в вакууме

Действительно, реальная карта очень медленная. Т.е. по быстрому интерфейсу ей прилетает команда,
спустя какое-то время карта по быстрому интерфейсу отвечает, а данные сектора выдаст гораааздо позже, но очень быстро.
Применение SDIO в связке с DMA позволяет сильно разгрузить МК, хотя я делал и на SPI+DMA+ISR с деревом из callback-функций.
С учетом того, что карта может приспокойно "задуматься" на полсекунды даже в режиме чтения, jcxz весьма справедлив.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 1 2018, 13:15
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(adnega @ Feb 1 2018, 15:03) *
С учетом того, что карта может приспокойно "задуматься" на полсекунды даже в режиме чтения, jcxz весьма справедлив.

Я даже не об этом говорю, а о том что на практике я писал драйвер SD через SPI на Cortex-M 120МГц. И получал скорость потокового чтения с карты немного больше 1МБ/сек (естественно SPI+DMA).
Даже просто прокачка такого потока через средний Cortex-M сильно его нагрузит. Не говоря уже о том, что наверное МК должен как-то ещё и обрабатывать этот поток.
При более-менее содержательной обработке читаемых/записываемых данных, скорость обработки этих данных вряд-ли будет выше 1МБ/сек, а скорей всего - гораздо ниже.
Тогда такой скорости SPI вполне хватает.
И это при том, что я даже не оптимизировал свой драйвер - возможно получил бы гораздо бОльшую скорость (SPI-флешки у меня работают на SCLK до 40МГц).
Вобщем: при реальной работе с SD, а не мерянии попугаев, сама обработка данных будет больше тормозить, чем обмен с SD по SPI. Имха.
Так что польза от SDIO на типичных Cortex-M - сомнительна. Тоже - имхо.
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Feb 1 2018, 13:32
Сообщение #39


Профессионал
*****

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



Цитата(jcxz @ Feb 1 2018, 15:46) *
А какой реальный выигрыш от использования SDIO вместо SPI не на коне в вакууме, а на типичном Cortex-M? Загруженном кроме гоняния байтов с SD ещё и другими задачами.
В Мб/сек или в %.
Есть-ли вообще смысл тратить гораздо больше ног МК, которые, как правило, всегда в дефиците?


Есть проект на Cortex-M7 вида eMMC -> M7 -> HSUSB, без двойной буверизации, т.е. блок читается с флешки и отдаётся в USB.

При подключении по 4 проводам SDIO средня скорость чтения файла длиной 1Гб, в зависимости от частоты шины SDIO, составила:

24.43МГц - 6.50М/с;
25.00МГц - 7.18М/с;
50.00МГц - 10.56М/с.

Насколькоя я знаю скорость 50.00МГц предусмотрена стандартом только в режиме SDIO.

Цитата(adnega @ Feb 1 2018, 16:03) *
С учетом того, что карта может приспокойно "задуматься" на полсекунды даже в режиме чтения, jcxz весьма справедлив.


Моя карта имеет право задуматься на 250мс в режиме чтения.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 1 2018, 13:47
Сообщение #40


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(_4afc_ @ Feb 1 2018, 15:32) *
Насколькоя я знаю скорость 50.00МГц предусмотрена стандартом только в режиме SDIO.

Просто передаёт с SD на USB? Это карт-ридер? rolleyes.gif
Конечно, если делать карт-ридер, то здесь имеет смысл. Я же писал про использование SD для нужд хранения и содержательной обработки данных самой программой МК.
Единственный вариант: это если данные медленно накапливать на SD при работе устройства, а потом быстро слить в комп не вынимая карты.

Цитата(_4afc_ @ Feb 1 2018, 15:32) *
Моя карта имеет право задуматься на 250мс в режиме чтения.

Да уж.... crying.gif
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Feb 1 2018, 14:09
Сообщение #41


Профессионал
*****

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



Цитата(jcxz @ Feb 1 2018, 16:47) *
Единственный вариант: это если данные медленно накапливать на SD при работе устройства, а потом быстро слить в комп не вынимая карты.

Да что-то подобное.

Цитата(jcxz @ Feb 1 2018, 16:47) *
Просто передаёт с SD на USB? Это карт-ридер? rolleyes.gif

В режиме чтения накопленной или обработанной информации - что-то типа карт-ридера. И естественно, чем быстрее считается - тем удобнее.

Цитата(jcxz @ Feb 1 2018, 16:47) *
Конечно, если делать карт-ридер, то здесь имеет смысл. Я же писал про использование SD для нужд хранения и содержательной обработки данных самой программой МК.


Для нужд записи - тоже имеет смысл при ограничении по потреблению и пульсациям по питанию.

Вот ток потребления в режиме SPI:
Прикрепленное изображение


А вот в режиме SDIO:
Прикрепленное изображение


Видно, что среднее потребление при записи - в режиме SDIO в 2.5 раза меньше, за счёт меньшего времени передачи данных.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 1 2018, 14:17
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(_4afc_ @ Feb 1 2018, 16:09) *
Для нужд записи - тоже имеет смысл при ограничении по потреблению и пульсациям по питанию.
...
Видно, что среднее потребление при записи - в режиме SDIO в 2.5 раза меньше, за счёт меньшего времени передачи данных.

Зато судя по картинкам - пульсация тока в режиме SDIO в ~2 раза больше rolleyes.gif
Да и судя по длительностям осциллограмм - сравниваете SDIO работающий на высокой скорости и SPI работающий на медленной скорости - так сравнивать не корректно.
Вы сами писали, что скорость SDIO у вас максимум была 10МБ/сек. А SPI может работать с SCLK до 25МГц - т.е. около 3МБ/сек. Разница в длительности картинок должна быть соответственно 1/3 или 1/4 (судя по кол-ву линий IO).
Возможно, что если запустите SPI на макс. скорости, то получите сравнимые показатели тока потребления.
Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 1 2018, 18:19
Сообщение #43


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(jcxz @ Feb 1 2018, 17:17) *
Вы сами писали, что скорость SDIO у вас максимум была 10МБ/сек. А SPI может работать с SCLK до 25МГц - т.е. около 3МБ/сек. Разница в длительности картинок должна быть соответственно 1/3 или 1/4 (судя по кол-ву линий IO).
Возможно, что если запустите SPI на макс. скорости, то получите сравнимые показатели тока потребления.


Только заметьте разницу - "корость SDIO у вас максимум была 10МБ/сек" и "А SPI может работать с SCLK до 25МГц - т.е. около 3МБ/сек" - только первое реально работает, а второе - только ваш прогноз, который не учитывает обработку команды в карте и накладные расходы, а именно больше полутора мегов в сек не получите по спи.
Другое дело - если задача скинуть файл пару кб раз в сек. то какой интерфейс - без разницы.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 1 2018, 18:53
Сообщение #44


Гуру
******

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



Цитата(_4afc_ @ Feb 1 2018, 16:32) *
Насколькоя я знаю скорость 50.00МГц предусмотрена стандартом только в режиме SDIO.

Нет, режим High-Speed распространяется в том числе и на подключение через SPI.

P.S. SDIO и SD - это все-таки совершенно разные вещи.
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 2 2018, 07:49
Сообщение #45


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(aaarrr @ Jan 31 2018, 11:34) *
Только данные, по каждой линии отдельно.

Тут есть путаница,
.....хотя бы потому, что для вывода всего CRC16(CCITT) по ОДНОЙ линии требуется 16 тактов, хотя на эпюрах на это выделяется 4 такта. Неувязочка явная!

Ответ на этот вопрос резко бы упростился, если кто-нибудь дал пример РЕАЛЬНОЙ последовательности в четыре провода от начала до конца.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th April 2024 - 16:12
Рейтинг@Mail.ru


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