RHnd 0 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Встала сейчас задача реализовать работу с SD карточкой на плате CyclonII Starter Kit - есть там карман для нее. Документацию прочитал, вроде разобрался, теперь хочу посоветоваться. Сам я в разработке цифровых устройств новичок, больше по другим направлениям, а этим занимаюсь для освоения и создания наработок на будущее. поэтому вопросы могут показаться странными. :) Управлять работой с SD будет Nios, соответственно нужно делать компонент для него. А теперь основная проблема: никак не могу все это системно представить - какую часть задач возложить на ниос, а какую на компонент? Можно сделать компонент совсем простым - на уровне послать/принять один бит, а все остальные задачи оставить ниосу. Можно компонент усложнить. Протокол SD для меня, как новичка, достаточно сложный, посему пока не удается красиво разделить обязанности ниоса и компонента. Или я дурью маюсь? Поделитесь опытом/советом, пожалуйста! Если кто-нить имеет наработки в этой области и готов ими поделиться (r h n d [гав] m a i l . r u), то было бы вообще замечательно! К сожалению, в слове SD всего две буквы, поэтому поиск по форуму затруднен. На опенкорес вообще ничего не нашел. :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Совсем простым компонент делать я бы не стал. На него стоит, по крайней мере, возложить подсчет CRC (а он в четырехбитном режиме получается слишком навороченным для софта), работу с командами (послать команду - принять ответ) и блоками данных. Можно посмотреть описания встроенных в МК SD-контроллеров - станет яснее, где "проложить границу". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 23 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Ищите по SanDisk. Там и Ваших постов полно.. :) Напомнить? => RHnd ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RHnd 0 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Можно посмотреть описания встроенных в МК SD-контроллеров - станет яснее, где "проложить границу". Интересная идея, спасибо! Напомнить? => RHnd ;) Спасибо за напоминание :), но в этой теме ответа нет. Зато поиск по SanDisc очень помог - открыл много нового, пошел читать. :) Кто имеет опыт - поделитесь, а каковы реальные недостатки использования spi по сравнению с однобитным режимом? Ведь если они малы, то, наверное, будет проще сделать SPI и работать с картой с его помощью? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Кто имеет опыт - поделитесь, а каковы реальные недостатки использования spi по сравнению с однобитным режимом? Ведь если они малы, то, наверное, будет проще сделать SPI и работать с картой с его помощью? По сравнению с однобитным режимом, у SPI особых недостатков, пожалуй, нет. Использовать можно, но это все-таки low-end решение, высокой производительности добиться не получится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ClockworkOrange 0 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Можно посмотреть описания встроенных в МК SD-контроллеров - станет яснее, где "проложить границу". to RHnd отличный совет! прислушайтесь.. сам когда писал AES-core смотрел как сделаны ускоритель AES в SAM7X (в итоге позаимствовал оттуда разблюдовку регистров и значения конф.бит - и не маялся после с высасыванием из пальцев этих всех имён и значений) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RHnd 0 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба По сравнению с однобитным режимом, у SPI особых недостатков, пожалуй, нет. Использовать можно, но это все-таки low-end решение, высокой производительности добиться не получится. Ну, учитывая, что я, как начинающий разработчик, сам нахожусь на уровне low-end, то вполне можно использовать более простые варианты для начала. А уже потом, разобравшись с карточкой по spi, делать SD-протокол. Или посоветуете сразу за полный протокол браться? Можно посмотреть описания встроенных в МК SD-контроллеров - станет яснее, где "проложить границу". А если конкретизировать, то кого именно и где именно посоветуете посмотреть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Ну, учитывая, что я, как начинающий разработчик, сам нахожусь на уровне low-end, то вполне можно использовать более простые варианты для начала. А уже потом, разобравшись с карточкой по spi, делать SD-протокол. Или посоветуете сразу за полный протокол браться? Разобраться, конечно, стоит. Можно даже на другой какой-нибудь железке отладить работу в режиме SPI - это очень поможет при реализации своего SD-host. А если конкретизировать, то кого именно и где именно посоветуете посмотреть? TMS320VC5509A, AT91SAM9261, еще можно посмотреть NXP (и бывший Sharp и собственные). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RHnd 0 19 сентября, 2007 Опубликовано 19 сентября, 2007 · Жалоба Разобраться, конечно, стоит. Можно даже на другой какой-нибудь железке отладить работу в режиме SPI - это очень поможет при реализации своего SD-host. А зачем на другой?На этой же и сделаю. Сначала SPI - и с самой картой разберусь, не сильно зацикливаясь на возможных ошибках в интерфейсе (надеюсь :)), и решение готовое будет, ежели вдруг понадобится. А потом уже, поднабравшись опыта, и SD- интерфейс реализую. Вообщем, примерно так пока решил, так делать и буду, ежели не отговорят. :) Образцов работы с SD по spi на форуме прилично, будет где посмотреть. Есть плюс, что spi-интерфейс буду делать чисто под SD, так что можно дополнительные опции в модуль добавить: поменять частоту на лету, ожидать нуля (стартового бита), ожидать отпускание бита busy. Ну и типовые типа передать команду и получить ответ. Вообщем, буду думать. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
toretto 0 29 апреля, 2011 Опубликовано 29 апреля, 2011 · Жалоба Какую скорость чтения можно получить в четырехбитном режиме и SPI? Требуется 2 Мбайта/сек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bav 0 29 апреля, 2011 Опубликовано 29 апреля, 2011 · Жалоба Какую скорость чтения можно получить в четырехбитном режиме и SPI? Требуется 2 Мбайта/сек. 4-х битный режим, частота 25 (или 50) МГц. если не учитывать расходы на команды, примерно 12,5 МБайт/с. но это только пропускная способность интерфейса. если внутри карточки запаяна медленная флешка, то скорость будет меньше. читайте доку на конкретную карточку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Джеймс 4 29 апреля, 2011 Опубликовано 29 апреля, 2011 · Жалоба Какую скорость чтения можно получить в четырехбитном режиме 8 - 9 MB/sec в режиме 4-bit SD, Read Multiple, при частоте тактирования 20MHz. если внутри карточки запаяна медленная флешка, то скорость будет меньше. читайте доку на конкретную карточку. Так а что читать, Speed Class крупно указан уже на упаковке. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться