Здравствуйте,
Появилась проблема с отказом SD card. Устройство включено 24ч.
Процессор работает с контролером карты выполненный в FPGA. Контролер проектировал самостоятельно.
По определенным событиям контролер обращается к карте за массивами данных, т.е. используется только режим чтения с карты.
После некоторого промежутка времени (около двух месяцев) в секторах начинают пропадать данные . При том более современные карты эту проблему повторяют в меньший промежуток времени.
Определил что сектора портятся там где больше доступа было к сектору.
Работа контролера: инициализация, после CMD3 переключение Fclk, переход в трансфер CMD7, переключение шины ACMD6
Находясь в режиме трансфера формирую по запросу команды чтения CMD17 и пакетного чтения CMD18.
Оставаясь в режиме трансфера ожидаю следующий запрос на чтение и т.д.
Закрылись предположения что причиной может быть нахождение в трансфер режиме. Решил из трансфера перейти в standby и по запросу чтения переключаться в трансфер.
Появилась проблема, Находясь в трасфер режиме формирую команду чтения и желаю после чтения выйти в stndby. CMD17 получаю ответ R1-> затем CMD13 дожидаюсь режима трансфер и подаю CMD7 - и здесь ТУПИК!
- ожидаю r1 - без ответа
- пробую опрашивать cmd13 -> r1 без ответа
- пробовал cmd7 и RCA и с 0 передавать, без ответа.
на CMD0 реагирует. но думаю не корректно подымать весь цикл инициализации.
PDF не помогает(((, ПРОШУ ПОМОЩИ