Jump to content

    
Sign in to follow this  
__inline__

FatFS и SD-карта. Ускорить чтение файлов с карты

Recommended Posts

В 25.12.2019 в 14:52, __inline__ сказал:

Это очень пичально.. (( Что же они SPI режимы невзлюбили?   Не всегда удаётся SDIO задействовать, по причине банальной занятости ножек контроллера на другие интерфейсы )))

Кстати, однобитный SDIO требует всего 3 порта МК, в то время, как SPI нужно 4, вот такая "экономия"...

Share this post


Link to post
Share on other sites
1 hour ago, mantech said:

Кстати, однобитный SDIO требует всего 3 порта МК, в то время, как SPI нужно 4, вот такая "экономия"...

 

TI в C6745 сделала SDIO аж 8-битным (что для e-MMC очень прекрасно), но эти лапки к сожалению также сидят на EMIFA, а там дисплей у меня. Делать мультиплексор и разделять во времени работу с LCD и картой - не вариант.  И перекидывать ноги на разные функции как сделано в STM32 нет возможности.  Но я приобрёл больше с С6745 , чем потерял на STM32. ))

 

Правда есть возможность сделать ногодрыг на PRU или софтово, но поезд ушел - железка в релизе: SD карта там через SPI.   Я тут копаю кодек CELT - это бомба - качество лучше, чем у MP3 на таких параметрах 32 кГц 48 кбит/c 1 канал.  Для музыки в видео-играх идеально, даже в наушниках хорошо звучит. И сжатие лучше в 2-4 раза, чем у 4-битного ADPCM   при том же качестве звука (чисто субъективная оценка).  А это меньше данных грузить с SD-карты - быстрее загрузка.  Декодирование на лету - по фреймам 512 семплов:  как раз 16 мс(это период следования прерываний McASP ) выходит на 48 кбит/c  - чуть больше 60 FPS с VSYNC (сам декодер разжимает фрейм  всего 0,96 мс)

 

Мои эксперименты с кодеком CELT:

 

 

Edited by __inline__

Share this post


Link to post
Share on other sites

По моему опыту High Speed mode  что-то меняет только в режиме SDIO.
А в режиме SPI она начинает тормозить больше и не из-за SPI. Т.е. при работе в SPI она внутри себя медленнее пишет/читает, и данные SPI идут с перерывами. Возможно, там есть оперативный буфер, который используется только с SDIO.

Share this post


Link to post
Share on other sites
8 minutes ago, MiklPolikov said:

По моему опыту High Speed mode  что-то меняет только в режиме SDIO.

High Speed mode позволяет использовать CLK выше 25MHz, и только. Работает одинаково в режимах SPI и SDIO.

Share this post


Link to post
Share on other sites
15 hours ago, aaarrr said:

High Speed mode позволяет использовать CLK выше 25MHz, и только. Работает одинаково в режимах SPI и SDIO.

Давно этим занимался, мог забыть.
Я  скрупулёзно изучил скорости, задержки, токи потребления microSD, и сейчас помню, что её медлительность в режиме SPI нельзя объяснить только медлительностью самого SPI. Когда включен SPI, она внутри себя медленнее обрабатывает данные.

Share this post


Link to post
Share on other sites
12 hours ago, MiklPolikov said:

Я  скрупулёзно изучил скорости, задержки, токи потребления microSD, и сейчас помню, что её медлительность в режиме SPI нельзя объяснить только медлительностью самого SPI.

Да, насколько я помню, в режиме SPI скорость передачи данных всегда была заметно ниже скорости интерфейса. Эффект от перехода в HS определенно был, но не очень значительный.

Ну, на то он и low end. Надеюсь, больше такой ерундой заниматься не придется.

Share this post


Link to post
Share on other sites
5 часов назад, aaarrr сказал:

Надеюсь, больше такой ерундой заниматься не придется.

Да сейчас уже МК без SD интерфейса и с достаточным кол-вом памяти и флеша и нет почти, не беру в пример АВРки и прочее 8и битные и малоногие МК... 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this