deplen 0 25 января, 2015 Опубликовано 25 января, 2015 (изменено) · Жалоба Возникла задача реализация SD карточки. Первая мысль, которая пришла в голову, это взять армовский контроллер с SDIO интерфейсом. Только как-то кажется что не совсем решаемо это будет, так как в МК sdio хостовый, а здесь его по сути нужно сделать slave'ом. Может я не в том направлении мыслю и задача делается проще? Изменено 25 января, 2015 пользователем deplen Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 25 января, 2015 Опубликовано 25 января, 2015 · Жалоба Правильно Вам кажется. MMC/SD интерфейсы МК не предусматривают работы в роли slave (по крайней мере, я не знаю таких). Так что, FPGA Вам в помощь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deplen 0 26 января, 2015 Опубликовано 26 января, 2015 (изменено) · Жалоба Правильно Вам кажется. MMC/SD интерфейсы МК не предусматривают работы в роли slave (по крайней мере, я не знаю таких). Так что, FPGA Вам в помощь. Т.е. вариант решения это или брать плисину или управлять сигналами на МК. Спасибо. Изменено 26 января, 2015 пользователем deplen Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Xenia 37 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Возникла задача реализация SD карточки. Первая мысль, которая пришла в голову, это взять армовский контроллер с SDIO интерфейсом. Только как-то кажется что не совсем решаемо это будет, так как в МК sdio хостовый, а здесь его по сути нужно сделать slave'ом. Зачем МК делать slave'ом? Разве SD-карта может быть хостом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 68 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Зачем МК делать slave'ом? Разве SD-карта может быть хостом? наверное чтобы микроконтроллер мог эмулировать microSD Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Т.е. вариант решения это или брать плисину или управлять сигналами на МК. Без "или". МК не успеет обслужить SD интерфейс, там тактовая частота до 50 МГц. Зачем МК делать slave'ом? Как правило, чтобы к хосту прицепиться через SDIO интерфейс. Но бывают случаи, что надо эмулировать и карту памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Без "или". МК не успеет обслужить SD интерфейс, там тактовая частота до 50 МГц. А габарит тоже microSD нужно оставить? Питание с интерфейса берется? Это не очередное "хочу помигать лампочкой путем записи байтика в файл на uSD-карточке"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба А габарит тоже microSD нужно оставить? Питание с интерфейса берется? А почему этот вопрос ко мне? Ну, если он ко мне... То, лично я делал SDIO slave интерфейс, чтобы прицепить микросхему WiFi+BT c интерфейсом SDIO+UART только на интерфейс SDIO (как это умеет marvell 88w8688), сделав контроллер UART over SDIO, и мост SDIO-SDIO, получив SDIO-девайс, имеющий на выходе UART и SDIO-хост. А формфактор и питание пофигу, оно же на плате все дорожками соединено. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба А почему этот вопрос ко мне? Вопрос к ТС, но и вам ответ будет полезен) ТС просит реализовать именно "SD карточку". Допускаю, что под этим понимается "интерфейс, аналогичный SD карточке". Вопрос к ТС, кроме всего прочего: "а вы с SD картами хотя бы с хоста работали?" Там ведь и SD/SDHC/SDXC разных версий; SDIO; SPI mode; UHS-I с огромными МГц и 1.8В + DDR; Конкретно что нужно сделать? Какой минимум? Что нужно будет хосту от такой карточки? На хост можно как-то повлиять? А то ведь в SPI mode можно проэмулировать (самый простой случай). Или попытаться найти спец контроллер для карточек. Или вам нужна карточка где "security" часть отключаемая? ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Вопрос к ТС, но и вам ответ будет полезен) Чем? У меня уже есть реализация этого интерфейса в виде IP-блока, и все уже года три как работает. Правда, без DDR, но и это ни разу не проблема для ПЛИС. А то ведь в SPI mode можно проэмулировать (самый простой случай). Нет смысла. Ни один стандартный хост-контроллер не работает с SD или SDIO в режиме SPI. Это только всякие пионерские поделки... Или попытаться найти спец контроллер для карточек. Нереально. Только IP-блоки доступны для ASIC, это пройденный этап. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deplen 0 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба Вопрос к ТС, но и вам ответ будет полезен) ТС просит реализовать именно "SD карточку". Допускаю, что под этим понимается "интерфейс, аналогичный SD карточке". Вопрос к ТС, кроме всего прочего: "а вы с SD картами хотя бы с хоста работали?" Там ведь и SD/SDHC/SDXC разных версий; SDIO; SPI mode; UHS-I с огромными МГц и 1.8В + DDR; Конкретно что нужно сделать? Какой минимум? Что нужно будет хосту от такой карточки? На хост можно как-то повлиять? А то ведь в SPI mode можно проэмулировать (самый простой случай). Или попытаться найти спец контроллер для карточек. Или вам нужна карточка где "security" часть отключаемая? ) C хоста работал с SD/SDHC через SPI(на LPC1114) и через SDIO (LPC4337). Конкретно нужно, чтобы устройства (телефон, компьютер через картридер) могли читать/писать карточку. Собственно по сути реализовать то, что заложено внутри контроллера обычных SDHC. Хотя бы самое основное необходимое для чтения и записи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 26 января, 2015 Опубликовано 26 января, 2015 · Жалоба (телефон, компьютер через картридер) могли читать/писать карточку. Именно карточку ? Очень нестандартное решение. И нетривиальное. С телефоном можно связаться по BlueTooth или по USB (хоть и не всегда), с компьютером - по USB. Насколько оправданы сложности с карточкой ? P.S. Когда-то очень давно слышал о некоем устройстве, в которое данные с персоналки сливались путем считывания устройством состояний светодиодов клавиатуры. Т.е., спец. ПО со стороны персоналки преобразовывало, например, файл данных в последовательность миганий светодиода, например, NumLock. Устройство своим фотоприемником прикладывалось к светодиоду и принимало данные. Ну, не гениально ли ? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 27 января, 2015 Опубликовано 27 января, 2015 · Жалоба Собственно по сути реализовать то, что заложено внутри контроллера обычных SDHC. FPGA, и без вариантов. На некую минимальную обслугу хватит LCMXO2-256HC-4SG32C или ICE40LP384-SG32, но тренироваться лучше на чем побольше, например LCMXO2-1200HC-4TG100C или iCE40LP1K-QN84, так как без опыта не факт, что сделаете в 256, и в мелочи не сделать толковую буферизацию, в ней памяти или почти нет, или нет. Если не боитесь BGA, то там, рядом с ними, есть вообще ультрамелкие корпуса, например LCMXO2-1200ZE-1UWG25ITR50, всего 2.5х2.5 мм UPD: мелкие FPGA, только как интерфейс к МК! В более больших, может быть, можно сделать и всю функциональность устройства целиком (я не знаю, что оно должно делать, кроме обмена по SDIO, потому объемы предсказать не могу), Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 27 января, 2015 Опубликовано 27 января, 2015 · Жалоба А читать и писать в никуда? Или на какую-нить flash? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 27 января, 2015 Опубликовано 27 января, 2015 · Жалоба А читать и писать в никуда? Или на какую-нить flash? А это уже отдельный вопрос, не по реализации SDIO интерфейса. Я думаю, автор без нашей помощи с этим разберется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться